X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fhit.cc;h=e3a227d3c4167faafe8577d9673bf3f949ffbd2e;hb=9bd86c2869fe02eda7ed6094504910356aaac734;hp=ab47dee6e8ff7ba1d5a950e55da57f03283deb63;hpb=12b18da8f6f27b804b36169927ec01d688de8d2c;p=ardour.git diff --git a/gtk2_ardour/hit.cc b/gtk2_ardour/hit.cc index ab47dee6e8..e3a227d3c4 100644 --- a/gtk2_ardour/hit.cc +++ b/gtk2_ardour/hit.cc @@ -17,6 +17,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#include "evoral/Beats.hpp" #include "evoral/Note.hpp" #include "canvas/polygon.h" @@ -27,7 +28,7 @@ using namespace ARDOUR; using namespace ArdourCanvas; -Hit::Hit (MidiRegionView& region, Item* parent, double size, const boost::shared_ptr note, bool with_events) +Hit::Hit (MidiRegionView& region, Item* parent, double size, const boost::shared_ptr note, bool with_events) : NoteBase (region, with_events, note) { _polygon = new ArdourCanvas::Polygon (parent); @@ -76,8 +77,8 @@ Hit::hide () _polygon->hide (); } -void -Hit::set_height (Distance height) +Points +Hit::points(Distance height) { /* draw a diamond */ @@ -89,7 +90,19 @@ Hit::set_height (Distance height) p.push_back (Duple (+half_height, 0)); // right, middle p.push_back (Duple (0, +half_height)); // bottom - _polygon->set (p); + return p; +} + +void +Hit::set_height (Distance height) +{ + _polygon->set (points(height)); +} + +Duple +Hit::position () +{ + return _polygon->position (); } void @@ -125,3 +138,9 @@ Hit::y1 () const /* bottom vertex */ return _polygon->position().y + _polygon->get()[3].y; } + +void +Hit::set_ignore_events (bool ignore) +{ + _polygon->set_ignore_events (ignore); +}