X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Fwx%2Ftext_panel.h;h=eee5e916cb50248f9e48713d269fb77c70850101;hp=f35f39cbe340774aebe7aa0dd83439059ab74467;hb=693013b77341e4177c792de091ab9a524e33c477;hpb=dd9be86db6cde0afa5da0d1d1ac43b42e05dca26 diff --git a/src/wx/text_panel.h b/src/wx/text_panel.h index f35f39cbe..eee5e916c 100644 --- a/src/wx/text_panel.h +++ b/src/wx/text_panel.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2020 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,22 +18,29 @@ */ + #include "content_sub_panel.h" +#include "wx_ptr.h" + -class wxCheckBox; +class CheckBox; class wxSpinCtrl; +class LanguageTagWidget; class TextView; class FontsDialog; +class SpinCtrl; class SubtitleAnalysis; + class TextPanel : public ContentSubPanel { public: TextPanel (ContentPanel *, TextType t); - void film_changed (Film::Property); - void film_content_changed (int); - void content_selection_changed (); + void create () override; + void film_changed (Film::Property) override; + void film_content_changed (int) override; + void content_selection_changed () override; private: void use_toggled (); @@ -54,9 +61,11 @@ private: TextType current_type () const; void update_dcp_tracks (); void update_dcp_track_selection (); - void add_to_grid (); + void add_to_grid () override; void try_to_load_analysis (); - void analysis_finished (); + void analysis_finished(Job::Result result); + void language_changed (); + void language_is_additional_changed (); void setup_sensitivity (); void setup_visibility (); @@ -64,45 +73,49 @@ private: void update_outline_subtitles_in_viewer (); void clear_outline_subtitles (); - wxCheckBox* _reference; + CheckBox* _reference; wxStaticText* _reference_note; - wxCheckBox* _outline_subtitles; - wxCheckBox* _use; + CheckBox* _outline_subtitles = nullptr; + CheckBox* _use; wxChoice* _type; - wxCheckBox* _burn; + CheckBox* _burn; wxStaticText* _offset_label; wxStaticText* _x_offset_label; wxStaticText* _x_offset_pc_label; wxStaticText* _y_offset_label; wxStaticText* _y_offset_pc_label; - wxSpinCtrl* _x_offset; - wxSpinCtrl* _y_offset; + SpinCtrl* _x_offset; + SpinCtrl* _y_offset; wxStaticText* _scale_label; wxStaticText* _x_scale_label; wxStaticText* _x_scale_pc_label; wxStaticText* _y_scale_label; wxStaticText* _y_scale_pc_label; - wxSpinCtrl* _x_scale; - wxSpinCtrl* _y_scale; + SpinCtrl* _x_scale; + SpinCtrl* _y_scale; wxStaticText* _line_spacing_label; wxStaticText* _line_spacing_pc_label; - wxSpinCtrl* _line_spacing; - wxStaticText* _dcp_track_label; - wxChoice* _dcp_track; + SpinCtrl* _line_spacing; + wxStaticText* _dcp_track_label = nullptr; + wxChoice* _dcp_track = nullptr; wxStaticText* _stream_label; wxChoice* _stream; wxButton* _text_view_button; - TextView* _text_view; + wx_ptr _text_view; wxButton* _fonts_dialog_button; - FontsDialog* _fonts_dialog; + wx_ptr _fonts_dialog; wxButton* _appearance_dialog_button; TextType _original_type; + wxStaticText* _language_label = nullptr; + LanguageTagWidget* _language = nullptr; + wxSizer* _language_sizer = nullptr; + wxChoice* _language_type = nullptr; int _outline_subtitles_row; - int _ccap_track_row; + int _ccap_track_or_language_row; std::weak_ptr _analysis_content; boost::signals2::scoped_connection _analysis_finished_connection; std::shared_ptr _analysis; - bool _loading_analysis; + bool _loading_analysis = false; };