diff options
author | geireann <geireann.lindfield@gmail.com> | 2023-09-14 11:55:59 -0400 |
---|---|---|
committer | geireann <geireann.lindfield@gmail.com> | 2023-09-14 11:55:59 -0400 |
commit | 36bc0bf938086b1508824730ca82faab5f5099b2 (patch) | |
tree | 61a629ed68391b36fd7c89e3bda3a420df0dd4ab /src | |
parent | e610cfadb0fe544166b36b756fdc0aca2549d932 (diff) |
added ability to do batch undo/redo from undostack.
Diffstat (limited to 'src')
-rw-r--r-- | src/client/views/UndoStack.tsx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/client/views/UndoStack.tsx b/src/client/views/UndoStack.tsx index 5bf6c9e21..f07e38af1 100644 --- a/src/client/views/UndoStack.tsx +++ b/src/client/views/UndoStack.tsx @@ -38,15 +38,20 @@ export class UndoStack extends React.Component<UndoStackProps> { background, color, }}> - {UndoManager.undoStackNames.map((name, i) => ( - <div className="undoStack-resultContainer" key={i}> + {Array.from(UndoManager.undoStackNames).map((name, i) => ( + <div className="undoStack-resultContainer" key={i} + onClick={e => { + const size = UndoManager.undoStackNames.length; + for (let n = 0; n < size-i; n++ ) UndoManager.Undo(); } } + > <div className="undoStack-commandString">{StrCast(name).replace(/[^\.]*\./, '')}</div> </div> ))} {Array.from(UndoManager.redoStackNames) .reverse() .map((name, i) => ( - <div className="undoStack-resultContainer" key={i}> + <div className="undoStack-resultContainer" key={i} onClick={e => + { for (let n = 0; n <= i; n++ ) UndoManager.Redo() }}> <div className="undoStack-commandString" style={{ fontWeight: 'bold', background: SettingsManager.userBackgroundColor, color: SettingsManager.userColor }}> {StrCast(name).replace(/[^\.]*\./, '')} </div> |