diff --git a/cedit.cpp b/cedit.cpp index e50c04f..22976f7 100644 --- a/cedit.cpp +++ b/cedit.cpp @@ -89,6 +89,7 @@ void cEdit::setSerie(cSerie* lpSerie) return; ui->m_lpName->setText(lpSerie->seriesName()); + ui->m_lpFirstAired->setDate(lpSerie->firstAired()); ui->m_lpCliffhanger->setChecked(lpSerie->cliffhanger()); ui->m_lpDownloadLink->setText(lpSerie->download()); @@ -279,3 +280,8 @@ void cEdit::on_m_lpCliffhanger_clicked() { m_lpSerie->setCliffhanger(ui->m_lpCliffhanger->checkState() == Qt::Checked); } + +void cEdit::on_m_lpFirstAired_dateChanged(const QDate &date) +{ + m_lpSerie->setFirstAired(date); +} diff --git a/cedit.h b/cedit.h index eb8623e..4dece49 100644 --- a/cedit.h +++ b/cedit.h @@ -35,6 +35,8 @@ private slots: void on_m_lpCliffhanger_clicked(); + void on_m_lpFirstAired_dateChanged(const QDate &date); + private: Ui::cEdit* ui; bool m_bLoaded; diff --git a/cedit.ui b/cedit.ui index 61dfe2a..02483fe 100644 --- a/cedit.ui +++ b/cedit.ui @@ -39,6 +39,16 @@ + + + + Year: + + + + + + @@ -147,8 +157,8 @@ 0 0 - 209 - 174 + 756 + 241 diff --git a/cmainwindow.cpp b/cmainwindow.cpp index 703ff67..c31eaed 100644 --- a/cmainwindow.cpp +++ b/cmainwindow.cpp @@ -29,6 +29,7 @@ #include #include +#include cMainWindow::cMainWindow(QWidget *parent) : @@ -57,6 +58,8 @@ cMainWindow::cMainWindow(QWidget *parent) : ui->m_lpSeriesList2->setModel(m_lpSeriesListModel); ui->m_lpSeriesList2->setItemDelegate(new cSeasonDelegate(ui->m_lpSeriesList2)); + ui->m_lpSeriesList1->header()->setSectionResizeMode(2, QHeaderView::Stretch); + loadDB(); displaySeries(); @@ -71,6 +74,23 @@ cMainWindow::cMainWindow(QWidget *parent) : if(iX != -1 && iY != -1) move(iX, iY); + qint16 iWindowWidth = iWidth; + qint16 iSubtract = 20; + + if(settings.value("main/maximized").toBool()) + iWindowWidth = QApplication::desktop()->geometry().width(); + + qint16 iWidth1 = 0; + qint16 iWidth2; + + for(int z = 0;z < 3;z++) + iWidth1 += ui->m_lpSeriesList1->columnWidth(z); + + iWidth1 += 2; + iWidth2 = iWindowWidth-iSubtract-iWidth1; + + ui->m_lpSplitter->setSizes(QList() << iWidth1 << iWidth2); + delete lpDialog; connect(ui->m_lpSeriesList1->selectionModel(), &QItemSelectionModel::selectionChanged, this, &cMainWindow::selectionChanged1); @@ -173,7 +193,7 @@ void cMainWindow::loadDB() cSeason* lpSeason; cEpisode* lpEpisode; - if(query.exec("SELECT serie.seriesID, serie.seriesName, serie.language, serie.banner, serie.overview, serie.firstAired, serie.network, serie.imdbid, serie.id, serie.contentRating, serie.rating, serie.ratingCount, serie.runtime, serie.status, serie.download, serie.cliffhanger, serie.actor, serie.genre, episode.episodeID, episode.episodeName, episode.episodeNumber, episode.firstAired, episode.imdbid, episode.language, episode.overview, episode.productioncode, episode.rating, episode.ratingCount, episode.seasonNumber, episode.seasonID, episode.seriesID, episode.state, episode.filename, episode.thumb_height, episode.thumb_width, episode.director, episode.gueststars, episode.episode_writer FROM serie, episode WHERE serie.id = episode.seriesID ORDER BY serie.seriesName, episode.seasonNumber, episode.episodeNumber;")) + if(query.exec("SELECT serie.seriesID, serie.seriesName, serie.language, serie.banner, serie.overview, serie.firstAired, serie.network, serie.imdbid, serie.id, serie.contentRating, serie.rating, serie.ratingCount, serie.runtime, serie.status, serie.download, serie.cliffhanger, serie.actor, serie.genre, episode.episodeID, episode.episodeName, episode.episodeNumber, episode.firstAired, episode.imdbid, episode.language, episode.overview, episode.productioncode, episode.rating, episode.ratingCount, episode.seasonNumber, episode.seasonID, episode.seriesID, episode.state, episode.filename, episode.thumb_height, episode.thumb_width, episode.director, episode.gueststars, episode.episode_writer FROM serie LEFT JOIN episode ON serie.id = episode.seriesID ORDER BY serie.seriesName, episode.seasonNumber, episode.episodeNumber;")) { while(query.next()) { @@ -422,12 +442,15 @@ void cMainWindow::displaySeries() lpItems.at(2)->setToolTip(szOpen); } + for(int z = 3;z < m_lpSeriesListModel->columnCount();z++) + { + ui->m_lpSeriesList1->setColumnWidth(z, 0); + ui->m_lpSeriesList2->resizeColumnToContents(z); + } + for(int z = 2;z >= 0;z--) ui->m_lpSeriesList1->resizeColumnToContents(z); - for(int z = 3;z < m_lpSeriesListModel->columnCount();z++) - ui->m_lpSeriesList2->resizeColumnToContents(z); - if(selected.isValid()) { ui->m_lpSeriesList1->scrollTo(selected, QAbstractItemView::PositionAtCenter); @@ -890,7 +913,7 @@ void cMainWindow::picturesDone() m_lpMessageDialog = 0; } -void cMainWindow::on_m_lpSeriesList1_pressed(const QModelIndex &index) +void cMainWindow::on_m_lpSeriesList1_pressed(const QModelIndex &/*index*/) { switch(QGuiApplication::mouseButtons()) { @@ -910,7 +933,7 @@ void cMainWindow::on_m_lpSeriesList1_pressed(const QModelIndex &index) } } -void cMainWindow::on_m_lpSeriesList2_pressed(const QModelIndex &index) +void cMainWindow::on_m_lpSeriesList2_pressed(const QModelIndex &/*index*/) { switch(QGuiApplication::mouseButtons()) { diff --git a/cmainwindow.h b/cmainwindow.h index e4f35d7..b76842b 100644 --- a/cmainwindow.h +++ b/cmainwindow.h @@ -30,6 +30,7 @@ public: explicit cMainWindow(QWidget *parent = 0); ~cMainWindow(); + void initDone(); private slots: void on_m_lpSeriesList1_customContextMenuRequested(const QPoint &pos); void on_m_lpSeriesList1_doubleClicked(const QModelIndex &index); @@ -85,7 +86,7 @@ private: bool runEdit(cSerie *lpSerie, QString& szDownload); protected: - void closeEvent(QCloseEvent * event); + void closeEvent(QCloseEvent *event); }; #endif // CMAINWINDOW_H diff --git a/cmainwindow.ui b/cmainwindow.ui index d1fc22a..4700d2d 100644 --- a/cmainwindow.ui +++ b/cmainwindow.ui @@ -58,22 +58,25 @@ true - 10 + 37 - true + false - 3 + 4 0 Qt::CustomContextMenu + + Qt::ScrollBarAsNeeded + Qt::ScrollBarAlwaysOn @@ -86,6 +89,9 @@ QAbstractItemView::ExtendedSelection + + false + true diff --git a/cupdatethread.cpp b/cupdatethread.cpp index ccbf611..01554ba 100644 --- a/cupdatethread.cpp +++ b/cupdatethread.cpp @@ -51,6 +51,7 @@ void cUpdateThread::run() lpEpisodeNew->setState(lpEpisode->state()); } } + lpSerieNew->setCliffhanger(lpSerie->cliffhanger()); lpSerie->del(m_db); lpSerieNew->save(m_db); }