diff options
author | David Robillard <d@drobilla.net> | 2008-06-09 19:32:41 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-06-09 19:32:41 +0000 |
commit | df38131db2c4eb5c83655d848a9776faa79331ca (patch) | |
tree | 445302b7cb0c8860b95e9d5187873ee17be5415f | |
parent | 0a1c93d22fd879075e02aebe702224446e8ffbdd (diff) | |
download | ingen-df38131db2c4eb5c83655d848a9776faa79331ca.tar.gz ingen-df38131db2c4eb5c83655d848a9776faa79331ca.tar.bz2 ingen-df38131db2c4eb5c83655d848a9776faa79331ca.zip |
Fix lingering breadcrumbs of destroyed subpatches (ticket #80).
git-svn-id: http://svn.drobilla.net/lad/ingen@1258 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r-- | src/libs/gui/BreadCrumb.hpp | 2 | ||||
-rw-r--r-- | src/libs/gui/BreadCrumbBox.cpp | 14 | ||||
-rw-r--r-- | src/libs/gui/BreadCrumbBox.hpp | 2 | ||||
-rw-r--r-- | src/libs/gui/ControlGroups.cpp | 2 | ||||
-rw-r--r-- | src/libs/gui/PatchWindow.cpp | 12 | ||||
-rw-r--r-- | src/libs/gui/Port.cpp | 2 |
6 files changed, 17 insertions, 17 deletions
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<PatchView> 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<BreadCrumb*>::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<Gnome::Glade::Xml>& 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 |