protected static void triggerTransactionPerformed(DevkitTransactionGroup group)
 {
     if (DevkitTransactionManager.transactionPerformed != null)
     {
         DevkitTransactionManager.transactionPerformed(group);
     }
 }
        protected static DevkitTransactionGroup popUndo()
        {
            DevkitTransactionGroup value = DevkitTransactionManager.undoable.Last.Value;

            DevkitTransactionManager.undoable.RemoveLast();
            return(value);
        }
 protected static void clearRedo()
 {
     while (DevkitTransactionManager.redoable.Count > 0)
     {
         DevkitTransactionGroup devkitTransactionGroup = DevkitTransactionManager.redoable.Pop();
         devkitTransactionGroup.forget();
     }
     DevkitTransactionManager.redoable.Clear();
 }
 protected static void pushUndo(DevkitTransactionGroup group)
 {
     if ((long)DevkitTransactionManager.undoable.Count >= (long)((ulong)DevkitTransactionManager.historyLength))
     {
         DevkitTransactionManager.undoable.First.Value.forget();
         DevkitTransactionManager.undoable.RemoveFirst();
     }
     DevkitTransactionManager.undoable.AddLast(group);
 }
 protected static void clearUndo()
 {
     while (DevkitTransactionManager.undoable.Count > 0)
     {
         DevkitTransactionGroup value = DevkitTransactionManager.undoable.Last.Value;
         DevkitTransactionManager.undoable.RemoveLast();
         value.forget();
     }
     DevkitTransactionManager.undoable.Clear();
 }
        public static DevkitTransactionGroup redo()
        {
            if (!DevkitTransactionManager.canRedo)
            {
                return(null);
            }
            DevkitTransactionGroup devkitTransactionGroup = DevkitTransactionManager.popRedo();

            devkitTransactionGroup.redo();
            DevkitTransactionManager.pushUndo(devkitTransactionGroup);
            DevkitTransactionManager.triggerTransactionPerformed(devkitTransactionGroup);
            return(devkitTransactionGroup);
        }
 protected static void pushRedo(DevkitTransactionGroup group)
 {
     DevkitTransactionManager.redoable.Push(group);
 }