summaryrefslogtreecommitdiffstats
path: root/src/gui/NodeModule.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-02-20 21:52:36 +0000
committerDavid Robillard <d@drobilla.net>2010-02-20 21:52:36 +0000
commit46e5de590817756b21a7a5d99bd4963df343f455 (patch)
tree7d7b3b63297b24d84e5b42cc8aeb22d4212738b5 /src/gui/NodeModule.cpp
parentb96a4015ae39b5bdd9afbd82898c0168a0a8e613 (diff)
downloadingen-46e5de590817756b21a7a5d99bd4963df343f455.tar.gz
ingen-46e5de590817756b21a7a5d99bd4963df343f455.tar.bz2
ingen-46e5de590817756b21a7a5d99bd4963df343f455.zip
Heavy overhaul of buffer management and polyphony.
* Working polyphony when nodes are instantiated at desired polyphony level (dynamic still doesn't work) * Use shared silent buffer for disconnected audio inputs (save memory) * Eliminate redundant patch compiling on delete and disconnect-all events that have child events * Fix a ton of crash bugs and other issues I've since forgotten git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2468 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/NodeModule.cpp')
-rw-r--r--src/gui/NodeModule.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/gui/NodeModule.cpp b/src/gui/NodeModule.cpp
index 482cbe95..68f66c70 100644
--- a/src/gui/NodeModule.cpp
+++ b/src/gui/NodeModule.cpp
@@ -390,10 +390,13 @@ NodeModule::store_location()
if (existing_x.type() != Atom::FLOAT || existing_y.type() != Atom::FLOAT
|| existing_x.get_float() != x || existing_y.get_float() != y) {
- Shared::Resource::Properties props;
- props.insert(make_pair(uris.ingenui_canvas_x, Atom(x)));
- props.insert(make_pair(uris.ingenui_canvas_y, Atom(y)));
- App::instance().engine()->put(_node->path(), props);
+ Shared::Resource::Properties remove;
+ remove.insert(make_pair(uris.ingenui_canvas_x, uris.wildcard));
+ remove.insert(make_pair(uris.ingenui_canvas_y, uris.wildcard));
+ Shared::Resource::Properties add;
+ add.insert(make_pair(uris.ingenui_canvas_x, Atom(x)));
+ add.insert(make_pair(uris.ingenui_canvas_y, Atom(y)));
+ App::instance().engine()->delta(_node->path(), remove, add);
}
}