summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_mouse.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2012-06-09 01:51:34 +0000
committerCarl Hetherington <carl@carlh.net>2012-06-09 01:51:34 +0000
commita766fe1fd9852ea6b041ba257e588fca7a032cb9 (patch)
treeaecac737ab5cf23d02d0bec378af24466cc87ff1 /gtk2_ardour/editor_mouse.cc
parent0ac73d8513dff0566b290b49127776b28859e69a (diff)
Somewhat primitive implementation of allowing the edit note dialog to handle multiple notes (#4096).
git-svn-id: svn://localhost/ardour2/branches/3.0@12623 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r--gtk2_ardour/editor_mouse.cc17
1 files changed, 11 insertions, 6 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index 011374f951..a6446b67c3 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -1438,8 +1438,12 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT
break;
case NoteItem:
- edit_note (item);
+ {
+ ArdourCanvas::CanvasNoteEvent* e = dynamic_cast<ArdourCanvas::CanvasNoteEvent*> (item);
+ assert (e);
+ edit_notes (e->region_view().selection ());
break;
+ }
default:
break;
@@ -2307,12 +2311,13 @@ Editor::edit_control_point (ArdourCanvas::Item* item)
}
void
-Editor::edit_note (ArdourCanvas::Item* item)
+Editor::edit_notes (MidiRegionView::Selection const & s)
{
- ArdourCanvas::CanvasNoteEvent* e = dynamic_cast<ArdourCanvas::CanvasNoteEvent*> (item);
- assert (e);
-
- EditNoteDialog d (&e->region_view(), e);
+ if (s.empty ()) {
+ return;
+ }
+
+ EditNoteDialog d (&(*s.begin())->region_view(), s);
d.set_position (Gtk::WIN_POS_MOUSE);
ensure_float (d);