1 #include "lib/dcpomatic_time.h"
3 #include <boost/shared_ptr.hpp>
7 class ClosedCaptionsDialog;
11 class ControlFilmViewer : public wxPanel
14 ControlFilmViewer (wxWindow* parent, bool outline_content = true, bool jump_to_selected = true);
16 void set_film (boost::shared_ptr<Film> film);
18 /* FilmViewer proxies */
19 void set_position (DCPTime p);
20 void set_position (boost::shared_ptr<Content> content, ContentTime p);
21 void set_dcp_decode_reduction (boost::optional<int> reduction);
22 void show_closed_captions ();
25 bool playing () const;
27 void forward_frame ();
30 void update_position_label ();
31 void update_position_slider ();
32 void rewind_clicked (wxMouseEvent &);
33 void back_clicked (wxKeyboardState& s);
34 void forward_clicked (wxKeyboardState &);
35 void slider_moved (bool page);
36 void slider_released ();
38 void frame_number_clicked ();
39 void jump_to_selected_clicked ();
40 void setup_sensitivity ();
41 void timecode_clicked ();
42 void check_play_state ();
43 void active_jobs_changed (boost::optional<std::string>);
45 boost::shared_ptr<Film> _film;
46 boost::shared_ptr<FilmViewer> _viewer;
49 bool _slider_being_moved;
50 bool _was_running_before_slider;
52 wxCheckBox* _outline_content;
54 wxCheckBox* _jump_to_selected;
56 wxButton* _rewind_button;
57 wxButton* _back_button;
58 wxButton* _forward_button;
59 wxStaticText* _frame_number;
60 wxStaticText* _timecode;
61 wxToggleButton* _play_button;
63 ClosedCaptionsDialog* _closed_captions_dialog;