change action group owner pointer to be the relevant keybindings; reorder setting...
authorPaul Davis <paul@linuxaudiosystems.com>
Tue, 11 Dec 2018 10:06:26 +0000 (05:06 -0500)
committerPaul Davis <paul@linuxaudiosystems.com>
Tue, 11 Dec 2018 10:06:26 +0000 (05:06 -0500)
The reorder is required so that the value of "bindings" has been set and is meaningful

gtk2_ardour/ardour_ui_ed.cc
gtk2_ardour/editor.cc
gtk2_ardour/editor_actions.cc
gtk2_ardour/mixer_ui.cc
gtk2_ardour/monitor_section.cc
gtk2_ardour/processor_box.cc
gtk2_ardour/step_entry.cc
gtk2_ardour/window_manager.cc

index 885b9aa3e449be62711a02695a2abcab6968185b..a9b041d085b8c0793ded9d0a41ea5a2def75bb3e 100644 (file)
@@ -125,8 +125,8 @@ ARDOUR_UI::close_current_dialog ()
 void
 ARDOUR_UI::install_actions ()
 {
-       Glib::RefPtr<ActionGroup> main_actions = ActionManager::create_action_group (this, X_("Main"));
-       Glib::RefPtr<ActionGroup> main_menu_actions = ActionManager::create_action_group (this, X_("Main_menu"));
+       Glib::RefPtr<ActionGroup> main_actions = ActionManager::create_action_group (global_bindings, X_("Main"));
+       Glib::RefPtr<ActionGroup> main_menu_actions = ActionManager::create_action_group (global_bindings, X_("Main_menu"));
        Glib::RefPtr<Action> act;
 
        ActionManager::register_action (main_actions, X_("Escape"), _("Escape (deselect all)"), sigc::mem_fun (*this, &ARDOUR_UI::escape));
@@ -259,7 +259,7 @@ ARDOUR_UI::install_actions ()
 
        /* these actions are intended to be shared across all windows */
 
-       common_actions = ActionManager::create_action_group (this, X_("Common"));
+       common_actions = ActionManager::create_action_group (global_bindings, X_("Common"));
        ActionManager::register_action (common_actions, X_("Quit"), _("Quit"), (hide_return (sigc::mem_fun(*this, &ARDOUR_UI::finish))));
        ActionManager::register_action (common_actions, X_("Hide"), _("Hide"), sigc::mem_fun (*this, &ARDOUR_UI::hide_application));
 
@@ -415,7 +415,7 @@ ARDOUR_UI::install_actions ()
        ActionManager::session_sensitive_actions.push_back (act);
        ActionManager::write_sensitive_actions.push_back (act);
 
-       Glib::RefPtr<ActionGroup> transport_actions = ActionManager::create_action_group (this, X_("Transport"));
+       Glib::RefPtr<ActionGroup> transport_actions = ActionManager::create_action_group (global_bindings, X_("Transport"));
 
        /* do-nothing action for the "transport" menu bar item */
 
@@ -631,7 +631,7 @@ ARDOUR_UI::install_actions ()
        act = ActionManager::register_action (main_actions, X_("MonitorMenu"), _("Monitor Section"));
        ActionManager::session_sensitive_actions.push_back (act);
 
-       Glib::RefPtr<ActionGroup> monitor_actions = ActionManager::create_action_group (this, X_("Monitor"));
+       Glib::RefPtr<ActionGroup> monitor_actions = ActionManager::create_action_group (global_bindings, X_("Monitor"));
 
        act = ActionManager::register_toggle_action (monitor_actions, X_("UseMonitorSection"), _("Use Monitor Section"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_use_monitor_section));
        ActionManager::session_sensitive_actions.push_back (act);
@@ -656,12 +656,12 @@ ARDOUR_UI::install_actions ()
                ActionManager::session_sensitive_actions.push_back (act);
        }
 
