X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/20020035edf7edeb436a010dc55555c7a7846027..6535ed0c525f70c936a8e25ff38df5157b15c04c:/modules/documentCanvas/canvasManager.js diff --git a/modules/documentCanvas/canvasManager.js b/modules/documentCanvas/canvasManager.js index afc3363..69cfd07 100644 --- a/modules/documentCanvas/canvasManager.js +++ b/modules/documentCanvas/canvasManager.js @@ -23,60 +23,59 @@ var Manager = function(canvas, sandbox) { this.canvas = canvas; this.sandbox = sandbox; this.shownAlready = false; - this.gridToggled = false; this.scrollbarPosition = 0; this.currentNode = null; var manager = this; - canvas.doc().dom().find('#rng-module-documentCanvas-content').on('keyup', function() { - manager.sandbox.publish('contentChanged'); - }); - - canvas.doc().dom().on('mouseover', '[wlxml-tag]', function(e) { - e.stopPropagation(); - manager.sandbox.publish('nodeHovered', canvasNode.create($(e.target))); - }); - canvas.doc().dom().on('mouseout', '[wlxml-tag]', function(e) { - e.stopPropagation(); - manager.sandbox.publish('nodeBlured', canvasNode.create($(e.target))); - }); - canvas.doc().dom().on('click', '[wlxml-tag]', function(e) { - e.stopPropagation(); - console.log('clicked node type: '+e.target.nodeType); - manager.selectNode(canvasNode.create($(e.target))); - }); - - canvas.doc().dom().on('keyup', '#rng-module-documentCanvas-contentWrapper', function(e) { - var anchor = $(window.getSelection().anchorNode); + // canvas.doc().dom().find('#rng-module-documentCanvas-content').on('keyup', function() { + // manager.sandbox.publish('contentChanged'); + // }); + + // canvas.doc().dom().on('mouseover', '[wlxml-tag]', function(e) { + // e.stopPropagation(); + // manager.sandbox.publish('nodeHovered', canvasNode.create($(e.target))); + // }); + // canvas.doc().dom().on('mouseout', '[wlxml-tag]', function(e) { + // e.stopPropagation(); + // manager.sandbox.publish('nodeBlured', canvasNode.create($(e.target))); + // }); + // canvas.doc().dom().on('click', '[wlxml-tag]', function(e) { + // e.stopPropagation(); + // console.log('clicked node type: '+e.target.nodeType); + // manager.selectNode(canvasNode.create($(e.target))); + // }); + + // canvas.doc().dom().on('keyup', '#rng-module-documentCanvas-contentWrapper', function(e) { + // var anchor = $(window.getSelection().anchorNode); - if(anchor[0].nodeType === Node.TEXT_NODE) - anchor = anchor.parent(); - if(!anchor.is('[wlxml-tag]')) - return; - manager.selectNode(canvasNode.create(anchor)); - }); + // if(anchor[0].nodeType === Node.TEXT_NODE) + // anchor = anchor.parent(); + // if(!anchor.is('[wlxml-tag]')) + // return; + // manager.selectNode(canvasNode.create(anchor)); + // }); - canvas.doc().dom().on('keydown', '#rng-module-documentCanvas-contentWrapper', function(e) { - if(e.which === 13) { - manager.onEnterKey(e); - } - if(e.which === 8) { - manager.onBackspaceKey(e); - } - }); + // canvas.doc().dom().on('keydown', '#rng-module-documentCanvas-contentWrapper', function(e) { + // if(e.which === 13) { + // manager.onEnterKey(e); + // } + // if(e.which === 8) { + // manager.onBackspaceKey(e); + // } + // }); - canvas.doc().dom().onShow = function() { - if(!manager.shownAlready) { - manager.shownAlready = true; - manager.selectFirstNode(); - } else if(manager.currentNode) { - manager.movecaretToNode(manager.getNodeElement(manager.currentNode)); - canvas.doc().dom().find('#rng-module-documentCanvas-contentWrapper').scrollTop(manager.scrollbarPosition); - } - }; - canvas.doc().dom().onHide = function() { - manager.scrollbarPosition = canvas.doc().dom().find('#rng-module-documentCanvas-contentWrapper').scrollTop(); - }; + // canvas.doc().dom().onShow = function() { + // if(!manager.shownAlready) { + // manager.shownAlready = true; + // manager.selectFirstNode(); + // } else if(manager.currentNode) { + // manager.movecaretToNode(manager.getNodeElement(manager.currentNode)); + // canvas.doc().dom().find('#rng-module-documentCanvas-contentWrapper').scrollTop(manager.scrollbarPosition); + // } + // }; + // canvas.doc().dom().onHide = function() { + // manager.scrollbarPosition = canvas.doc().dom().find('#rng-module-documentCanvas-contentWrapper').scrollTop(); + // }; }; Manager.prototype.selectNode = function(cnode, options) { @@ -182,72 +181,6 @@ Manager.prototype.onBackspaceKey = function(e) { } }; -Manager.prototype.toggleList = function(toggle) { - var selection = window.getSelection(), - node1 = $(selection.anchorNode).parent()[0], - node2 = $(selection.focusNode).parent()[0], - element1 = this.canvas.getDocumentElement(node1), - element2 = this.canvas.getDocumentElement(node2); - -}; - -Manager.prototype.command = function(command, params) { - var selection = window.getSelection(), - element1 = this.canvas.getDocumentElement(selection.anchorNode), - element2 = this.canvas.getDocumentElement(selection.focusNode), - parent1 = element1 ? element1.parent() : undefined, - parent2 = element2 ? element2.parent() : undefined; - - if(command === 'unwrap-node') { - // this.canvas.nodeUnwrap({node: canvasNode.create(pos.parentNode)}); - // this.sandbox.publish('contentChanged'); - if(this.canvas.list.areItemsOfTheSameList({element1: parent1, element2: parent2})) { - this.canvas.list.extractItems({element1: parent1, element2: parent2}); - } else if (selection.isCollapsed) { - element1.unwrap(); - } - } else if(command === 'wrap-node') { - if(this.canvas.list.areItemsOfTheSameList({element1: parent1, element2: parent2})) { - this.canvas.list.create({element1: parent1, element2: parent2}); - } - } else if(command === 'toggle-list') { - if(params.toggle) { - this.canvas.list.create({element1: parent1, element2: parent2}); - } else { - if(this.canvas.list.areItemsOfTheSameList({element1: parent1, element2: parent2})) { - this.canvas.list.extractItems({element1: parent1, element2: parent2, merge: false}); - } - } - } else if(command == 'toggle-grid') { - this.canvas.doc().dom().find('[wlxml-tag]').toggleClass('rng-common-hoveredNode', params.toggle); - this.gridToggled = params.toggle; - } else if(command == 'newNodeRequested') { - if(!selection.isCollapsed && element1.parent().sameNode(element2.parent())) { - var parent = element1.parent(), - offsetStart = selection.anchorOffset, - offsetEnd = selection.focusOffset; - - if(element1.sameNode(element2)) { - element1.wrapWithNodeElement({tag: params.wlxmlTag, klass: params.wlxmlClass, start: offsetStart, end: offsetEnd}); - } - else { - if(parent.childIndex(element1) > parent.childIndex(element2)) { - var tmp = offsetStart; - offsetStart = offsetEnd; - offsetEnd = tmp; - } - this.canvas.wrapText({ - inside: parent, - _with: {tag: params.wlxmlTag, klass: params.wlxmlClass}, - offsetStart: offsetStart, - offsetEnd: offsetEnd, - textNodeIdx: [parent.childIndex(element1), parent.childIndex(element2)] - }); - } - } - } -}; - return Manager;