%PDF- %PDF-
Direktori : /www/varak.net/wiki.varak.net/extensions/VisualEditor/lib/ve/src/dm/nodes/ |
Current File : /www/varak.net/wiki.varak.net/extensions/VisualEditor/lib/ve/src/dm/nodes/ve.dm.HeadingNode.js |
/*! * VisualEditor DataModel HeadingNode class. * * @copyright 2011-2016 VisualEditor Team and others; see http://ve.mit-license.org */ /** * DataModel heading node. * * @class * @extends ve.dm.ContentBranchNode * * @constructor * @param {Object} [element] Reference to element in linear model * @param {ve.dm.Node[]} [children] */ ve.dm.HeadingNode = function VeDmHeadingNode() { // Parent constructor ve.dm.HeadingNode.super.apply( this, arguments ); }; /* Inheritance */ OO.inheritClass( ve.dm.HeadingNode, ve.dm.ContentBranchNode ); /* Static Properties */ ve.dm.HeadingNode.static.name = 'heading'; ve.dm.HeadingNode.static.canContainContent = true; ve.dm.HeadingNode.static.defaultAttributes = { level: 1 }; ve.dm.HeadingNode.static.matchTagNames = [ 'h1', 'h2', 'h3', 'h4', 'h5', 'h6' ]; ve.dm.HeadingNode.static.toDataElement = function ( domElements ) { var levels = { h1: 1, h2: 2, h3: 3, h4: 4, h5: 5, h6: 6 }, level = levels[ domElements[ 0 ].nodeName.toLowerCase() ]; return { type: this.name, attributes: { level: level } }; }; ve.dm.HeadingNode.static.toDomElements = function ( dataElement, doc ) { var level = dataElement.attributes && dataElement.attributes.level || 1; return [ doc.createElement( 'h' + level ) ]; }; /* Registration */ ve.dm.modelRegistry.register( ve.dm.HeadingNode );