74 int minimumTransactionsToKeep = 30);
81 void clearUndoHistory();
86 int getNumberOfUnitsTakenUpByStoredCommands()
const;
102 void setMaxNumberOfStoredUnits (
int maxNumberOfUnitsToKeep,
103 int minimumTransactionsToKeep);
133 void beginNewTransaction();
144 void beginNewTransaction (
const String& actionName);
152 void setCurrentTransactionName (
const String& newName);
157 String getCurrentTransactionName()
const;
163 bool canUndo()
const;
185 bool undoCurrentTransactionOnly();
190 String getUndoDescription()
const;
202 Time getTimeOfUndoTransaction()
const;
218 int getNumActionsInCurrentTransaction()
const;
224 bool canRedo()
const;
235 String getRedoDescription()
const;
248 Time getTimeOfRedoTransaction()
const;
251 bool isPerformingUndoRedo()
const;
257 String newTransactionName;
258 int totalUnitsStored = 0, maxNumUnitsToKeep = 0, minimumTransactionsToKeep = 0, nextIndex = 0;
259 bool newTransaction =
true, isInsideUndoRedoCall =
false;
262 void moveFutureTransactionsToStash();
263 void restoreStashedFutureTransactions();
264 void dropOldTransactionsIfTooLarge();
266 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
UndoManager)
Holds a resizable array of primitive or copy-by-value objects.
Holds a list of ChangeListeners, and sends messages to them when instructed.
An array designed for holding objects.
A special array for holding a list of strings.
Holds an absolute date and time.
Manages a list of undo/redo commands.
Used by the UndoManager class to store an action which can be done and undone.
#define JUCE_API
This macro is added to all JUCE public class declarations.