diff --git a/armoury/include/mainwindow.h b/armoury/include/mainwindow.h index ff8000d..30849a1 100644 --- a/armoury/include/mainwindow.h +++ b/armoury/include/mainwindow.h @@ -20,6 +20,9 @@ class MainWindow : public NovusMainWindow public: explicit MainWindow(GameData* data); +protected: + void setupAdditionalMenus(QMenuBar *menuBar) override; + private: SingleGearView* gearView = nullptr; FullModelViewer* fullModelViewer = nullptr; diff --git a/armoury/src/mainwindow.cpp b/armoury/src/mainwindow.cpp index 8644b06..b16e196 100644 --- a/armoury/src/mainwindow.cpp +++ b/armoury/src/mainwindow.cpp @@ -32,15 +32,7 @@ MainWindow::MainWindow(GameData *in_data) , cache(FileCache{*in_data}) { setMinimumSize(QSize(800, 600)); - - auto toolsMenu = menuBar()->addMenu(QStringLiteral("Tools")); - - auto cmpEditorMenu = toolsMenu->addAction(QStringLiteral("CMP Editor")); - cmpEditorMenu->setIcon(QIcon::fromTheme(QStringLiteral("document-edit"))); - connect(cmpEditorMenu, &QAction::triggered, [=] { - auto cmpEditor = new CmpEditor(in_data); - cmpEditor->show(); - }); + setupMenubar(); auto dummyWidget = new QWidget(); setCentralWidget(dummyWidget); @@ -69,4 +61,16 @@ MainWindow::MainWindow(GameData *in_data) gearView->setFMVAvailable(!loading); }); fullModelViewer->show(); -} \ No newline at end of file +} + +void MainWindow::setupAdditionalMenus(QMenuBar *menuBar) +{ + auto toolsMenu = menuBar->addMenu(QStringLiteral("Tools")); + + auto cmpEditorMenu = toolsMenu->addAction(QStringLiteral("CMP Editor")); + cmpEditorMenu->setIcon(QIcon::fromTheme(QStringLiteral("document-edit"))); + connect(cmpEditorMenu, &QAction::triggered, [this] { + auto cmpEditor = new CmpEditor(&data); + cmpEditor->show(); + }); +}