X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fardour_ui_ed.cc;h=f038897cf7112d636e27437d5b6f2619cb5013c3;hb=b15e1cba3b11f73f3155c5dbd8a162c2512f5641;hp=6b4a1b035b0a8a48d7cad781f27d8be2546139fb;hpb=096f146d94b20d8b68a838d2f5151765523869b4;p=ardour.git diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index 6b4a1b035b..f038897cf7 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -17,6 +17,10 @@ */ +#ifdef WAF_BUILD +#include "gtk2ardour-config.h" +#endif + /* This file contains any ARDOUR_UI methods that require knowledge of the editor, and exists so that no compilation dependency exists between the main ARDOUR_UI modules and the PublicEditor class. This @@ -157,6 +161,9 @@ ARDOUR_UI::install_actions () act = ActionManager::register_action (main_actions, X_("ExportAudio"), _("Export To Audio File(s)..."), sigc::mem_fun (*editor, &PublicEditor::export_audio)); ActionManager::session_sensitive_actions.push_back (act); + + act = ActionManager::register_action (main_actions, X_("StemExport"), _("Stem export..."), sigc::mem_fun (*editor, &PublicEditor::stem_export)); + ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_action (main_actions, X_("Export"), _("Export")); ActionManager::session_sensitive_actions.push_back (act); @@ -183,23 +190,23 @@ ARDOUR_UI::install_actions () RadioAction::Group jack_latency_group; - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency32"), X_("32"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 32)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency32"), X_("32"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 32)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency64"), X_("64"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 64)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency64"), X_("64"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 64)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency128"), X_("128"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 128)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency128"), X_("128"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 128)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency256"), X_("256"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 256)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency256"), X_("256"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 256)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency512"), X_("512"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 512)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency512"), X_("512"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 512)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency1024"), X_("1024"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 1024)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency1024"), X_("1024"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 1024)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency2048"), X_("2048"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 2048)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency2048"), X_("2048"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 2048)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency4096"), X_("4096"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 4096)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency4096"), X_("4096"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 4096)); ActionManager::jack_sensitive_actions.push_back (act); - act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency8192"), X_("8192"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (nframes_t) 8192)); + act = ActionManager::register_radio_action (jack_actions, jack_latency_group, X_("JACKLatency8192"), X_("8192"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::set_jack_buffer_size), (pframes_t) 8192)); ActionManager::jack_sensitive_actions.push_back (act); /* these actions are intended to be shared across all windows */ @@ -208,7 +215,7 @@ ARDOUR_UI::install_actions () ActionManager::register_action (main_actions, X_("WindowMenu"), _("Window")); ActionManager::register_action (common_actions, X_("Quit"), _("Quit"), (hide_return (sigc::mem_fun(*this, &ARDOUR_UI::finish)))); - /* windows visibility actions */ + /* windows visibility actions */ ActionManager::register_toggle_action (common_actions, X_("ToggleMaximalEditor"), _("Maximise Editor Space"), sigc::mem_fun (*this, &ARDOUR_UI::toggle_editing_space)); act = ActionManager::register_toggle_action (common_actions, X_("KeepTearoffs"), _("Toolbars when Maximised"), mem_fun (*this, &ARDOUR_UI::toggle_keep_tearoffs)); @@ -225,6 +232,8 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (common_actions, X_("ToggleBigClock"), _("Big Clock"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_big_clock_window)); ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_toggle_action (common_actions, X_("toggle-speaker-config"), _("Speaker Config"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_speaker_config_window)); + ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (common_actions, X_("toggle-audio-connection-manager"), _("Audio Connection Manager"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::toggle_global_port_matrix), ARDOUR::DataType::AUDIO)); ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (common_actions, X_("toggle-midi-connection-manager"), _("MIDI Connection Manager"), sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::toggle_global_port_matrix), ARDOUR::DataType::MIDI)); @@ -233,8 +242,8 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); ActionManager::register_action (common_actions, X_("About"), _("About"), sigc::mem_fun(*this, &ARDOUR_UI::show_about)); ActionManager::register_action (common_actions, X_("Chat"), _("Chat"), sigc::mem_fun(*this, &ARDOUR_UI::launch_chat)); - ActionManager::register_action (common_actions, X_("Manual"), _("Manual"), mem_fun(*this, &ARDOUR_UI::launch_manual)); - ActionManager::register_action (common_actions, X_("Reference"), _("Reference"), mem_fun(*this, &ARDOUR_UI::launch_reference)); + ActionManager::register_action (common_actions, X_("Manual"), _("Manual"), mem_fun(*this, &ARDOUR_UI::launch_manual)); + ActionManager::register_action (common_actions, X_("Reference"), _("Reference"), mem_fun(*this, &ARDOUR_UI::launch_reference)); ActionManager::register_toggle_action (common_actions, X_("ToggleThemeManager"), _("Theme Manager"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_theme_manager)); ActionManager::register_toggle_action (common_actions, X_("ToggleKeyEditor"), _("Key Bindings"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_key_editor)); ActionManager::register_toggle_action (common_actions, X_("ToggleBundleManager"), _("Bundle Manager"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_bundle_manager)); @@ -389,7 +398,7 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Time Master"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_time_master)); ActionManager::session_sensitive_actions.push_back (act); - act = ActionManager::register_toggle_action (transport_actions, X_("ToggleExternalSync"), _(""), sigc::mem_fun(*this, &ARDOUR_UI::toggle_external_sync)); + act = ActionManager::register_toggle_action (transport_actions, X_("ToggleExternalSync"), "", sigc::mem_fun(*this, &ARDOUR_UI::toggle_external_sync)); ActionManager::session_sensitive_actions.push_back (act); for (int i = 1; i <= 32; ++i) { @@ -418,15 +427,15 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); - if (getenv ("ARDOUR_BUNDLED")) { - act = ActionManager::register_toggle_action (main_actions, X_("EnableTranslation"), _("Enable Translations"), mem_fun (*this, &ARDOUR_UI::toggle_translations)); - if (act) { - RefPtr ract = RefPtr::cast_dynamic (act); - if (ract) { - ract->set_active (!ARDOUR::translations_are_disabled()); - } - } - } + if (getenv ("ARDOUR_BUNDLED")) { + act = ActionManager::register_toggle_action (main_actions, X_("EnableTranslation"), _("Enable Translations"), mem_fun (*this, &ARDOUR_UI::toggle_translations)); + if (act) { + RefPtr ract = RefPtr::cast_dynamic (act); + if (ract) { + ract->set_active (!ARDOUR::translations_are_disabled()); + } + } + } ActionManager::add_action_group (shuttle_actions); ActionManager::add_action_group (option_actions); @@ -437,7 +446,7 @@ ARDOUR_UI::install_actions () } void -ARDOUR_UI::set_jack_buffer_size (nframes_t nframes) +ARDOUR_UI::set_jack_buffer_size (pframes_t nframes) { Glib::RefPtr action; const char* action_name = 0; @@ -527,7 +536,7 @@ ARDOUR_UI::build_menu_bar () sample_rate_label.set_name ("SampleRate"); #ifndef TOP_MENUBAR - menu_hbox.pack_start (*menu_bar, true, true); + menu_hbox.pack_start (*menu_bar, false, false); #else use_menubar_as_top_menubar (); #endif @@ -602,15 +611,15 @@ ARDOUR_UI::big_clock_realized () set_decoration (big_clock_window->get(), (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)); big_clock_window->get()->get_window()->get_geometry (x, y, w, big_clock_height, d); - original_big_clock_height = big_clock_height; - original_big_clock_width = w; + original_big_clock_height = big_clock_height; + original_big_clock_width = w; - Pango::FontDescription fd (big_clock.get_style()->get_font()); - original_big_clock_font_size = fd.get_size (); + Pango::FontDescription fd (big_clock.get_style()->get_font()); + original_big_clock_font_size = fd.get_size (); - if (!fd.get_size_is_absolute ()) { - original_big_clock_font_size /= PANGO_SCALE; - } + if (!fd.get_size_is_absolute ()) { + original_big_clock_font_size /= PANGO_SCALE; + } big_clock_window->setup (); } @@ -644,7 +653,7 @@ ARDOUR_UI::idle_big_clock_text_resizer (int, int) Glib::RefPtr win = big_clock_window->get()->get_window(); Pango::FontDescription fd (big_clock.get_style()->get_font()); int current_size = fd.get_size (); - int x, y, w, h, d; + int x, y, w, h, d; if (!fd.get_size_is_absolute ()) { current_size /= PANGO_SCALE; @@ -652,28 +661,28 @@ ARDOUR_UI::idle_big_clock_text_resizer (int, int) win->get_geometry (x, y, w, h, d); - double scale = min (((double) w / (double) original_big_clock_width), - ((double) h / (double) original_big_clock_height)); + double scale = min (((double) w / (double) original_big_clock_width), + ((double) h / (double) original_big_clock_height)); - int size = (int) lrintf (original_big_clock_font_size * scale); + int size = (int) lrintf (original_big_clock_font_size * scale); - if (size != current_size) { + if (size != current_size) { - string family = fd.get_family(); - char buf[family.length()+16]; - snprintf (buf, family.length()+16, "%s %d", family.c_str(), size); + string family = fd.get_family(); + char buf[family.length()+16]; + snprintf (buf, family.length()+16, "%s %d", family.c_str(), size); - try { - Pango::FontDescription fd (buf); - Glib::RefPtr rcstyle = big_clock.get_modifier_style (); - rcstyle->set_font (fd); - big_clock.modify_style (rcstyle); - } + try { + Pango::FontDescription fd (buf); + Glib::RefPtr rcstyle = big_clock.get_modifier_style (); + rcstyle->set_font (fd); + big_clock.modify_style (rcstyle); + } - catch (...) { - /* oh well, do nothing */ - } - } + catch (...) { + /* oh well, do nothing */ + } + } return false; } @@ -693,7 +702,7 @@ ARDOUR_UI::save_ardour_state () Config->add_extra_xml (*node); Config->add_extra_xml (get_transport_controllable_state()); - XMLNode* window_node = new XMLNode (X_("UI")); + XMLNode* window_node = new XMLNode (X_("UI")); for (list::iterator i = _window_proxies.begin(); i != _window_proxies.end(); ++i) { if ((*i)->rc_configured()) { @@ -701,31 +710,31 @@ ARDOUR_UI::save_ardour_state () } } - /* tearoffs */ - - XMLNode* tearoff_node = new XMLNode (X_("Tearoffs")); - - if (transport_tearoff) { - XMLNode* t = new XMLNode (X_("transport")); - transport_tearoff->add_state (*t); - tearoff_node->add_child_nocopy (*t); - } - - if (mixer && mixer->monitor_section()) { - XMLNode* t = new XMLNode (X_("monitor-section")); - mixer->monitor_section()->tearoff().add_state (*t); - tearoff_node->add_child_nocopy (*t); - } - - if (editor && editor->mouse_mode_tearoff()) { - XMLNode* t = new XMLNode (X_("mouse-mode")); - editor->mouse_mode_tearoff ()->add_state (*t); - tearoff_node->add_child_nocopy (*t); - } + /* tearoffs */ + + XMLNode* tearoff_node = new XMLNode (X_("Tearoffs")); + + if (transport_tearoff) { + XMLNode* t = new XMLNode (X_("transport")); + transport_tearoff->add_state (*t); + tearoff_node->add_child_nocopy (*t); + } + + if (mixer && mixer->monitor_section()) { + XMLNode* t = new XMLNode (X_("monitor-section")); + mixer->monitor_section()->tearoff().add_state (*t); + tearoff_node->add_child_nocopy (*t); + } + + if (editor && editor->mouse_mode_tearoff()) { + XMLNode* t = new XMLNode (X_("mouse-mode")); + editor->mouse_mode_tearoff ()->add_state (*t); + tearoff_node->add_child_nocopy (*t); + } - window_node->add_child_nocopy (*tearoff_node); + window_node->add_child_nocopy (*tearoff_node); - Config->add_extra_xml (*window_node); + Config->add_extra_xml (*window_node); if (_startup && _startup->engine_control() && _startup->engine_control()->was_used()) { Config->add_extra_xml (_startup->engine_control()->get_state()); @@ -768,4 +777,3 @@ ARDOUR_UI::toggle_global_port_matrix (ARDOUR::DataType t) } } } -