diff options
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/editor.cc | 7 | ||||
-rw-r--r-- | gtk2_ardour/editor_actions.cc | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index f77d9b935a..505a191323 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -1842,7 +1842,7 @@ Editor::add_region_context_items (Menu_Helpers::MenuList& edit_items, bool multi edit_items.push_back (*_popup_region_menu_item); if (multiple_regions_at_position && (layering_order_editor == 0 || !layering_order_editor->is_visible ())) { - edit_items.push_back (action_menu_item ("choose-top-region")); + edit_items.push_back (*manage (_region_actions->get_action ("choose-top-region")->create_menu_item ())); } edit_items.push_back (SeparatorElem()); } @@ -5507,6 +5507,9 @@ Editor::setup_fade_images () Gtk::MenuItem& Editor::action_menu_item (std::string const & name) { - return *manage (editor_actions->get_action(name)->create_menu_item ()); + Glib::RefPtr<Action> a = editor_actions->get_action (name); + assert (a); + + return *manage (a->create_menu_item ()); } diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc index d40e4766ee..d6ba57e1ae 100644 --- a/gtk2_ardour/editor_actions.cc +++ b/gtk2_ardour/editor_actions.cc @@ -1275,11 +1275,12 @@ Editor::toggle_internal_editing () /* Convenience functions to slightly reduce verbosity below */ -static void +static RefPtr<Action> reg_sens (RefPtr<ActionGroup> group, char const * name, char const * label, sigc::slot<void> slot) { RefPtr<Action> act = ActionManager::register_action (group, name, label, slot); ActionManager::session_sensitive_actions.push_back (act); + return act; } static void @@ -1547,7 +1548,8 @@ Editor::register_region_actions () sigc::bind (sigc::mem_fun (*this, &Editor::align_regions_relative), ARDOUR::SyncPoint) ); - reg_sens (_region_actions, "choose-top-region", _("Choose Top..."), mem_fun (*this, &Editor::change_region_layering_order)); + Glib::RefPtr<Action> a = reg_sens (_region_actions, "choose-top-region", _("Choose Top..."), mem_fun (*this, &Editor::change_region_layering_order)); + a->set_accel_group (get_accel_group ()); _all_region_actions_sensitized = true; |