-       Glib::RefPtr<ActionGroup> shuttle_actions = ActionManager::create_action_group (this, "ShuttleActions");
+       Glib::RefPtr<ActionGroup> shuttle_actions = ActionManager::create_action_group (global_bindings, "ShuttleActions");
 
        shuttle_actions->add (Action::create (X_("SetShuttleUnitsPercentage"), _("Percentage")), hide_return (sigc::bind (sigc::mem_fun (*Config, &RCConfiguration::set_shuttle_units), Percentage)));
        shuttle_actions->add (Action::create (X_("SetShuttleUnitsSemitones"), _("Semitones")), hide_return (sigc::bind (sigc::mem_fun (*Config, &RCConfiguration::set_shuttle_units), Semitones)));
 
-       Glib::RefPtr<ActionGroup> option_actions = ActionManager::create_action_group (this, "Options");
+       Glib::RefPtr<ActionGroup> option_actions = ActionManager::create_action_group (global_bindings, "Options");
 
        act = ActionManager::register_toggle_action (option_actions, X_("SendMTC"), _("Send MTC"), sigc::mem_fun (*this, &ARDOUR_UI::toggle_send_mtc));
        ActionManager::session_sensitive_actions.push_back (act);
@@ -674,7 +674,7 @@ ARDOUR_UI::install_actions ()
 
        /* MIDI */
 
-       Glib::RefPtr<ActionGroup> midi_actions = ActionManager::create_action_group (this, X_("MIDI"));
+       Glib::RefPtr<ActionGroup> midi_actions = ActionManager::create_action_group (global_bindings, X_("MIDI"));
        act = ActionManager::register_action (midi_actions, X_("panic"), _("Panic (Send MIDI all-notes-off)"), sigc::mem_fun(*this, &ARDOUR_UI::midi_panic));
        ActionManager::session_sensitive_actions.push_back (act);
        ActionManager::transport_sensitive_actions.push_back (act);
index 7c54d7390fc7c8ab50c43f4c481a6d0d09e71aa8..3f78e49ca775802169b9a9398056c12850737952 100644 (file)
@@ -774,8 +774,8 @@ Editor::Editor ()
 
        /* register actions now so that set_state() can find them and set toggles/checks etc */
 
-       register_actions ();
        load_bindings ();
+       register_actions ();
 
        setup_toolbar ();
 
index 9309bcaae1e0758122f1cffaa79488afc1e2711f..8763362ae782e93cce892e9b4a849785c0743282 100644 (file)
@@ -108,8 +108,8 @@ Editor::register_actions ()
 {
        RefPtr<Action> act;
 
-       editor_actions = ActionManager::create_action_group (this, X_("Editor"));
-       editor_menu_actions = ActionManager::create_action_group (this, X_("EditorMenu"));
+       editor_actions = ActionManager::create_action_group (bindings, X_("Editor"));
+       editor_menu_actions = ActionManager::create_action_group (bindings, X_("EditorMenu"));
 
        /* non-operative menu items for menu bar */
 
@@ -458,7 +458,7 @@ Editor::register_actions ()
 
        toggle_reg_sens (editor_actions, "sound-midi-notes", _("Sound Selected MIDI Notes"), sigc::mem_fun (*this, &Editor::toggle_sound_midi_notes));
 
-       Glib::RefPtr<ActionGroup> zoom_actions = ActionManager::create_action_group (this, X_("Zoom"));
+       Glib::RefPtr<ActionGroup> zoom_actions = ActionManager::create_action_group (bindings, X_("Zoom"));
        RadioAction::Group zoom_group;
 
        radio_reg_sens (zoom_actions, zoom_group, "zoom-focus-left", _("Zoom Focus Left"), sigc::bind (sigc::mem_fun(*this, &Editor::zoom_focus_chosen), Editing::ZoomFocusLeft));
@@ -478,7 +478,7 @@ Editor::register_actions ()
                act->set_sensitive (false);
        }
 
-       Glib::RefPtr<ActionGroup> mouse_mode_actions = ActionManager::create_action_group (this, X_("MouseMode"));
+       Glib::RefPtr<ActionGroup> mouse_mode_actions = ActionManager::create_action_group (bindings, X_("MouseMode"));
        RadioAction::Group mouse_mode_group;
 
        act = ActionManager::register_toggle_action (mouse_mode_actions, "set-mouse-mode-object-range", _("Smart Object Mode"), sigc::mem_fun (*this, &Editor::mouse_mode_object_range_toggled));
