Remove player activity logging. Fixes #2122.
[dcpomatic.git] / src / wx / controls.h
index fd6181d91d193ada92c17d10d9c6657f5808eb3a..ca9c2008759c0ad9b7a8609d41982e0f74e32b37 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2018 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2018-2021 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
 
 */
 
+
 #ifndef DCPOMATIC_CONTROLS_H
 #define DCPOMATIC_CONTROLS_H
 
+
 #include "lib/dcpomatic_time.h"
 #include "lib/types.h"
 #include "lib/film.h"
-#include "lib/spl.h"
+#include "lib/warnings.h"
+DCPOMATIC_DISABLE_WARNINGS
 #include <wx/wx.h>
-#include <boost/shared_ptr.hpp>
+DCPOMATIC_ENABLE_WARNINGS
 #include <boost/signals2.hpp>
 
+
 class FilmViewer;
 class Film;
 class ClosedCaptionsDialog;
@@ -38,25 +42,33 @@ class wxToggleButton;
 class wxListCtrl;
 class ContentView;
 
+
 namespace dcp {
        class CPL;
 }
 
+
 class Controls : public wxPanel
 {
 public:
        Controls (
                wxWindow* parent,
-               boost::shared_ptr<FilmViewer>,
+               std::shared_ptr<FilmViewer>,
                bool editor_controls = true
                );
 
-       virtual void set_film (boost::shared_ptr<Film> film);
-       boost::shared_ptr<Film> film () const;
+       virtual void set_film (std::shared_ptr<Film> film);
+
+       virtual void play () {};
+       virtual void stop () {};
+       void seek (int slider);
+
+       std::shared_ptr<Film> film () const;
        void back_frame ();
        void forward_frame ();
 
 protected:
+
        virtual void started ();
        virtual void stopped ();
        virtual void setup_sensitivity ();
@@ -64,9 +76,9 @@ protected:
 
        wxSizer* _v_sizer;
        wxBoxSizer* _button_sizer;
-       boost::shared_ptr<Film> _film;
+       std::shared_ptr<Film> _film;
        wxSlider* _slider;
-       boost::shared_ptr<FilmViewer> _viewer;
+       std::weak_ptr<FilmViewer> _viewer;
        boost::optional<std::string> _active_job;
 
 private:
@@ -82,17 +94,16 @@ private:
        void jump_to_selected_clicked ();
        void timecode_clicked ();
        void active_jobs_changed (boost::optional<std::string>);
-       DCPTime nudge_amount (wxKeyboardState& ev);
-       void image_changed (boost::weak_ptr<PlayerVideo>);
+       dcpomatic::DCPTime nudge_amount (wxKeyboardState& ev);
+       void image_changed (std::weak_ptr<PlayerVideo>);
        void outline_content_changed ();
        void eye_changed ();
-       void position_changed ();
+       void update_position ();
        void film_change (ChangeType, Film::Property);
 
-       typedef std::pair<boost::shared_ptr<dcp::CPL>, boost::filesystem::path> CPL;
+       typedef std::pair<std::shared_ptr<dcp::CPL>, boost::filesystem::path> CPL;
 
        bool _slider_being_moved;
-       bool _was_running_before_slider;
 
        wxCheckBox* _outline_content;
        wxChoice* _eye;
@@ -105,8 +116,11 @@ private:
 
        ClosedCaptionsDialog* _closed_captions_dialog;
 
+       wxTimer _timer;
+
        boost::signals2::scoped_connection _film_change_connection;
        boost::signals2::scoped_connection _config_changed_connection;
 };
 
+
 #endif