mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-25 06:46:26 +00:00
7ea475ebcf
Ground-up rewrite of the data model. Putting this in the ve2 directory for now so we still have the old code floating around. Main changes so far in this rewrite: * Renamed hasChildren() to canHaveChildren() * Added canHaveGrandchildren() * Added a new node type TwigNode that can have children but not grandchildren (so all of its children must be LeafNodes) * Implemented push/pop/shift/unshift as wrappers around splice() * Renamed getElementType() to getType(). Nodes now take a string as a type, and the element stuff is gone and won't be back * Removed clearRoot(), replaced it with setRoot( this ) where needed Change-Id: I23f3bb1b4a2473575e5446e87fdf17af107bacf6
27 lines
382 B
JavaScript
27 lines
382 B
JavaScript
/**
|
|
* Mixin for twig nodes
|
|
*
|
|
* @class
|
|
* @abstract
|
|
* @constructor
|
|
*/
|
|
ve.TwigNode = function() {
|
|
//
|
|
};
|
|
|
|
/* Methods */
|
|
|
|
/**
|
|
* @see {ve.Node.prototype.canHaveChildren}
|
|
*/
|
|
ve.TwigNode.prototype.canHaveChildren = function() {
|
|
return true;
|
|
};
|
|
|
|
/**
|
|
* @see {ve.Node.prototype.canHaveGrandchildren}
|
|
*/
|
|
ve.TwigNode.prototype.canHaveGrandchildren = function () {
|
|
return false;
|
|
};
|