From e6be4f5777328aadd6f716e0b6122a3c6f68ff62 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Tue, 16 Jun 2015 12:03:29 -0400 Subject: [PATCH] Apply button for Spectrograms Preferences and View Settings --- src/prefs/SpectrumPrefs.cpp | 18 ++++++++++++++++++ src/prefs/SpectrumPrefs.h | 1 + 2 files changed, 19 insertions(+) diff --git a/src/prefs/SpectrumPrefs.cpp b/src/prefs/SpectrumPrefs.cpp index 1f96fd0dc..c63847909 100644 --- a/src/prefs/SpectrumPrefs.cpp +++ b/src/prefs/SpectrumPrefs.cpp @@ -26,6 +26,7 @@ #include "../Project.h" #include "../ShuttleGui.h" #include "../WaveTrack.h" +#include "../TrackPanel.h" #include @@ -66,6 +67,7 @@ enum { ID_GRAYSCALE, #endif ID_DEFAULTS, + ID_APPLY, }; void SpectrumPrefs::Populate(int windowSize) @@ -246,6 +248,12 @@ void SpectrumPrefs::PopulateOrExchange(ShuttleGui & S) } // S.EndStatic(); + S.StartMultiColumn(2, wxALIGN_RIGHT); + { + S.Id(ID_APPLY).AddButton(_("Appl&y")); + } + S.EndMultiColumn(); + mPopulating = false; } @@ -398,6 +406,14 @@ void SpectrumPrefs::OnDefaults(wxCommandEvent &) } } +void SpectrumPrefs::OnApply(wxCommandEvent &) +{ + if (Validate()) { + Apply(); + ::GetActiveProject()->GetTrackPanel()->Refresh(false); + } +} + BEGIN_EVENT_TABLE(SpectrumPrefs, PrefsPanel) EVT_CHOICE(ID_WINDOW_SIZE, SpectrumPrefs::OnWindowSize) EVT_CHECKBOX(ID_DEFAULTS, SpectrumPrefs::OnDefaults) @@ -411,6 +427,8 @@ BEGIN_EVENT_TABLE(SpectrumPrefs, PrefsPanel) EVT_TEXT(ID_RANGE, SpectrumPrefs::OnControl) EVT_TEXT(ID_FREQUENCY_GAIN, SpectrumPrefs::OnControl) EVT_CHECKBOX(ID_GRAYSCALE, SpectrumPrefs::OnControl) + + EVT_BUTTON(ID_APPLY, SpectrumPrefs::OnApply) END_EVENT_TABLE() SpectrumPrefsFactory::SpectrumPrefsFactory(WaveTrack *wt) diff --git a/src/prefs/SpectrumPrefs.h b/src/prefs/SpectrumPrefs.h index b6e8b8a23..dc07c7115 100644 --- a/src/prefs/SpectrumPrefs.h +++ b/src/prefs/SpectrumPrefs.h @@ -54,6 +54,7 @@ class SpectrumPrefs:public PrefsPanel void OnControl(wxCommandEvent &event); void OnWindowSize(wxCommandEvent &event); void OnDefaults(wxCommandEvent&); + void OnApply(wxCommandEvent &); DECLARE_EVENT_TABLE() WaveTrack *const mWt;