summaryrefslogtreecommitdiff
path: root/gtk2_ardour/processor_box.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-02-14 17:28:01 +0000
committerCarl Hetherington <carl@carlh.net>2009-02-14 17:28:01 +0000
commit50d7d196146769a42fb7261b8f1bb81cc1dec17a (patch)
tree1bfbdf8f469d40c6572cb7b97a32857fd99694e5 /gtk2_ardour/processor_box.cc
parente9fde9baa7cc62a2c2132435c850452097458920 (diff)
Fix send copying by paste and drag n drop.
git-svn-id: svn://localhost/ardour2/branches/3.0@4550 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/processor_box.cc')
-rw-r--r--gtk2_ardour/processor_box.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index 567dc2985f..34e4f27ae0 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -964,8 +964,16 @@ ProcessorBox::paste_processor_state (const XMLNode& node)
for (niter = nlist.begin(); niter != nlist.end(); ++niter) {
cerr << "try using " << (*niter)->name() << endl;
+ XMLProperty const * type = (*niter)->property ("type");
+ assert (type);
try {
- copies.push_back (boost::shared_ptr<Processor> (new PluginInsert (_session, **niter)));
+ if (type->value() == "send") {
+ XMLNode n (**niter);
+ Send::make_unique (n, _session);
+ copies.push_back (boost::shared_ptr<Processor> (new Send (_session, n)));
+ } else {
+ copies.push_back (boost::shared_ptr<Processor> (new PluginInsert (_session, **niter)));
+ }
}
catch (...) {
cerr << "plugin insert constructor failed\n";