diff --git a/Source/components/SosciMainMenuBarModel.cpp b/Source/components/SosciMainMenuBarModel.cpp index 84c2299..01b6187 100644 --- a/Source/components/SosciMainMenuBarModel.cpp +++ b/Source/components/SosciMainMenuBarModel.cpp @@ -4,6 +4,10 @@ #include "../SosciPluginProcessor.h" SosciMainMenuBarModel::SosciMainMenuBarModel(SosciPluginEditor& e, SosciAudioProcessor& p) : editor(e), processor(p) { + resetMenuItems(); +} + +void SosciMainMenuBarModel::resetMenuItems() { addTopLevelMenu("File"); addTopLevelMenu("About"); addTopLevelMenu("Video"); @@ -92,6 +96,10 @@ SosciMainMenuBarModel::SosciMainMenuBarModel(SosciPluginEditor& e, SosciAudioPro juce::DialogWindow* dw = options.launchAsync(); }); + addMenuItem(1, processor.acceptsAllKeys ? "Disable Special Keys" : "Enable Special Keys", [this] { + processor.setAcceptKeys(!processor.acceptsAllKeys); + resetMenuItems(); + }); addMenuItem(2, "Settings...", [this] { editor.openRecordingSettings(); diff --git a/Source/components/SosciMainMenuBarModel.h b/Source/components/SosciMainMenuBarModel.h index d5639cd..4c9c90b 100644 --- a/Source/components/SosciMainMenuBarModel.h +++ b/Source/components/SosciMainMenuBarModel.h @@ -9,6 +9,7 @@ class SosciAudioProcessor; class SosciMainMenuBarModel : public MainMenuBarModel { public: SosciMainMenuBarModel(SosciPluginEditor& editor, SosciAudioProcessor& processor); + void resetMenuItems(); SosciPluginEditor& editor; SosciAudioProcessor& processor;