diff options
Diffstat (limited to 'public/assets/javascripts/rectangles/util/undo.js')
| -rw-r--r-- | public/assets/javascripts/rectangles/util/undo.js | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/public/assets/javascripts/rectangles/util/undo.js b/public/assets/javascripts/rectangles/util/undo.js deleted file mode 100644 index 3700817..0000000 --- a/public/assets/javascripts/rectangles/util/undo.js +++ /dev/null @@ -1,42 +0,0 @@ -(function(){ - - var UndoStack = function(){ - this.stack = [] - this.types = {} - this.pointer = -1 - } - UndoStack.prototype.push = function(action){ - this.pointer++ - this.stack[this.pointer] = action - this.purge() - } - UndoStack.prototype.purge = function(){ - if (this.stack.length-1 == this.pointer) return - this.stack.length = this.pointer+1 - } - UndoStack.prototype.undo = function(){ - if (this.pointer == -1) return false - var action = this.stack[this.pointer] - this.types[ action.type ].undo(action) - this.pointer-- - return this.pointer > -1 - } - UndoStack.prototype.redo = function(){ - if (this.pointer == this.stack.length-1) return false - this.pointer++ - var action = this.stack[this.pointer] - this.types[ action.type ].redo(action) - return this.pointer < this.stack.length-1 - } - UndoStack.prototype.register = function(actionType){ - this.types[ actionType.type ] = actionType - } - - if ('window' in this) { - window.UndoStack = new UndoStack - } - else { - module.exports = new UndoStack - } - -})() |
