summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-07-07 07:54:41 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-07-07 07:54:41 -0400
commit936861f6ce516ec032f61ef9b4cca9d90eaf7b5e (patch)
treeba33446ff249999c5302ac57bd005a9eeac743f2 /gtk2_ardour
parentb1a8f115650b54de1f494abdf70488fba195c3dd (diff)
Use Canvas::re_enter() after changing mouse mode so we get the right cursor no matter what item we're over; fix return value for button press in cut mode; never change selection in cut mode
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_mouse.cc32
1 files changed, 13 insertions, 19 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index b4050f45b6..438b3b6a8a 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -353,26 +353,14 @@ Editor::mouse_mode_toggled (MouseMode m)
instant_save ();
- //TODO: set button styles for smart buttons
-/*
- if ( smart_mode_action->get_active() ) {
- if( mouse_mode == MouseObject ) { //smart active and object active
- smart_mode_button.set_active(1);
- smart_mode_button.set_name("smart mode button");
- mouse_move_button.set_name("smart mode button");
- } else { //smart active but object inactive
- smart_mode_button.set_active(0);
- smart_mode_button.set_name("smart mode button");
- mouse_move_button.set_name("mouse mode button");
- }
- } else {
- smart_mode_button.set_active(0);
- smart_mode_button.set_name("mouse mode button");
- mouse_move_button.set_name("mouse mode button");
+ /* this should generate a new enter event which will
+ trigger the appropiate cursor.
+ */
+
+ if (_track_canvas) {
+ _track_canvas->re_enter ();
}
-*/
-
- reset_canvas_cursor ();
+
set_gain_envelope_visibility ();
update_time_selection_display ();
@@ -505,6 +493,11 @@ Editor::button_selection (ArdourCanvas::Item* /*item*/, GdkEvent* event, ItemTyp
MouseMode eff_mouse_mode = effective_mouse_mode ();
+ if (eff_mouse_mode == MouseCut) {
+ /* never change selection in cut mode */
+ return;
+ }
+
if (get_smart_mode() && eff_mouse_mode == MouseRange && event->button.button == 3 && item_type == RegionItem) {
/* context clicks are always about object properties, even if
we're in range mode within smart mode.
@@ -865,6 +858,7 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
case RegionViewNameHighlight:
case RegionViewName:
_drags->set (new RegionCutDrag (this, item), event, current_canvas_cursor);
+ return true;
break;
default:
break;