From 5b72b1f23b6019d6e3706e2ca175094bd54abc98 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Sun, 21 Jun 2015 11:54:49 -0400 Subject: [PATCH] Open the appropriate initial page in View Settings dialog --- src/TrackPanel.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/TrackPanel.cpp b/src/TrackPanel.cpp index 2cb031d05..74e01a382 100644 --- a/src/TrackPanel.cpp +++ b/src/TrackPanel.cpp @@ -8921,20 +8921,24 @@ class ViewSettingsDialog : public PrefsDialog { public: ViewSettingsDialog - (wxWindow *parent, const wxString &title, PrefsDialog::Factories &factories) + (wxWindow *parent, const wxString &title, PrefsDialog::Factories &factories, + int page) : PrefsDialog(parent, title, factories) + , mPage(page) { } virtual long GetPreferredPage() { - // Future: choose Spectrum or Waveform page - return 0; + return mPage; } virtual void SavePreferredPage() { } + +private: + const int mPage; }; void TrackPanel::OnViewSettings(wxCommandEvent &) @@ -8943,12 +8947,15 @@ void TrackPanel::OnViewSettings(wxCommandEvent &) WaveformPrefsFactory waveformFactory(wt); SpectrumPrefsFactory spectrumFactory(wt); + // Put Waveform page first PrefsDialog::Factories factories; factories.push_back(&waveformFactory); factories.push_back(&spectrumFactory); + const int page = (wt->GetDisplay() == WaveTrack::Spectrum) + ? 1 : 0; wxString title(wt->GetName() + wxT(": ")); - ViewSettingsDialog dialog(this, title, factories); + ViewSettingsDialog dialog(this, title, factories, page); if (0 != dialog.ShowModal()) // Redraw