Add mono switch to mixer strips (mantis 1068)
[ardour.git] / gtk2_ardour / ardour_ui_ed.cc
index ac74f3639104ef03324624bcf88fe5662cfe0df2..d76ff437919f36212bb1e9edc021e09453ffb298 100644 (file)
@@ -39,6 +39,7 @@
 #include "editor.h"
 #include "actions.h"
 #include "mixer_ui.h"
+#include "utils.h"
 
 #ifdef GTKOSX
 #include <gtkmm2ext/sync-menu.h>
@@ -88,8 +89,8 @@ ARDOUR_UI::install_actions ()
        /* menus + submenus that need action items */
 
        ActionManager::register_action (main_actions, X_("Session"), _("Session"));
-       ActionManager::register_action (main_actions, X_("Files"), _("Import/Export"));
-       ActionManager::register_action (main_actions, X_("Cleanup"), _("Cleanup"));
+       act = ActionManager::register_action (main_actions, X_("Cleanup"), _("Cleanup"));
+       ActionManager::write_sensitive_actions.push_back (act);
        ActionManager::register_action (main_actions, X_("Sync"), _("Sync"));
        ActionManager::register_action (main_actions, X_("TransportOptions"), _("Options"));
        ActionManager::register_action (main_actions, X_("Help"), _("Help"));
@@ -116,7 +117,7 @@ ARDOUR_UI::install_actions ()
        act = ActionManager::register_action (main_actions, X_("AddTrackBus"), _("Add Track/Bus..."),
                                              bind (mem_fun(*this, &ARDOUR_UI::add_route), (Gtk::Window*) 0));
        ActionManager::session_sensitive_actions.push_back (act);
-
+       ActionManager::write_sensitive_actions.push_back (act);
 
 #ifdef WITH_CMT
 
@@ -131,6 +132,7 @@ ARDOUR_UI::install_actions ()
 
        act = ActionManager::register_action (main_actions, X_("Snapshot"), _("Snapshot..."),  mem_fun(*this, &ARDOUR_UI::snapshot_session));
        ActionManager::session_sensitive_actions.push_back (act);
+       ActionManager::write_sensitive_actions.push_back (act);
 
        act = ActionManager::register_action (main_actions, X_("SaveTemplate"), _("Save Template..."),  mem_fun(*this, &ARDOUR_UI::save_template));
        ActionManager::session_sensitive_actions.push_back (act);
@@ -138,10 +140,10 @@ ARDOUR_UI::install_actions ()
        act = ActionManager::register_action (main_actions, X_("Metadata"), _("Metadata"));
        ActionManager::session_sensitive_actions.push_back (act);
 
-       act = ActionManager::register_action (main_actions, X_("EditMetadata"), _("Edit Metadata"),  mem_fun(*this, &ARDOUR_UI::edit_metadata));
+       act = ActionManager::register_action (main_actions, X_("EditMetadata"), _("Edit Metadata..."),  mem_fun(*this, &ARDOUR_UI::edit_metadata));
        ActionManager::session_sensitive_actions.push_back (act);
 
-       act = ActionManager::register_action (main_actions, X_("ImportMetadata"), _("Import Metadata"),  mem_fun(*this, &ARDOUR_UI::import_metadata));
+       act = ActionManager::register_action (main_actions, X_("ImportMetadata"), _("Import Metadata..."),  mem_fun(*this, &ARDOUR_UI::import_metadata));
        ActionManager::session_sensitive_actions.push_back (act);
 
        act = ActionManager::register_action (main_actions, X_("ExportAudio"), _("Export To Audio File(s)..."),  mem_fun (*editor, &PublicEditor::export_audio));
@@ -152,7 +154,10 @@ ARDOUR_UI::install_actions ()
 
        act = ActionManager::register_action (main_actions, X_("CleanupUnused"), _("Cleanup Unused Sources"),  mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::cleanup));
        ActionManager::session_sensitive_actions.push_back (act);
+       ActionManager::write_sensitive_actions.push_back (act);
+
        act = ActionManager::register_action (main_actions, X_("FlushWastebasket"), _("Flush Wastebasket"),  mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::flush_trash));
+       ActionManager::write_sensitive_actions.push_back (act);
        ActionManager::session_sensitive_actions.push_back (act);
 
        /* JACK actions for controlling ... JACK */
@@ -225,6 +230,7 @@ ARDOUR_UI::install_actions ()
        //ActionManager::session_sensitive_actions.push_back (act);
        act = ActionManager::register_action (common_actions, X_("Save"), _("Save"),  bind (mem_fun(*this, &ARDOUR_UI::save_state), string("")));
        ActionManager::session_sensitive_actions.push_back (act);
+       ActionManager::write_sensitive_actions.push_back (act);
        act = ActionManager::register_action (common_actions, X_("RemoveLastCapture"), _("Remove Last Capture"), mem_fun(*this, &ARDOUR_UI::remove_last_capture));
        ActionManager::session_sensitive_actions.push_back (act);
 
@@ -276,8 +282,10 @@ ARDOUR_UI::install_actions ()
 
        act = ActionManager::register_action (transport_actions, X_("Record"), _("Enable Record"), bind (mem_fun(*this, &ARDOUR_UI::transport_record), false));
        ActionManager::session_sensitive_actions.push_back (act);
+       ActionManager::write_sensitive_actions.push_back (act);
        act = ActionManager::register_action (transport_actions, X_("record-roll"), _("Start Recording"), bind (mem_fun(*this, &ARDOUR_UI::transport_record), true));
        ActionManager::session_sensitive_actions.push_back (act);
+       ActionManager::write_sensitive_actions.push_back (act);
        ActionManager::transport_sensitive_actions.push_back (act);
        act = ActionManager::register_action (transport_actions, X_("Rewind"), _("Rewind"), bind (mem_fun(*this, &ARDOUR_UI::transport_rewind), 0));
        ActionManager::session_sensitive_actions.push_back (act);
@@ -567,7 +575,6 @@ ARDOUR_UI::use_menubar_as_top_menubar ()
 #endif
 }
 
-
 void
 ARDOUR_UI::setup_clock ()
 {
@@ -580,11 +587,12 @@ ARDOUR_UI::setup_clock ()
        big_clock_window->add  (big_clock);
 
        WindowTitle title(Glib::get_application_name());
-       title += _("Clock");
+       title += _("Big Clock");
        big_clock_window->set_title (title.get_string());
-       big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_MENU);
+       big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_UTILITY);
        big_clock_window->signal_realize().connect (bind (sigc::ptr_fun (set_decoration), big_clock_window,  (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)));
        big_clock_window->signal_unmap().connect (bind (sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleBigClock")));
+       big_clock_window->signal_key_press_event().connect (bind (sigc::ptr_fun (relay_key_press), big_clock_window), false);
 
        manage_window (*big_clock_window);
 }