Merge master.
[dcpomatic.git] / src / wx / film_editor.h
index 0f62f4479b61dbf62da49c856cc2f30b46461ac9..dadb583ae07b028f1c8324b1a0f30db6513c426e 100644 (file)
@@ -33,10 +33,11 @@ class wxNotebook;
 class wxListCtrl;
 class wxListEvent;
 class Film;
-class TimelineDialog;
+class DCPTimelineDialog;
 class Ratio;
-class Timecode;
+class DCPTimecode;
 class FilmEditorPanel;
+class SubtitleContent;
 
 /** @class FilmEditor
  *  @brief A wx widget to edit a film's metadata, and perform various functions.
@@ -49,7 +50,7 @@ public:
        void set_film (boost::shared_ptr<Film>);
        void set_selection (boost::weak_ptr<Content>);
 
-       boost::signals2::signal<void (std::string)> FileChanged;
+       boost::signals2::signal<void (boost::filesystem::path)> FileChanged;
 
        /* Stuff for panels */
        
@@ -61,10 +62,11 @@ public:
                return _film;
        }
 
-       boost::shared_ptr<Content> selected_content ();
-       boost::shared_ptr<VideoContent> selected_video_content ();
-       boost::shared_ptr<AudioContent> selected_audio_content ();
-       boost::shared_ptr<SubtitleContent> selected_subtitle_content ();
+       ContentList selected_content ();
+       VideoContentList selected_video_content ();
+       AudioContentList selected_audio_content ();
+       SubtitleContentList selected_subtitle_content ();
+       FFmpegContentList selected_ffmpeg_content ();
        
 private:
        void make_dcp_panel ();
@@ -76,8 +78,11 @@ private:
        void use_dci_name_toggled ();
        void edit_dci_button_clicked ();
        void content_selection_changed ();
-       void content_add_clicked ();
+       void content_add_file_clicked ();
+       void content_add_folder_clicked ();
        void content_remove_clicked ();
+       void content_earlier_clicked ();
+       void content_later_clicked ();
        void container_changed ();
        void dcp_content_type_changed ();
        void scaler_changed ();
@@ -90,10 +95,13 @@ private:
        void sequence_video_changed ();
        void content_right_click (wxListEvent &);
        void three_d_changed ();
+       void standard_changed ();
+       void signed_toggled ();
+       void encrypted_toggled ();
 
        /* Handle changes to the model */
        void film_changed (Film::Property);
-       void film_content_changed (boost::weak_ptr<Content>, int);
+       void film_content_changed (int);
 
        void set_general_sensitivity (bool);
        void setup_dcp_name ();
@@ -123,7 +131,8 @@ private:
        wxCheckBox* _use_dci_name;
        wxChoice* _container;
        wxListCtrl* _content;
-       wxButton* _content_add;
+       wxButton* _content_add_file;
+       wxButton* _content_add_folder;
        wxButton* _content_remove;
        wxButton* _content_earlier;
        wxButton* _content_later;
@@ -138,11 +147,14 @@ private:
        wxButton* _best_frame_rate;
        wxCheckBox* _three_d;
        wxChoice* _resolution;
+       wxChoice* _standard;
+       wxCheckBox* _signed;
+       wxCheckBox* _encrypted;
 
        ContentMenu _menu;
 
        std::vector<Ratio const *> _ratios;
 
        bool _generally_sensitive;
-       TimelineDialog* _timeline_dialog;
+       DCPTimelineDialog* _timeline_dialog;
 };