diff --git a/ChangeLog.txt b/ChangeLog.txt index c90a80836..82eed9266 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -19,7 +19,8 @@ - [#543] Detail loses details. - [#548] Bug Detail tool. Case when seam allowance is wrong. - Called the main app in console mode doesn't show opening file error in some cases. -- [#553] Tape.exe crash. Issue with the Search field. +- [#553] Tape.exe crash. Issue with the Search field. +- [#569] Tape app. Options that open new file open new instance even if a user doesn't want this. # Version 0.4.4 April 12, 2016 - Updated measurement templates with all measurements. Added new template Aldrich/Women measurements. diff --git a/src/app/tape/tmainwindow.cpp b/src/app/tape/tmainwindow.cpp index b850a6a2a..c5c220241 100644 --- a/src/app/tape/tmainwindow.cpp +++ b/src/app/tape/tmainwindow.cpp @@ -372,79 +372,57 @@ void TMainWindow::FileNew() //--------------------------------------------------------------------------------------------------------------------- void TMainWindow::OpenIndividual() { - if (m == nullptr) - { - const QString filter = tr("Individual measurements (*.vit);;Standard measurements (*.vst);;All files (*.*)"); - //Use standard path to individual measurements - const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); - Open(pathTo, filter); - } - else - { - qApp->NewMainWindow(); - qApp->MainWindow()->OpenIndividual(); - } + const QString filter = tr("Individual measurements (*.vit);;Standard measurements (*.vst);;All files (*.*)"); + //Use standard path to individual measurements + const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); + + Open(pathTo, filter); } //--------------------------------------------------------------------------------------------------------------------- void TMainWindow::OpenStandard() { - if (m == nullptr) - { - const QString filter = tr("Standard measurements (*.vst);;Individual measurements (*.vit);;All files (*.*)"); - //Use standard path to standard measurements - const QString pathTo = qApp->TapeSettings()->GetPathStandardMeasurements(); - Open(pathTo, filter); - } - else - { - qApp->NewMainWindow(); - qApp->MainWindow()->OpenStandard(); - } + const QString filter = tr("Standard measurements (*.vst);;Individual measurements (*.vit);;All files (*.*)"); + //Use standard path to standard measurements + const QString pathTo = qApp->TapeSettings()->GetPathStandardMeasurements(); + + Open(pathTo, filter); } //--------------------------------------------------------------------------------------------------------------------- void TMainWindow::OpenTemplate() { - if (m == nullptr) - { - const QString filter = tr("Measurements (*.vst *.vit);;All files (*.*)"); - //Use standard path to template files - const QString pathTo = qApp->TapeSettings()->GetPathTemplate(); - Open(pathTo, filter); + const QString filter = tr("Measurements (*.vst *.vit);;All files (*.*)"); + //Use standard path to template files + const QString pathTo = qApp->TapeSettings()->GetPathTemplate(); - if (m != nullptr) - {// The file was opened. - SetCurrentFile(""); // Force user to to save new file - lock.reset();// remove lock from template - } - } - else - { - qApp->NewMainWindow(); - qApp->MainWindow()->OpenTemplate(); + Open(pathTo, filter); + + if (m != nullptr) + {// The file was opened. + SetCurrentFile(""); // Force user to to save new file + lock.reset();// remove lock from template } } //--------------------------------------------------------------------------------------------------------------------- void TMainWindow::CreateFromExisting() { - if (m == nullptr) - { - const QString filter = tr("Individual measurements (*.vit)"); - //Use standard path to standard measurements - const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); - const QString mPath = QFileDialog::getOpenFileName(this, tr("Select file"), pathTo, filter); + const QString filter = tr("Individual measurements (*.vit)"); + //Use standard path to standard measurements + const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); + const QString mPath = QFileDialog::getOpenFileName(this, tr("Select file"), pathTo, filter); - if (not mPath.isEmpty()) + if (not mPath.isEmpty()) + { + if (m == nullptr) { LoadFromExistingFile(mPath); } - } - else - { - qApp->NewMainWindow(); - qApp->MainWindow()->CreateFromExisting(); + else + { + qApp->NewMainWindow()->CreateFromExisting(); + } } } @@ -2337,13 +2315,16 @@ void TMainWindow::Open(const QString &pathTo, const QString &filter) { const QString mPath = QFileDialog::getOpenFileName(this, tr("Open file"), pathTo, filter); - if (mPath.isEmpty()) + if (not mPath.isEmpty()) { - return; - } - else - { - LoadFile(mPath); + if (m == nullptr) + { + LoadFile(mPath); + } + else + { + qApp->NewMainWindow()->LoadFile(mPath); + } } }