AU: mark preset dirty when parameter changes
[ardour.git] / gtk2_ardour / rc_option_editor.h
index 6789594e8a004d61066ab96d2e2b7474231603cc..fda028ce64c8c0a340cefc4e185e07a254798775 100644 (file)
 
 */
 
+#ifndef __gtk_ardour_rc_option_editor_h__
+#define __gtk_ardour_rc_option_editor_h__
+
+#include "widgets/tabbable.h"
+
 #include "option_editor.h"
 #include "visibility_group.h"
+#include "transport_masters_dialog.h"
 
 /** @file rc_option_editor.h
  *  @brief Editing of options which are obtained from and written back to one of the .rc files.
  */
 
 /** Editor for options which are obtained from and written back to one of the .rc files. */
-class RCOptionEditor : public OptionEditor
+class RCOptionEditor : public OptionEditorContainer, public ARDOUR::SessionHandlePtr, public ArdourWidgets::Tabbable
 {
 public:
        RCOptionEditor ();
 
-       void populate_sync_options ();
+       void set_session (ARDOUR::Session*);
+
+       Gtk::Window* use_own_window (bool and_fill_it);
+       XMLNode& get_state ();
 
 private:
        void parameter_changed (std::string const &);
+       void ltc_generator_volume_changed ();
        ARDOUR::RCConfiguration* _rc_config;
        BoolOption* _solo_control_is_listen_control;
        ComboOption<ARDOUR::ListenPosition>* _listen_position;
        VisibilityGroup _mixer_strip_visibility;
-       ComboOption<ARDOUR::SyncSource>* _sync_source;
+       BoolOption* _sync_framerate;
+       ComboStringOption* _ltc_port;
+       HSliderOption* _ltc_volume_slider;
+       Gtk::Adjustment* _ltc_volume_adjustment;
+       BoolOption* _ltc_send_continuously;
+       BoolOption* _plugin_prefer_inline;
+       TransportMastersWidget _transport_masters_widget;
+
+       PBD::ScopedConnection parameter_change_connection;
+       PBD::ScopedConnection engine_started_connection;
+
+       /* plugin actions */
+       void plugin_scan_refresh ();
+       void clear_vst_cache ();
+       void clear_vst_blacklist ();
+       void clear_au_cache ();
+       void clear_au_blacklist ();
+       void edit_lxvst_path ();
+       void edit_vst_path ();
 };
+
+#endif /* __gtk_ardour_rc_option_editor_h__ */