Remove internal edit mode and add "content" tool.
[ardour.git] / gtk2_ardour / time_axis_view.h
index cc7f7a0fe0d689fc1900736af4cc5aa21d4689a7..7ea0f580f51fa7bd4d7bb95d547af6be9e12ab74 100644 (file)
@@ -78,6 +78,8 @@ class RegionView;
 class GhostRegion;
 class StreamView;
 class ArdourDialog;
+class ItemCounts;
+class PasteContext;
 
 /** Abstract base class for time-axis views (horizontal editor 'strips')
  *
@@ -104,9 +106,6 @@ class TimeAxisView : public virtual AxisView
        /** @return maximum allowable value of order */
        static int max_order () { return _max_order; }
 
-       virtual void enter_internal_edit_mode () {}
-       virtual void leave_internal_edit_mode () {}
-
        ArdourCanvas::Container* canvas_display () { return _canvas_display; }
        ArdourCanvas::Container* ghost_group () { return _ghost_group; }
 
@@ -122,7 +121,7 @@ class TimeAxisView : public virtual AxisView
 
        uint32_t current_height() const { return height; }
 
-       void idle_resize (uint32_t);
+       void idle_resize (int32_t);
 
        virtual guint32 show_at (double y, int& nth, Gtk::VBox *parent);
        virtual void hide ();
@@ -165,7 +164,15 @@ class TimeAxisView : public virtual AxisView
        /* editing operations */
 
        virtual void cut_copy_clear (Selection&, Editing::CutCopyOp) {}
-       virtual bool paste (ARDOUR::framepos_t, float /*times*/, Selection&, size_t /*nth*/) { return false; }
+
+       /** Paste a selection.
+        *  @param pos Position to paste to (session frames).
+        *  @param selection Selection to paste.
+        *  @param ctx Paste context.
+        */
+       virtual bool paste (ARDOUR::framepos_t pos,
+                           const Selection&   selection,
+                           PasteContext&      ctx) { return false; }
 
        virtual void set_selected_regionviews (RegionSelection&) {}
        virtual void set_selected_points (PointSelection&) {}