X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fexport_format_dialog.h;h=8d37ded2cdd5201c690cf73c82c8e277de398036;hb=1c4d00e8b70785ce58f868645dad93afa1855193;hp=418b015d8ca628eb7e5daab2fd23f67200cf5f31;hpb=bb9cc45cd22af67ac275a5e73accbe14fee664d8;p=ardour.git diff --git a/gtk2_ardour/export_format_dialog.h b/gtk2_ardour/export_format_dialog.h index 418b015d8c..8d37ded2cd 100644 --- a/gtk2_ardour/export_format_dialog.h +++ b/gtk2_ardour/export_format_dialog.h @@ -27,18 +27,19 @@ #include "ardour/export_formats.h" #include "pbd/xml++.h" +#include "pbd/signals.h" #include "ardour_dialog.h" #include "audio_clock.h" #include -class ExportFormatDialog : public ArdourDialog { +class ExportFormatDialog : public ArdourDialog, public PBD::ScopedConnectionList { private: - typedef ARDOUR::ExportFormatManager::WeakCompatPtr WeakCompatPtr; + typedef ARDOUR::WeakExportFormatCompatibilityPtr WeakCompatPtr; + typedef ARDOUR::WeakExportFormatPtr WeakFormatPtr; typedef ARDOUR::ExportFormatManager::WeakQualityPtr WeakQualityPtr; - typedef ARDOUR::ExportFormatManager::WeakFormatPtr WeakFormatPtr; typedef ARDOUR::ExportFormatManager::WeakSampleRatePtr WeakSampleRatePtr; typedef ARDOUR::ExportFormatManager::WeakSampleFormatPtr WeakSampleFormatPtr; typedef ARDOUR::ExportFormatManager::WeakDitherTypePtr WeakDitherTypePtr; @@ -76,7 +77,7 @@ class ExportFormatDialog : public ArdourDialog { /* These are connected to signals from GUI components, and should change element states */ - void update_compatibility_selection (Glib::ustring const & path); + void update_compatibility_selection (std::string const & path); void update_quality_selection (); void update_format_selection (); void update_sample_rate_selection (); @@ -107,7 +108,9 @@ class ExportFormatDialog : public ArdourDialog { template void change_compatibility (bool compatibility, boost::weak_ptr w_ptr, Glib::RefPtr & list, ColsT & cols, - Glib::ustring const & c_incompatible = "red", Glib::ustring const & c_compatible = "white"); + std::string const & c_incompatible = "red", std::string const & c_compatible = "white"); + + void update_description(); uint32_t applying_changes_from_engine; @@ -130,7 +133,7 @@ class ExportFormatDialog : public ArdourDialog { /*** Encoding options */ - void change_encoding_options (ARDOUR::ExportFormatManager::FormatPtr ptr); + void change_encoding_options (ARDOUR::ExportFormatPtr ptr); void empty_encoding_option_table (); void remove_widget (Gtk::Widget & to_remove, Gtk::Container * remove_from); @@ -150,6 +153,7 @@ class ExportFormatDialog : public ArdourDialog { Gtk::Label name_label; Gtk::Entry name_entry; + Gtk::Label name_generated_part; /* Normalize */ @@ -176,9 +180,9 @@ class ExportFormatDialog : public ArdourDialog { struct CompatibilityCols : public Gtk::TreeModelColumnRecord { public: - Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn selected; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn ptr; + Gtk::TreeModelColumn selected; + Gtk::TreeModelColumn label; CompatibilityCols () { add(ptr); add(selected); add(label); } }; @@ -193,8 +197,8 @@ class ExportFormatDialog : public ArdourDialog { { public: Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn label; QualityCols () { add(ptr); add(color); add(label); } }; @@ -204,9 +208,9 @@ class ExportFormatDialog : public ArdourDialog { struct FormatCols : public Gtk::TreeModelColumnRecord { public: - Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn ptr; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn label; FormatCols () { add(ptr); add(color); add(label); } }; @@ -217,8 +221,8 @@ class ExportFormatDialog : public ArdourDialog { { public: Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn label; SampleRateCols () { add(ptr); add(color); add(label); } }; @@ -243,7 +247,7 @@ class ExportFormatDialog : public ArdourDialog { { public: Gtk::TreeModelColumn id; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn label; SRCQualityCols () { add(id); add(label); } }; @@ -273,8 +277,8 @@ class ExportFormatDialog : public ArdourDialog { { public: Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn label; SampleFormatCols () { add(ptr); add(color); add(label); } }; @@ -285,8 +289,8 @@ class ExportFormatDialog : public ArdourDialog { { public: Gtk::TreeModelColumn ptr; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn label; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn label; DitherTypeCols () { add(ptr); add (color); add(label); } }; @@ -296,6 +300,14 @@ class ExportFormatDialog : public ArdourDialog { Gtk::Label sample_format_label; Gtk::Label dither_label; + Gtk::CheckButton with_cue; + Gtk::CheckButton with_toc; + + Gtk::VBox cue_toc_vbox; + + void update_with_toc (); + void update_with_cue (); + Gtk::TreeView sample_format_view; Gtk::TreeView dither_type_view;