X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fsubtitle_appearance_dialog.h;h=cef264590343dfe97ecd3c294d30b839826e3bd3;hb=b39dbb7cf1b0352cf0eb3af4bf4929556355bff5;hp=2e007e57ba6a9b3a3ffdfcf91a4b36430fcc55a8;hpb=350c6ca06fd782917586d039850c93f8f9613707;p=dcpomatic.git diff --git a/src/wx/subtitle_appearance_dialog.h b/src/wx/subtitle_appearance_dialog.h index 2e007e57b..cef264590 100644 --- a/src/wx/subtitle_appearance_dialog.h +++ b/src/wx/subtitle_appearance_dialog.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2015-2017 Carl Hetherington + Copyright (C) 2015-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,43 +18,72 @@ */ + #include "timecode.h" +#include "lib/change_signaller.h" #include "lib/rgba.h" +#include +LIBDCP_DISABLE_WARNINGS #include -#include +LIBDCP_ENABLE_WARNINGS #include -class wxRadioButton; -class wxColourPickerCtrl; -class wxGridBagSizer; + +class CheckBox; class Content; -class RGBAColourPicker; class FFmpegSubtitleStream; +class Film; +class Job; +class RGBAColourPicker; +class wxColourPickerCtrl; +class wxGridBagSizer; +class wxRadioButton; +class wxWidget; + class SubtitleAppearanceDialog : public wxDialog { public: - SubtitleAppearanceDialog (wxWindow* parent, boost::shared_ptr content); + SubtitleAppearanceDialog (wxWindow* parent, std::shared_ptr film, std::shared_ptr content, std::shared_ptr caption); void apply (); private: void setup_sensitivity (); void restore (); + CheckBox* set_to (wxWindow* w, int& r); + void content_change (ChangeType type); + void active_jobs_changed (boost::optional last); + void add_colours (); + std::weak_ptr _film; + CheckBox* _force_colour; wxColourPickerCtrl* _colour; + CheckBox* _force_effect; wxChoice* _effect; + CheckBox* _force_effect_colour; wxColourPickerCtrl* _effect_colour; - Timecode* _fade_in; - Timecode* _fade_out; + CheckBox* _force_fade_in; + Timecode* _fade_in; + CheckBox* _force_fade_out; + Timecode* _fade_out; wxSpinCtrl* _outline_width; wxGridBagSizer* _table; std::map _pickers; - boost::shared_ptr _content; - boost::shared_ptr _stream; + wxBoxSizer* _overall_sizer; + wxScrolled* _colours_panel; + wxStaticText* _finding = nullptr; + wxFlexGridSizer* _colour_table; + + std::shared_ptr _content; + std::shared_ptr _text; + std::shared_ptr _stream; boost::signals2::scoped_connection _content_connection; + boost::signals2::scoped_connection _job_manager_connection; + + std::weak_ptr _job; static int const NONE; static int const OUTLINE;