From 790d9042c644843f8105c714fad641dd17b7d722 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 6 Dec 2011 23:23:09 +0000 Subject: [PATCH] correct button press detection order for editor route groups git-svn-id: svn://localhost/ardour2/branches/3.0@10919 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/editor_route_groups.cc | 71 +++++++++++++++--------------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/gtk2_ardour/editor_route_groups.cc b/gtk2_ardour/editor_route_groups.cc index ee670647d3..3f6a84980a 100644 --- a/gtk2_ardour/editor_route_groups.cc +++ b/gtk2_ardour/editor_route_groups.cc @@ -262,7 +262,32 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } switch (GPOINTER_TO_UINT (column->get_data (X_("colnum")))) { - case 0: + case 0: + c = (*iter)[_columns.gdkcolor]; + + color_dialog.get_colorsel()->set_previous_color (c); + color_dialog.get_colorsel()->set_current_color (c); + + switch (color_dialog.run()) { + case RESPONSE_CANCEL: + break; + case RESPONSE_ACCEPT: + c = color_dialog.get_colorsel()->get_current_color(); + (*iter)[_columns.gdkcolor] = c; + GroupTabs::set_group_color ((*iter)[_columns.routegroup], c); + ARDOUR_UI::config()->set_dirty (); + break; + + default: + break; + + } + + color_dialog.hide (); + ret = true; + break; + + case 1: if (Keyboard::is_edit_event (ev)) { if ((iter = _model->get_iter (path))) { if ((group = (*iter)[_columns.routegroup]) != 0) { @@ -273,7 +298,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 1: + case 2: if ((iter = _model->get_iter (path))) { bool gain = (*iter)[_columns.gain]; (*iter)[_columns.gain] = !gain; @@ -281,7 +306,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 2: + case 3: if ((iter = _model->get_iter (path))) { bool gain_relative = (*iter)[_columns.gain_relative]; (*iter)[_columns.gain_relative] = !gain_relative; @@ -289,7 +314,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 3: + case 4: if ((iter = _model->get_iter (path))) { bool mute = (*iter)[_columns.mute]; (*iter)[_columns.mute] = !mute; @@ -297,7 +322,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 4: + case 5: if ((iter = _model->get_iter (path))) { bool solo = (*iter)[_columns.solo]; (*iter)[_columns.solo] = !solo; @@ -305,7 +330,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 5: + case 6: if ((iter = _model->get_iter (path))) { bool record = (*iter)[_columns.record]; (*iter)[_columns.record] = !record; @@ -313,7 +338,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 6: + case 7: if ((iter = _model->get_iter (path))) { bool monitoring = (*iter)[_columns.monitoring]; (*iter)[_columns.monitoring] = !monitoring; @@ -321,7 +346,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 7: + case 8: if ((iter = _model->get_iter (path))) { bool select = (*iter)[_columns.select]; (*iter)[_columns.select] = !select; @@ -329,7 +354,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 8: + case 9: if ((iter = _model->get_iter (path))) { bool edits = (*iter)[_columns.edits]; (*iter)[_columns.edits] = !edits; @@ -337,7 +362,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 9: + case 10: if ((iter = _model->get_iter (path))) { bool active_state = (*iter)[_columns.active_state]; (*iter)[_columns.active_state] = !active_state; @@ -345,7 +370,7 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 10: + case 11: if ((iter = _model->get_iter (path))) { bool is_visible = (*iter)[_columns.is_visible]; (*iter)[_columns.is_visible] = !is_visible; @@ -353,30 +378,6 @@ EditorRouteGroups::button_press_event (GdkEventButton* ev) } break; - case 11: - c = (*iter)[_columns.gdkcolor]; - - color_dialog.get_colorsel()->set_previous_color (c); - color_dialog.get_colorsel()->set_current_color (c); - - switch (color_dialog.run()) { - case RESPONSE_CANCEL: - break; - case RESPONSE_ACCEPT: - c = color_dialog.get_colorsel()->get_current_color(); - (*iter)[_columns.gdkcolor] = c; - GroupTabs::set_group_color ((*iter)[_columns.routegroup], c); - ARDOUR_UI::config()->set_dirty (); - break; - - default: - break; - - } - - color_dialog.hide (); - ret = true; - break; default: break; -- 2.30.2