69 int minimumTransactionsToKeep = 30);
76 void clearUndoHistory();
81 int getNumberOfUnitsTakenUpByStoredCommands()
const;
98 int minimumTransactionsToKeep);
128 void beginNewTransaction();
147 void setCurrentTransactionName (
const String& newName);
152 String getCurrentTransactionName()
const;
158 bool canUndo()
const;
180 bool undoCurrentTransactionOnly();
185 String getUndoDescription()
const;
197 Time getTimeOfUndoTransaction()
const;
213 int getNumActionsInCurrentTransaction()
const;
219 bool canRedo()
const;
230 String getRedoDescription()
const;
243 Time getTimeOfRedoTransaction()
const;
246 bool isPerformingUndoRedo()
const;
252 String newTransactionName;
253 int totalUnitsStored = 0, maxNumUnitsToKeep = 0, minimumTransactionsToKeep = 0, nextIndex = 0;
254 bool newTransaction =
true, isInsideUndoRedoCall =
false;
255 ActionSet* getCurrentSet()
const;
256 ActionSet* getNextSet()
const;
257 void moveFutureTransactionsToStash();
258 void restoreStashedFutureTransactions();
259 void dropOldTransactionsIfTooLarge();
261 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
UndoManager)