@@ -555,7 +555,7 @@ Editor::register_actions ()
        ActionManager::register_action (editor_actions, X_("next-grid-choice"), _("Next Quantize Grid Choice"), sigc::mem_fun (*this, &Editor::next_grid_choice));
        ActionManager::register_action (editor_actions, X_("prev-grid-choice"), _("Previous Quantize Grid Choice"), sigc::mem_fun (*this, &Editor::prev_grid_choice));
 
-       Glib::RefPtr<ActionGroup> snap_actions = ActionManager::create_action_group (this, X_("Snap"));
+       Glib::RefPtr<ActionGroup> snap_actions = ActionManager::create_action_group (bindings, X_("Snap"));
        RadioAction::Group grid_choice_group;
 
        ActionManager::register_radio_action (snap_actions, grid_choice_group, X_("grid-type-thirtyseconds"),  grid_type_strings[(int)GridTypeBeatDiv32].c_str(), (sigc::bind (sigc::mem_fun(*this, &Editor::grid_type_chosen), Editing::GridTypeBeatDiv32)));
@@ -587,7 +587,7 @@ Editor::register_actions ()
 
        /* RULERS */
 
-       Glib::RefPtr<ActionGroup> ruler_actions = ActionManager::create_action_group (this, X_("Rulers"));
+       Glib::RefPtr<ActionGroup> ruler_actions = ActionManager::create_action_group (bindings, X_("Rulers"));
        ruler_tempo_action = Glib::RefPtr<ToggleAction>::cast_static (ActionManager::register_toggle_action (ruler_actions, X_("toggle-tempo-ruler"), _("Tempo"), sigc::bind (sigc::mem_fun(*this, &Editor::toggle_ruler_visibility), ruler_time_tempo)));
        ruler_meter_action = Glib::RefPtr<ToggleAction>::cast_static (ActionManager::register_toggle_action (ruler_actions, X_("toggle-meter-ruler"), _("Meter"), sigc::bind (sigc::mem_fun(*this, &Editor::toggle_ruler_visibility), ruler_time_meter)));
        ruler_range_action = Glib::RefPtr<ToggleAction>::cast_static (ActionManager::register_toggle_action (ruler_actions, X_("toggle-range-ruler"), _("Ranges"), sigc::bind (sigc::mem_fun(*this, &Editor::toggle_ruler_visibility), ruler_time_range_marker)));
@@ -662,7 +662,7 @@ Editor::register_actions ()
 
        /* REGION LIST */
 
-       Glib::RefPtr<ActionGroup> rl_actions = ActionManager::create_action_group (this, X_("RegionList"));
+       Glib::RefPtr<ActionGroup> rl_actions = ActionManager::create_action_group (bindings, X_("RegionList"));
        RadioAction::Group sort_type_group;
        RadioAction::Group sort_order_group;
 
