Skip to content

Commit 09852f0

Browse files
committed
Add about program menu item
1 parent 7709a08 commit 09852f0

File tree

3 files changed

+22
-0
lines changed

3 files changed

+22
-0
lines changed

src/app/appmenubar.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,17 @@ AppMenuBar::AppMenuBar(QObject *parent) :
5454
m_fps60ModeItem->setChecked(false);
5555
m_editMenu->addItem(m_fps60ModeItem);
5656
connect(m_fps60ModeItem, &MenuItemModel::checkedChanged, this, &AppMenuBar::fps60ModeChanged);
57+
58+
// Help menu
59+
m_helpMenu = new MenuModel(m_model);
60+
m_helpMenu->setTitle(tr("&Help"));
61+
m_model->addMenu(m_helpMenu);
62+
63+
// Help -> About program
64+
m_aboutAppItem = new MenuItemModel(m_fileMenu);
65+
m_aboutAppItem->setText(tr("About program..."));
66+
m_helpMenu->addItem(m_aboutAppItem);
67+
connect(m_aboutAppItem, &MenuItemModel::clicked, this, &AppMenuBar::aboutAppTriggered);
5768
}
5869

5970
MenuBarModel *AppMenuBar::model() const

src/app/appmenubar.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ class AppMenuBar : public QObject
4646
void fileOpened(const QString &fileName);
4747
void turboModeChanged();
4848
void fps60ModeChanged();
49+
void aboutAppTriggered();
4950

5051
private:
5152
void openFile();
@@ -63,6 +64,9 @@ class AppMenuBar : public QObject
6364
uicomponents::MenuModel *m_editMenu = nullptr;
6465
uicomponents::MenuItemModel *m_turboModeItem = nullptr;
6566
uicomponents::MenuItemModel *m_fps60ModeItem = nullptr;
67+
68+
uicomponents::MenuModel *m_helpMenu = nullptr;
69+
uicomponents::MenuItemModel *m_aboutAppItem = nullptr;
6670
};
6771

6872
} // namespace scratchcpp

src/app/qml/main.qml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import ScratchCPP.Ui
88
import ScratchCPP.UiComponents
99
import ScratchCPP.Render
1010
import ScratchCPP.Keyboard
11+
import "dialogs"
1112

1213
ApplicationWindow {
1314
id: root
@@ -31,9 +32,15 @@ ApplicationWindow {
3132
urlField.text = fileName;
3233
player.fileName = fileName;
3334
}
35+
36+
function onAboutAppTriggered() {
37+
aboutDialog.open();
38+
}
3439
}
3540
}
3641

42+
AboutDialog { id: aboutDialog }
43+
3744
ColumnLayout {
3845
id: layout
3946
anchors.fill: parent

0 commit comments

Comments
 (0)