reloadRoot: function() {
this.rootElement = this.createElement(this.wlxmlDocument.root);
this.wrapper.empty();
- this.wrapper.append(this.rootElement.dom());
+ this.wrapper.append(this.rootElement.dom);
},
setupEventHandling: function() {
getNearestTextElement: function(direction, relativeToElement, includeInvisible) {
includeInvisible = includeInvisible !== undefined ? includeInvisible : false;
var selector = '[document-text-element]' + (includeInvisible ? '' : ':visible');
- return this.getDocumentElement(utils.nearestInDocumentOrder(selector, direction, relativeToElement.dom()[0]));
+ return this.getDocumentElement(utils.nearestInDocumentOrder(selector, direction, relativeToElement.dom[0]));
},
contains: function(element) {
- return element.dom().parents().index(this.wrapper) !== -1;
+ return element.dom.parents().index(this.wrapper) !== -1;
},
triggerSelectionChanged: function() {
var _markAsCurrent = function(element) {
if(element instanceof documentElement.DocumentTextElement) {
this.wrapper.find('.current-text-element').removeClass('current-text-element');
- element.dom().addClass('current-text-element');
+ element.dom.addClass('current-text-element');
} else {
this.wrapper.find('.current-node-element').removeClass('current-node-element');
element._container().addClass('current-node-element');
_moveCaretToTextElement: function(element, where) {
var range = document.createRange(),
- node = element.dom().contents()[0];
+ node = element.dom.contents()[0];
if(typeof where !== 'number') {
range.selectNodeContents(node);
var node = c.wlxmlDocument.root.contents()[0],
element = node.getData('canvasElement');
- var header = element.dom().find('h1');
+ var header = element.dom.find('h1');
expect(header.text()).to.equal('1', 'just <a>');
node.append({tagName: 'div'});
it('returns position when browser selection collapsed', function() {
var c = getCanvasFromXML('<section>Alice has a cat</section>'),
- dom = c.doc().dom(),
+ dom = c.doc().dom,
text = findTextNode(dom, 'Alice has a cat');
expect(text.nodeType).to.equal(Node.TEXT_NODE, 'correct node selected');
it('recognizes selection start and end on document order', function() {
var c = getCanvasFromXML('<section><span>Alice</span><span>has a cat</span><div>abc<span>...</span>cde</div></section>'),
- dom = c.doc().dom(),
+ dom = c.doc().dom,
textFirst = findTextNode(dom, 'Alice'),
textSecond = findTextNode(dom, 'has a cat'),
textAbc = findTextNode(dom, 'abc'),
it('returns boundries of selection when browser selection not collapsed', function() {
var c = getCanvasFromXML('<section>Alice <span>has</span> a <span>big</span> cat</section>'),
- dom = c.doc().dom(),
+ dom = c.doc().dom,
text = {
alice: findTextNode(dom, 'Alice '),
has: findTextNode(dom, 'has'),
it('recognizes when browser selection boundries lies in sibling DocumentTextElements', function() {
var c = getCanvasFromXML('<section>Alice <span>has</span> a <span>big</span> cat</section>'),
- dom = c.doc().dom(),
+ dom = c.doc().dom,
text = {
alice: findTextNode(dom, 'Alice '),
has: findTextNode(dom, 'has'),
this.wlxmlNode = wlxmlNode;
this.canvas = canvas;
- this.$element = this.createDOM();
- this.$element.data('canvas-element', this);
+ this.dom = this.createDOM();
+ this.dom.data('canvas-element', this);
};
$.extend(DocumentElement.prototype, {
refresh: function() {
// noop
},
- dom: function() {
- return this.$element;
- },
parent: function() {
- var parents = this.$element.parents('[document-node-element]');
+ var parents = this.dom.parents('[document-node-element]');
if(parents.length) {
return this.canvas.getDocumentElement(parents[0]);
}
},
sameNode: function(other) {
- return other && (typeof other === typeof this) && other.dom()[0] === this.dom()[0];
+ return other && (typeof other === typeof this) && other.dom[0] === this.dom[0];
},
trigger: function() {
var DocumentNodeElement = function(wlxmlNode, canvas) {
DocumentElement.call(this, wlxmlNode, canvas);
wlxmlNode.setData('canvasElement', this);
- this.init(this.$element);
+ this.init(this.dom);
};
} else {
element = e.canvas.createElement(params);
}
- e.dom()[action](element.dom());
+ e.dom[action](element.dom);
e.refreshPath();
return element;
};
$.extend(DocumentNodeElement.prototype, {
defaultDisplayStyle: 'block',
addWidget: function(widget) {
- this.$element.children('.canvas-widgets').append(widget.DOM ? widget.DOM : widget);
+ this.dom.children('.canvas-widgets').append(widget.DOM ? widget.DOM : widget);
},
clearWidgets: function() {
- this.$element.children('.canvas-widgets').empty();
+ this.dom.children('.canvas-widgets').empty();
},
handle: function(event) {
var method = 'on' + event.type[0].toUpperCase() + event.type.substr(1);
return wrapper;
},
_container: function() {
- return this.dom().children('[document-element-content]');
+ return this.dom.children('[document-element-content]');
},
detach: function() {
var parents = this.parents();
- this.dom().detach();
+ this.dom.detach();
this.canvas = null;
if(parents[0]) {
parents[0].refreshPath();
toggleLabel: function(toggle) {
var displayCss = toggle ? 'inline-block' : 'none';
- var label = this.dom().children('.canvas-widgets').find('.canvas-widget-label');
+ var label = this.dom.children('.canvas-widgets').find('.canvas-widget-label');
label.css('display', displayCss);
this.toggleHighlight(toggle);
},
},
isBlock: function() {
- return this.dom().css('display') === 'block';
+ return this.dom.css('display') === 'block';
},
displayAsBlock: function() {
- this.dom().css('display', 'block');
+ this.dom.css('display', 'block');
this._container().css('display', 'block');
},
displayInline: function() {
- this.dom().css('display', 'inline');
+ this.dom.css('display', 'inline');
this._container().css('display', 'inline');
},
displayAs: function(what) {
// e.css('display')
// }
// })
- this.dom().css('display', what);
+ this.dom.css('display', what);
this._container().css('display', what);
}
});
return dom;
},
detach: function() {
- this.dom().detach();
+ this.dom.detach();
this.canvas = null;
return this;
},
setText: function(text) {
- this.dom().contents()[0].data = text;
+ this.dom.contents()[0].data = text;
},
getText: function(options) {
options = _.extend({raw: false}, options || {});
- var toret = this.dom().text();
+ var toret = this.dom.text();
if(!options.raw) {
toret = toret.replace(utils.unicode.ZWS, '');
}
},
isEmpty: function() {
// Having at least Zero Width Space is guaranteed be Content Observer
- return this.dom().contents()[0].data === utils.unicode.ZWS;
+ return this.dom.contents()[0].data === utils.unicode.ZWS;
},
after: function(params) {
if(params instanceof DocumentTextElement || params.text) {
} else {
element = this.canvas.createElement(params);
}
- this.dom().wrap('<div>');
- this.dom().parent().after(element.dom());
- this.dom().unwrap();
+ this.dom.wrap('<div>');
+ this.dom.parent().after(element.dom);
+ this.dom.unwrap();
this.refreshPath();
return element;
},
} else {
element = this.canvas.createElement(params);
}
- this.dom().wrap('<div>');
- this.dom().parent().before(element.dom());
- this.dom().unwrap();
+ this.dom.wrap('<div>');
+ this.dom.parent().before(element.dom);
+ this.dom.unwrap();
this.refreshPath();
return element;
},