changeset 786:9ed3abe54604

APE Metric tag holds all axis information.
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Fri, 11 Dec 2015 15:54:59 +0000
parents c8f99418b34b
children 8a926674000b
files ape.js core.js
diffstat 2 files changed, 20 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/ape.js	Fri Dec 11 11:42:28 2015 +0000
+++ b/ape.js	Fri Dec 11 15:54:59 2015 +0000
@@ -566,7 +566,7 @@
 		var obj = [];
 		$(this.trackSliderObjects).each(function(i,trackObj){
 			var node = document.createElement('value');
-			node.setAttribute("name",trackObj.getAttribute("interface-name"));
+			node.setAttribute("inteerface-name",trackObj.getAttribute("interface-name"));
 			node.textContent = convSliderPosToRate(trackObj);
 			obj.push(node);
 		});
@@ -679,12 +679,27 @@
 		// Have to append the metric specific nodes
 		if (testXML.outsideReference == null || testXML.outsideReference.id != audioelements[i].id)
 		{
+			var inject = audioelements[i].getElementsByTagName("metric");
+			if (inject.length == 0)
+			{
+				inject = document.createElement("metric");
+			} else {
+				inject = inject[0];
+			}
 			for (var k=0; k<interfaceContext.interfaceSliders.length; k++)
 			{
 				var node = interfaceContext.interfaceSliders[k].metrics[i].exportXMLDOM();
-				node.setAttribute("interface-name",interfaceContext.interfaceSliders[k].name);
-				node.setAttribute("interfaceid",interfaceContext.interfaceSliders[k].id);
-				audioelements[i].appendChild(node);
+				var mrnodes = node.getElementsByTagName("metricresult");
+				for (var j=0; j<mrnodes.length; j++)
+				{
+					var name = mrnodes[j].getAttribute("name");
+					if (name == "elementTracker" || name == "elementTrackerFull" || name == "elementInitialPosition" || name == "elementFlagMoved")
+					{
+						mrnodes[j].setAttribute("interface-name",interfaceContext.interfaceSliders[k].name);
+						mrnodes[j].setAttribute("interface-id",k);
+						inject.appendChild(mrnodes[j]);
+					}
+				}
 			}
 		}
 	}
--- a/core.js	Fri Dec 11 11:42:28 2015 +0000
+++ b/core.js	Fri Dec 11 15:54:59 2015 +0000
@@ -1078,7 +1078,7 @@
 	this.exportXMLDOM = function() {
 		var root = document.createElement('audioElement');
 		root.id = this.specification.id;
-		root.setAttribute('url',this.url);
+		root.setAttribute('url',this.specification.url);
 		var file = document.createElement('file');
 		file.setAttribute('sampleRate',this.buffer.buffer.sampleRate);
 		file.setAttribute('channels',this.buffer.buffer.numberOfChannels);