diff options
author | Robin Gareus <robin@gareus.org> | 2014-05-31 14:04:41 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-05-31 14:04:41 +0200 |
commit | d6b1a9f6e3b45cfca2bdb0d80694b0afd40c5f39 (patch) | |
tree | 0fb3be4bccd59e6050178e1658cfd6ce8cfdd6c6 /gtk2_ardour | |
parent | f0536816ab35b5a6fd2f1b77b54e0ae15a5f937b (diff) |
prepare fade+trim cursors (cursor image still missing)
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 25 | ||||
-rw-r--r-- | gtk2_ardour/mouse_cursors.cc | 10 | ||||
-rw-r--r-- | gtk2_ardour/mouse_cursors.h | 2 |
3 files changed, 35 insertions, 2 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index e8fae02727..4d3c01b46d 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -2011,7 +2011,6 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ } break; - case FadeInTrimHandleItem: case FadeInHandleItem: if (mouse_mode == MouseObject && !internal_editing()) { ArdourCanvas::Rectangle *rect = dynamic_cast<ArdourCanvas::Rectangle *> (item); @@ -2023,7 +2022,17 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ } break; - case FadeOutTrimHandleItem: + case FadeInTrimHandleItem: + if (mouse_mode == MouseObject && !internal_editing()) { + ArdourCanvas::Rectangle *rect = dynamic_cast<ArdourCanvas::Rectangle *> (item); + if (rect) { + RegionView* rv = static_cast<RegionView*>(item->get_data ("regionview")); + rect->set_fill_color (rv->get_fill_color()); + set_canvas_cursor (_cursors->fade_trim_in); + } + } + break; + case FadeOutHandleItem: if (mouse_mode == MouseObject && !internal_editing()) { ArdourCanvas::Rectangle *rect = dynamic_cast<ArdourCanvas::Rectangle *> (item); @@ -2034,6 +2043,18 @@ Editor::enter_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_ } } break; + + case FadeOutTrimHandleItem: + if (mouse_mode == MouseObject && !internal_editing()) { + ArdourCanvas::Rectangle *rect = dynamic_cast<ArdourCanvas::Rectangle *> (item); + if (rect) { + RegionView* rv = static_cast<RegionView*>(item->get_data ("regionview")); + rect->set_fill_color (rv->get_fill_color ()); + set_canvas_cursor (_cursors->fade_trim_out); + } + } + break; + case FeatureLineItem: { ArdourCanvas::Line *line = dynamic_cast<ArdourCanvas::Line *> (item); diff --git a/gtk2_ardour/mouse_cursors.cc b/gtk2_ardour/mouse_cursors.cc index 98e33d77d6..9ccaf4de43 100644 --- a/gtk2_ardour/mouse_cursors.cc +++ b/gtk2_ardour/mouse_cursors.cc @@ -115,6 +115,16 @@ MouseCursors::MouseCursors () } { + RefPtr<Pixbuf> p (::get_icon ("fade_in_cursor")); + fade_trim_in = new Cursor (Display::get_default(), p, 0, 0); + } + + { + RefPtr<Pixbuf> p (::get_icon ("fade_out_cursor")); + fade_trim_out = new Cursor (Display::get_default(), p, 29, 0); + } + + { RefPtr<Pixbuf> p (::get_icon ("resize_left_cursor")); resize_left = new Cursor (Display::get_default(), p, 3, 10); } diff --git a/gtk2_ardour/mouse_cursors.h b/gtk2_ardour/mouse_cursors.h index bf93e1ad78..414ec3bae6 100644 --- a/gtk2_ardour/mouse_cursors.h +++ b/gtk2_ardour/mouse_cursors.h @@ -38,6 +38,8 @@ public: Gdk::Cursor* left_side_trim_right_only; Gdk::Cursor* fade_in; Gdk::Cursor* fade_out; + Gdk::Cursor* fade_trim_in; + Gdk::Cursor* fade_trim_out; Gdk::Cursor* selector; Gdk::Cursor* grabber; Gdk::Cursor* grabber_note; |