X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fexport_file_notebook.h;h=d2545cb0ae61ddde9fd7e4b5de8f36d4a3a3b222;hb=415721fa5b48f3c3dc164ac60095c095c4e48ad0;hp=9f357ab1d548f01537acef0aa231509184f7c08c;hpb=da8eec7a8311295ee91308eca9fae2146385c512;p=ardour.git diff --git a/gtk2_ardour/export_file_notebook.h b/gtk2_ardour/export_file_notebook.h index 9f357ab1d5..d2545cb0ae 100644 --- a/gtk2_ardour/export_file_notebook.h +++ b/gtk2_ardour/export_file_notebook.h @@ -22,28 +22,36 @@ #define __export_file_notebook_h__ #include -#include + +#include +#include +#include +#include +#include +#include #include "ardour/export_profile_manager.h" #include "ardour/session_handle.h" #include "export_format_selector.h" #include "export_filename_selector.h" +#include "soundcloud_export_selector.h" class ExportFileNotebook : public Gtk::Notebook, public ARDOUR::SessionHandlePtr { - public: +public: ExportFileNotebook (); void set_session_and_manager (ARDOUR::Session * s, boost::shared_ptr manager); void sync_with_manager (); + void update_example_filenames(); - std::string get_nth_format_name (uint32_t n); + boost::shared_ptr soundcloud_export_selector; sigc::signal CriticalSelectionChanged; - private: +private: typedef boost::shared_ptr ManagerPtr; typedef boost::shared_ptr FormatPtr; @@ -56,6 +64,7 @@ class ExportFileNotebook : public Gtk::Notebook, public ARDOUR::SessionHandlePtr void add_file_page (ARDOUR::ExportProfileManager::FormatStatePtr format_state, ARDOUR::ExportProfileManager::FilenameStatePtr filename_state); void remove_file_page (FilePage * page); void update_remove_file_page_sensitivity (); + void update_soundcloud_upload (); sigc::connection page_change_connection; void handle_page_change (GtkNotebookPage*, uint32_t page); @@ -67,8 +76,9 @@ class ExportFileNotebook : public Gtk::Notebook, public ARDOUR::SessionHandlePtr uint32_t last_visible_page; uint32_t page_counter; - class FilePage : public Gtk::VBox { - public: + class FilePage : public Gtk::VBox + { + public: FilePage (ARDOUR::Session * s, ManagerPtr profile_manager, ExportFileNotebook * parent, uint32_t number, ARDOUR::ExportProfileManager::FormatStatePtr format_state, ARDOUR::ExportProfileManager::FilenameStatePtr filename_state); @@ -78,15 +88,24 @@ class ExportFileNotebook : public Gtk::Notebook, public ARDOUR::SessionHandlePtr Gtk::Widget & get_tab_widget () { return tab_widget; } void set_remove_sensitive (bool value); std::string get_format_name () const; + bool get_soundcloud_upload () const; + + void update_example_filename(); + + void update_analysis_button (); + void update_soundcloud_upload_button (); ARDOUR::ExportProfileManager::FormatStatePtr get_format_state () const { return format_state; } ARDOUR::ExportProfileManager::FilenameStatePtr get_filename_state () const { return filename_state; } sigc::signal CriticalSelectionChanged; - private: + private: void save_format_to_manager (FormatPtr format); void update_tab_label (); + void critical_selection_changed (); + void analysis_changed (); + void soundcloud_upload_changed (); ARDOUR::ExportProfileManager::FormatStatePtr format_state; ARDOUR::ExportProfileManager::FilenameStatePtr filename_state; @@ -103,6 +122,8 @@ class ExportFileNotebook : public Gtk::Notebook, public ARDOUR::SessionHandlePtr Gtk::Alignment filename_align; ExportFilenameSelector filename_selector; + Gtk::CheckButton soundcloud_upload_button; + Gtk::CheckButton analysis_button; Gtk::HBox tab_widget; Gtk::Label tab_label; Gtk::Alignment tab_close_alignment;