summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.html202
1 files changed, 116 insertions, 86 deletions
diff --git a/index.html b/index.html
index 8597b0f..fc5e434 100644
--- a/index.html
+++ b/index.html
@@ -963,92 +963,122 @@
}
- /*
- Maverick
- The Export buttons in toolbar call this function with varying
- arguments.
- The third argument is used to decide which button is being
- pressed.
- exportXML : 2 arguments
- exportXcos: 3 arguments
- */
- function displayXMLorXcos() {
- var textarea = document.createElement('textarea');
- textarea.style.width = '400px';
- textarea.style.height = '400px';
- var enc = new mxCodec(mxUtils.createXmlDocument());
- /*var array=[],key;
- for (key in diagRoot.model.cells) {
-
- if(diagRoot.model.cells[key].connectable == false)
- {
- array.push(diagRoot.model.cells[key].inst);
- diagRoot.model.cells[key].inst=null;
- }
- }*/
- var node = enc.encode(diagRoot);
-
- var str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + mxUtils.getPrettyXml(node);
-
- textarea.value = str;
- /*var j = 0;
- for (key in diagRoot.model.cells) {
-
- if(diagRoot.model.cells[key].connectable == false)
- {
- diagRoot.model.cells[key].inst=array[j++];
- }
- }*/
- if (arguments[2] == null) {
- showModalWindow(graph, 'XML', textarea, 410, 440);
- } else {
-
- return mxUtils.getPrettyXml(node);
- }
- }
-
- // Defines a new export action
- editor.addAction('exportXML', function(editor, cell) {
- //Only two parameters passed here.
- displayXMLorXcos(editor, cell);
- });
-
- /* Maverick
- Reference: http://www.w3schools.com/xsl/xsl_client.asp
- */
-
- editor.addAction('exportXcos', function(editor, cell) {
- //Mind the 3 parameters.
- var xmlFromExportXML = displayXMLorXcos(editor, cell, true);
- if (xmlFromExportXML == null) alert('First create the XML file.');
- else {
-
- var xml = mxUtils.parseXml(xmlFromExportXML);
-
- var xsl = loadXMLDoc("finalmodsheet.xsl");
-
- xsltProcessor = new XSLTProcessor();
- xsltProcessor.importStylesheet(xsl);
- resultDocument = xsltProcessor.transformToDocument(xml);
-
-
- var textarea = document.createElement('textarea');
- textarea.style.width = '400px';
- textarea.style.height = '400px';
- /*
- Maverick
- Using resultDocument.documentElement to remove an additional tag "<#document>" created by the XSLTProcessor.
- */
- var str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n" + mxUtils.getPrettyXml(resultDocument.documentElement);
-
- textarea.value = str.replace(/\n\n/g, "\n");
- showModalWindow(graph, 'Xcos', textarea, 410, 440);
- }
- });
-
- addToolbarButton(editor, toolbar, 'exportXML', 'Export XML', 'images/export1.png');
-
- addToolbarButton(editor, toolbar, 'exportXcos', 'Export Xcos', 'images/export1.png');
+ /*
+ Maverick
+ The Export buttons in toolbar call this function with varying
+ arguments.
+ The third argument is used to deciFde which button is being
+ pressed.
+ exportXML : 2 arguments
+ exportXcos: 3 arguments
+ */
+ function displayXMLorXcos() {
+ var textarea = document.createElement('textarea');
+ textarea.style.width = '400px';
+ textarea.style.height = '400px';
+
+ var enc = new mxCodec(mxUtils.createXmlDocument());
+ var node = enc.encode(diagRoot);
+
+ var str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + mxUtils.getPrettyXml(node);
+
+ textarea.value = str;
+
+ if (arguments[2] == null) {
+ showModalWindow(graph, 'XML', textarea, 410, 440);
+ } else {
+
+ return mxUtils.getPrettyXml(node);
+ }
+ }
+
+ function getXcosDiagram(editor, cell) {
+ //Mind the 3 parameters.
+ var xmlFromExportXML = displayXMLorXcos(editor, cell, true);
+ if (xmlFromExportXML === null)
+ alert('First create the XML file.');
+ else {
+
+ var xml = mxUtils.parseXml(xmlFromExportXML);
+
+ var xsl = loadXMLDoc("finalmodsheet.xsl");
+
+ xsltProcessor = new XSLTProcessor();
+ xsltProcessor.importStylesheet(xsl);
+ resultDocument = xsltProcessor.transformToDocument(xml);
+ /*
+ Maverick
+ Using resultDocument.documentElement to remove an additional tag "<#document>" created by the XSLTProcessor.
+ */
+ var str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n" + mxUtils.getPrettyXml(resultDocument.documentElement);
+
+ str = str.replace(/\n\n/g, "\n");
+ return str;
+ }
+ }
+
+ // Defines a new export action
+ editor.addAction('exportXML', function (editor, cell) {
+ //Only two parameters passed here.
+ displayXMLorXcos(editor, cell);
+ });
+
+ /* Maverick
+ Reference: http://www.w3schools.com/xsl/xsl_client.asp
+ */
+
+ editor.addAction('exportXcos', function (editor, cell) {
+ var textarea = document.createElement('textarea');
+ textarea.style.width = '400px';
+ textarea.style.height = '400px';
+ textarea.value = getXcosDiagram(editor, cell);
+ showModalWindow(graph, 'Xcos', textarea, 410, 440);
+ });
+
+ addToolbarButton(editor, toolbar, 'exportXML', 'Export XML', 'images/export1.png');
+ addToolbarButton(editor, toolbar, 'exportXcos', 'Export Xcos', 'images/export1.png');
+
+ toolbar.appendChild(spacer.cloneNode(true));
+
+ addToolbarButton(editor, toolbar, 'simulate', 'Simulate', 'images/ScilabExecute.png');
+
+ editor.addAction('simulate', function (editor, cell) {
+ var diagram = getXcosDiagram(editor, cell);
+
+ var blob = new Blob([diagram], {type: 'text/plain'});
+ var xhr = new XMLHttpRequest();
+ xhr.open('POST','ScilabServlet', true);
+ xhr.onload = function() {
+ // Create basic structure for the form
+ var content = document.createElement('div');
+ content.setAttribute("id", "contentProperties");
+
+ // Heading of content
+ var heading = document.createElement('h2');
+ heading.innerHTML = "Set Scope Parameters";
+ heading.id = "headingProperties";
+ content.appendChild(heading);
+
+ var paragraph = document.createElement("p");
+ paragraph.innerHTML = xhr.responseText;
+ content.appendChild(paragraph);
+
+
+ //var img = document.createElement("img");
+ //img.src = "data:image/;base64,"+xhr.responseText;
+ //content.appendChild(img);
+
+ var wind = showModalWindow(graph, 'Properties', content, 1000, 1000);
+ };
+ xhr.onreadystatechange = function(){
+ console.log("state: " + xhr.readyState);
+ };
+ xhr.upload.onprogress = function() {
+ console.log("uploading...");
+ };
+ xhr.setRequestHeader("Content-Type", "text/plain");
+ xhr.send(blob);
+ });
// Adds toolbar buttons into the status bar at the bottom
// of the window.