summaryrefslogtreecommitdiffstats
path: root/newmoviewizard.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2011-05-07 09:38:40 +0200
committerArno <am@disconnect.de>2011-05-07 09:38:40 +0200
commit25bd284eec824853e211c84861de4246ffbf6d3a (patch)
treee83c892a36a24d943006231201623b0b6d767060 /newmoviewizard.cpp
parent3cd7ca9ef0f2191ed0fe609c192c627430a07883 (diff)
downloadSheMov-25bd284eec824853e211c84861de4246ffbf6d3a.tar.gz
SheMov-25bd284eec824853e211c84861de4246ffbf6d3a.tar.bz2
SheMov-25bd284eec824853e211c84861de4246ffbf6d3a.zip
Implement additional title element for seriesparts
Series parts can now have an additional title elemet, the so called subtitle. Obviously that's not really a good name but it's the best I could come up with :)
Diffstat (limited to 'newmoviewizard.cpp')
-rw-r--r--newmoviewizard.cpp29
1 files changed, 22 insertions, 7 deletions
diff --git a/newmoviewizard.cpp b/newmoviewizard.cpp
index 17fadc8..88f0aab 100644
--- a/newmoviewizard.cpp
+++ b/newmoviewizard.cpp
@@ -25,6 +25,7 @@
#include <QFormLayout>
#include <QDate>
#include <QPlainTextEdit>
+#include <QFormLayout>
#include "newmoviewizard.h"
#include "smtreeitem.h"
@@ -70,13 +71,18 @@ void NewMovieWizard::accept(){
//handle seriespart
int seriesno = field("seriesNo").toInt();
+ bool hasPartNo = field("hasPartNo").toBool();
+ if(!hasPartNo){
+ seriesno = 0;
+ }
QModelIndex seriesPartIdx = seriesModel->find(seriesno, SeriesTreeModel::SeriesPart, seriesIdx);
if(seriesPartIdx.isValid()){
QString error = QString(tr("Already have part %1 of %2")).arg(seriesno).arg(series);
QMessageBox::critical(this, tr("Error"), error);
return;
}
- if(!seriesModel->addSeriesPart(seriesno, seriesIdx)){
+ QString subTitle = field("subtitle").toString();
+ if(!seriesModel->addSeriesPart(seriesno, seriesIdx, subTitle)){
QMessageBox::critical(this, tr("Error"), tr("Failed to create series part!"));
return;
}
@@ -190,13 +196,12 @@ void MovieInfoPage::setupGui(){
fileButtonLayout->addWidget(mRemoveFile);
connect(mRemoveFile, SIGNAL(clicked()), this, SLOT(removeFile()));
- //movie name
- QHBoxLayout *movieTitleLayout = new QHBoxLayout;
- QLabel *l1 = new QLabel(tr("Movie &title"));
+ //movie name + subtitle
+ QFormLayout *movieTitleLayout = new QFormLayout;
mTitle = new QLineEdit;
- l1->setBuddy(mTitle);
- movieTitleLayout->addWidget(l1);
- movieTitleLayout->addWidget(mTitle);
+ mSubtitle = new QLineEdit;
+ movieTitleLayout->addRow(tr("Movie &title"), mTitle);
+ movieTitleLayout->addRow(tr("Movie &subtitle"), mSubtitle);
SeriesTreeModel *seriesModel = static_cast<SeriesTreeModel*>(SmGlobals::instance()->model("SeriesModel"));
QCompleter *completer = new QCompleter(this);
completer->setModel(seriesModel);
@@ -239,6 +244,10 @@ void MovieInfoPage::setupGui(){
QHBoxLayout *dvdLayout = new QHBoxLayout;
mOnDvd = new QCheckBox(tr("Movie is on DVD"));
dvdLayout->addWidget(mOnDvd);
+ mHasPartno = new QCheckBox(tr("Movie has part no."));
+ mHasPartno->setChecked(true);
+ connect(mHasPartno, SIGNAL(stateChanged(int)), this, SLOT(hasPartnoStateChanged(int)));
+ dvdLayout->addWidget(mHasPartno);
dvdLayout->addStretch();
QLabel *l6 = new QLabel(tr("Dvd no."));
dvdLayout->addWidget(l6);
@@ -274,12 +283,14 @@ void MovieInfoPage::setupGui(){
//expose data
registerField("title*", mTitle);
+ registerField("subtitle", mSubtitle);
registerField("seriesNo", mSeriesNo);
registerField("partNo", mPartno);
registerField("quality", mQuality);
registerField("dvdNo", mDvdNo);
registerField("onDvd", mOnDvd);
registerField("usePicViewer", mUsePicViewer);
+ registerField("hasPartNo", mHasPartno);
}
void MovieInfoPage::initializePage(){
@@ -451,6 +462,10 @@ void MovieInfoPage::itemClicked(const QModelIndex &index){
mPicViewer->raise();
}
+void MovieInfoPage::hasPartnoStateChanged(int state){
+ mPartno->setEnabled(state == Qt::Checked);
+}
+
MovieMappingPage::MovieMappingPage(const QString &table, QWidget *parent) : QWizardPage(parent){
QString title = QString(tr("Edit %1")).arg(table);
QString subTitle = QString(tr("Edit %1 by adding them from the text field below")).arg(table);