@@ -1504,7 +1504,7 @@ Editor::reset_canvas_action_sensitivity (bool onoff)
 void
 Editor::register_region_actions ()
 {
-       _region_actions = ActionManager::create_action_group (this, X_("Region"));
+       _region_actions = ActionManager::create_action_group (bindings, X_("Region"));
 
        /* PART 1: actions that operate on the selection, and for which the edit point type and location is irrelevant */
 
index 37286e8e586660011270d877453df5ba72672870..6a281e001fe85bd914057fac709a1ce7fb396c98 100644 (file)
@@ -114,8 +114,8 @@ Mixer_UI::Mixer_UI ()
        , _strip_selection_change_without_scroll (false)
        , _selection (*this, *this)
 {
-       register_actions ();
        load_bindings ();
+       register_actions ();
        _content.set_data ("ardour-bindings", bindings);
 
        PresentationInfo::Change.connect (*this, invalidator (*this), boost::bind (&Mixer_UI::presentation_info_changed, this, _1), gui_context());
@@ -3203,7 +3203,7 @@ Mixer_UI::showing_spill_for (boost::shared_ptr<Stripable> s) const
 void
 Mixer_UI::register_actions ()
 {
-       Glib::RefPtr<ActionGroup> group = ActionManager::create_action_group (this, X_("Mixer"));
+       Glib::RefPtr<ActionGroup> group = ActionManager::create_action_group (bindings, X_("Mixer"));
 
        ActionManager::register_action (group, "solo", _("Toggle Solo on Mixer-Selected Tracks/Busses"), sigc::mem_fun (*this, &Mixer_UI::solo_action));
        ActionManager::register_action (group, "mute", _("Toggle Mute on Mixer-Selected Tracks/Busses"), sigc::mem_fun (*this, &Mixer_UI::mute_action));
index c401bec6020edac6135b1a382f6f7464b104e4eb..eb5e4eff977061f80e8ca05dfbea0e8a5c8b60b4 100644 (file)
@@ -925,7 +925,7 @@ MonitorSection::register_actions ()
        string action_descr;
        Glib::RefPtr<Action> act;
 
-       monitor_actions = ActionManager::create_action_group (this, X_("Monitor"));
+       monitor_actions = ActionManager::create_action_group (bindings, X_("Monitor"));
 
        act = ActionManager::register_toggle_action (monitor_actions, "toggle-exclusive-solo", _("Toggle exclusive solo mode"),
                        sigc::bind (sigc::ptr_fun (MonitorSection::action_proxy0), ToggleExclusiveSolo));
@@ -963,7 +963,7 @@ MonitorSection::register_actions ()
 
        }
 
-       solo_actions = ActionManager::create_action_group (this, X_("Solo"));
+       solo_actions = ActionManager::create_action_group (bindings, X_("Solo"));
        RadioAction::Group solo_group;
 
        ActionManager::register_radio_action (solo_actions, solo_group, "solo-use-in-place", _("In-place solo"),
index 4edadb4bdc6ac18c08f721c1ccfa8f9a61eec78b..6b28a668105ab9cad67e4222188147829ffe6121 100644 (file)
@@ -3765,6 +3765,8 @@ ProcessorBox::register_actions ()
           need to be considered ownable by all ProcessorBox objects
        */
 
+       load_bindings ();
+
        processor_box_actions = ActionManager::create_action_group (bindings, X_("ProcessorMenu"));
 
        Glib::RefPtr<Action> act;
@@ -3847,7 +3849,6 @@ ProcessorBox::register_actions ()
                processor_box_actions, X_("edit-generic"), _("Edit with generic controls..."),
                sigc::ptr_fun (ProcessorBox::rb_edit_generic));
 
-       load_bindings ();
 }
 
 void
index 25edb120ae23dc2573664abcb93e05bfa9f4b7cb..18eaf6081ab0d0f49beee423d3a6ea98e950ed0b 100644 (file)
@@ -88,9 +88,10 @@ StepEntry::StepEntry (StepEditor& seditor)
        , piano (0)
        , se (&seditor)
 {
-       register_actions ();
        load_bindings ();
 
+       register_actions ();
+
 #if 0
        /* set channel selector to first selected channel. if none
           are selected, it will remain at the value set in its
@@ -588,7 +589,7 @@ StepEntry::register_actions ()
 {
        /* add named actions for the step editor */
 
-       Glib::RefPtr<ActionGroup> group = ActionManager::create_action_group (this, X_("StepEditing"));
+       Glib::RefPtr<ActionGroup> group = ActionManager::create_action_group (bindings, X_("StepEditing"));
 
        ActionManager::register_action (group, "insert-a", _("Insert Note A"), sigc::mem_fun (*this, &StepEntry::insert_a));
        ActionManager::register_action (group, "insert-asharp", _("Insert Note A-sharp"), sigc::mem_fun (*this, &StepEntry::insert_asharp));
index d32c0aa399a0f56070d155f09a0baadfc570e08a..493618bfcb34de1cba05ee9f979e79f765bbc639 100644 (file)
@@ -66,7 +66,7 @@ Manager::register_window (ProxyBase* info)
        if (!info->menu_name().empty()) {
 
                if (!window_actions) {
-                       window_actions = ActionManager::create_action_group (this, X_("Window"));
+                       window_actions = ActionManager::create_action_group (Gtkmm2ext::UI::instance()->global_bindings, X_("Window"));
                }
 
                ActionManager::register_toggle_action (window_actions,