X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/039f0edb73590283bc38ef5421e670fa40ff2480..6ec6461eaba0dfa50a065dac18eb7cc6455cb827:/modules/documentCanvas/documentCanvas.js diff --git a/modules/documentCanvas/documentCanvas.js b/modules/documentCanvas/documentCanvas.js index c47b8bb..2085155 100644 --- a/modules/documentCanvas/documentCanvas.js +++ b/modules/documentCanvas/documentCanvas.js @@ -5,23 +5,27 @@ define([ './transformations', './canvas', './canvasManager', -'libs/text!./template.html'], function(_, transformations, Canvas, CanvasManager, template) { +'./canvas/canvas', +'libs/text!./template.html'], function(_, transformations, Canvas, CanvasManager, canvas3, template) { 'use strict'; return function(sandbox) { - var canvas = Canvas.create(); - var manager = new CanvasManager(canvas, sandbox); + var canvas = canvas3.fromXML(''); //canvasCanvas.create(); + var manager; + var canvasWrapper = $(template); /* public api */ return { start: function() { sandbox.publish('ready'); }, getView: function() { - return canvas.dom; + return canvasWrapper; }, setDocument: function(xml) { - canvas.setHTML(transformations.fromXML.getHTMLTree(xml)); + canvas.loadWlxml(xml); //canvas.setHTML(transformations.fromXML.getHTMLTree(xml)); + canvasWrapper.find('#rng-module-documentCanvas-content').empty().append(canvas.doc().dom()); + manager = new CanvasManager(canvas, sandbox); sandbox.publish('documentSet'); }, getDocument: function() { @@ -29,13 +33,17 @@ return function(sandbox) { }, modifyCurrentNode: function(attr, value) { if(manager.currentNode) { - if(_.contains(['tag', 'class'], attr)) { + if(attr === 'tag') { manager.getNodeElement(manager.currentNode).attr('wlxml-'+attr, value); + } + else if(attr === 'class') { + manager.currentNode.setClass(value); } else { // changing node meta attr manager.currentNode.setMetaAttr(attr, value); } sandbox.publish('contentChanged'); + sandbox.publish('currentNodeChanged', manager.currentNode); } }, highlightNode: function(canvasNode) { @@ -51,6 +59,9 @@ return function(sandbox) { toggleGrid: function(toggle) { manager.toggleGrid(toggle); }, + toggleList: function(toggle) { + manager.toggleList(toggle); + }, insertNewNode: function(wlxmlTag, wlxmlClass) { manager.insertNewNode(wlxmlTag, wlxmlClass); },