add menu-accessible actions for Consolidate Range

This commit is contained in:
Ben Loftis 2022-06-06 10:13:47 -05:00
parent bd62f76875
commit c431575f22
2 changed files with 8 additions and 2 deletions

View File

@ -169,6 +169,7 @@ Editor::register_actions ()
ActionManager::register_action (editor_menu_actions, X_("Select"), _("Select"));
ActionManager::register_action (editor_menu_actions, X_("SelectMenu"), _("Select"));
ActionManager::register_action (editor_menu_actions, X_("SeparateMenu"), _("Separate"));
ActionManager::register_action (editor_menu_actions, X_("ConsolidateMenu"), _("Consolidate"));
ActionManager::register_action (editor_menu_actions, X_("SetLoopMenu"), _("Loop"));
ActionManager::register_action (editor_menu_actions, X_("SetPunchMenu"), _("Punch"));
ActionManager::register_action (editor_menu_actions, X_("Solo"), _("Solo"));
@ -396,6 +397,11 @@ Editor::register_actions ()
act = reg_sens (editor_actions, "editor-crop", _("Crop"), sigc::mem_fun(*this, &Editor::crop_region_to_selection));
ActionManager::time_selection_sensitive_actions.push_back (act);
act = reg_sens (editor_actions, "editor-consolidate-with-processing", _("Consolidate Range (with processing)"), sigc::bind (sigc::mem_fun(*this, &Editor::bounce_range_selection), ReplaceRange, true));
ActionManager::time_selection_sensitive_actions.push_back (act);
act = reg_sens (editor_actions, "editor-consolidate", _("Consolidate Range"), sigc::bind (sigc::mem_fun(*this, &Editor::bounce_range_selection), ReplaceRange, false));
ActionManager::time_selection_sensitive_actions.push_back (act);
reg_sens (editor_actions, "editor-cut", _("Cut"), sigc::mem_fun(*this, &Editor::cut));
reg_sens (editor_actions, "editor-delete", _("Delete"), sigc::mem_fun(*this, &Editor::delete_));
reg_sens (editor_actions, "alternate-editor-delete", _("Delete"), sigc::mem_fun(*this, &Editor::delete_));

View File

@ -4258,8 +4258,8 @@ Editor::bounce_range_selection (BounceTarget target, bool with_processing)
}
}
timepos_t start = selection->time[clicked_selection].start();
timepos_t end = selection->time[clicked_selection].end();
timepos_t start = selection->time.start_time();
timepos_t end = selection->time.end_time();
timecnt_t cnt = start.distance (end);
bool in_command = false;