46 if (!
actions.getUnchecked(
i)->undo())
57 total +=
a->getSizeInUnits();
113 if (newAction !=
nullptr)
115 std::unique_ptr<UndoableAction> action (newAction);
124 if (action->perform())
130 if (
auto* lastAction = actionSet->actions.getLast())
132 if (
auto coalescedAction = lastAction->createCoalescedAction (action.get()))
134 action.reset (coalescedAction);
136 actionSet->actions.removeLast();
148 actionSet->actions.add (std::move (action));
225 action->name = newName;
306 descriptions.
add (
t->name);
319 descriptions.
add (
t->name);
356 for (
auto*
a :
s->actions)
357 actionsFound.
add (
a);
364 return s->actions.size();
Type jmax(const Type a, const Type b)
Definition MathsFunctions.h:48
uint8_t a
Definition Spc_Cpu.h:141
Definition juce_Array.h:56
void add(const ElementType &newElement)
Definition juce_Array.h:418
void sendChangeMessage()
Definition juce_ChangeBroadcaster.cpp:65
Definition juce_OwnedArray.h:51
Definition juce_ScopedValueSetter.h:55
Definition juce_StringArray.h:35
void add(String stringToAdd)
Definition juce_StringArray.cpp:136
Definition juce_String.h:53
bool isNotEmpty() const noexcept
Definition juce_String.h:316
Definition juce_Time.h:37
static Time JUCE_CALLTYPE getCurrentTime() noexcept
Definition juce_Time.cpp:233
void beginNewTransaction()
Definition juce_UndoManager.cpp:209
Time getTimeOfUndoTransaction() const
Definition juce_UndoManager.cpp:325
String getCurrentTransactionName() const
Definition juce_UndoManager.cpp:228
void setMaxNumberOfStoredUnits(int maxNumberOfUnitsToKeep, int minimumTransactionsToKeep)
Definition juce_UndoManager.cpp:91
bool redo()
Definition juce_UndoManager.cpp:264
String getRedoDescription() const
Definition juce_UndoManager.cpp:291
int maxNumUnitsToKeep
Definition juce_UndoManager.h:253
StringArray getRedoDescriptions() const
Definition juce_UndoManager.cpp:312
bool undo()
Definition juce_UndoManager.cpp:245
int nextIndex
Definition juce_UndoManager.h:253
~UndoManager() override
Definition juce_UndoManager.cpp:73
ActionSet * getNextSet() const
Definition juce_UndoManager.cpp:238
bool isInsideUndoRedoCall
Definition juce_UndoManager.h:254
OwnedArray< ActionSet > stashedFutureTransactions
Definition juce_UndoManager.h:251
bool isPerformingUndoRedo() const
Definition juce_UndoManager.cpp:240
ActionSet * getCurrentSet() const
Definition juce_UndoManager.cpp:237
OwnedArray< ActionSet > transactions
Definition juce_UndoManager.h:251
void clearUndoHistory()
Definition juce_UndoManager.cpp:78
void restoreStashedFutureTransactions()
Definition juce_UndoManager.cpp:176
String newTransactionName
Definition juce_UndoManager.h:252
bool canUndo() const
Definition juce_UndoManager.cpp:242
void dropOldTransactionsIfTooLarge()
Definition juce_UndoManager.cpp:193
bool undoCurrentTransactionOnly()
Definition juce_UndoManager.cpp:341
int getNumberOfUnitsTakenUpByStoredCommands() const
Definition juce_UndoManager.cpp:86
bool perform(UndoableAction *action)
Definition juce_UndoManager.cpp:111
Time getTimeOfRedoTransaction() const
Definition juce_UndoManager.cpp:333
bool canRedo() const
Definition juce_UndoManager.cpp:243
int minimumTransactionsToKeep
Definition juce_UndoManager.h:253
int totalUnitsStored
Definition juce_UndoManager.h:253
StringArray getUndoDescriptions() const
Definition juce_UndoManager.cpp:299
String getUndoDescription() const
Definition juce_UndoManager.cpp:283
UndoManager(int maxNumberOfUnitsToKeep=30000, int minimumTransactionsToKeep=30)
Definition juce_UndoManager.cpp:68
bool newTransaction
Definition juce_UndoManager.h:254
void getActionsInCurrentTransaction(Array< const UndoableAction * > &actionsFound) const
Definition juce_UndoManager.cpp:352
void moveFutureTransactionsToStash()
Definition juce_UndoManager.cpp:161
int getNumActionsInCurrentTransaction() const
Definition juce_UndoManager.cpp:360
void setCurrentTransactionName(const String &newName)
Definition juce_UndoManager.cpp:220
Definition juce_UndoableAction.h:39
struct huft * t
Definition inflate.c:943
register unsigned i
Definition inflate.c:1575
unsigned s
Definition inflate.c:1555
Definition carla_juce.cpp:31
Definition juce_UndoManager.cpp:30
int getTotalSize() const
Definition juce_UndoManager.cpp:52
ActionSet(const String &transactionName)
Definition juce_UndoManager.cpp:31
Time time
Definition juce_UndoManager.cpp:64
OwnedArray< UndoableAction > actions
Definition juce_UndoManager.cpp:62
bool undo() const
Definition juce_UndoManager.cpp:43
bool perform() const
Definition juce_UndoManager.cpp:34
String name
Definition juce_UndoManager.cpp:63