diff --git a/cmainwindow.cpp b/cmainwindow.cpp index 1023f6b..e85f41a 100644 --- a/cmainwindow.cpp +++ b/cmainwindow.cpp @@ -1285,7 +1285,7 @@ void cMainWindow::onActionMovieAdd() settings.setValue("movieSearch/x", QVariant::fromValue(lpSearch->x())); settings.setValue("movieSearch/y", QVariant::fromValue(lpSearch->y())); - qint32 id = lpSearch->id(); + QList idList = lpSearch->id(); QString szPlaceholder = lpSearch->placeholderName(); bool bPlaceholder = lpSearch->placeholder(); qint16 iYear = lpSearch->year(); @@ -1294,37 +1294,49 @@ void cMainWindow::onActionMovieAdd() cMovie* lpMovie = 0; - cMessageAnimateDialog* lpDialog = new cMessageAnimateDialog(this); - lpDialog->setTitle("Refresh"); - lpDialog->setMessage("Loading"); - lpDialog->show(); - if(!bPlaceholder) { - if(id == -1) - return; + for(int x = 0;x < idList.count();x++) + { + qint32 id = idList.at(x); + if(id != -1) + { + cMessageAnimateDialog* lpDialog = new cMessageAnimateDialog(this); + lpDialog->setTitle("Refresh"); + lpDialog->setMessage("Loading"); + lpDialog->show(); - cTheMovieDBV3 movieDB3; + cTheMovieDBV3 movieDB3; - lpMovie = movieDB3.loadMovie(id, "de-DE"); - if(!lpMovie) - lpMovie = movieDB3.loadMovie(id, "en"); + lpMovie = movieDB3.loadMovie(id, "de-DE"); + if(!lpMovie) + lpMovie = movieDB3.loadMovie(id, "en"); - delete lpDialog; + delete lpDialog; - if(!runMovieEdit(lpMovie)) - return; + if(runMovieEdit(lpMovie)) + { + lpDialog = new cMessageAnimateDialog(this); + lpDialog->setTitle("Update"); + lpDialog->setMessage("Updating"); + lpDialog->show(); - lpDialog = new cMessageAnimateDialog(this); - lpDialog->setTitle("Update"); - lpDialog->setMessage("Updating"); - lpDialog->show(); + lpMovie->loadFanart(); + lpMovie->save(m_db); - lpMovie->loadFanart(); - lpMovie->save(m_db); + delete lpDialog; + } + delete lpMovie; + } + } } else { + cMessageAnimateDialog* lpDialog = new cMessageAnimateDialog(this); + lpDialog->setTitle("Refresh"); + lpDialog->setMessage("Loading"); + lpDialog->show(); + lpMovie = new cMovie; lpMovie->setMovieTitle(szPlaceholder); @@ -1343,12 +1355,12 @@ void cMainWindow::onActionMovieAdd() lpMovie->setMovieID(iMax); lpMovie->setReleaseDate(QString("%1-01-01").arg(iYear)); lpMovie->save(m_db); + + delete lpDialog; } loadMoviesDB(); displayMovies(); - - delete lpDialog; } void cMainWindow::onActionUpdateAll() diff --git a/cmoviesearch.cpp b/cmoviesearch.cpp index 62d8a3b..8e0b1ba 100644 --- a/cmoviesearch.cpp +++ b/cmoviesearch.cpp @@ -80,16 +80,23 @@ void cMovieSearch::on_m_lpSearchButton_clicked() delete lpDialog; } -qint32 cMovieSearch::id() +QList cMovieSearch::id() { + QList idList; + if(!ui->m_lpResults->selectedItems().count()) { qint32 iID = ui->m_lpSearch->text().toInt(); if(iID) - return(iID); - return(-1); + idList.append(iID); + return(idList); } - return(ui->m_lpResults->selectedItems().at(0)->data(0, Qt::UserRole).toInt()); + else + { + for(int x = 0;x < ui->m_lpResults->selectedItems().count();x++) + idList.append(ui->m_lpResults->selectedItems().at(x)->data(0, Qt::UserRole).toInt()); + } + return(idList); } QString cMovieSearch::placeholderName() diff --git a/cmoviesearch.h b/cmoviesearch.h index f0d386a..ee595e9 100644 --- a/cmoviesearch.h +++ b/cmoviesearch.h @@ -2,6 +2,8 @@ #define CMOVIESEARCH_H #include +#include + namespace Ui { class cMovieSearch; @@ -15,8 +17,8 @@ public: explicit cMovieSearch(QWidget *parent = 0); ~cMovieSearch(); - qint32 id(); - QString placeholderName(); + QList id(); + QString placeholderName(); bool placeholder(); qint16 year(); @@ -28,9 +30,8 @@ private slots: void on_m_lpPlaceholderName_textChanged(const QString &arg1); void on_m_lpYear_valueChanged(int arg1); - void on_m_lpResults_clicked(const QModelIndex &index); - - void on_m_lpResults_doubleClicked(const QModelIndex &index); + void on_m_lpResults_clicked(const QModelIndex &index); + void on_m_lpResults_doubleClicked(const QModelIndex &index); private: Ui::cMovieSearch *ui; diff --git a/cmoviesearch.ui b/cmoviesearch.ui index 3c2087d..e30bfb7 100644 --- a/cmoviesearch.ui +++ b/cmoviesearch.ui @@ -54,6 +54,9 @@ + + QAbstractItemView::ExtendedSelection + 3