diff options
| author | Carl Hetherington <cth@carlh.net> | 2022-10-12 01:03:28 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2022-10-14 11:41:18 +0200 |
| commit | 449f383f13e5755c523db11f9adef53b58391025 (patch) | |
| tree | 7751c6ede10455de02aa85dcd00d17109c9d57a6 /src/wx/markers_panel.cc | |
| parent | 5e640ac3e2f6d5fb079ff65659a1483ddac8672e (diff) | |
Cleanup: use simpler ownership for FilmViewer.
Diffstat (limited to 'src/wx/markers_panel.cc')
| -rw-r--r-- | src/wx/markers_panel.cc | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/src/wx/markers_panel.cc b/src/wx/markers_panel.cc index a110da105..9942dca89 100644 --- a/src/wx/markers_panel.cc +++ b/src/wx/markers_panel.cc @@ -53,7 +53,7 @@ enum { static constexpr auto line_to_label_gap = 2; -MarkersPanel::MarkersPanel (wxWindow* parent, weak_ptr<FilmViewer> viewer) +MarkersPanel::MarkersPanel(wxWindow* parent, FilmViewer& viewer) : wxPanel (parent, wxID_ANY, wxDefaultPosition, wxSize(-1, 16)) , _viewer (viewer) { @@ -222,9 +222,7 @@ void MarkersPanel::mouse_left_down () { if (_over) { - auto viewer = _viewer.lock (); - DCPOMATIC_ASSERT (viewer); - viewer->seek (_markers[*_over].time, true); + _viewer.seek(_markers[*_over].time, true); } } @@ -253,12 +251,11 @@ void MarkersPanel::move_marker_to_current_position () { auto film = _film.lock (); - auto viewer = _viewer.lock (); - if (!film || !viewer || !_menu_marker) { + if (!film || !_menu_marker) { return; } - film->set_marker (*_menu_marker, viewer->position()); + film->set_marker(*_menu_marker, _viewer.position()); } @@ -266,12 +263,11 @@ void MarkersPanel::remove_marker () { auto film = _film.lock (); - auto viewer = _viewer.lock (); - if (!film || !viewer || !_menu_marker) { + if (!film || !_menu_marker) { return; } - film->unset_marker (*_menu_marker); + film->unset_marker(*_menu_marker); } @@ -279,12 +275,11 @@ void MarkersPanel::add_marker (wxCommandEvent& ev) { auto film = _film.lock (); - auto viewer = _viewer.lock (); - if (!film || !viewer) { + if (!film) { return; } auto marker = static_cast<dcp::Marker>(ev.GetId() - ID_add_base); - film->set_marker (marker, viewer->position()); + film->set_marker(marker, _viewer.position()); } |
