summaryrefslogtreecommitdiffstats
path: root/src/gui/PatchCanvas.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-05-12 04:30:51 +0000
committerDavid Robillard <d@drobilla.net>2012-05-12 04:30:51 +0000
commite6ef6533ecd35aa7623fb8e286ef7e6bb4515fb4 (patch)
tree4dc588850cba294da046390567e3f4358c8ce740 /src/gui/PatchCanvas.cpp
parent8f5f234b6a81f96fa156257531c20b1b5bd17cfe (diff)
downloadingen-e6ef6533ecd35aa7623fb8e286ef7e6bb4515fb4.tar.gz
ingen-e6ef6533ecd35aa7623fb8e286ef7e6bb4515fb4.tar.bz2
ingen-e6ef6533ecd35aa7623fb8e286ef7e6bb4515fb4.zip
Select newly pasted objects so they can be easily moved.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4370 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/PatchCanvas.cpp')
-rw-r--r--src/gui/PatchCanvas.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gui/PatchCanvas.cpp b/src/gui/PatchCanvas.cpp
index 587928a6..90664e1f 100644
--- a/src/gui/PatchCanvas.cpp
+++ b/src/gui/PatchCanvas.cpp
@@ -408,6 +408,9 @@ PatchCanvas::add_node(SharedPtr<const NodeModel> nm)
module->show();
_views.insert(std::make_pair(nm, module));
+ if (_pastees.find(nm->path()) != _pastees.end()) {
+ module->set_selected(true);
+ }
}
void
@@ -700,6 +703,7 @@ PatchCanvas::paste()
}
clear_selection();
+ _pastees.clear();
++_paste_count;
const URIs& uris = _app.uris();
@@ -758,6 +762,7 @@ PatchCanvas::paste()
y->second.get_float() + (20.0f * _paste_count));
builder.build(i->second);
+ _pastees.insert(i->first);
}
builder.connect(PtrCast<const PatchModel>(clipboard.object(_patch->path())));