X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ftext_panel.h;h=c4498f970b7a8d6c6e3d01911d44ca1fe4e1fe34;hb=70b72b53eab0f247eb4dc605a2d669d4adb4e469;hp=f35f39cbe340774aebe7aa0dd83439059ab74467;hpb=dd9be86db6cde0afa5da0d1d1ac43b42e05dca26;p=dcpomatic.git diff --git a/src/wx/text_panel.h b/src/wx/text_panel.h index f35f39cbe..c4498f970 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,28 @@ */ + #include "content_sub_panel.h" + class wxCheckBox; 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 +60,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 language_changed (); + void language_is_additional_changed (); void setup_sensitivity (); void setup_visibility (); @@ -66,7 +74,7 @@ private: wxCheckBox* _reference; wxStaticText* _reference_note; - wxCheckBox* _outline_subtitles; + wxCheckBox* _outline_subtitles = nullptr; wxCheckBox* _use; wxChoice* _type; wxCheckBox* _burn; @@ -75,34 +83,38 @@ private: 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; + TextView* _text_view = nullptr; wxButton* _fonts_dialog_button; - FontsDialog* _fonts_dialog; + FontsDialog* _fonts_dialog = nullptr; 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; };