Skip to content

Roadmap

Jim Kring edited this page Apr 6, 2018 · 16 revisions

Here are some ideas under consideration. We are working to migrate this list into the Issue Tracker.

Some Bugs

  • When switching frames in the tree - it seems to switch back and then back, again

Wishlist (Ideas for Features and Changes)

Editing Tools

  • 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.
  • 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)
  • Complete unit test coverage of the JKI SM API
  • Move JKI SM API into its own project/package (but, not too soon)
  • 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.
  • 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.
  • View/Edit state frame (Case Structure) documentation -- would be nice to have an easy way/place to edit the documentation that shows up as a string decoration/comment at the top of the case structure frame. If this were added to the API, one could read the documentation programmatically, in order to generate HTML documentation.
  • Ability to add useful states like Defer Panel Updates >> True/FALSE via right-click menu (and script in the code)

JKI SMO Related

  • Convert JKI SM to JKI State Machine Object Process.vi create the SMO class and add the necessary event registration and synchronization plumbing.
  • Introspect Event Registration - Ability to view which public events of other JKI SMO's have been registered for.
  • Add event handling -- if we're registered for public events, make it easy to create an event handler for events we're not handling.

Run-Time Tools

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
Clone this wiki locally