Skip to content

Commit 83c8f58

Browse files
committed
Add mute option to menu bar
1 parent 1ac791d commit 83c8f58

File tree

3 files changed

+29
-0
lines changed

3 files changed

+29
-0
lines changed

src/app/appmenubar.cpp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,14 @@ AppMenuBar::AppMenuBar(QObject *parent) :
5555
m_editMenu->addItem(m_fps60ModeItem);
5656
connect(m_fps60ModeItem, &MenuItemModel::checkedChanged, this, &AppMenuBar::fps60ModeChanged);
5757

58+
// Edit -> Mute
59+
m_muteItem = new MenuItemModel(m_editMenu);
60+
m_muteItem->setText(tr("Mute"));
61+
m_muteItem->setCheckable(true);
62+
m_muteItem->setChecked(false);
63+
m_editMenu->addItem(m_muteItem);
64+
connect(m_muteItem, &MenuItemModel::checkedChanged, this, &AppMenuBar::muteChanged);
65+
5866
// Edit -> Project settings
5967
m_projectSettingsItem = new MenuItemModel(m_editMenu);
6068
m_projectSettingsItem->setText(tr("Project settings..."));
@@ -133,3 +141,17 @@ void AppMenuBar::setFps60Mode(bool newFps60Mode)
133141
m_fps60ModeItem->setChecked(newFps60Mode);
134142
emit fps60ModeChanged();
135143
}
144+
145+
bool AppMenuBar::mute() const
146+
{
147+
return m_muteItem->checked();
148+
}
149+
150+
void AppMenuBar::setMute(bool newMute)
151+
{
152+
if (m_muteItem->checked() == newMute)
153+
return;
154+
155+
m_muteItem->setChecked(newMute);
156+
emit muteChanged();
157+
}

src/app/appmenubar.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ class AppMenuBar : public QObject
2929
Q_PROPERTY(uicomponents::MenuBarModel *model READ model NOTIFY modelChanged)
3030
Q_PROPERTY(bool turboMode READ turboMode WRITE setTurboMode NOTIFY turboModeChanged)
3131
Q_PROPERTY(bool fps60Mode READ fps60Mode WRITE setFps60Mode NOTIFY fps60ModeChanged)
32+
Q_PROPERTY(bool mute READ mute WRITE setMute NOTIFY muteChanged)
3233

3334
public:
3435
explicit AppMenuBar(QObject *parent = nullptr);
@@ -41,11 +42,15 @@ class AppMenuBar : public QObject
4142
bool fps60Mode() const;
4243
void setFps60Mode(bool newFps60Mode);
4344

45+
bool mute() const;
46+
void setMute(bool newMute);
47+
4448
signals:
4549
void modelChanged();
4650
void fileOpened(const QString &fileName);
4751
void turboModeChanged();
4852
void fps60ModeChanged();
53+
void muteChanged();
4954
void projectSettingsTriggered();
5055
void aboutAppTriggered();
5156

@@ -65,6 +70,7 @@ class AppMenuBar : public QObject
6570
uicomponents::MenuModel *m_editMenu = nullptr;
6671
uicomponents::MenuItemModel *m_turboModeItem = nullptr;
6772
uicomponents::MenuItemModel *m_fps60ModeItem = nullptr;
73+
uicomponents::MenuItemModel *m_muteItem = nullptr;
6874
uicomponents::MenuItemModel *m_projectSettingsItem = nullptr;
6975

7076
uicomponents::MenuModel *m_helpMenu = nullptr;

src/app/qml/main.qml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ ApplicationWindow {
141141
activeFocusOnTab: true
142142
focus: true
143143
turboMode: AppMenuBar.turboMode
144+
mute: AppMenuBar.mute
144145
}
145146
}
146147
}

0 commit comments

Comments
 (0)