summaryrefslogtreecommitdiffstats
path: root/src/AtomWriter.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2015-02-08 07:02:59 +0000
committerDavid Robillard <d@drobilla.net>2015-02-08 07:02:59 +0000
commit0f9c8151d5b42b243a499bb31a1e1f0b2e8c5f6f (patch)
tree1ed4df4df4c3f160120544d92c681f1b4519e1aa /src/AtomWriter.cpp
parent8733afb7ae9a04f46ac6318667182da16eca9fe5 (diff)
downloadingen-0f9c8151d5b42b243a499bb31a1e1f0b2e8c5f6f.tar.gz
ingen-0f9c8151d5b42b243a499bb31a1e1f0b2e8c5f6f.tar.bz2
ingen-0f9c8151d5b42b243a499bb31a1e1f0b2e8c5f6f.zip
Server-side copy paste with LV2 state support.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5541 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/AtomWriter.cpp')
-rw-r--r--src/AtomWriter.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/AtomWriter.cpp b/src/AtomWriter.cpp
index 7c956ece..eaf45243 100644
--- a/src/AtomWriter.cpp
+++ b/src/AtomWriter.cpp
@@ -168,6 +168,20 @@ AtomWriter::delta(const Raul::URI& uri,
}
void
+AtomWriter::copy(const Raul::Path& old_path,
+ const Raul::URI& new_uri)
+{
+ LV2_Atom_Forge_Frame msg;
+ forge_request(&msg, _uris.patch_Copy);
+ lv2_atom_forge_key(&_forge, _uris.patch_subject);
+ forge_uri(Node::path_to_uri(old_path));
+ lv2_atom_forge_key(&_forge, _uris.patch_destination);
+ forge_uri(new_uri);
+ lv2_atom_forge_pop(&_forge, &msg);
+ finish_msg();
+}
+
+void
AtomWriter::move(const Raul::Path& old_path,
const Raul::Path& new_path)
{