diff --git a/src/app/puzzle/vpapplication.cpp b/src/app/puzzle/vpapplication.cpp index 0d3d0e39f..d7ab56eec 100644 --- a/src/app/puzzle/vpapplication.cpp +++ b/src/app/puzzle/vpapplication.cpp @@ -334,9 +334,7 @@ auto VPApplication::MainWindow()-> VPMainWindow * Clean(); if (mainWindows.isEmpty()) { - VPCommandLinePtr cmd; - VPCommandLine::ProcessInstance(cmd, QStringList()); - NewMainWindow(VPCommandLinePtr()); + NewMainWindow(); } return mainWindows[0]; } @@ -354,15 +352,17 @@ auto VPApplication::MainWindows() -> QList } //--------------------------------------------------------------------------------------------------------------------- -VPMainWindow *VPApplication::NewMainWindow() +auto VPApplication::NewMainWindow() -> VPMainWindow * { - return NewMainWindow(VPCommandLinePtr()); + VPCommandLinePtr cmd; + VPCommandLine::ProcessInstance(cmd, {ConstFirst(VPApplication::arguments())}); + return NewMainWindow(cmd); } //--------------------------------------------------------------------------------------------------------------------- auto VPApplication::NewMainWindow(const VPCommandLinePtr &cmd) -> VPMainWindow * { - VPMainWindow *puzzle = new VPMainWindow(cmd); + auto *puzzle = new VPMainWindow(cmd); mainWindows.prepend(puzzle); if (not cmd->IsTestModeEnabled()) { diff --git a/src/app/puzzle/vpmainwindow.cpp b/src/app/puzzle/vpmainwindow.cpp index 82319768a..2ea07d45e 100644 --- a/src/app/puzzle/vpmainwindow.cpp +++ b/src/app/puzzle/vpmainwindow.cpp @@ -260,7 +260,14 @@ void VPMainWindow::SetupMenu() // Add dock properties action QAction* actionDockWidgetToolOptions = ui->dockWidgetProperties->toggleViewAction(); - ui->menuWindows->addAction(actionDockWidgetToolOptions); + ui->menuEdit->addAction(actionDockWidgetToolOptions); + + // Window + connect(ui->menuWindow, &QMenu::aboutToShow, this, [this]() + { + ui->menuWindow->clear(); + CreateWindowMenu(ui->menuWindow); + }); } //--------------------------------------------------------------------------------------------------------------------- @@ -935,16 +942,7 @@ void VPMainWindow::CreateWindowMenu(QMenu *menu) //--------------------------------------------------------------------------------------------------------------------- void VPMainWindow::on_actionNew_triggered() { - // just for test purpuses, to be removed: - QMessageBox msgBox; - msgBox.setText("TODO VPMainWindow::New"); - int ret = msgBox.exec(); - - Q_UNUSED(ret); - - // TODO - - + VPApplication::VApp()->NewMainWindow(); } //--------------------------------------------------------------------------------------------------------------------- @@ -1119,19 +1117,6 @@ void VPMainWindow::on_actionImportRawLayout_triggered() } -//--------------------------------------------------------------------------------------------------------------------- -void VPMainWindow::on_actionCloseLayout_triggered() -{ - // just for test purpuses, to be removed: - QMessageBox msgBox; - msgBox.setText("TODO VPMainWindow::CloseLayout"); - int ret = msgBox.exec(); - - Q_UNUSED(ret); - - // TODO -} - //--------------------------------------------------------------------------------------------------------------------- void VPMainWindow::on_actionAboutQt_triggered() { diff --git a/src/app/puzzle/vpmainwindow.h b/src/app/puzzle/vpmainwindow.h index 9f25b8ae3..ded4ace04 100644 --- a/src/app/puzzle/vpmainwindow.h +++ b/src/app/puzzle/vpmainwindow.h @@ -124,13 +124,6 @@ private slots: */ void on_actionImportRawLayout_triggered(); - /** - * @brief on_actionCloseLayout_triggered When the menu action - * File > Close Layout is triggered. - * The slot is automatically connected through name convention. - */ - void on_actionCloseLayout_triggered(); - /** * @brief on_actionAboutQt_triggered When the menu action Help > About Qt * is triggered. diff --git a/src/app/puzzle/vpmainwindow.ui b/src/app/puzzle/vpmainwindow.ui index 468c4b6bc..ecd727620 100644 --- a/src/app/puzzle/vpmainwindow.ui +++ b/src/app/puzzle/vpmainwindow.ui @@ -61,11 +61,10 @@ - + - &Windows + &Window - @@ -77,7 +76,7 @@ - + @@ -1607,14 +1606,6 @@ Ctrl+Shift+S - - - true - - - &Close Layout - - true