mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-11 09:06:33 +01:00
Use dedicated common actions per edit context
Pianoroll and main editor mouse-mode/tool actions are now separate.
This commit is contained in:
parent
13ee3d9fc3
commit
d8e7e24f59
5 changed files with 21 additions and 22 deletions
|
|
@ -79,9 +79,9 @@ playhead to the n-th marker.
|
|||
The "move" commands all move the active marker(s). Jump to the first 9 markers using
|
||||
the keypad digits 1-9 (requires numlock).
|
||||
|
||||
%mmode Editor Mouse Modes
|
||||
%mmode Editing Mouse Modes
|
||||
|
||||
%mouse Editor Mouse Usage
|
||||
%mouse Editing Mouse Usage
|
||||
Right click on most objects and controls displays a context menu
|
||||
Shift+Right click deletes most objects.
|
||||
OS X users without a 3 button mouse can use {\tt Option+Ctrl+Left} to simulate "Middle" for some purposes.
|
||||
|
|
|
|||
|
|
@ -69,7 +69,6 @@ using std::string;
|
|||
sigc::signal<void> EditingContext::DropDownKeys;
|
||||
Gtkmm2ext::Bindings* EditingContext::button_bindings = nullptr;
|
||||
Glib::RefPtr<Gtk::ActionGroup> EditingContext::_midi_actions;
|
||||
Glib::RefPtr<Gtk::ActionGroup> EditingContext::_common_actions;
|
||||
std::vector<std::string> EditingContext::grid_type_strings;
|
||||
MouseCursors* EditingContext::_cursors = nullptr;
|
||||
EditingContext* EditingContext::_current_editing_context = nullptr;
|
||||
|
|
@ -299,11 +298,7 @@ EditingContext::set_selected_midi_region_view (MidiRegionView& mrv)
|
|||
void
|
||||
EditingContext::register_common_actions (Bindings* common_bindings)
|
||||
{
|
||||
if (_common_actions) {
|
||||
return;
|
||||
}
|
||||
|
||||
_common_actions = ActionManager::create_action_group (common_bindings, X_("Editing"));
|
||||
_common_actions = ActionManager::create_action_group (common_bindings, _name);
|
||||
|
||||
reg_sens (_common_actions, "temporal-zoom-out", _("Zoom Out"), []() { current_editing_context()->temporal_zoom_step (true); });
|
||||
reg_sens (_common_actions, "temporal-zoom-in", _("Zoom In"), []() { current_editing_context()->temporal_zoom_step (false); });
|
||||
|
|
@ -330,6 +325,10 @@ EditingContext::register_common_actions (Bindings* common_bindings)
|
|||
ActionManager::register_radio_action (_common_actions, mouse_mode_group, "set-mouse-mode-content", _("Internal Edit (Content Tool)"), []() { current_editing_context()->mouse_mode_toggled (Editing::MouseContent); });
|
||||
ActionManager::register_radio_action (_common_actions, mouse_mode_group, "set-mouse-mode-cut", _("Cut Tool"), []() { current_editing_context()->mouse_mode_toggled (Editing::MouseCut); });
|
||||
|
||||
if (ActionManager::get_action_group(X_("Zoom"))) {
|
||||
return;
|
||||
}
|
||||
|
||||
Glib::RefPtr<ActionGroup> zoom_actions = ActionManager::create_action_group (common_bindings, X_("Zoom"));
|
||||
RadioAction::Group zoom_group;
|
||||
|
||||
|
|
@ -2187,19 +2186,19 @@ EditingContext::get_mouse_mode_action (MouseMode m) const
|
|||
{
|
||||
switch (m) {
|
||||
case MouseRange:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-range"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-range"));
|
||||
case MouseObject:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-object"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-object"));
|
||||
case MouseCut:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-cut"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-cut"));
|
||||
case MouseDraw:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-draw"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-draw"));
|
||||
case MouseTimeFX:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-timefx"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-timefx"));
|
||||
case MouseGrid:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-grid"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-grid"));
|
||||
case MouseContent:
|
||||
return ActionManager::get_action (X_("Editing"), X_("set-mouse-mode-content"));
|
||||
return ActionManager::get_action (_name.c_str(), X_("set-mouse-mode-content"));
|
||||
}
|
||||
return Glib::RefPtr<Action>();
|
||||
}
|
||||
|
|
@ -2209,9 +2208,9 @@ EditingContext::bind_mouse_mode_buttons ()
|
|||
{
|
||||
RefPtr<Action> act;
|
||||
|
||||
act = ActionManager::get_action (X_("Editing"), X_("temporal-zoom-in"));
|
||||
act = ActionManager::get_action (_name.c_str(), X_("temporal-zoom-in"));
|
||||
zoom_in_button.set_related_action (act);
|
||||
act = ActionManager::get_action (X_("Editing"), X_("temporal-zoom-out"));
|
||||
act = ActionManager::get_action (_name.c_str(), X_("temporal-zoom-out"));
|
||||
zoom_out_button.set_related_action (act);
|
||||
|
||||
mouse_move_button.set_related_action (get_mouse_mode_action (Editing::MouseObject));
|
||||
|
|
@ -3295,7 +3294,7 @@ EditingContext::load_shared_bindings ()
|
|||
Bindings* midi_bindings = Bindings::get_bindings (X_("MIDI"));
|
||||
register_midi_actions (midi_bindings);
|
||||
|
||||
Bindings* shared_bindings = Bindings::get_bindings (X_("Editing"));
|
||||
Bindings* shared_bindings = Bindings::get_bindings (_name);
|
||||
register_common_actions (shared_bindings);
|
||||
|
||||
/* Give this editing context the chance to add more mode mode actions */
|
||||
|
|
|
|||
|
|
@ -408,7 +408,7 @@ class EditingContext : public ARDOUR::SessionHandlePtr, public AxisViewProvider
|
|||
void transpose_region ();
|
||||
|
||||
static void register_midi_actions (Gtkmm2ext::Bindings*);
|
||||
static void register_common_actions (Gtkmm2ext::Bindings*);
|
||||
void register_common_actions (Gtkmm2ext::Bindings*);
|
||||
|
||||
ArdourCanvas::Rectangle* rubberband_rect;
|
||||
|
||||
|
|
@ -487,7 +487,7 @@ class EditingContext : public ARDOUR::SessionHandlePtr, public AxisViewProvider
|
|||
bool within_track_canvas;
|
||||
|
||||
static Glib::RefPtr<Gtk::ActionGroup> _midi_actions;
|
||||
static Glib::RefPtr<Gtk::ActionGroup> _common_actions;
|
||||
Glib::RefPtr<Gtk::ActionGroup> _common_actions;
|
||||
|
||||
void load_shared_bindings ();
|
||||
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ Editor::register_actions ()
|
|||
{
|
||||
RefPtr<Action> act;
|
||||
|
||||
editor_actions = ActionManager::create_action_group (bindings, editor_name());
|
||||
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 */
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ const int PublicEditor::horizontal_spacing = 6;
|
|||
ARDOUR::DataType PublicEditor::pbdid_dragged_dt = ARDOUR::DataType::NIL;
|
||||
|
||||
PublicEditor::PublicEditor ()
|
||||
: EditingContext (X_("Editor"))
|
||||
: EditingContext (X_("Editing"))
|
||||
, Tabbable (_("Editor"), X_("editor"), NULL, true, Tabbable::PaneLayout (Tabbable::AttLeft | Tabbable::AttBottom | Tabbable::PaneRight))
|
||||
{
|
||||
_suspend_route_redisplay_counter.store (0);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue