remove EditAtSelectedMarker for Mixbus, to match mb2. (also fix an existing thinko in the edit point selection actions) (oops: also fix previous track selection fix so that it pays attention to the selection property of the group)

This commit is contained in:
Ben Loftis 2014-07-09 16:33:48 -05:00
parent e8106bb415
commit b19e1a7985
3 changed files with 16 additions and 4 deletions

View File

@ -2061,6 +2061,10 @@ Editor::set_edit_point_preference (EditPoint ep, bool force)
_edit_point = ep;
string str = edit_point_strings[(int)ep];
if (Profile->get_mixbus())
if (ep == EditAtSelectedMarker)
ep = EditAtPlayhead;
if (str != edit_point_selector.get_text ()) {
edit_point_selector.set_text (str);
}
@ -3029,7 +3033,8 @@ Editor::build_edit_point_menu ()
using namespace Menu_Helpers;
edit_point_selector.AddMenuElem (MenuElem ( edit_point_strings[(int)EditAtPlayhead], sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_selection_done), (EditPoint) EditAtPlayhead)));
edit_point_selector.AddMenuElem (MenuElem ( edit_point_strings[(int)EditAtSelectedMarker], sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_selection_done), (EditPoint) EditAtSelectedMarker)));
if(!Profile->get_mixbus())
edit_point_selector.AddMenuElem (MenuElem ( edit_point_strings[(int)EditAtSelectedMarker], sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_selection_done), (EditPoint) EditAtSelectedMarker)));
edit_point_selector.AddMenuElem (MenuElem ( edit_point_strings[(int)EditAtMouse], sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_selection_done), (EditPoint) EditAtMouse)));
set_size_request_to_display_given_text (edit_point_selector, edit_point_strings, 30, 2);
@ -3403,6 +3408,9 @@ Editor::snap_mode_selection_done (SnapMode mode)
void
Editor::cycle_edit_point (bool with_marker)
{
if(Profile->get_mixbus())
with_marker = false;
switch (_edit_point) {
case EditAtMouse:
set_edit_point_preference (EditAtPlayhead);
@ -4372,6 +4380,10 @@ Editor::get_preferred_edit_position (bool ignore_playhead, bool from_context_men
framepos_t where = 0;
EditPoint ep = _edit_point;
if(Profile->get_mixbus())
if (ep == EditAtSelectedMarker)
ep=EditAtPlayhead;
if (from_context_menu && (ep == EditAtMouse)) {
return canvas_event_sample (&context_click_event, 0, 0);
}

View File

@ -504,8 +504,8 @@ Editor::register_actions ()
RadioAction::Group edit_point_group;
ActionManager::register_radio_action (editor_actions, edit_point_group, X_("edit-at-playhead"), _("Playhead"), (sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_chosen), Editing::EditAtPlayhead)));
ActionManager::register_radio_action (editor_actions, edit_point_group, X_("edit-at-mouse"), _("Mouse"), (sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_chosen), Editing::EditAtPlayhead)));
ActionManager::register_radio_action (editor_actions, edit_point_group, X_("edit-at-selected-marker"), _("Marker"), (sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_chosen), Editing::EditAtPlayhead)));
ActionManager::register_radio_action (editor_actions, edit_point_group, X_("edit-at-mouse"), _("Mouse"), (sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_chosen), Editing::EditAtMouse)));
ActionManager::register_radio_action (editor_actions, edit_point_group, X_("edit-at-selected-marker"), _("Marker"), (sigc::bind (sigc::mem_fun(*this, &Editor::edit_point_chosen), Editing::EditAtSelectedMarker)));
ActionManager::register_action (editor_actions, "cycle-edit-point", _("Change Edit Point"), sigc::bind (sigc::mem_fun (*this, &Editor::cycle_edit_point), false));
ActionManager::register_action (editor_actions, "cycle-edit-point-with-marker", _("Change Edit Point Including Marker"), sigc::bind (sigc::mem_fun (*this, &Editor::cycle_edit_point), true));

View File

@ -4259,7 +4259,7 @@ SelectionDrag::motion (GdkEvent* event, bool first_move)
TrackViewList grouped_add = new_selection;
for (TrackViewList::const_iterator i = new_selection.begin(); i != new_selection.end(); ++i) {
RouteTimeAxisView *n = dynamic_cast<RouteTimeAxisView *>(*i);
if ( n && n->route()->route_group() && n->route()->route_group()->is_active() ) {
if ( n && n->route()->route_group() && n->route()->route_group()->is_active() && n->route()->route_group()->enabled_property (ARDOUR::Properties::select.property_id) ) {
for (TrackViewList::const_iterator j = all_tracks.begin(); j != all_tracks.end(); ++j) {
RouteTimeAxisView *check = dynamic_cast<RouteTimeAxisView *>(*j);
if ( check && (n != check) && (check->route()->route_group() == n->route()->route_group()) )