add support for reverb & chorus in a-fluidsynth
[ardour.git] / gtk2_ardour / time_axis_view_item.h
index 388aa43b7ab3936b3314ba1480f17c979e9799fd..749df465a4ed76d45be08814be38772991e81215 100644 (file)
@@ -33,7 +33,7 @@ namespace ArdourCanvas {
        class Pixbuf;
        class Rectangle;
        class Item;
-        class Layout;
+        class Container;
        class Text;
 }
 
@@ -76,7 +76,7 @@ class TimeAxisViewItem : public Selectable, public PBD::ScopedConnectionList
        void set_color (uint32_t);
        void set_name_text_color ();
 
-        uint32_t get_fill_color () const;
+       virtual uint32_t get_fill_color () const;
 
        ArdourCanvas::Item* get_canvas_frame();
        ArdourCanvas::Item* get_canvas_group();
@@ -95,9 +95,6 @@ class TimeAxisViewItem : public Selectable, public PBD::ScopedConnectionList
        virtual void lower () { return; }
        virtual void lower_to_bottom () { return; }
 
-        virtual void hide_rect ();
-        virtual void show_rect ();
-
        /** @return true if the name area should respond to events */
        bool name_active() const { return name_connected; }
 
@@ -116,20 +113,6 @@ class TimeAxisViewItem : public Selectable, public PBD::ScopedConnectionList
        static double NAME_HIGHLIGHT_SIZE;
        static double NAME_HIGHLIGHT_THRESH;
 
-        /* if this is 1.0, we move the right boundary
-          of the item frame so that it is 1 pixel
-          after the end of the item. This gives nice
-          effects when splitting items.
-          
-          if this is zero, the right edge coincides
-          with the end of the item, and things don't
-          look so nice. 
-          
-          this exists to allow easy debugging of the
-          two scenarios.
-       */
-       static const double RIGHT_EDGE_SHIFT;
-
        /**
         * Emitted when this Group has been removed.
         * This is different to the CatchDeletion signal in that this signal
@@ -227,22 +210,16 @@ class TimeAxisViewItem : public Selectable, public PBD::ScopedConnectionList
        /** true if the name should respond to events */
        bool name_connected;
 
-       /** true if a small vestigial rect should be shown when the item gets very narrow */
-       bool show_vestigial;
-
        uint32_t fill_color;
 
-       virtual uint32_t fill_opacity() const;
-
        uint32_t last_item_width;
        int name_text_width;
        bool wide_enough_for_name;
        bool high_enough_for_name;
-        bool rect_visible;
 
-       ArdourCanvas::Layout*      group;
-       ArdourCanvas::Rectangle* vestigial_frame;
+       ArdourCanvas::Container*      group;
        ArdourCanvas::Rectangle* frame;
+       ArdourCanvas::Rectangle* selection_frame;
        ArdourCanvas::Text*      name_text;
        ArdourCanvas::Rectangle* name_highlight;
 
@@ -254,12 +231,13 @@ class TimeAxisViewItem : public Selectable, public PBD::ScopedConnectionList
 
        double _height;
        Visibility visibility;
+       std::string fill_color_name;
        bool _recregion;
        bool _automation; ///< true if this is an automation region view
        bool _dragging;
+        double _width;
 
 private:
-        double _width;
 
        void parameter_changed (std::string);
         void manage_name_highlight ();