X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fardour_ui_ed.cc;h=ee93919ece5531f6f79b3e9419a714a1772528fa;hb=0aaa08a3d260539e2c193082d7c1ce2967a8e148;hp=ac74f3639104ef03324624bcf88fe5662cfe0df2;hpb=f0bf3a0c190ced488d1520435df8234ef50971d6;p=ardour.git diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index ac74f36391..ee93919ece 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -39,6 +39,7 @@ #include "editor.h" #include "actions.h" #include "mixer_ui.h" +#include "utils.h" #ifdef GTKOSX #include @@ -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")); @@ -106,7 +107,7 @@ ARDOUR_UI::install_actions () /* the real actions */ - act = ActionManager::register_action (main_actions, X_("New"), _("New..."), hide_return (bind (mem_fun(*this, &ARDOUR_UI::get_session_parameters), true))); + act = ActionManager::register_action (main_actions, X_("New"), _("New..."), hide_return (bind (mem_fun(*this, &ARDOUR_UI::get_session_parameters), false, true))); ActionManager::register_action (main_actions, X_("Open"), _("Open..."), mem_fun(*this, &ARDOUR_UI::open_session)); ActionManager::register_action (main_actions, X_("Recent"), _("Recent..."), mem_fun(*this, &ARDOUR_UI::open_recent_session)); @@ -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)); @@ -150,9 +152,12 @@ ARDOUR_UI::install_actions () act = ActionManager::register_action (main_actions, X_("Export"), _("Export")); ActionManager::session_sensitive_actions.push_back (act); - act = ActionManager::register_action (main_actions, X_("CleanupUnused"), _("Cleanup Unused Sources"), mem_fun (*(ARDOUR_UI::instance()), &ARDOUR_UI::cleanup)); + 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 */ @@ -212,7 +217,7 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); ActionManager::register_action (common_actions, X_("About"), _("About"), mem_fun(*this, &ARDOUR_UI::show_about)); ActionManager::register_toggle_action (common_actions, X_("ToggleThemeManager"), _("Theme Manager"), mem_fun(*this, &ARDOUR_UI::toggle_theme_manager)); - ActionManager::register_toggle_action (common_actions, X_("ToggleKeyEditor"), _("Keybindings"), mem_fun(*this, &ARDOUR_UI::toggle_key_editor)); + ActionManager::register_toggle_action (common_actions, X_("ToggleKeyEditor"), _("Key Bindings"), mem_fun(*this, &ARDOUR_UI::toggle_key_editor)); ActionManager::register_toggle_action (common_actions, X_("ToggleBundleManager"), _("Bundle Manager"), mem_fun(*this, &ARDOUR_UI::toggle_bundle_manager)); act = ActionManager::register_action (common_actions, X_("AddAudioTrack"), _("Add Audio Track"), bind (mem_fun(*this, &ARDOUR_UI::session_add_audio_track), 1, 1, ARDOUR::Normal, (ARDOUR::RouteGroup *) 0, 1)); @@ -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); @@ -245,10 +251,13 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); ActionManager::transport_sensitive_actions.push_back (act); - ActionManager::register_action (transport_actions, X_("ToggleRoll"), _("Start/Stop"), bind (mem_fun (*editor, &PublicEditor::toggle_playback), false)); + act = ActionManager::register_action (transport_actions, X_("ToggleRoll"), _("Start/Stop"), bind (mem_fun (*this, &ARDOUR_UI::toggle_roll), false, false)); + ActionManager::session_sensitive_actions.push_back (act); + ActionManager::transport_sensitive_actions.push_back (act); + act = ActionManager::register_action (transport_actions, X_("ToggleRollMaybe"), _("Start/Continue/Stop"), bind (mem_fun (*this, &ARDOUR_UI::toggle_roll), false, true)); ActionManager::session_sensitive_actions.push_back (act); ActionManager::transport_sensitive_actions.push_back (act); - ActionManager::register_action (transport_actions, X_("ToggleRollForgetCapture"), _("Stop and Forget Capture"), bind (mem_fun(*editor, &PublicEditor::toggle_playback), true)); + act = ActionManager::register_action (transport_actions, X_("ToggleRollForgetCapture"), _("Stop + Forget Capture"), bind (mem_fun(*this, &ARDOUR_UI::toggle_roll), true, false)); ActionManager::session_sensitive_actions.push_back (act); ActionManager::transport_sensitive_actions.push_back (act); @@ -258,14 +267,13 @@ ARDOUR_UI::install_actions () - otherwise do nothing */ - ActionManager::register_action (transport_actions, X_("TransitionToRoll"), _("Transition To Roll"), bind (mem_fun (*editor, &PublicEditor::transition_to_rolling), true)); - ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_action (transport_actions, X_("TransitionToRoll"), _("Transition To Roll"), bind (mem_fun (*editor, &PublicEditor::transition_to_rolling), true)); ActionManager::session_sensitive_actions.push_back (act); + ActionManager::transport_sensitive_actions.push_back (act); - ActionManager::register_action (transport_actions, X_("TransitionToReverse"), _("Transition To Reverse"), bind (mem_fun (*editor, &PublicEditor::transition_to_rolling), false)); + act = ActionManager::register_action (transport_actions, X_("TransitionToReverse"), _("Transition To Reverse"), bind (mem_fun (*editor, &PublicEditor::transition_to_rolling), false)); ActionManager::session_sensitive_actions.push_back (act); - ActionManager::session_sensitive_actions.push_back (act); - + ActionManager::transport_sensitive_actions.push_back (act); act = ActionManager::register_action (transport_actions, X_("Loop"), _("Play Loop Range"), mem_fun(*this, &ARDOUR_UI::toggle_session_auto_loop)); ActionManager::session_sensitive_actions.push_back (act); @@ -276,8 +284,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); @@ -354,9 +364,12 @@ ARDOUR_UI::install_actions () ActionManager::session_sensitive_actions.push_back (act); ActionManager::transport_sensitive_actions.push_back (act); - ActionManager::register_toggle_action (transport_actions, X_("ToggleVideoSync"), _("Sync startup to video"), mem_fun(*this, &ARDOUR_UI::toggle_video_sync)); + act = ActionManager::register_toggle_action (transport_actions, X_("ToggleVideoSync"), _("Sync startup to video"), mem_fun(*this, &ARDOUR_UI::toggle_video_sync)); + ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Time Master"), mem_fun(*this, &ARDOUR_UI::toggle_time_master)); ActionManager::session_sensitive_actions.push_back (act); + act = ActionManager::register_toggle_action (transport_actions, X_("ToggleExternalSync"), _(""), mem_fun(*this, &ARDOUR_UI::toggle_external_sync)); + ActionManager::session_sensitive_actions.push_back (act); act = ActionManager::register_action (common_actions, X_("ToggleRecordEnableTrack1"), _("Toggle Record Enable Track1"), bind (mem_fun(*this, &ARDOUR_UI::toggle_record_enable), 0U)); ActionManager::session_sensitive_actions.push_back (act); @@ -567,7 +580,6 @@ ARDOUR_UI::use_menubar_as_top_menubar () #endif } - void ARDOUR_UI::setup_clock () { @@ -579,12 +591,11 @@ ARDOUR_UI::setup_clock () big_clock_window->set_border_width (0); big_clock_window->add (big_clock); - WindowTitle title(Glib::get_application_name()); - title += _("Clock"); - big_clock_window->set_title (title.get_string()); - big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_MENU); + big_clock_window->set_title (_("Big Clock")); + 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_("/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); }