X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/7b4405539ac7c11a11b5259b4f968e1289f0b2a7..f21a91b10cced1d0fd3be6b183bc64303e7f4f94:/modules/documentCanvas/canvasManager.js diff --git a/modules/documentCanvas/canvasManager.js b/modules/documentCanvas/canvasManager.js index 3ced49a..5d17ec0 100644 --- a/modules/documentCanvas/canvasManager.js +++ b/modules/documentCanvas/canvasManager.js @@ -96,6 +96,27 @@ Manager.prototype.selectNode = function(wlxmlNode, options) { this.sandbox.publish('nodeSelected', wlxmlNode); }; +Manager.prototype.insertNewNode = function(wlxmlTag, wlxmlClass) { + var selection = window.getSelection(); + + if(selection.getRangeAt(0).collapsed) { + + } else { + var offsetStart = selection.anchorOffset; + var offsetEnd = selection.focusOffset; + if(offsetStart > offsetEnd) { + var tmp = offsetStart; + offsetStart = offsetEnd; + offsetEnd = tmp; + } + var node = new wlxmlNode.Node($(selection.anchorNode).parent()); + var newNode = this.canvas.insertNode({place: 'wrapText', context: node, tag: wlxmlTag, klass: wlxmlClass, offsetStart: offsetStart, offsetEnd: offsetEnd}); + this.selectNode(new wlxmlNode.Node(newNode), {movecaret: 'end'}); + } + + +} + Manager.prototype.getNodeElement = function(wlxmlNode) { return this.canvas.dom.find('#'+wlxmlNode.id); };