mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-09-25 03:08:42 +00:00
Added documentation for es.Transaction
This commit is contained in:
parent
add7c23191
commit
23e0651e0b
|
@ -11,10 +11,21 @@ es.Transaction = function( operations ) {
|
|||
|
||||
/* Methods */
|
||||
|
||||
/**
|
||||
* Gets a list of all operations.
|
||||
*
|
||||
* @method
|
||||
* @returns {Object[]} List of operations
|
||||
*/
|
||||
es.Transaction.prototype.getOperations = function() {
|
||||
return this.operations;
|
||||
};
|
||||
|
||||
/**
|
||||
* Merges consecutive operations of the same type.
|
||||
*
|
||||
* @method
|
||||
*/
|
||||
es.Transaction.prototype.optimize = function() {
|
||||
for ( var i = 0; i < this.operations.length - 1; i++ ) {
|
||||
var a = this.operations[i];
|
||||
|
@ -35,6 +46,12 @@ es.Transaction.prototype.optimize = function() {
|
|||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a retain operation.
|
||||
*
|
||||
* @method
|
||||
* @param {Integer} length Length of content data to retain
|
||||
*/
|
||||
es.Transaction.prototype.pushRetain = function( length ) {
|
||||
this.operations.push( {
|
||||
'type': 'retain',
|
||||
|
@ -42,13 +59,25 @@ es.Transaction.prototype.pushRetain = function( length ) {
|
|||
} );
|
||||
};
|
||||
|
||||
es.Transaction.prototype.pushInsert = function( content ) {
|
||||
/**
|
||||
* Adds an insertion operation.
|
||||
*
|
||||
* @method
|
||||
* @param {Array} data Data to retain
|
||||
*/
|
||||
es.Transaction.prototype.pushInsert = function( data ) {
|
||||
this.operations.push( {
|
||||
'type': 'insert',
|
||||
'data': content
|
||||
'data': data
|
||||
} );
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a removal operation.
|
||||
*
|
||||
* @method
|
||||
* @param {Array} data Data to remove
|
||||
*/
|
||||
es.Transaction.prototype.pushRemove = function( data ) {
|
||||
this.operations.push( {
|
||||
'type': 'remove',
|
||||
|
@ -56,6 +85,14 @@ es.Transaction.prototype.pushRemove = function( data ) {
|
|||
} );
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds an element attribute change operation.
|
||||
*
|
||||
* @method
|
||||
* @param {String} method Method to use, either "set" or "clear"
|
||||
* @param {String} key Name of attribute to change
|
||||
* @param {Mixed} value Value to set attribute to, or value of attribute being cleared
|
||||
*/
|
||||
es.Transaction.prototype.pushChangeElementAttribute = function( method, key, value ) {
|
||||
this.operations.push( {
|
||||
'type': 'attribute',
|
||||
|
@ -65,6 +102,13 @@ es.Transaction.prototype.pushChangeElementAttribute = function( method, key, val
|
|||
} );
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a start annotating operation.
|
||||
*
|
||||
* @method
|
||||
* @param {String} method Method to use, either "set" or "clear"
|
||||
* @param {Object} annotation Annotation object to start setting or clearing from content data
|
||||
*/
|
||||
es.Transaction.prototype.pushStartAnnotating = function( method, annotation ) {
|
||||
this.operations.push( {
|
||||
'type': 'annotate',
|
||||
|
@ -74,6 +118,13 @@ es.Transaction.prototype.pushStartAnnotating = function( method, annotation ) {
|
|||
} );
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a stop annotating operation.
|
||||
*
|
||||
* @method
|
||||
* @param {String} method Method to use, either "set" or "clear"
|
||||
* @param {Object} annotation Annotation object to stop setting or clearing from content data
|
||||
*/
|
||||
es.Transaction.prototype.pushStopAnnotating = function( method, annotation ) {
|
||||
this.operations.push( {
|
||||
'type': 'annotate',
|
||||
|
|
Loading…
Reference in a new issue