diff options
author | nick_m <mainsbridge@gmail.com> | 2016-12-23 22:20:08 +1100 |
---|---|---|
committer | nick_m <mainsbridge@gmail.com> | 2016-12-23 22:20:08 +1100 |
commit | cb2bbb87d7f29e356fb62db1c3a3c60e8398cfa7 (patch) | |
tree | 05736e94f9ef114a201030e4f3c908b9831cdc70 /gtk2_ardour/ghostregion.cc | |
parent | 7bf3345ada6c625e57e6eb5102c43c747856dffa (diff) |
slight speed improvement on GhostEvent ctor.
Diffstat (limited to 'gtk2_ardour/ghostregion.cc')
-rw-r--r-- | gtk2_ardour/ghostregion.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gtk2_ardour/ghostregion.cc b/gtk2_ardour/ghostregion.cc index b9af45b6d4..d76abd6659 100644 --- a/gtk2_ardour/ghostregion.cc +++ b/gtk2_ardour/ghostregion.cc @@ -215,11 +215,15 @@ MidiGhostRegion::~MidiGhostRegion() MidiGhostRegion::GhostEvent::GhostEvent (NoteBase* e, ArdourCanvas::Container* g) : event (e) { - Hit* hit = NULL; + if (dynamic_cast<Note*>(e)) { item = new ArdourCanvas::Rectangle( g, ArdourCanvas::Rect(e->x0(), e->y0(), e->x1(), e->y1())); - } else if ((hit = dynamic_cast<Hit*>(e))) { + } else { + Hit* hit = dynamic_cast<Hit*>(e); + if (!hit) { + return; + } ArdourCanvas::Polygon* poly = new ArdourCanvas::Polygon(g); poly->set(Hit::points(e->y1() - e->y0())); poly->set_position(hit->position()); |