Only show user-presets in favorite sidebar
[ardour.git] / gtk2_ardour / hit.h
index 3afdd9136775b6ba5892227494feacd2c880af70..81a0868734d1681315a9626b1adfe80f49bb6b25 100644 (file)
@@ -30,14 +30,15 @@ namespace ArdourCanvas {
 class Hit : public NoteBase
 {
 public:
-       typedef Evoral::Note<double> NoteType;
+       typedef Evoral::Note<Temporal::Beats> NoteType;
 
-       Hit (
-               MidiRegionView&                   region,
-               ArdourCanvas::Group*              group,
-               double                            size,
-               const boost::shared_ptr<NoteType> note = boost::shared_ptr<NoteType>(),
-               bool with_events = true);
+       Hit (MidiRegionView&                   region,
+            ArdourCanvas::Item*               parent,
+            double                            size,
+            const boost::shared_ptr<NoteType> note        = boost::shared_ptr<NoteType>(),
+            bool                              with_events = true);
+
+       ~Hit();
 
        void show ();
        void hide ();
@@ -47,6 +48,8 @@ public:
        ArdourCanvas::Coord x1 () const;
        ArdourCanvas::Coord y1 () const;
 
+       ArdourCanvas::Duple position ();
+
        void set_position (ArdourCanvas::Duple);
 
        void set_height (ArdourCanvas::Coord);
@@ -54,8 +57,15 @@ public:
        void set_outline_color (uint32_t);
        void set_fill_color (uint32_t);
 
+       void set_ignore_events (bool);
+
        void move_event (double, double);
 
+       /* no trimming of percussive hits */
+       bool big_enough_to_trim() const { return false; }
+
+       static ArdourCanvas::Points points(ArdourCanvas::Distance height);
+
 private:
        ArdourCanvas::Polygon* _polygon;
 };