diff options
| author | Carl Hetherington <cth@carlh.net> | 2025-03-09 01:14:47 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2025-09-28 19:49:26 +0200 |
| commit | ae2e1d7100975b57f7472364e47b754fe5cb8f6e (patch) | |
| tree | 99bd09f109f4a3056727884f72a70253a57a8ff8 | |
| parent | bceeb1bcd7d56eb29a8f211e8cf258a0a7c720b4 (diff) | |
Save and restore audio analysis window position/size.
| -rw-r--r-- | src/wx/audio_dialog.cc | 10 | ||||
| -rw-r--r-- | src/wx/audio_dialog.h | 5 | ||||
| -rw-r--r-- | src/wx/audio_panel.cc | 2 | ||||
| -rw-r--r-- | src/wx/dcp_panel.cc | 2 |
4 files changed, 11 insertions, 8 deletions
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc index 795a39a44..72df7678a 100644 --- a/src/wx/audio_dialog.cc +++ b/src/wx/audio_dialog.cc @@ -78,6 +78,7 @@ AudioDialog::AudioDialog (wxWindow* parent, shared_ptr<Film> film, FilmViewer& v , _content (content) , _channels (film->audio_channels ()) , _plot (nullptr) + , _metrics("audio", { 800, 600 }, this) { wxFont subheading_font (*wxNORMAL_FONT); subheading_font.SetWeight (wxFONTWEIGHT_BOLD); @@ -180,6 +181,8 @@ AudioDialog::AudioDialog (wxWindow* parent, shared_ptr<Film> film, FilmViewer& v } _plot->Cursor.connect (bind (&AudioDialog::set_cursor, this, _1, _2)); + + _metrics.bind(); } @@ -455,12 +458,11 @@ AudioDialog::setup_statistics () } } -bool -AudioDialog::Show (bool show) +void +AudioDialog::show() { - bool const r = wxDialog::Show (show); + _metrics.show(); try_to_load_analysis (); - return r; } void diff --git a/src/wx/audio_dialog.h b/src/wx/audio_dialog.h index f750d8e13..dac023b68 100644 --- a/src/wx/audio_dialog.h +++ b/src/wx/audio_dialog.h @@ -23,6 +23,7 @@ #define DCPOMATIC_AUDIO_DIALOG_H +#include "window_metrics.h" #include "lib/audio_analysis.h" #include "lib/constants.h" #include "lib/film_property.h" @@ -50,8 +51,7 @@ class AudioDialog : public wxDialog public: AudioDialog(wxWindow* parent, std::shared_ptr<Film> film, FilmViewer& viewer, std::shared_ptr<Content> content = std::shared_ptr<Content>()); - bool Show (bool show = true) override; - + void show(); void set_cursor (boost::optional<dcpomatic::DCPTime> time, boost::optional<float> db); private: @@ -84,6 +84,7 @@ private: boost::signals2::scoped_connection _film_connection; boost::signals2::scoped_connection _film_content_connection; boost::signals2::scoped_connection _analysis_finished_connection; + WindowMetrics _metrics; }; diff --git a/src/wx/audio_panel.cc b/src/wx/audio_panel.cc index e04e65691..1b7f4a32b 100644 --- a/src/wx/audio_panel.cc +++ b/src/wx/audio_panel.cc @@ -415,7 +415,7 @@ AudioPanel::show_clicked () } _audio_dialog.reset(this, _parent->film(), _parent->film_viewer(), ac.front()); - _audio_dialog->Show (); + _audio_dialog->show(); } diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc index 80caa4c2c..cbaeec825 100644 --- a/src/wx/dcp_panel.cc +++ b/src/wx/dcp_panel.cc @@ -1041,7 +1041,7 @@ DCPPanel::show_audio_clicked() } _audio_dialog.reset(_panel, _film, _viewer); - _audio_dialog->Show(); + _audio_dialog->show(); } |
