X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ffilm_editor.h;h=323aead95fb3affef35e62385b66e7facd28a09a;hb=4870ce43dd314d557f7b14938456138c746fd617;hp=b204385bc34a868d054f5fd93b6895c64062576c;hpb=988fa33f7d25f2f3319442ce3c9ed661172e4d56;p=dcpomatic.git diff --git a/src/wx/film_editor.h b/src/wx/film_editor.h index b204385bc..323aead95 100644 --- a/src/wx/film_editor.h +++ b/src/wx/film_editor.h @@ -25,9 +25,11 @@ #include #include #include -#include "lib/trim_action.h" +#include #include "lib/film.h" +class wxNotebook; + class Film; /** @class FilmEditor @@ -36,14 +38,20 @@ class Film; class FilmEditor : public wxPanel { public: - FilmEditor (Film *, wxWindow *); + FilmEditor (boost::shared_ptr, wxWindow *); - void set_film (Film *); + void set_film (boost::shared_ptr); void setup_visibility (); - sigc::signal1 FileChanged; + boost::signals2::signal FileChanged; private: + void make_film_panel (); + void make_video_panel (); + void make_audio_panel (); + void make_subtitle_panel (); + void connect_to_widgets (); + /* Handle changes to the view */ void name_changed (wxCommandEvent &); void use_dci_name_toggled (wxCommandEvent &); @@ -53,8 +61,12 @@ private: void top_crop_changed (wxCommandEvent &); void bottom_crop_changed (wxCommandEvent &); void content_changed (wxCommandEvent &); + void trust_content_header_changed (wxCommandEvent &); void format_changed (wxCommandEvent &); - void dcp_range_changed (int, TrimAction); + void trim_start_changed (wxCommandEvent &); + void trim_end_changed (wxCommandEvent &); + void multiple_reels_toggled (wxCommandEvent &); + void reel_size_changed (wxCommandEvent &); void dcp_content_type_changed (wxCommandEvent &); void dcp_ab_toggled (wxCommandEvent &); void scaler_changed (wxCommandEvent &); @@ -64,30 +76,45 @@ private: void with_subtitles_toggled (wxCommandEvent &); void subtitle_offset_changed (wxCommandEvent &); void subtitle_scale_changed (wxCommandEvent &); + void colour_lut_changed (wxCommandEvent &); + void j2k_bandwidth_changed (wxCommandEvent &); void still_duration_changed (wxCommandEvent &); void audio_stream_changed (wxCommandEvent &); void subtitle_stream_changed (wxCommandEvent &); + void use_audio_changed (wxCommandEvent &); + void external_audio_changed (wxCommandEvent &); /* Handle changes to the model */ void film_changed (Film::Property); /* Button clicks */ void edit_filters_clicked (wxCommandEvent &); - void change_dcp_range_clicked (wxCommandEvent &); void set_things_sensitive (bool); void setup_formats (); - void setup_subtitle_button (); + void setup_subtitle_control_sensitivity (); + void setup_audio_control_sensitivity (); + void setup_reel_control_sensitivity (); void setup_streams (); - void set_selected_stream (std::vector const & streams, int id, wxComboBox* combo) const; + void setup_audio_details (); wxControl* video_control (wxControl *); wxControl* still_control (wxControl *); - Film::Property _ignore_changes; + void active_jobs_changed (bool); + + wxNotebook* _notebook; + wxPanel* _film_panel; + wxSizer* _film_sizer; + wxPanel* _video_panel; + wxSizer* _video_sizer; + wxPanel* _audio_panel; + wxSizer* _audio_sizer; + wxPanel* _subtitle_panel; + wxSizer* _subtitle_sizer; /** The film we are editing */ - Film* _film; + boost::shared_ptr _film; /** The Film's name */ wxTextCtrl* _name; wxStaticText* _dcp_name; @@ -97,6 +124,7 @@ private: wxComboBox* _format; /** The Film's content file */ wxFilePickerCtrl* _content; + wxCheckBox* _trust_content_header; /** The Film's left crop */ wxSpinCtrl* _left_crop; /** The Film's right crop */ @@ -111,7 +139,10 @@ private: wxButton* _filters_button; /** The Film's scaler */ wxComboBox* _scaler; + wxRadioButton* _use_content_audio; wxComboBox* _audio_stream; + wxRadioButton* _use_external_audio; + wxFilePickerCtrl* _external_audio[MAX_AUDIO_CHANNELS]; /** The Film's audio gain */ wxSpinCtrl* _audio_gain; /** A button to open the gain calculation dialogue */ @@ -122,6 +153,8 @@ private: wxComboBox* _subtitle_stream; wxSpinCtrl* _subtitle_offset; wxSpinCtrl* _subtitle_scale; + wxComboBox* _colour_lut; + wxSpinCtrl* _j2k_bandwidth; /** The Film's DCP content type */ wxComboBox* _dcp_content_type; /** The Film's frames per second */ @@ -135,10 +168,10 @@ private: /** The Film's duration for still sources */ wxSpinCtrl* _still_duration; - /** Display of the range of frames that will be used */ - wxStaticText* _dcp_range; - /** Button to change the range */ - wxButton* _change_dcp_range_button; + wxSpinCtrl* _trim_start; + wxSpinCtrl* _trim_end; + wxCheckBox* _multiple_reels; + wxSpinCtrl* _reel_size; /** Selector to generate an A/B comparison DCP */ wxCheckBox* _dcp_ab; @@ -147,5 +180,5 @@ private: std::vector _formats; - wxSizer* _sizer; + bool _generally_sensitive; };