summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-07-19 21:00:09 +0000
committerDavid Robillard <d@drobilla.net>2007-07-19 21:00:09 +0000
commit1aba241919420198c82f31cffa11f6c8189747fb (patch)
tree783161cb947d70b15217564a9c2d4e8310236260 /gtk2_ardour
parent6da421be5d17c7365197c873969413ac3d96bd56 (diff)
Note canvas event handling testing stuff.
git-svn-id: svn://localhost/ardour2/trunk@2154 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/midi_region_view.cc16
-rw-r--r--gtk2_ardour/midi_region_view.h1
2 files changed, 17 insertions, 0 deletions
diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc
index ee8dd3d7da..2f6444e799 100644
--- a/gtk2_ardour/midi_region_view.cc
+++ b/gtk2_ardour/midi_region_view.cc
@@ -152,6 +152,15 @@ MidiRegionView::canvas_event(GdkEvent* ev)
}
+bool
+MidiRegionView::note_canvas_event(GdkEvent* ev)
+{
+ cerr << "NOTE CANVAS EVENT" << endl;
+
+ return true;
+}
+
+
void
MidiRegionView::redisplay_model()
{
@@ -326,6 +335,10 @@ MidiRegionView::add_event (const MidiEvent& ev)
ev_rect->property_outline_what() = (guint32) (0x1 & 0x4 & 0x8);
ev_rect->property_fill_color_rgba() = 0xFFFFFF66;
+ ev_rect->signal_event().connect(sigc::mem_fun(this, &MidiRegionView::note_canvas_event));
+
+ ev_rect->raise_to_top();
+
_events.push_back(ev_rect);
if (_active_notes)
_active_notes[note] = ev_rect;
@@ -350,6 +363,9 @@ MidiRegionView::add_event (const MidiEvent& ev)
ev_diamond->show();
ev_diamond->property_outline_color_rgba() = 0xFFFFFFDD;
ev_diamond->property_fill_color_rgba() = 0xFFFFFF66;
+
+ ev_diamond->signal_event().connect(sigc::mem_fun(this, &MidiRegionView::note_canvas_event));
+
_events.push_back(ev_diamond);
}
}
diff --git a/gtk2_ardour/midi_region_view.h b/gtk2_ardour/midi_region_view.h
index 730fa88d60..17f190a3cd 100644
--- a/gtk2_ardour/midi_region_view.h
+++ b/gtk2_ardour/midi_region_view.h
@@ -98,6 +98,7 @@ class MidiRegionView : public RegionView
void clear_events();
bool canvas_event(GdkEvent* ev);
+ bool note_canvas_event(GdkEvent* ev);
std::vector<ArdourCanvas::Item*> _events;
ArdourCanvas::SimpleRect** _active_notes;