additional DEBUG_TRACE output for slave/diskreader
[ardour.git] / gtk2_ardour / public_editor.h
index f0ed177500a125075e10ffbdc4cb22ce02ccd388..375594f2bc746920403ee26495aab3821f856f53 100644 (file)
 
 #include "gtkmm2ext/actions.h"
 #include "gtkmm2ext/bindings.h"
-#include "gtkmm2ext/tabbable.h"
 #include "gtkmm2ext/visibility_tracker.h"
 
+#include "widgets/tabbable.h"
+
 #include "axis_provider.h"
 #include "editing.h"
 #include "selection.h"
@@ -83,6 +84,7 @@ class PluginUIWindow;
 class RegionView;
 class RouteTimeAxisView;
 class Selection;
+class StripableTimeAxisView;
 class TempoCurve;
 class TempoMarker;
 class TimeAxisView;
@@ -108,8 +110,9 @@ using ARDOUR::framecnt_t;
  * of PublicEditor need not be recompiled if private methods or member variables
  * change.
  */
-class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePtr, public AxisViewProvider {
-  public:
+class PublicEditor : public ArdourWidgets::Tabbable,  public ARDOUR::SessionHandlePtr, public AxisViewProvider
+{
+public:
        PublicEditor (Gtk::Widget& content);
        virtual ~PublicEditor ();
 
@@ -151,7 +154,7 @@ class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePt
        virtual void snap_to (ARDOUR::MusicFrame& first,
                              ARDOUR::RoundMode   direction = ARDOUR::RoundNearest,
                              bool                for_mark  = false,
-                             bool                ensure_snap = false) = 0;
+                             bool                ensure_snap = false) = 0;
 
        /** Undo some transactions.
         * @param n Number of transactions to undo.
@@ -181,8 +184,7 @@ class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePt
         */
        virtual Editing::MouseMode current_mouse_mode () const = 0;
 
-       /** @return Whether the current mouse mode is an "internal" editing mode.
-        */
+       /** @return Whether the current mouse mode is an "internal" editing mode. */
        virtual bool internal_editing() const = 0;
 
        /** Possibly start the audition of a region.  If @param r is 0, or not an AudioRegion
@@ -322,6 +324,8 @@ class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePt
        virtual void reset_x_origin (framepos_t frame) = 0;
        virtual double get_y_origin () const = 0;
        virtual void reset_y_origin (double pos) = 0;
+       virtual void set_visible_track_count (int32_t) = 0;
+       virtual void fit_selection () = 0;
        virtual void remove_last_capture () = 0;
        virtual void maximise_editing_space () = 0;
        virtual void restore_editing_space () = 0;
@@ -351,7 +355,7 @@ class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePt
 
        virtual bool track_selection_change_without_scroll () const = 0;
 
-       virtual RouteTimeAxisView* get_route_view_by_route_id (const PBD::ID& id) const = 0;
+       virtual StripableTimeAxisView* get_stripable_time_axis_by_id (const PBD::ID& id) const = 0;
 
        virtual TimeAxisView* time_axis_view_from_stripable (boost::shared_ptr<ARDOUR::Stripable> s) const = 0;
 
@@ -444,7 +448,8 @@ class PublicEditor : public Gtkmm2ext::Tabbable,  public ARDOUR::SessionHandlePt
        virtual void abort_reversible_command () = 0;
        virtual void commit_reversible_command () = 0;
 
-       virtual void access_action (std::string,std::string) = 0;
+       virtual void access_action (const std::string&, const std::string&) = 0;
+       virtual void set_toggleaction (const std::string&, const std::string&, bool) = 0;
 
        virtual MouseCursors const * cursors () const = 0;
        virtual VerboseCursor * verbose_cursor () const = 0;