Resolved issue #569. Tape app. Options that open new file open new instance

even if a user doesn't want this.
(grafted from a74c6d9fac8dd6920d7d0914e68770b893920380)

--HG--
branch : develop
This commit is contained in:
Roman Telezhynskyi 2016-09-27 12:27:52 +03:00
parent 014ce1e45e
commit de1c7cd9f3
2 changed files with 41 additions and 59 deletions

View File

@ -63,6 +63,7 @@
- [#548] Bug Detail tool. Case when seam allowance is wrong. - [#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. - 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 # Version 0.4.4 April 12, 2016
- Updated measurement templates with all measurements. Added new template Aldrich/Women measurements. - Updated measurement templates with all measurements. Added new template Aldrich/Women measurements.

View File

@ -384,45 +384,30 @@ void TMainWindow::FileNew()
//--------------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------
void TMainWindow::OpenIndividual() void TMainWindow::OpenIndividual()
{ {
if (m == nullptr)
{
const QString filter = tr("Individual measurements (*.vit);;Standard measurements (*.vst);;All files (*.*)"); const QString filter = tr("Individual measurements (*.vit);;Standard measurements (*.vst);;All files (*.*)");
//Use standard path to individual measurements //Use standard path to individual measurements
const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements();
Open(pathTo, filter); Open(pathTo, filter);
}
else
{
qApp->NewMainWindow();
qApp->MainWindow()->OpenIndividual();
}
} }
//--------------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------
void TMainWindow::OpenStandard() void TMainWindow::OpenStandard()
{ {
if (m == nullptr)
{
const QString filter = tr("Standard measurements (*.vst);;Individual measurements (*.vit);;All files (*.*)"); const QString filter = tr("Standard measurements (*.vst);;Individual measurements (*.vit);;All files (*.*)");
//Use standard path to standard measurements //Use standard path to standard measurements
const QString pathTo = qApp->TapeSettings()->GetPathStandardMeasurements(); const QString pathTo = qApp->TapeSettings()->GetPathStandardMeasurements();
Open(pathTo, filter); Open(pathTo, filter);
}
else
{
qApp->NewMainWindow();
qApp->MainWindow()->OpenStandard();
}
} }
//--------------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------
void TMainWindow::OpenTemplate() void TMainWindow::OpenTemplate()
{ {
if (m == nullptr)
{
const QString filter = tr("Measurements (*.vst *.vit);;All files (*.*)"); const QString filter = tr("Measurements (*.vst *.vit);;All files (*.*)");
//Use standard path to template files //Use standard path to template files
const QString pathTo = qApp->TapeSettings()->GetPathTemplate(); const QString pathTo = qApp->TapeSettings()->GetPathTemplate();
Open(pathTo, filter); Open(pathTo, filter);
if (m != nullptr) if (m != nullptr)
@ -430,33 +415,26 @@ void TMainWindow::OpenTemplate()
SetCurrentFile(""); // Force user to to save new file SetCurrentFile(""); // Force user to to save new file
lock.reset();// remove lock from template lock.reset();// remove lock from template
} }
}
else
{
qApp->NewMainWindow();
qApp->MainWindow()->OpenTemplate();
}
} }
//--------------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------
void TMainWindow::CreateFromExisting() void TMainWindow::CreateFromExisting()
{ {
if (m == nullptr)
{
const QString filter = tr("Individual measurements (*.vit)"); const QString filter = tr("Individual measurements (*.vit)");
//Use standard path to standard measurements //Use standard path to standard measurements
const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements(); const QString pathTo = qApp->TapeSettings()->GetPathIndividualMeasurements();
const QString mPath = QFileDialog::getOpenFileName(this, tr("Select file"), pathTo, filter); const QString mPath = QFileDialog::getOpenFileName(this, tr("Select file"), pathTo, filter);
if (not mPath.isEmpty()) if (not mPath.isEmpty())
{
if (m == nullptr)
{ {
LoadFromExistingFile(mPath); LoadFromExistingFile(mPath);
} }
}
else else
{ {
qApp->NewMainWindow(); qApp->NewMainWindow()->CreateFromExisting();
qApp->MainWindow()->CreateFromExisting(); }
} }
} }
@ -2522,13 +2500,16 @@ void TMainWindow::Open(const QString &pathTo, const QString &filter)
{ {
const QString mPath = QFileDialog::getOpenFileName(this, tr("Open file"), pathTo, filter); const QString mPath = QFileDialog::getOpenFileName(this, tr("Open file"), pathTo, filter);
if (mPath.isEmpty()) if (not mPath.isEmpty())
{ {
return; if (m == nullptr)
{
LoadFile(mPath);
} }
else else
{ {
LoadFile(mPath); qApp->NewMainWindow()->LoadFile(mPath);
}
} }
} }