some fixes/improvements for track selection; add upload target to manual makefile...
[ardour.git] / gtk2_ardour / public_editor.h
index fedb8abb8b6fe922ac0e13b40e683ab56b9d00b2..e1d061e13d0f3032cc8a05a98517fc7bbd6c46d0 100644 (file)
@@ -86,6 +86,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        virtual void new_region_from_selection () = 0;
        virtual void separate_region_from_selection () = 0;
        virtual void toggle_playback (bool with_abort) = 0;
+       virtual void transition_to_rolling (bool fwd) = 0;
        virtual nframes_t unit_to_frame (double unit) = 0;
        virtual double frame_to_unit (nframes_t frame) = 0;
        virtual double frame_to_unit (double frame) = 0;
@@ -93,6 +94,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        virtual gulong frame_to_pixel (nframes_t frame) = 0;
        virtual Selection& get_selection() const = 0;
        virtual Selection& get_cut_buffer() const = 0;
+       virtual bool extend_selection_to_track (TimeAxisView&) = 0;
        virtual void play_selection () = 0;
        virtual void set_show_measures (bool yn) = 0;
        virtual bool show_measures () const = 0;
@@ -106,10 +108,11 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        virtual gdouble   get_current_zoom () = 0;
        virtual PlaylistSelector& playlist_selector() const = 0;
        virtual void route_name_changed (TimeAxisView *) = 0;
-       virtual void clear_playlist (ARDOUR::Playlist&) = 0;
+       virtual void clear_playlist (boost::shared_ptr<ARDOUR::Playlist>) = 0;
        virtual void new_playlists () = 0;
        virtual void copy_playlists () = 0;
        virtual void clear_playlists () = 0;
+       virtual void select_all_tracks () = 0;
        virtual bool set_selected_track (TimeAxisView&, Selection::Operation op = Selection::Set, bool no_remove = false) = 0;
        virtual void set_selected_mixer_strip (TimeAxisView&) = 0;
        virtual void hide_track_in_display (TimeAxisView& tv) = 0;
@@ -117,6 +120,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        virtual void set_follow_playhead (bool yn) = 0;
        virtual void toggle_follow_playhead () = 0;
        virtual bool follow_playhead() const = 0;
+       virtual bool dragging_playhead() const = 0;
        virtual void ensure_float (Gtk::Window&) = 0;
        virtual void show_window () = 0;
        virtual TrackViewList* get_valid_views (TimeAxisView*, ARDOUR::RouteGroup* grp = 0) = 0;
@@ -127,7 +131,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        virtual void scroll_tracks_up_line () = 0;
        virtual bool new_regionviews_display_gain () = 0;
        virtual void prepare_for_cleanup () = 0;
-       virtual void reposition_x_origin (nframes_t frame) = 0;
+       virtual void reset_x_origin (nframes_t frame) = 0;
        virtual void remove_last_capture () = 0;
        virtual void maximise_editing_space() = 0;
        virtual void restore_editing_space() = 0;
@@ -138,9 +142,12 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulThingWithGoingAway
        sigc::signal<void> Resized;
        sigc::signal<void> Realized;
        sigc::signal<void> GoingAway;
+       sigc::signal<void,nframes_t> UpdateAllTransportClocks;
 
        Glib::RefPtr<Gtk::ActionGroup> editor_actions;
 
+       virtual void reset_focus() = 0;
+
        virtual bool canvas_control_point_event (GdkEvent* event,ArdourCanvas::Item*, ControlPoint*) = 0;
        virtual bool canvas_line_event (GdkEvent* event,ArdourCanvas::Item*, AutomationLine*) = 0;
        virtual bool canvas_selection_rect_event (GdkEvent* event,ArdourCanvas::Item*, SelectionRect*) = 0;