swaroop: write position file every 2 minutes; tweak play sensitivity
[dcpomatic.git] / src / wx / swaroop_controls.h
index 54f77de17bb54a565dce3da5285fe454e367a974..d8d39d4a0153d4292f1e2c4838e99936992116de 100644 (file)
@@ -20,6 +20,9 @@
 
 #include "controls.h"
 
+class DCPContent;
+class EncryptedECinemaKDM;
+
 class SwaroopControls : public Controls
 {
 public:
@@ -27,6 +30,7 @@ public:
 
        void log (wxString s);
        void set_film (boost::shared_ptr<Film> film);
+       void check_restart ();
 
        /** This is so that we can tell our parent player to reset the film
            when we have created one from a SPL.  We could call a method
@@ -38,19 +42,35 @@ private:
        void play_clicked ();
        void pause_clicked ();
        void stop_clicked ();
+       void next_clicked ();
+       void previous_clicked ();
        void add_playlist_to_list (SPL spl);
        void update_content_directory ();
        void update_playlist_directory ();
        void spl_selection_changed ();
+       void select_playlist (int selected, int position);
        void started ();
        void stopped ();
        void setup_sensitivity ();
-       void image_changed (boost::weak_ptr<PlayerVideo> weak_pv);
        void config_changed (int);
+       void viewer_finished ();
+       void viewer_position_changed ();
+       void reset_film ();
+       void update_current_content ();
+       bool can_do_previous ();
+       bool can_do_next ();
+       void decrement_allowed_shows ();
+       void deselect_playlist ();
+
+       boost::optional<dcp::EncryptedKDM> get_kdm_from_url (boost::shared_ptr<DCPContent> dcp);
+       boost::optional<dcp::EncryptedKDM> get_kdm_from_directory (boost::shared_ptr<DCPContent> dcp);
+       boost::optional<EncryptedECinemaKDM> get_kdm_from_directory (boost::shared_ptr<FFmpegContent> ffmpeg);
 
        wxButton* _play_button;
        wxButton* _pause_button;
        wxButton* _stop_button;
+       wxButton* _next_button;
+       wxButton* _previous_button;
 
        ContentView* _content_view;
        wxButton* _refresh_content_view;
@@ -59,10 +79,10 @@ private:
        wxListCtrl* _current_spl_view;
        wxTextCtrl* _log;
 
-       boost::weak_ptr<Content> _current_content;
-       boost::optional<dcp::ContentKind> _current_kind;
        bool _current_disable_timeline;
+       bool _current_disable_next;
 
        std::vector<SPL> _playlists;
        boost::optional<int> _selected_playlist;
+       int _selected_playlist_position;
 };