From df38131db2c4eb5c83655d848a9776faa79331ca Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 9 Jun 2008 19:32:41 +0000 Subject: Fix lingering breadcrumbs of destroyed subpatches (ticket #80). git-svn-id: http://svn.drobilla.net/lad/ingen@1258 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/gui/BreadCrumb.hpp | 2 +- src/libs/gui/BreadCrumbBox.cpp | 14 +++++++++----- src/libs/gui/BreadCrumbBox.hpp | 2 +- src/libs/gui/ControlGroups.cpp | 2 -- src/libs/gui/PatchWindow.cpp | 12 ++++++------ src/libs/gui/Port.cpp | 2 -- 6 files changed, 17 insertions(+), 17 deletions(-) (limited to 'src/libs/gui') diff --git a/src/libs/gui/BreadCrumb.hpp b/src/libs/gui/BreadCrumb.hpp index 7f4f9f89..194a1e8f 100644 --- a/src/libs/gui/BreadCrumb.hpp +++ b/src/libs/gui/BreadCrumb.hpp @@ -54,7 +54,7 @@ public: _view = view; } - const Path& path() const { return _path; } + const Path& path() const { return _path; } SharedPtr view() const { return _view; } void set_path(const Path& path) diff --git a/src/libs/gui/BreadCrumbBox.cpp b/src/libs/gui/BreadCrumbBox.cpp index d8ff4519..7edaed9f 100644 --- a/src/libs/gui/BreadCrumbBox.cpp +++ b/src/libs/gui/BreadCrumbBox.cpp @@ -17,16 +17,20 @@ #include "BreadCrumbBox.hpp" #include "BreadCrumb.hpp" +#include "App.hpp" +#include "client/SigClientInterface.hpp" namespace Ingen { namespace GUI { BreadCrumbBox::BreadCrumbBox() -: Gtk::HBox() -, _active_path("/") -, _full_path("/") -, _enable_signal(true) + : Gtk::HBox() + , _active_path("/") + , _full_path("/") + , _enable_signal(true) { + App::instance().client()->signal_object_destroyed.connect( + sigc::mem_fun(this, &BreadCrumbBox::object_destroyed)); } @@ -175,7 +179,7 @@ BreadCrumbBox::breadcrumb_clicked(BreadCrumb* crumb) void -BreadCrumbBox::object_removed(const Path& path) +BreadCrumbBox::object_destroyed(const Path& path) { for (std::list::iterator i = _breadcrumbs.begin(); i != _breadcrumbs.end(); ++i) { if ((*i)->path() == path) { diff --git a/src/libs/gui/BreadCrumbBox.hpp b/src/libs/gui/BreadCrumbBox.hpp index 5e90806b..b5650252 100644 --- a/src/libs/gui/BreadCrumbBox.hpp +++ b/src/libs/gui/BreadCrumbBox.hpp @@ -55,7 +55,7 @@ private: void breadcrumb_clicked(BreadCrumb* crumb); - void object_removed(const Path& path); + void object_destroyed(const Path& path); void object_renamed(const Path& old_path, const Path& new_path); Path _active_path; diff --git a/src/libs/gui/ControlGroups.cpp b/src/libs/gui/ControlGroups.cpp index dc585975..0803b5ba 100644 --- a/src/libs/gui/ControlGroups.cpp +++ b/src/libs/gui/ControlGroups.cpp @@ -167,8 +167,6 @@ SliderControlGroup::menu_properties() void SliderControlGroup::set_value(const Atom& atom) { - cout << "CONTROL VALUE CHANGED" << endl; - float val = atom.get_float(); if (_port_model->is_integer()) diff --git a/src/libs/gui/PatchWindow.cpp b/src/libs/gui/PatchWindow.cpp index 55c1542c..84c60fc9 100644 --- a/src/libs/gui/PatchWindow.cpp +++ b/src/libs/gui/PatchWindow.cpp @@ -44,12 +44,12 @@ namespace GUI { PatchWindow::PatchWindow(BaseObjectType* cobject, const Glib::RefPtr& xml) -: Gtk::Window(cobject), - _enable_signal(true), - _position_stored(false), - _x(0), - _y(0), - _breadcrumb_box(NULL) + : Gtk::Window(cobject) + , _enable_signal(true) + , _position_stored(false) + , _x(0) + , _y(0) + , _breadcrumb_box(NULL) { property_visible() = false; diff --git a/src/libs/gui/Port.cpp b/src/libs/gui/Port.cpp index 8768da8d..df0b779c 100644 --- a/src/libs/gui/Port.cpp +++ b/src/libs/gui/Port.cpp @@ -94,8 +94,6 @@ Port::renamed() void Port::value_changed(const Atom& value) { - cout << "PORT VALUE CHANGED" << endl; - if (value.type() == Atom::FLOAT) FlowCanvas::Port::set_control(value.get_float()); else -- cgit v1.2.1