more verbose debug output for slave debugging
[ardour.git] / gtk2_ardour / editor.h
index 606444c6bd04acc59f5265a954d81b880e2d29f2..68ba1101234b985522252bf44a7b63ce0affc96c 100644 (file)
 #include <gtkmm/layout.h>
 
 #include "gtkmm2ext/bindings.h"
-#include "gtkmm2ext/click_box.h"
 #include "gtkmm2ext/dndtreeview.h"
-#include "gtkmm2ext/pane.h"
-#include "gtkmm2ext/selector.h"
-#include "gtkmm2ext/stateful_button.h"
 
 #include "pbd/stateful.h"
 #include "pbd/signals.h"
@@ -54,6 +50,7 @@
 
 #include "widgets/ardour_button.h"
 #include "widgets/ardour_dropdown.h"
+#include "widgets/pane.h"
 
 #include "ardour_dialog.h"
 #include "public_editor.h"
@@ -103,7 +100,6 @@ class AutomationLine;
 class AutomationSelection;
 class AutomationTimeAxisView;
 class BundleManager;
-class ButtonJoiner;
 class ControlPoint;
 class CursorContext;
 class DragManager;
@@ -116,7 +112,6 @@ class EditorRoutes;
 class EditorRouteGroups;
 class EditorSnapshots;
 class EditorSummary;
-class GroupedButtons;
 class GUIObjectState;
 class ArdourMarker;
 class MidiRegionView;
@@ -197,7 +192,7 @@ public:
        void foreach_time_axis_view (sigc::slot<void,TimeAxisView&>);
        void add_to_idle_resize (TimeAxisView*, int32_t);
 
-       RouteTimeAxisView* get_route_view_by_route_id (const PBD::ID& id) const;
+       StripableTimeAxisView* get_stripable_time_axis_by_id (const PBD::ID& id) const;
 
        void consider_auditioning (boost::shared_ptr<ARDOUR::Region>);
        void hide_a_region (boost::shared_ptr<ARDOUR::Region>);
@@ -369,6 +364,9 @@ public:
        void set_group_tabs ();
        void toggle_measure_visibility ();
 
+       /* returns the left-most and right-most time that the gui should allow the user to scroll to */
+       std::pair <framepos_t,framepos_t> session_gui_extents( bool use_extra = true ) const; 
+
        /* fades */
 
        void toggle_region_fades (int dir);
@@ -640,8 +638,8 @@ private:
        void add_notebook_page (std::string const &, Gtk::Widget &);
        bool notebook_tab_clicked (GdkEventButton *, Gtk::Widget *);
 
-       Gtkmm2ext::HPane   edit_pane;
-       Gtkmm2ext::VPane   editor_summary_pane;
+       ArdourWidgets::HPane edit_pane;
+       ArdourWidgets::VPane editor_summary_pane;
 
        Gtk::EventBox meter_base;
        Gtk::HBox     meter_box;
@@ -1119,7 +1117,8 @@ private:
        void control_scroll (float);
        void control_select (boost::shared_ptr<ARDOUR::Stripable>, Selection::Operation);
        void control_unselect ();
-       void access_action (std::string,std::string);
+       void access_action (const std::string&, const std::string&);
+       void set_toggleaction (const std::string&, const std::string&, bool);
        bool deferred_control_scroll (framepos_t);
        sigc::connection control_scroll_connection;
 
@@ -1343,6 +1342,7 @@ private:
        void calc_extra_zoom_edges(framepos_t &start, framepos_t &end);
        void temporal_zoom_selection (Editing::ZoomAxis);
        void temporal_zoom_session ();
+       void temporal_zoom_extents ();
        void temporal_zoom (framecnt_t samples_per_pixel);
        void temporal_zoom_by_frame (framepos_t start, framepos_t end);
        void temporal_zoom_to_frame (bool coarser, framepos_t frame);
@@ -1706,7 +1706,6 @@ private:
        void toggle_marker_lock_style ();
        void toggle_tempo_clamped ();
        void toggle_tempo_type ();
-       void continue_previous_tempo ();
        void ramp_to_next_tempo ();
        void toggle_marker_menu_lock ();
        void toggle_marker_menu_glue ();
@@ -2181,8 +2180,8 @@ private:
        void stop_updating_meters ();
        bool meters_running;
 
-       void select_next_route ();
-       void select_prev_route ();
+       void select_next_stripable (bool routes_only = true);
+       void select_prev_stripable (bool routes_only = true);
 
        void snap_to_internal (ARDOUR::MusicFrame& first,
                               ARDOUR::RoundMode   direction = ARDOUR::RoundNearest,
@@ -2320,7 +2319,6 @@ private:
        friend class ControlPointDrag;
        friend class LineDrag;
        friend class RubberbandSelectDrag;
-       friend class RulerZoomDrag;
        friend class EditorRubberbandSelectDrag;
        friend class TimeFXDrag;
        friend class ScrubDrag;