summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-08-18 19:50:53 +0000
committerDavid Robillard <d@drobilla.net>2008-08-18 19:50:53 +0000
commit625c01a594f9cc73d7b83a85d314ddb859d8d029 (patch)
treea3da6b3646c9f44b19fd6ae99bd5b7fc6f8d2baa
parent68477f501356cc1a59dcb875012ec59199c39d70 (diff)
downloadingen-625c01a594f9cc73d7b83a85d314ddb859d8d029.tar.gz
ingen-625c01a594f9cc73d7b83a85d314ddb859d8d029.tar.bz2
ingen-625c01a594f9cc73d7b83a85d314ddb859d8d029.zip
Fix copy/paste of internal nodes.
git-svn-id: http://svn.drobilla.net/lad/ingen@1433 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r--src/libs/client/DeprecatedLoader.cpp10
-rw-r--r--src/libs/engine/InternalPlugin.cpp8
-rw-r--r--src/libs/engine/InternalPlugin.hpp2
-rw-r--r--src/libs/engine/MidiControlNode.cpp2
-rw-r--r--src/libs/engine/MidiNoteNode.cpp2
-rw-r--r--src/libs/engine/MidiTriggerNode.cpp2
-rw-r--r--src/libs/engine/TransportNode.cpp2
-rw-r--r--src/libs/engine/events/NoteEvent.cpp9
-rw-r--r--src/libs/gui/PatchCanvas.cpp4
9 files changed, 23 insertions, 18 deletions
diff --git a/src/libs/client/DeprecatedLoader.cpp b/src/libs/client/DeprecatedLoader.cpp
index 6ec1db81..a07893f7 100644
--- a/src/libs/client/DeprecatedLoader.cpp
+++ b/src/libs/client/DeprecatedLoader.cpp
@@ -38,6 +38,8 @@
#include "PluginModel.hpp"
#include "DeprecatedLoader.hpp"
+#define NS_INGEN "http://drobilla.net/ns/ingen#"
+
using namespace std;
namespace Ingen {
@@ -506,13 +508,13 @@ DeprecatedLoader::load_node(const Path& parent, xmlDocPtr doc, const xmlNodePtr
} else {
if (plugin_label == "note_in") {
- plugin_uri = "ingen:note_node";
+ plugin_uri = NS_INGEN "note_node";
} else if (plugin_label == "control_input") {
- plugin_uri = "ingen:control_node";
+ plugin_uri = NS_INGEN "control_node";
} else if (plugin_label == "transport") {
- plugin_uri = "ingen:transport_node";
+ plugin_uri = NS_INGEN "transport_node";
} else if (plugin_label == "trigger_in") {
- plugin_uri = "ingen:trigger_node";
+ plugin_uri = NS_INGEN "trigger_node";
} else {
cerr << "WARNING: Unknown deprecated node (label " << plugin_label
<< ")." << endl;
diff --git a/src/libs/engine/InternalPlugin.cpp b/src/libs/engine/InternalPlugin.cpp
index a068123d..9141b545 100644
--- a/src/libs/engine/InternalPlugin.cpp
+++ b/src/libs/engine/InternalPlugin.cpp
@@ -49,13 +49,13 @@ InternalPlugin::instantiate(const string& name,
{
assert(_type == Internal);
- if (_uri == "ingen:note_node") {
+ if (_uri == NS_INGEN "note_node") {
return new MidiNoteNode(name, polyphonic, parent, srate, buffer_size);
- } else if (_uri == "ingen:trigger_node") {
+ } else if (_uri == NS_INGEN "trigger_node") {
return new MidiTriggerNode(name, polyphonic, parent, srate, buffer_size);
- } else if (_uri == "ingen:control_node") {
+ } else if (_uri == NS_INGEN "control_node") {
return new MidiControlNode(name, polyphonic, parent, srate, buffer_size);
- } else if (_uri == "ingen:transport_node") {
+ } else if (_uri == NS_INGEN "transport_node") {
return new TransportNode(name, polyphonic, parent, srate, buffer_size);
} else {
return NULL;
diff --git a/src/libs/engine/InternalPlugin.hpp b/src/libs/engine/InternalPlugin.hpp
index 6f1f6023..02ca3e59 100644
--- a/src/libs/engine/InternalPlugin.hpp
+++ b/src/libs/engine/InternalPlugin.hpp
@@ -34,6 +34,8 @@
#include "types.hpp"
#include "PluginImpl.hpp"
+#define NS_INGEN "http://drobilla.net/ns/ingen#"
+
namespace Ingen {
class NodeImpl;
diff --git a/src/libs/engine/MidiControlNode.cpp b/src/libs/engine/MidiControlNode.cpp
index c855f307..bfe0e57e 100644
--- a/src/libs/engine/MidiControlNode.cpp
+++ b/src/libs/engine/MidiControlNode.cpp
@@ -36,7 +36,7 @@ MidiControlNode::MidiControlNode(const string& path,
PatchImpl* parent,
SampleRate srate,
size_t buffer_size)
- : NodeBase(new InternalPlugin("ingen:control_node", "controller", "MIDI Controller")
+ : NodeBase(new InternalPlugin(NS_INGEN "control_node", "controller", "MIDI Controller")
, path, false, parent, srate, buffer_size)
, _learning(false)
{
diff --git a/src/libs/engine/MidiNoteNode.cpp b/src/libs/engine/MidiNoteNode.cpp
index e9b36fbf..0bf18f42 100644
--- a/src/libs/engine/MidiNoteNode.cpp
+++ b/src/libs/engine/MidiNoteNode.cpp
@@ -37,7 +37,7 @@ namespace Ingen {
MidiNoteNode::MidiNoteNode(const string& path, bool polyphonic, PatchImpl* parent, SampleRate srate, size_t buffer_size)
- : NodeBase(new InternalPlugin("ingen:note_node", "note", "MIDI Note"),
+ : NodeBase(new InternalPlugin(NS_INGEN "note_node", "note", "MIDI Note"),
path, polyphonic, parent, srate, buffer_size)
, _voices(new Raul::Array<Voice>(_polyphony))
, _prepared_voices(NULL)
diff --git a/src/libs/engine/MidiTriggerNode.cpp b/src/libs/engine/MidiTriggerNode.cpp
index 65f9833e..aa2c272f 100644
--- a/src/libs/engine/MidiTriggerNode.cpp
+++ b/src/libs/engine/MidiTriggerNode.cpp
@@ -32,7 +32,7 @@ namespace Ingen {
MidiTriggerNode::MidiTriggerNode(const string& path, bool polyphonic, PatchImpl* parent, SampleRate srate, size_t buffer_size)
- : NodeBase(new InternalPlugin("ingen:trigger_node", "trigger", "MIDI Trigger"),
+ : NodeBase(new InternalPlugin(NS_INGEN "trigger_node", "trigger", "MIDI Trigger"),
path, false, parent, srate, buffer_size)
{
_ports = new Raul::Array<PortImpl*>(5);
diff --git a/src/libs/engine/TransportNode.cpp b/src/libs/engine/TransportNode.cpp
index e65719df..3fc14a43 100644
--- a/src/libs/engine/TransportNode.cpp
+++ b/src/libs/engine/TransportNode.cpp
@@ -28,7 +28,7 @@ namespace Ingen {
TransportNode::TransportNode(const string& path, bool polyphonic, PatchImpl* parent, SampleRate srate, size_t buffer_size)
-: NodeBase(new InternalPlugin("ingen:transport_node", "transport", "Transport Follower"),
+: NodeBase(new InternalPlugin(NS_INGEN "transport_node", "transport", "Transport Follower"),
path, false, parent, srate, buffer_size)
{
#if 0
diff --git a/src/libs/engine/events/NoteEvent.cpp b/src/libs/engine/events/NoteEvent.cpp
index d74d5cd0..58842ae6 100644
--- a/src/libs/engine/events/NoteEvent.cpp
+++ b/src/libs/engine/events/NoteEvent.cpp
@@ -23,6 +23,7 @@
#include "MidiNoteNode.hpp"
#include "MidiTriggerNode.hpp"
#include "PluginImpl.hpp"
+#include "InternalPlugin.hpp"
#include "ProcessContext.hpp"
namespace Ingen {
@@ -71,14 +72,14 @@ NoteEvent::execute(ProcessContext& context)
if (_node != NULL && _node->plugin()->type() == Plugin::Internal) {
if (_on) {
- if (_node->plugin_impl()->uri() == "ingen:note_node")
+ if (_node->plugin_impl()->uri() == NS_INGEN "note_node")
((MidiNoteNode*)_node)->note_on(context, _note_num, _velocity, _time);
- else if (_node->plugin_impl()->uri() == "ingen:trigger_node")
+ else if (_node->plugin_impl()->uri() == NS_INGEN "trigger_node")
((MidiTriggerNode*)_node)->note_on(context, _note_num, _velocity, _time);
} else {
- if (_node->plugin_impl()->uri() == "ingen:note_node")
+ if (_node->plugin_impl()->uri() == NS_INGEN "note_node")
((MidiNoteNode*)_node)->note_off(context, _note_num, _time);
- else if (_node->plugin_impl()->uri() == "ingen:trigger_node")
+ else if (_node->plugin_impl()->uri() == NS_INGEN "trigger_node")
((MidiTriggerNode*)_node)->note_off(context, _note_num, _time);
}
}
diff --git a/src/libs/gui/PatchCanvas.cpp b/src/libs/gui/PatchCanvas.cpp
index 4fcafdc3..a588671e 100644
--- a/src/libs/gui/PatchCanvas.cpp
+++ b/src/libs/gui/PatchCanvas.cpp
@@ -596,10 +596,10 @@ PatchCanvas::paste()
for (Store::iterator i = clipboard.begin(); i != clipboard.end(); ++i) {
cout << "************ OBJECT: " << i->first << endl;
if (_patch->path() == "/" && i->first == "/") {
- cout << "SKIPPING ROOT " << _patch->path() << " :: " << i->first << endl;
+ //cout << "SKIPPING ROOT " << _patch->path() << " :: " << i->first << endl;
continue;
} else if (i->first.parent() != "/") {
- cout << "SKIPPING NON ROOTED OBJECT " << i->first << endl;
+ //cout << "SKIPPING NON ROOTED OBJECT " << i->first << endl;
continue;
}
GraphObject::Variables::iterator x = i->second->variables().find("ingenuity:canvas-x");