X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fcanvas-hit.h;h=e6be076aa8b89e0f469ded0610e2ab9eca10224f;hb=9c4f5ac000ad91b55e4cf91317b7a89f6239870e;hp=e9be381ef278dc34406aa5401febcc72900f5357;hpb=accc73a8c15ce9b86db269a52a132a88e9f17da2;p=ardour.git diff --git a/gtk2_ardour/canvas-hit.h b/gtk2_ardour/canvas-hit.h index e9be381ef2..e6be076aa8 100644 --- a/gtk2_ardour/canvas-hit.h +++ b/gtk2_ardour/canvas-hit.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2007 Paul Davis + Copyright (C) 2007 Paul Davis Author: Dave Robillard This program is free software; you can redistribute it and/or modify @@ -27,27 +27,30 @@ namespace Gnome { namespace Canvas { -class CanvasHit : public Diamond, public CanvasMidiEvent { +class CanvasHit : public Diamond, public CanvasNoteEvent { public: + typedef Evoral::Note NoteType; + CanvasHit( - MidiRegionView& region, - Group& group, - double size, - const boost::shared_ptr note = boost::shared_ptr()) - - : Diamond(group, size), CanvasMidiEvent(region, this, note) - { - } - + MidiRegionView& region, + Group& group, + double size, + const boost::shared_ptr note = boost::shared_ptr(), + bool with_events = true); + + void show() { Diamond::show(); } + void hide() { Diamond::hide(); } + double x1() { double x1, y1, x2, y2; get_bounds(x1,y1,x2,y2); return x1; } double y1() { double x1, y1, x2, y2; get_bounds(x1,y1,x2,y2); return y1; } double x2() { double x1, y1, x2, y2; get_bounds(x1,y1,x2,y2); return x2; } double y2() { double x1, y1, x2, y2; get_bounds(x1,y1,x2,y2); return y2; } - + void set_outline_color(uint32_t c) { property_outline_color_rgba() = c; } void set_fill_color(uint32_t c) { property_fill_color_rgba() = c; } - bool on_event(GdkEvent* ev) { return CanvasMidiEvent::on_event(ev); } + bool on_event(GdkEvent* ev); + void move_event(double dx, double dy); }; } // namespace Gnome