OSC: Add /jog/mode/name
[ardour.git] / gtk2_ardour / ardour_ui.h
index a0a8352d32dffe74f858418e9dc2bac5f0503b95..93a9a0ef73b2da7dfa61335dd75a908521bcc3d9 100644 (file)
@@ -90,6 +90,7 @@
 #include "engine_dialog.h"
 #include "export_video_dialog.h"
 #include "global_port_matrix.h"
+#include "idleometer.h"
 #include "keyeditor.h"
 #include "location_ui.h"
 #include "lua_script_manager.h"
@@ -114,6 +115,7 @@ class RouteParams_UI;
 class SessionOptionEditor;
 class SpeakerDialog;
 class GlobalPortMatrixWindow;
+class IdleOMeter;
 #endif
 
 class VideoTimeLine;
@@ -273,9 +275,6 @@ public:
 
        void start_duplicate_routes ();
 
-       void add_lua_script ();
-       void remove_lua_script ();
-
        void add_video (Gtk::Window* float_window);
        void remove_video ();
        void start_video_server_menu (Gtk::Window* float_window);
@@ -503,8 +502,19 @@ 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;
@@ -557,6 +567,11 @@ private:
        ArdourButton     editor_meter_peak_display;
        bool             editor_meter_peak_button_release (GdkEventButton*);
 
+       bool editor_meter_button_press (GdkEventButton* ev);
+       void popup_editor_meter_menu (GdkEventButton* ev);
+       void add_editor_meter_type_item (Gtk::Menu_Helpers::MenuList&, Gtk::RadioMenuItem::Group&, std::string const &, ARDOUR::MeterType);
+       bool _suspend_editor_meter_callbacks;
+
        void blink_handler (bool);
        sigc::connection blink_connection;
 
@@ -716,6 +731,7 @@ private:
        WM::Proxy<EngineControl> audio_midi_setup;
        WM::Proxy<ExportVideoDialog> export_video_dialog;
        WM::Proxy<LuaScriptManager> lua_script_window;
+       WM::Proxy<IdleOMeter> idleometer;
 
        /* Windows/Dialogs that require a creator method */
 
@@ -827,6 +843,7 @@ private:
 
        PBD::ScopedConnectionList forever_connections;
        PBD::ScopedConnection halt_connection;
+       PBD::ScopedConnection editor_meter_connection;
 
        void step_edit_status_change (bool);
 
@@ -904,6 +921,7 @@ private:
        void pre_release_dialog ();
 
        bool bind_lua_action_script (GdkEventButton*, int);
+       void update_action_script_btn (int i, const std::string&);
 };
 
 #endif /* __ardour_gui_h__ */