GUI action Transport/RecordCountIn
[ardour.git] / gtk2_ardour / ardour_ui.h
index c5321574ea41619c2c3be62996831461624136fe..170dbe994888172606fef44132306e2dab7663a5 100644 (file)
@@ -73,6 +73,7 @@
 #include "add_route_dialog.h"
 #include "ardour_button.h"
 #include "ardour_dialog.h"
+#include "ardour_spacer.h"
 #include "ardour_window.h"
 #include "editing.h"
 #include "enums.h"
@@ -391,7 +392,6 @@ protected:
        bool ignore_dual_punch;
        void toggle_punch_in ();
        void toggle_punch_out ();
-       bool ignore_session_monitoring;
        void toggle_session_monitoring_in ();
        void toggle_session_monitoring_disk ();
        void show_loop_punch_ruler_and_disallow_hide ();
@@ -435,8 +435,6 @@ private:
        void setup_transport ();
        void setup_clock ();
 
-       bool transport_expose (GdkEventExpose*);
-
        static ARDOUR_UI *theArdourUI;
        SessionDialog *_session_dialog;
 
@@ -505,19 +503,8 @@ private:
            ToggleType type;
        };
 
-       boost::shared_ptr<TransportControllable> roll_controllable;
-       boost::shared_ptr<TransportControllable> stop_controllable;
-       boost::shared_ptr<TransportControllable> goto_start_controllable;
-       boost::shared_ptr<TransportControllable> goto_end_controllable;
-       boost::shared_ptr<TransportControllable> auto_loop_controllable;
-       boost::shared_ptr<TransportControllable> play_selection_controllable;
-       boost::shared_ptr<TransportControllable> rec_controllable;
-
        void toggle_follow_edits ();
 
-       void set_transport_controllable_state (const XMLNode&);
-       XMLNode& get_transport_controllable_state ();
-
        ArdourButton roll_button;
        ArdourButton stop_button;
        ArdourButton goto_start_button;
@@ -529,6 +516,9 @@ private:
        ArdourButton punch_out_button;
        ArdourButton layered_button;
 
+       ArdourVSpacer recpunch_spacer;
+       ArdourVSpacer monitoring_spacer;
+
        ArdourButton monitor_in_button;
        ArdourButton monitor_disk_button;
        ArdourButton auto_input_button;
@@ -536,6 +526,9 @@ private:
        Gtk::Label   punch_label;
        Gtk::Label   layered_label;
 
+       Gtk::Label   punch_space;
+       Gtk::Label   mon_space;
+
        void toggle_external_sync ();
        void toggle_time_master ();
        void toggle_video_sync ();
@@ -651,6 +644,7 @@ private:
        void edit_metadata ();
        void import_metadata ();
 
+       void set_loop_sensitivity ();
        void set_transport_sensitivity (bool);
 
        //stuff for ProTools-style numpad
@@ -671,6 +665,8 @@ private:
        void transport_roll ();
        void transport_play_selection();
        void transport_play_preroll();
+       void transport_rec_preroll();
+       void transport_rec_count_in();
        void transport_forward (int option);
        void transport_rewind (int option);
        void transport_loop ();
@@ -843,6 +839,7 @@ private:
        int ambiguous_file (std::string file, std::vector<std::string> hits);
 
        bool click_button_clicked (GdkEventButton *);
+       bool click_button_scroll (GdkEventScroll *);
        bool sync_button_clicked (GdkEventButton *);
 
        VisibilityGroup _status_bar_visibility;