diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-04-16 16:02:25 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-04-16 16:02:25 +0000 |
commit | a4b8955f3eb87405ceafe5c8680d9439f441458e (patch) | |
tree | cad2bf815f268ec1fdad34c1cc09089289ee3736 /gtk2_ardour/plugin_ui.cc | |
parent | 60eef7dd3e0240367550a274a91ddb498dedcbc2 (diff) |
part 2 of 3 of the 2.8 -> 3.0 merge
git-svn-id: svn://localhost/ardour2/branches/3.0@4987 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/plugin_ui.cc')
-rw-r--r-- | gtk2_ardour/plugin_ui.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc index 36c5001816..e92da7f49a 100644 --- a/gtk2_ardour/plugin_ui.cc +++ b/gtk2_ardour/plugin_ui.cc @@ -136,8 +136,8 @@ PluginUIWindow::PluginUIWindow (Gtk::Window* win, boost::shared_ptr<PluginInsert add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK); signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window*> (this)), false); - insert->GoingAway.connect (mem_fun(*this, &PluginUIWindow::plugin_going_away)); - + death_connection = insert->GoingAway.connect (mem_fun(*this, &PluginUIWindow::plugin_going_away)); + gint h = _pluginui->get_preferred_height (); gint w = _pluginui->get_preferred_width (); @@ -155,6 +155,7 @@ PluginUIWindow::PluginUIWindow (Gtk::Window* win, boost::shared_ptr<PluginInsert PluginUIWindow::~PluginUIWindow () { + delete _pluginui; } void @@ -333,6 +334,9 @@ PluginUIWindow::plugin_going_away () if (_pluginui) { _pluginui->stop_updating(0); } + + death_connection.disconnect (); + delete_when_idle (this); } @@ -383,6 +387,10 @@ PlugUIBase::PlugUIBase (boost::shared_ptr<PluginInsert> pi) plugin_eq_bin.set_expanded(true); } +PlugUIBase::~PlugUIBase() +{ +} + void PlugUIBase::processor_active_changed (boost::weak_ptr<Processor> weak_p) { |