It should be possible to comfortably trace state changes in a simulation through a hierarchy of substates. Here's a suggestion how this could look like.
I think we have several use cases here:
The user starts a statechart simulation.
During simulation, the user performs an action so that the last activated leaf state is no longer in the currently displayed statechart editor window, i.e. the user has entered or left a substate.
During simulation, the user clicks on an entry in the debug view, and the last activated leaf state of the selected simulation is not in the currently displayed statechart editor window.
In all of these cases, YAKINDU Statechart Tools should switch to a statechart editor window that contains the last activated leaf state. In particular, that means:
If a window with the last activated leaf state is not yet open, YAKINDU Statechart Tools opens it in a new tab.
If a window with the the last activated leaf state is already open, but on a tab that is currently hidden, YAKINDU Statechart Tools makes it visible by bringing it to the front.
Please note:
When the simulation is started, the last activated leaf state is not necessarily on the top level. The initial state might directly lead into a substate.
The described following of active states does not pertain to transitions caused by timing events, because otherwise that might lead to a too rapid toggling between windows. However, we might consider a configuration option to still follow timed transitions, but with a threshold, i.e. something like "also follow timed transitions, provided the previous transition happened is at least 2 seconds ago".
It should be possible to comfortably trace state changes in a simulation through a hierarchy of substates. Here's a suggestion how this could look like.
I think we have several use cases here:
In all of these cases, YAKINDU Statechart Tools should switch to a statechart editor window that contains the last activated leaf state. In particular, that means:
Please note: