diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-12-21 21:39:36 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-12-21 21:39:36 +0000 |
commit | 4471f536435285d5d2e9f8dacfab51eff70bc061 (patch) | |
tree | e9645bb80c9f3b85ad5828afb3c4ab36171335cc /gtk2_ardour/editor_mouse.cc | |
parent | 92a2b8cb3fb1620b222162269b1e954a8bc32f48 (diff) |
prevent cursor from changing when in smart+internal object mode
git-svn-id: svn://localhost/ardour2/branches/3.0@13704 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index 11a4504aaa..81767cdaa3 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -199,6 +199,10 @@ Editor::which_grabber_cursor () case MouseTimeFX: c = _cursors->midi_resize; break; + + case MouseRange: + c = _cursors->grabber_note; + break; default: break; @@ -250,6 +254,9 @@ Editor::set_canvas_cursor () switch (mouse_mode) { case MouseRange: current_canvas_cursor = _cursors->selector; + if (_internal_editing) { + current_canvas_cursor = which_grabber_cursor(); + } break; case MouseObject: @@ -281,19 +288,21 @@ Editor::set_canvas_cursor () break; } - switch (_join_object_range_state) { - case JOIN_OBJECT_RANGE_NONE: - break; - case JOIN_OBJECT_RANGE_OBJECT: - current_canvas_cursor = which_grabber_cursor (); - break; - case JOIN_OBJECT_RANGE_RANGE: - current_canvas_cursor = _cursors->selector; - break; + if (!_internal_editing) { + switch (_join_object_range_state) { + case JOIN_OBJECT_RANGE_NONE: + break; + case JOIN_OBJECT_RANGE_OBJECT: + current_canvas_cursor = which_grabber_cursor (); + break; + case JOIN_OBJECT_RANGE_RANGE: + current_canvas_cursor = _cursors->selector; + break; + } } /* up-down cursor as a cue that automation can be dragged up and down when in join object/range mode */ - if ( get_smart_mode() ) { + if (!_internal_editing && get_smart_mode() ) { double x, y; get_pointer_position (x, y); ArdourCanvas::Item* i = track_canvas->get_item_at (x, y); @@ -2252,11 +2261,12 @@ Editor::motion_handler (ArdourCanvas::Item* /*item*/, GdkEvent* event, bool from JoinObjectRangeState const old = _join_object_range_state; update_join_object_range_location (event->motion.x, event->motion.y); - if (_join_object_range_state != old) { + + if (!_internal_editing && _join_object_range_state != old) { set_canvas_cursor (); } - if (_over_region_trim_target) { + if (!_internal_editing && _over_region_trim_target) { set_canvas_cursor_for_region_view (event->motion.x, entered_regionview); } |