summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-03-09 01:19:18 +0100
committerCarl Hetherington <cth@carlh.net>2025-09-28 19:49:26 +0200
commit1345d32da6a43a43d731ddc339f21be6ba4b9686 (patch)
tree8b80951f86746d21befab98abf655ac4b8a9c45a
parentae2e1d7100975b57f7472364e47b754fe5cb8f6e (diff)
Save and restore video waveform position/size.
-rw-r--r--src/tools/dcpomatic.cc2
-rw-r--r--src/wx/video_waveform_dialog.cc13
-rw-r--r--src/wx/video_waveform_dialog.h4
3 files changed, 17 insertions, 2 deletions
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc
index fdd3657c1..2cc01581a 100644
--- a/src/tools/dcpomatic.cc
+++ b/src/tools/dcpomatic.cc
@@ -1102,7 +1102,7 @@ private:
_video_waveform_dialog.reset(this, _film, _film_viewer);
}
- _video_waveform_dialog->Show ();
+ _video_waveform_dialog->show();
}
void tools_system_information ()
diff --git a/src/wx/video_waveform_dialog.cc b/src/wx/video_waveform_dialog.cc
index 9ed0d01c7..d061fa387 100644
--- a/src/wx/video_waveform_dialog.cc
+++ b/src/wx/video_waveform_dialog.cc
@@ -41,7 +41,7 @@ VideoWaveformDialog::VideoWaveformDialog(wxWindow* parent, weak_ptr<const Film>
wxID_ANY,
_("Video Waveform"),
wxDefaultPosition,
- wxSize (640, 512),
+ wxDefaultSize,
#ifdef DCPOMATIC_OSX
/* I can't get wxFRAME_FLOAT_ON_PARENT to work on OS X, and although wxSTAY_ON_TOP keeps
the window above all others (and not just our own) it's better than nothing for now.
@@ -52,6 +52,7 @@ VideoWaveformDialog::VideoWaveformDialog(wxWindow* parent, weak_ptr<const Film>
#endif
)
, _viewer (viewer)
+ , _metrics("video", { 640, 512 }, this)
{
wxBoxSizer* overall_sizer = new wxBoxSizer (wxVERTICAL);
@@ -105,8 +106,18 @@ VideoWaveformDialog::VideoWaveformDialog(wxWindow* parent, weak_ptr<const Film>
component_changed ();
contrast_changed ();
+
+ _metrics.bind();
}
+
+void
+VideoWaveformDialog::show()
+{
+ _metrics.show();
+}
+
+
void
VideoWaveformDialog::shown (wxShowEvent& ev)
{
diff --git a/src/wx/video_waveform_dialog.h b/src/wx/video_waveform_dialog.h
index e524dc921..5d377a439 100644
--- a/src/wx/video_waveform_dialog.h
+++ b/src/wx/video_waveform_dialog.h
@@ -19,6 +19,7 @@
*/
+#include "window_metrics.h"
#include <dcp/warnings.h>
LIBDCP_DISABLE_WARNINGS
#include <wx/wx.h>
@@ -36,6 +37,8 @@ class VideoWaveformDialog : public wxDialog
public:
VideoWaveformDialog(wxWindow* parent, std::weak_ptr<const Film> film, FilmViewer& viewer);
+ void show();
+
private:
void shown (wxShowEvent &);
void component_changed ();
@@ -48,4 +51,5 @@ private:
wxSlider* _contrast;
wxStaticText* _x_position;
wxStaticText* _value;
+ WindowMetrics _metrics;
};