Better version of 9ccc56e1625, implicit signal disconnect
authorRobin Gareus <robin@gareus.org>
Sat, 8 Dec 2018 22:39:50 +0000 (23:39 +0100)
committerRobin Gareus <robin@gareus.org>
Sat, 8 Dec 2018 22:39:50 +0000 (23:39 +0100)
gtk2_ardour/option_editor.cc
gtk2_ardour/option_editor.h

index 3482f66980612398941b3d6dc47a770c1ce736ee..c930254cbec197cbe6ba902d067d6d2bc4fd64ea 100644 (file)
@@ -220,17 +220,12 @@ CheckOption::CheckOption (string const & i, string const & n, Glib::RefPtr<Gtk::
        Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic (_action);
        if (tact) {
                action_toggled ();
-               _callback_connection = tact->signal_toggled().connect (sigc::mem_fun (*this, &CheckOption::action_toggled));
+               tact->signal_toggled().connect (sigc::mem_fun (*this, &CheckOption::action_toggled));
        }
 
        _action->connect_property_changed ("sensitive", sigc::mem_fun (*this, &CheckOption::action_sensitivity_changed));
 }
 
-CheckOption::~CheckOption ()
-{
-       _callback_connection.disconnect ();
-}
-
 void
 CheckOption::action_toggled ()
 {
index 749df8f90c70e5631770da0e315b19fa44c71ca2..ca88dbf07b76655b5cc1e68102b260e612901757 100644 (file)
@@ -189,11 +189,10 @@ protected:
 };
 
 /** Just a Gtk Checkbutton, masquerading as an option component */
-class CheckOption : public OptionEditorComponent , public Gtkmm2ext::Activatable
+class CheckOption : public OptionEditorComponent , public Gtkmm2ext::Activatable, public sigc::trackable
 {
 public:
        CheckOption (std::string const &, std::string const &, Glib::RefPtr<Gtk::Action> act );
-       virtual ~CheckOption ();
        void set_state_from_config () {}
        void parameter_changed (std::string const &) {}
        void add_to_page (OptionEditorPage*);
@@ -213,9 +212,6 @@ protected:
 
        Gtk::CheckButton*      _button; ///< UI button
        Gtk::Label*            _label; ///< label for button, so we can use markup
-
-private:
-       sigc::connection       _callback_connection;
 };
 
 /** Component which provides the UI to handle a boolean option using a GTK CheckButton */