69 int minimumTransactionsToKeep = 30);
98 int minimumTransactionsToKeep);
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)
ChangeBroadcaster() noexcept
void beginNewTransaction()
Time getTimeOfUndoTransaction() const
String getCurrentTransactionName() const
void setMaxNumberOfStoredUnits(int maxNumberOfUnitsToKeep, int minimumTransactionsToKeep)
String getRedoDescription() const
StringArray getRedoDescriptions() const
bool isPerformingUndoRedo() const
bool undoCurrentTransactionOnly()
int getNumberOfUnitsTakenUpByStoredCommands() const
bool perform(UndoableAction *action)
Time getTimeOfRedoTransaction() const
StringArray getUndoDescriptions() const
String getUndoDescription() const
UndoManager(int maxNumberOfUnitsToKeep=30000, int minimumTransactionsToKeep=30)
void getActionsInCurrentTransaction(Array< const UndoableAction * > &actionsFound) const
int getNumActionsInCurrentTransaction() const
void setCurrentTransactionName(const String &newName)