diff options
author | Arno <arno@disconnect.de> | 2018-04-04 12:35:31 +0200 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2018-04-04 12:35:31 +0200 |
commit | 519b2392f16adbf179ef7a117513dc7a2b890b6e (patch) | |
tree | 7a23dd5c10d309fd89396566bae01aac7af2e2cb | |
parent | 295b8e2b197e689380002ccfe77fe4fb56c544d6 (diff) | |
download | SheMov-519b2392f16adbf179ef7a117513dc7a2b890b6e.tar.gz SheMov-519b2392f16adbf179ef7a117513dc7a2b890b6e.tar.bz2 SheMov-519b2392f16adbf179ef7a117513dc7a2b890b6e.zip |
Fill MoviePropertiesDialog, part 1
-rw-r--r-- | moviepropertiesdialog.cpp | 24 | ||||
-rw-r--r-- | moviepropertiesdialog.h | 4 | ||||
-rw-r--r-- | moviewidget.cpp | 8 | ||||
-rw-r--r-- | moviewidget.h | 1 |
4 files changed, 35 insertions, 2 deletions
diff --git a/moviepropertiesdialog.cpp b/moviepropertiesdialog.cpp index 2b6fd80..6197526 100644 --- a/moviepropertiesdialog.cpp +++ b/moviepropertiesdialog.cpp @@ -3,6 +3,8 @@ #include <QRadioButton> #include <QGroupBox> #include <QPushButton> +#include <QSqlDatabase> +#include <QSqlQuery> #include <QIntValidator> #include <QStandardItemModel> #include <QGridLayout> @@ -92,3 +94,25 @@ void MoviePropertiesDialog::setupDialog(){ mainLayout->addLayout(buttonLayout); setLayout(mainLayout); } + +void MoviePropertiesDialog::init(int seriesPartsId){ + QSqlDatabase db = QSqlDatabase::database("treedb"); + QSqlQuery genQ(db); + genQ.prepare("SELECT series.tseries_name, seriesparts.tsubtitle, seriesparts.iseriespart, metadata.tcomment, metadata.sireleaseyear, metadata.tsourcemedium FROM series, seriesparts, metadata WHERE seriesparts.iseriesparts_id = :id AND seriesparts.iseries_id = series.iseries_id AND metadata.iseriespart_id = seriesparts.iseriesparts_id"); + genQ.bindValue(":id", seriesPartsId); + genQ.exec(); + while(genQ.next()){ + mSeriesNameLE->setText(genQ.value(0).toString()); + mSubtitleLE->setText(genQ.value(1).toString()); + mSeriesPartLE->setText(genQ.value(2).toString()); + mCommentLE->setText(genQ.value(3).toString()); + mReleaseYearLE->setText(genQ.value(4).toString()); + QString src = genQ.value(5).toString().toLower(); + if(src == "usenet"){ + mUsenetRB->setChecked(true); + } + if(src == "torrent"){ + mTorrentRB->setChecked(true); + } + } +} diff --git a/moviepropertiesdialog.h b/moviepropertiesdialog.h index 63b03bf..a409b0a 100644 --- a/moviepropertiesdialog.h +++ b/moviepropertiesdialog.h @@ -11,7 +11,9 @@ class QStandardItemModel; class MoviePropertiesDialog : public QDialog { public: explicit MoviePropertiesDialog(QWidget *parent = nullptr); - void setPartsId(int id); + + public slots: + void init(int seriesPartsId); private: void setupDialog(); diff --git a/moviewidget.cpp b/moviewidget.cpp index d86305b..d3990ca 100644 --- a/moviewidget.cpp +++ b/moviewidget.cpp @@ -84,7 +84,7 @@ void MovieWidget::setupWidget(){ mTopProxy->setFilterKeyColumn(1); mTopView->setModel(mTopProxy); connect(mTopView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &MovieWidget::topSelectionChanged); - connect(mTopView, &QTreeView::doubleClicked, [=] { mPropDlg->show(); }); + connect(mTopView, &QTreeView::doubleClicked, this, &MovieWidget::topDoubleClicked); mBottomView = new SmView; mBottomView->setAlternatingRowColors(true); @@ -407,6 +407,12 @@ void MovieWidget::bottomDoubleClicked(const QModelIndex &idx){ } } +void MovieWidget::topDoubleClicked(const QModelIndex &idx){ + int seriesPartsId = idx.data(SeriesPartIdRole).toInt(); + mPropDlg->init(seriesPartsId); + mPropDlg->show(); +} + void MovieWidget::playSelected(){ QModelIndexList selected = mBottomView->selectionModel()->selectedRows(); if(selected.isEmpty()){ diff --git a/moviewidget.h b/moviewidget.h index 43f05e6..3a6a795 100644 --- a/moviewidget.h +++ b/moviewidget.h @@ -29,6 +29,7 @@ class MovieWidget : public QWidget { void populateByGenres(); void topSelectionChanged(); void bottomDoubleClicked(const QModelIndex &idx); + void topDoubleClicked(const QModelIndex &idx); void playSelected(); void copyToClipboard(int role); |