summaryrefslogtreecommitdiff
path: root/gtk2_ardour/canvas-hit.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-05-28 16:37:04 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-05-28 16:37:04 +0000
commit3e966771d042455a50a01e786af2af7b6f407395 (patch)
treeb93b553d12b4c903087f26efa5ff06284add0cab /gtk2_ardour/canvas-hit.cc
parent3d6493abc9d332132aef250a551d60fe45f7b3eb (diff)
clean up item event handling in MidiRegionViews by removing unnecessary InteractiveItem inheritance, and keep child->parent event handling order consistent as much as possible
git-svn-id: svn://localhost/ardour2/branches/3.0@7186 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/canvas-hit.cc')
-rw-r--r--gtk2_ardour/canvas-hit.cc22
1 files changed, 17 insertions, 5 deletions
diff --git a/gtk2_ardour/canvas-hit.cc b/gtk2_ardour/canvas-hit.cc
index 9075eaaddd..6fcc68f599 100644
--- a/gtk2_ardour/canvas-hit.cc
+++ b/gtk2_ardour/canvas-hit.cc
@@ -9,14 +9,26 @@ using namespace ARDOUR;
namespace Gnome {
namespace Canvas {
+CanvasHit::CanvasHit (MidiRegionView& region,
+ Group& group,
+ double size,
+ const boost::shared_ptr<NoteType> note,
+ bool with_events)
+ : Diamond(group, size)
+ , CanvasNoteEvent(region, this, note)
+{
+ if (with_events) {
+ signal_event().connect (sigc::mem_fun (*this, &CanvasHit::on_event));
+ }
+}
+
bool
CanvasHit::on_event(GdkEvent* ev)
{
- if (!_region.get_trackview().editor().canvas_note_event (ev, this)) {
- return CanvasNoteEvent::on_event (ev);
- } else {
- return true;
- }
+ if (!CanvasNoteEvent::on_event (ev)) {
+ return _region.get_trackview().editor().canvas_note_event (ev, this);
+ }
+ return true;
}
void