I need to write down some stuff here before I lose it.
Currently implementing a menu for dealing with performance comparisons by showing on the graph how the performances stack up against one-another. The menu includes saving current performance (the total performance), loading existing performances (shown in a different colour on the graph when viewing total performance), opening another (modal) window containing a large graph of total performances (shown at the scale of the largest performance – or perhaps the user can select which performance to use as the base-point, maybe the number of steps shown at show the number of steps the performance is evaluated at).
In the load existing performance JMenu is a submenu containing checkboxes for the currently loaded performances. These can be checked to turn on and off.
Gah. I feel like there was something else. Oh well. It’ll come to me in time.
Hah! I remember now: when saving, save the environment details as well (maybe some sort of unique hash code for it or something). Then, when loading, the performance is checked against the current environment to see if they are the same. If they aren’t the user is asked if they wish to load the environment or cancel the performance. Note that any other performances at this point will be removed as they wouldn’t match the environment.