summaryrefslogtreecommitdiffstats
path: root/src/libs/gui/PatchCanvas.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-08-18 06:26:24 +0000
committerDavid Robillard <d@drobilla.net>2008-08-18 06:26:24 +0000
commit76466bde179e9b0d58b1586fb3f4ed40dedbdc13 (patch)
treedff00bee8eed5787d7cb0466a539acd853423293 /src/libs/gui/PatchCanvas.cpp
parent640cbadb284544ecc876ae650c1c945c57adcce8 (diff)
downloadingen-76466bde179e9b0d58b1586fb3f4ed40dedbdc13.tar.gz
ingen-76466bde179e9b0d58b1586fb3f4ed40dedbdc13.tar.bz2
ingen-76466bde179e9b0d58b1586fb3f4ed40dedbdc13.zip
Fix loading / importing patches at root and in subpatches.
git-svn-id: http://svn.drobilla.net/lad/ingen@1430 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/gui/PatchCanvas.cpp')
-rw-r--r--src/libs/gui/PatchCanvas.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/libs/gui/PatchCanvas.cpp b/src/libs/gui/PatchCanvas.cpp
index 135a28c8..2ea4496c 100644
--- a/src/libs/gui/PatchCanvas.cpp
+++ b/src/libs/gui/PatchCanvas.cpp
@@ -58,7 +58,9 @@ PatchCanvas::PatchCanvas(SharedPtr<PatchModel> patch, int width, int height)
, _last_click_x(0)
, _last_click_y(0)
, _refresh_menu(false)
+ , _menu(NULL)
, _internal_menu(NULL)
+ , _plugin_menu(NULL)
{
Glib::RefPtr<Gnome::Glade::Xml> xml = GladeFactory::new_glade_reference();
xml->get_widget("canvas_menu", _menu);
@@ -590,7 +592,7 @@ PatchCanvas::paste()
ClashAvoider avoider(*App::instance().store().get(), _patch->path(), clipboard);
//parser->parse_string(App::instance().world(), &avoider, str, _patch->path().base());
parser->parse_string(App::instance().world(), &avoider, str, "/",
- boost::optional<Glib::ustring>(), _patch->path());
+ boost::optional<Glib::ustring>(), (Glib::ustring)_patch->path());
for (Store::iterator i = clipboard.begin(); i != clipboard.end(); ++i) {
if (_patch->path() == "/" && i->first == "/") {
@@ -616,9 +618,13 @@ PatchCanvas::paste()
builder.build(_patch->path(), i->second);
}
+ //avoider.set_target(*App::instance().engine());
+
for (ClientStore::ConnectionRecords::const_iterator i = clipboard.connection_records().begin();
- i != clipboard.connection_records().end(); ++i)
+ i != clipboard.connection_records().end(); ++i) {
+ cout << "CONNECTING " << i->first << " -> " << i->second << endl;
App::instance().engine()->connect(i->first, i->second);
+ }
}