My first thought was to move the color out of the TRACE, which is
really a view object. However we can't make signals a first-class
citizen either, because they change depending on what the current
simulation tab is and so (for instance) we can only load in the
workbook signals for the current tab. Hours later I backed it all
out and arrived at this simpler, less "correct" solution.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14231
The x-axis only needs to be fetched once per update. Same for
redrawing the screen. And there's no reason to fetch more y data
than we have x data for (which happens to subsequent traces as
the sim is still running as we're updating).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
The sim may not be complete yet. And even if it is, the user
didn't ask us to move their cursor. Just leave it where it is
with an undefined y value.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15672
Default dialog to SPICE command.
Any of the three axis locks must lock the plotWindow Y axis (otherwise
locking Y2 but not Y1 doesn't preclude zooming).