fix memory leak in case LV2 GUI fails.
[ardour.git] / gtk2_ardour / option_editor.h
index f42d1da9b738aa96a2084c98382f617b7560d66c..a91c2404fc2f8c5eff337110529ad72b3d47914d 100644 (file)
@@ -46,7 +46,7 @@
  *  options dialog.
  */
 
-namespace ARDOUR {
+namespace PBD {
        class Configuration;
 }
 
@@ -169,11 +169,11 @@ public:
                _button->set_sensitive (yn);
        }
 
-        Gtk::Widget& tip_widget() { return *_button; }
+       Gtk::Widget& tip_widget() { return *_button; }
 
-private:
+protected:
 
-       void toggled ();
+       virtual void toggled ();
 
        sigc::slot<bool>       _get; ///< slot to get the configuration variable's value
        sigc::slot<bool, bool> _set;  ///< slot to set the configuration variable's value
@@ -181,6 +181,14 @@ private:
        Gtk::Label*            _label; ///< label for button, so we can use markup
 };
 
+class RouteDisplayBoolOption : public BoolOption
+{
+public:
+       RouteDisplayBoolOption (std::string const &, std::string const &, sigc::slot<bool>, sigc::slot<bool, bool>);
+protected:
+       virtual void toggled ();
+};
+
 /** Component which allows to add any GTK Widget - intended for single buttons and custom stateless objects */
 class FooOption : public OptionEditorComponent
 {
@@ -639,18 +647,19 @@ public:
 class OptionEditor : public ArdourWindow
 {
 public:
-       OptionEditor (ARDOUR::Configuration *, std::string const &);
+       OptionEditor (PBD::Configuration *, std::string const &);
        ~OptionEditor ();
 
        void add_option (std::string const &, OptionEditorComponent *);
-
+       void add_page (std::string const &, Gtk::Widget& page_widget);
+       
        void set_current_page (std::string const &);
 
 protected:
 
        virtual void parameter_changed (std::string const &);
-
-       ARDOUR::Configuration* _config;
+       
+       PBD::Configuration* _config;
 
 private: