X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fsubtitle_appearance_dialog.h;h=2a5b9843023cd182201cf9318321fe81d9a9e437;hb=f984990795e548e2c4160d17d0fa54a40c8b1311;hp=6cced717bae1cbcf5bb6cbbdcf584beef1c69285;hpb=df17bbd25da69fc38eb2dcd8b4a2531cf0bab0bc;p=dcpomatic.git diff --git a/src/wx/subtitle_appearance_dialog.h b/src/wx/subtitle_appearance_dialog.h index 6cced717b..2a5b98430 100644 --- a/src/wx/subtitle_appearance_dialog.h +++ b/src/wx/subtitle_appearance_dialog.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2015-2018 Carl Hetherington + Copyright (C) 2015-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,12 +18,17 @@ */ + #include "timecode.h" +#include "lib/change_signaller.h" #include "lib/rgba.h" +#include "lib/warnings.h" +DCPOMATIC_DISABLE_WARNINGS #include -#include +DCPOMATIC_ENABLE_WARNINGS #include + class wxRadioButton; class wxColourPickerCtrl; class wxGridBagSizer; @@ -32,11 +37,14 @@ class RGBAColourPicker; class FFmpegSubtitleStream; class wxCheckBox; class wxWidget; +class Film; +class Job; + class SubtitleAppearanceDialog : public wxDialog { public: - SubtitleAppearanceDialog (wxWindow* parent, boost::shared_ptr content, boost::shared_ptr caption); + SubtitleAppearanceDialog (wxWindow* parent, std::shared_ptr film, std::shared_ptr content, std::shared_ptr caption); void apply (); @@ -44,7 +52,11 @@ private: void setup_sensitivity (); void restore (); wxCheckBox* 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; wxCheckBox* _force_colour; wxColourPickerCtrl* _colour; wxCheckBox* _force_effect; @@ -52,18 +64,26 @@ private: wxCheckBox* _force_effect_colour; wxColourPickerCtrl* _effect_colour; wxCheckBox* _force_fade_in; - Timecode* _fade_in; + Timecode* _fade_in; wxCheckBox* _force_fade_out; - Timecode* _fade_out; + Timecode* _fade_out; wxSpinCtrl* _outline_width; wxGridBagSizer* _table; std::map _pickers; - boost::shared_ptr _content; - boost::shared_ptr _caption; - 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;