AU: mark preset dirty when parameter changes
[ardour.git] / gtk2_ardour / rc_option_editor.h
index 879a9c44646cdd9ac3363cb0be643261064a4c48..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 &);
@@ -46,16 +52,25 @@ private:
        BoolOption* _solo_control_is_listen_control;
        ComboOption<ARDOUR::ListenPosition>* _listen_position;
        VisibilityGroup _mixer_strip_visibility;
-       ComboOption<ARDOUR::SyncSource>* _sync_source;
        BoolOption* _sync_framerate;
-       BoolOption* _sync_genlock;
-       BoolOption* _sync_source_2997;
        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;
 
-        PBD::ScopedConnection parameter_change_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__ */