diff options
-rw-r--r-- | movieinfopage.cpp | 6 | ||||
-rw-r--r-- | movieinfopage.h | 1 | ||||
-rw-r--r-- | moviemappingpage.cpp | 7 | ||||
-rw-r--r-- | newmoviewizard.h | 3 |
4 files changed, 15 insertions, 2 deletions
diff --git a/movieinfopage.cpp b/movieinfopage.cpp index 4b02b05..22a2b65 100644 --- a/movieinfopage.cpp +++ b/movieinfopage.cpp @@ -28,6 +28,7 @@ #include <QApplication> #include "movieinfopage.h" +#include "newmoviewizard.h" #include "wizardtreemodel.h" #include "smtreeview.h" #include "delegates.h" @@ -249,9 +250,12 @@ bool MovieInfoPage::extractFromTitle(const QString &title){ QString subtitle = titleMatch.captured(2).simplified().toLower(); QDate created = QDate::fromString(titleMatch.captured(3), Qt::ISODate); QStringList actors = titleMatch.captured(1).split('&'); + QStringList aRes; for(const auto &a : std::as_const(actors)){ - mPossbileActors.append(a.simplified().toLower()); + aRes.append(a.simplified().toLower()); } + auto wiz = static_cast<NewMovieWizard*>(wizard()); + wiz->setPossibleActors(aRes); mSubtitle->setText(subtitle); mCreationDate->setDate(created); return true; diff --git a/movieinfopage.h b/movieinfopage.h index d0354b2..479194e 100644 --- a/movieinfopage.h +++ b/movieinfopage.h @@ -64,7 +64,6 @@ class MovieInfoPage : public QWizardPage { QString mCurTitle; QString mCurSubtitle; QStringList mOrigins; - QStringList mPossbileActors; int mCurSeriesno; int mCurQuality; }; diff --git a/moviemappingpage.cpp b/moviemappingpage.cpp index 8b7c328..e7d8f45 100644 --- a/moviemappingpage.cpp +++ b/moviemappingpage.cpp @@ -10,6 +10,7 @@ #include <QSettings> #include "moviemappingpage.h" +#include "newmoviewizard.h" #include "smglobals.h" MovieMappingPage::MovieMappingPage(const QString &table, QWidget *parent) : QWizardPage(parent), mTable(table){ @@ -35,6 +36,12 @@ void MovieMappingPage::initializePage(){ } mWidget->fillCompleter(actors); mWidget->setDecorationItem(SmGlobals::instance()->iconFor("actor")); + auto wiz = static_cast<NewMovieWizard*>(wizard()); + QStringList possibleActors = wiz->getPossibleActors(); + if(!possibleActors.empty()){ + mWidget->clear(); + mWidget->setCurrentItems(possibleActors); + } }else if(mTable.toLower() == "genres"){ QStringList genres; QSqlQuery genresQ("SELECT tgenrename FROM genres", db); diff --git a/newmoviewizard.h b/newmoviewizard.h index aef50f5..a8f4908 100644 --- a/newmoviewizard.h +++ b/newmoviewizard.h @@ -20,6 +20,8 @@ class NewMovieWizard : public QWizard { explicit NewMovieWizard(QWidget *parent = nullptr); virtual void accept(); virtual void reject(); + void setPossibleActors(const QStringList &list) { mPossibleActors = list; }; + const QStringList &getPossibleActors() { return mPossibleActors; }; MovieInfoPage *infoPage() { return mInfoPage; } MovieMappingPage *actorPage() { return mActorPage; } MovieMappingPage *genrePage() { return mGenrePage; } @@ -30,6 +32,7 @@ class NewMovieWizard : public QWizard { MovieMappingPage *mActorPage; MovieMappingPage *mGenrePage; MovieMetadataPage *mMetadataPage; + QStringList mPossibleActors; }; #endif |