586 addRecentlyOpenedFile(path); |
586 addRecentlyOpenedFile(path); |
587 } |
587 } |
588 } |
588 } |
589 }); |
589 }); |
590 QObject::connect(ui.actionSettingsEditor, &QAction::triggered, [&]{ |
590 QObject::connect(ui.actionSettingsEditor, &QAction::triggered, [&]{ |
591 SettingsEditor* settingsEditor = new SettingsEditor{defaultKeyboardShortcuts, &mainWindow}; |
591 if (ui.mdiArea->findChildren<SettingsEditor*>().isEmpty()) { |
592 QObject::connect(&settingsChanged, &Signal::triggered, settingsEditor, &SettingsEditor::loadSettings); |
592 SettingsEditor* settingsEditor = new SettingsEditor{defaultKeyboardShortcuts, ui.mdiArea}; |
593 QObject::connect(settingsEditor, &SettingsEditor::settingsChanged, restoreSettings); |
593 QObject::connect(&settingsChanged, &Signal::triggered, settingsEditor, &SettingsEditor::loadSettings); |
594 auto subwindow = new QMdiSubWindow{ui.mdiArea}; |
594 QObject::connect(settingsEditor, &SettingsEditor::settingsChanged, restoreSettings); |
595 subwindow->setAttribute(Qt::WA_DeleteOnClose); |
595 settingsEditor->setAttribute(Qt::WA_DeleteOnClose); |
596 subwindow->setWidget(settingsEditor); |
596 settingsEditor->show(); |
597 subwindow->show(); |
597 } |
598 }); |
598 }); |
599 QObject::connect(ui.actionQuit, &QAction::triggered, &mainWindow, &QMainWindow::close); |
599 QObject::connect(ui.actionQuit, &QAction::triggered, &mainWindow, &QMainWindow::close); |
600 #if 0 |
600 #if 0 |
601 QObject::connect(ui.actionAdjustGridToView, &QAction::triggered, [&]{ |
601 QObject::connect(ui.actionAdjustGridToView, &QAction::triggered, [&]{ |
602 if (ModelData* data = currentModelData(&ui, &documents)) { |
602 if (ModelData* data = currentModelData(&ui, &documents)) { |