create new MIDI regions on streamitem click in "note draw" mode as well as object...
[ardour.git] / gtk2_ardour / streamview.h
index 17a1c4182b17a154ed0df3acfc33a0791a543094..0bf770837fd7f8f3a6b22abb2bbb20e8893fa1c7 100644 (file)
@@ -35,11 +35,11 @@ namespace Gdk {
 
 namespace ARDOUR {
        class Route;
-       class Diskstream;
        class Crossfade;
        class PeakData;
        class Region;
        class Source;
+       class Track;
 }
 
 struct RecBoxInfo {
@@ -77,7 +77,7 @@ public:
        LayerDisplay layer_display () const { return _layer_display; }
 
        ArdourCanvas::Group* background_group() { return _background_group; }
-       ArdourCanvas::Group* canvas_item() { return canvas_group; }
+       ArdourCanvas::Group* canvas_item() { return _canvas_group; }
 
        enum ColorTarget {
                RegionColor,
@@ -104,7 +104,7 @@ public:
        void region_layered (RegionView*);
        virtual void update_contents_height ();
 
-       virtual void redisplay_diskstream () = 0;
+       virtual void redisplay_track () = 0;
        double child_height () const;
        ARDOUR::layer_t layers () const { return _layers; }
 
@@ -116,7 +116,7 @@ public:
        sigc::signal<void> HeightChanged;
 
 protected:
-       StreamView (RouteTimeAxisView&, ArdourCanvas::Group* group = NULL);
+       StreamView (RouteTimeAxisView&, ArdourCanvas::Group* background_group = 0, ArdourCanvas::Group* canvas_group = 0);
 
        void         transport_changed();
        void         transport_looped();
@@ -129,20 +129,21 @@ protected:
                      bool wait_for_waves, bool recording = false) = 0;
        virtual void remove_region_view (boost::weak_ptr<ARDOUR::Region> );
 
-       void         display_diskstream (boost::shared_ptr<ARDOUR::Diskstream>);
-       virtual void undisplay_diskstream ();
+       void         display_track (boost::shared_ptr<ARDOUR::Track>);
+       virtual void undisplay_track ();
        void         diskstream_changed ();
        void         layer_regions ();
 
-       virtual void playlist_switched (boost::weak_ptr<ARDOUR::Diskstream>);
-       virtual void playlist_layered (boost::weak_ptr<ARDOUR::Diskstream>);
+       virtual void playlist_switched (boost::weak_ptr<ARDOUR::Track>);
+       virtual void playlist_layered (boost::weak_ptr<ARDOUR::Track>);
 
        virtual void color_handler () = 0;
 
        RouteTimeAxisView&        _trackview;
+       bool                      owns_background_group;
        bool                      owns_canvas_group;
        ArdourCanvas::Group*      _background_group;
-       ArdourCanvas::Group*      canvas_group;
+       ArdourCanvas::Group*      _canvas_group;
        ArdourCanvas::SimpleRect* canvas_rect; /* frame around the whole thing */
 
        typedef std::list<RegionView* > RegionViewList;