-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simple macro recorder #8
Open
Lazuliert
wants to merge
14
commits into
matmas:master
Choose a base branch
from
Lazuliert:macroRecorderClean
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Undo/redo doesn't work (for now) Fast replaying works, classic play freeze the app
…ds : - AddTokenCommand - FireTransitionCommand - RemoveTokenCommand All the others commands would have a very limited interest in being macro'ed, and can already be duplicated with others means, such as copy/paste. It also make the "undo" function more manageable, as it will be restricted to token operations. It also filters out some not really redoable actions, like setting a place static
"undo" undo a complete macro execution and "redo" also redo the whole macro
…e and add a method getRecordedElement so that the MacroManager have access to more info about recorded commands. playMacro Action/Command have been deleted and FastPlayMacro Action/Command have been renamed into playMacro The interface now display a "?" in the PlayMacroAction icon when an element used in the recorded macro is missing
Lazuliert
force-pushed
the
macroRecorderClean
branch
from
March 13, 2019 08:07
cf45861
to
f086f79
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This update adds a simple macro recorder.
The macro recorder consists of two buttons : a record and a play buttons.
To be recorded, an command must implement the the "RecordableCommand" interface.
This assures that to be in a macro, a command has to be explicitly declared for that.
For now, only the RemoveTokenCommand, AddTokenCommand and FireTransitionCommand are the only ones implementing it. This choice is based on the fact that all other commands are either useless to repeat more than once (SetTokensCommand for instance) or that they can already be repeated by using Copy/Paste (AddPlaceCommand for instance).
Once a macro has been recorded, it can be played with PlayMacroAction. The UndoAction will undo all the macro.
Deleting an element that is part of the macro will not make the macro unplayable, but the play icon will change to an icon with an "?" indicating that the macro may behave differently from what has been planned.
undos/redos will not be registered during a macro recording.