summaryrefslogtreecommitdiffstats
path: root/newmoviewizard.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2012-12-30 10:44:04 +0100
committerArno <am@disconnect.de>2012-12-30 10:44:04 +0100
commita069898249b863b0982b1807afa8d0b0912b496e (patch)
tree062d624f50110a0057ecd781c7fe4a67df34ae5b /newmoviewizard.cpp
parent2a56e7483e29b26808e796a41be8ac4fc08926fb (diff)
downloadSheMov-a069898249b863b0982b1807afa8d0b0912b496e.tar.gz
SheMov-a069898249b863b0982b1807afa8d0b0912b496e.tar.bz2
SheMov-a069898249b863b0982b1807afa8d0b0912b496e.zip
Allow adding files to existing Seriesparts with subtitles
With siterips it's possible to have several files with the same subtitle. Now we ask if we want to add to it or cancel.
Diffstat (limited to 'newmoviewizard.cpp')
-rw-r--r--newmoviewizard.cpp42
1 files changed, 26 insertions, 16 deletions
diff --git a/newmoviewizard.cpp b/newmoviewizard.cpp
index dfeb538..7f1f869 100644
--- a/newmoviewizard.cpp
+++ b/newmoviewizard.cpp
@@ -87,32 +87,42 @@ void NewMovieWizard::accept(){
}else{
seriesPartIdx = seriesModel->find(subTitle, SeriesTreeModel::Subtitle, seriesIdx);
}
+
+ bool addSeriesPart = true;
if(seriesPartIdx.isValid()){
if(hasPartNo){
QString error = QString(tr("Already have part %1 of %2")).arg(seriesno).arg(series);
QMessageBox::critical(this, tr("Error"), error);
return;
}else{
- QString error = QString(tr("Already have a part with subtitle %1")).arg(seriesPartIdx.data(SeriesTreeModel::SubtitleRole).toString());
- QMessageBox::critical(this, tr("Error"), error);
- return;
+ // this is getting a little convoluted now
+ QString question = QString(tr("Already have a part with subtitle %1. To add current file click OK.")).arg(seriesPartIdx.data(SeriesTreeModel::SubtitleRole).toString());
+ int r = QMessageBox::question(this, tr("Question"), question, QMessageBox::Ok | QMessageBox::Cancel);
+ if(r == QMessageBox::Ok){
+ addSeriesPart = false;
+ }else{
+ return;
+ }
}
}
- if(!seriesModel->addSeriesPart(seriesno, seriesIdx, subTitle)){
- QMessageBox::critical(this, tr("Error"), tr("Failed to create series part!"));
- return;
- }
- //model has changed, so we need to reevaluate...
- if(hasPartNo){
- seriesPartIdx = seriesModel->find(seriesno, SeriesTreeModel::SeriesPart, seriesIdx);
- }else{
- seriesPartIdx = seriesModel->find(subTitle, SeriesTreeModel::Subtitle, seriesIdx);
+ // we don't have an already existing SeriesPart, so add it
+ if(addSeriesPart){
+ if(!seriesModel->addSeriesPart(seriesno, seriesIdx, subTitle)){
+ QMessageBox::critical(this, tr("Error"), tr("Failed to create series part!"));
+ return;
+ }
+ //model has changed, so we need to reevaluate...
+ if(hasPartNo){
+ seriesPartIdx = seriesModel->find(seriesno, SeriesTreeModel::SeriesPart, seriesIdx);
+ }else{
+ seriesPartIdx = seriesModel->find(subTitle, SeriesTreeModel::Subtitle, seriesIdx);
+ }
+ if(!seriesPartIdx.isValid()){
+ QMessageBox::critical(this, tr("Error"), tr("Strange. Could not find series part! Cowardly bailing out."));
+ return;
+ }
}
- if(!seriesPartIdx.isValid()){
- QMessageBox::critical(this, tr("Error"), tr("Strange. Could not find series part! Cowardly bailing out."));
- return;
- }
int seriesPartId = seriesPartIdx.data(SeriesTreeModel::SeriesPartIdRole).toInt();
//handle files