Simplify and fix up selection code for the content list (#2428).
[dcpomatic.git] / src / wx / timing_panel.h
index 251acc9b559808523a757a1ba4f464433213b586..1edaeb27192b18da2f4195b9639676ab878b170b 100644 (file)
@@ -27,11 +27,12 @@ class FilmViewer;
 class TimingPanel : public ContentSubPanel
 {
 public:
-       TimingPanel (ContentPanel *, std::weak_ptr<FilmViewer> viewer);
+       TimingPanel(ContentPanel *, FilmViewer& viewer);
 
-       void film_changed (Film::Property);
-       void film_content_changed (int);
-       void content_selection_changed ();
+       void create () override;
+       void film_changed (Film::Property) override;
+       void film_content_changed (int) override;
+       void content_selection_changed () override;
 
 private:
        void position_changed ();
@@ -45,9 +46,9 @@ private:
        void update_full_length ();
        void update_play_length ();
        void setup_sensitivity ();
-       void add_to_grid ();
+       void add_to_grid () override;
 
-       std::weak_ptr<FilmViewer> _viewer;
+       FilmViewer& _viewer;
 
        wxStaticText* _h_label;
        wxStaticText* _m_label;