diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-28 16:37:04 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-28 16:37:04 +0000 |
commit | 3e966771d042455a50a01e786af2af7b6f407395 (patch) | |
tree | b93b553d12b4c903087f26efa5ff06284add0cab /gtk2_ardour/canvas-hit.cc | |
parent | 3d6493abc9d332132aef250a551d60fe45f7b3eb (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.cc | 22 |
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 |