-
Notifications
You must be signed in to change notification settings - Fork 9
Roadmap
Jim Kring edited this page May 18, 2017
·
16 revisions
Here are some ideas under consideration. We are working to migrate this list into the Issue Tracker.
- When switching frames in the tree - it seems to switch back and then back, again
- Drag and drop of items into a VI doesn't work when the JKI SM Editor is open (it seems to grab focus away before the drop occurs -- note that Jim fixed a similar problem with QuickDrop)
- Continue to build out the JKI SM API and replace instances of code in the JKI SM Editor that are not currently calling the API.
- Remove “Refresh Tree” right-click menu item -- it seems that the tree refreshes itself well (it didn't always)
- Select Multiple Frames and Perform Operations (lower priority, since it's not too common or difficult on-by-one)
- Select and Move Multiple Frames*
- Select and Delete Multiple Frames
- Prompt for Update State Frame's Category Prefix when moving a frame to a new category (and update in all string constant instances)
- Speed up renaming of states (it seems like it takes a while and the VI block diagram flickers -- is there a defer block diagram updates?)
- Complete unit test coverage of the JKI SM API
- Move JKI SM API into its own project/package (but, not too soon)
- Rename Section (Category) Renames State Frames in that Category (including in all state string constants)
- Undo JKI SM Helper operations like: sorting, inserting, renaming, deleting, etc. -- Note that deleting a frame does not have any way to undo. It appears that this is implemented in the Editor tool (from the old CaseSelect tool), but it’s not presently working.
-
JKI SM Analyzer and Clean Up (could these be VI Analyzer-like plug-ins)
- Left Justify All State Strings
- Check JKI SM Size
- Validate State Strings (are all the states referenced in string constants actual states of the JKI SM)
- Chained states (bad) convert to macro (or something)
- Structure diagram coloration
- Others?
- Insert State into State String from right-click menu (Insert State >> Category >> State Name).
- Detecting a change in state name (case structure state name or category change) should prompt user to rename instances in state strings of VI, just as if the name were changed using the editor.
- Separate the Sorting of States alphabetically from Sorting Categories alphabetically, instead of entire state machine.
- Add ability to switch between Event Structure and Case Structure with a single editor (e.g. two Tree Controls on separate tabs, perhaps). Forward and Back navigation should span the two structures.
- Allow QD shortcut to work anywhere on the block diagram: should detect the JKI State Machine, rather than just a single Case or Event Structure.
- Allow expanding/viewing the Macros (clicking on a state underneath the macro will navigate to that state)
- Edit macro steps enable/disable them.
- Easy disable/enable a state frame (comment out that state in every state string via search and replace)
- Disable/Enable line of a state string from right-click menu
- String Constant State Editing
- right-click comment out (enable/disable)
- right-click on a string constant and insert steps before/after from right-click menu
- Edit State String dialog Pop-up dialog could provide an easier way to add/remove/reorder items
- An area on the helper tool could allow editing the string constant by representing it as a listbox.
- Add Dynamic Events Registration (outside on the left) -- Jim has been working on this in the API.
- Convert JKI SM to JKI State Machine Object Process.vi create the SMO class and add the necessary event registration and synchronization plumbing.
Note that these tools would probably require temporarily replacing the Parse State Queue function with one that has debugging features
- State logging
- App Data logging
- Single stepping
- Breakpoints on individual states
JKI State Machine Editor is an open source project maintained by JKI. To submit bugs, feature requests, or contributions, please submit an issue to the project tracker.