X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/21cd91531dd9c6e88d00da03f6b2f3ad88fb0da0..95d7d373a581746ce68ada33dd890ecc385245ed:/src/editor/modules/documentCanvas/canvas/wlxmlManagers.js diff --git a/src/editor/modules/documentCanvas/canvas/wlxmlManagers.js b/src/editor/modules/documentCanvas/canvas/wlxmlManagers.js index c643a88..a35c079 100644 --- a/src/editor/modules/documentCanvas/canvas/wlxmlManagers.js +++ b/src/editor/modules/documentCanvas/canvas/wlxmlManagers.js @@ -11,7 +11,7 @@ var DocumentElementWrapper = function(documentElement) { this.documentElement = documentElement; this.addWidget = function(widget) { - documentElement.dom().children('.canvas-widgets').append(widget); + documentElement.dom().children('.canvas-widgets').append(widget.DOM ? widget.DOM : widget); }; this.clearWidgets = function() { @@ -41,6 +41,8 @@ var DocumentElementWrapper = function(documentElement) { eventBus.trigger.apply(eventBus, arguments); }; + this.node = documentElement.data('wlxmlNode'); + }; var getDisplayStyle = function(tag, klass) { @@ -50,9 +52,12 @@ var getDisplayStyle = function(tag, klass) { if(tag === 'span') { return 'inline'; } - if(klass === 'item') { + if(klass && klass.substr(0, 4) === 'item') { return null; } + if(klass === 'gap') { + return 'inline'; + } return 'block'; }; @@ -142,6 +147,31 @@ $.extend(ListItemManager.prototype, { }); managers.set('div', 'item', ListItemManager); + +var CommentManager = function(wlxmlElement) { + this.el = wlxmlElement; +}; + +$.extend(CommentManager.prototype, { + setup: function() { + this.el.clearWidgets(); + this.el.addWidget(widgets.labelWidget(this.el.tag(), this.el.klass())); + + this.widget = widgets.commentAdnotation(this.el.node); + this.el.addWidget(this.widget); + this.widget.DOM.show(); + }, + updateMetadata: function() { + // var parts = []; + // this.el.node.getMetadata().forEach(function(row) { + // parts.push(row.getValue()); + // }, 'creator'); + // this.widget.text(parts.join(', ')); + this.widget.update(this.el.node); + } +}); +managers.set('aside', 'comment', CommentManager); + return { getFor: function(documentElement) { var wlxmlElement = new DocumentElementWrapper(documentElement);