From 06233888b033adc6e821331e6d1822e9807371ae Mon Sep 17 00:00:00 2001 From: am Date: Fri, 14 Aug 2009 18:53:25 +0000 Subject: -Implemented conlumnContains() in MovieModel -Implemented guess-function in ArchiveEditDialog -Cumulative size is now shown in statusBar() when selecting items in ArchiveViewWidget -Fixed EditArchiveItemDialog allowing duplicate titles (neccessary after creating iseriesno and ipartno) -Fixed windowTitle() when changing tabs git-svn-id: file:///var/svn/repos2/shemov/trunk@401 f440f766-f032-0410-8965-dc7d17de2ca0 --- archiveeditdialog.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'archiveeditdialog.cpp') diff --git a/archiveeditdialog.cpp b/archiveeditdialog.cpp index 925afe4..7b1604c 100644 --- a/archiveeditdialog.cpp +++ b/archiveeditdialog.cpp @@ -73,6 +73,9 @@ ArchiveEditDialog::ArchiveEditDialog(ListModel *genre, ListModel *actors, QWidge //button layout QHBoxLayout *buttonLayout = new QHBoxLayout; buttonLayout->addStretch(); + mGuess = new QPushButton(tr("Guess values")); + connect(mGuess, SIGNAL(clicked()), this, SLOT(guess())); + buttonLayout->addWidget(mGuess); mArchive = new QPushButton(tr("Archive")); connect(mArchive, SIGNAL(clicked()), this, SLOT(archive())); buttonLayout->addWidget(mArchive); @@ -174,6 +177,31 @@ void ArchiveEditDialog::archive(){ } } +void ArchiveEditDialog::guess(){ + QString fileName = mCoverEditor->movie(); + if(fileName.isEmpty()){ + return; + } + qDebug() << fileName; + QFileInfo fi(fileName); + QString rfn = fi.completeBaseName(); + rfn.chop(1); + QModelIndexList idx = mMovieModel->columnContains(rfn, MovieItem::Filename); + qDebug() << rfn; + if(idx.size() > 0){ + QModelIndex cur = idx.at(0); + QList actors = cur.data(MovieModel::ActorsRole).toList(); + foreach(QVariant v, actors){ + mFileWidget->setActor(v.toString()); + } + mFileWidget->setMovieTitle(cur.data(MovieModel::TitleBaseRole).toString()); + mFileWidget->setQuality(cur.data(MovieModel::QualityRole).toInt()); + mFileWidget->setSeriesNo(cur.data(MovieModel::SeriesNoRole).toInt()); + int partno = cur.data(MovieModel::PartNoRole).toInt() + 1; + mFileWidget->setPartNo(partno); + } +} + bool ArchiveEditDialog::checkInput(int genre, const QList &actors, const QStringList &files, const QString &title, const QString &movie, int quality) { if(genre < 0){ QMessageBox::critical(this, tr("Error"), tr("Genre is invalid")); -- cgit v1.2.3-70-g09d2