Allow Single-Window-Mode & Multi-Window-Mode
Depending on the use-case it might be preferable to use a Multi-Window-Mode compared to the now default Single-Window-Mode.
The JEFrameRegister needs to be refactored to handle JPanels (that can then be added to JFrames or JDesktopPanes).
This issue has multiple parts eventually allowing easier window management and custom views for problems (like the FLensViewer)
-
Refactor JEFrameRegister to handle JPanels ( .addPanel(String name, JPanel panel)
) -
Adjust all classes that implement JDesktopPane to extend JPanel and register them with the new JEFrameRegister -
Add preferences window to allow configuring Single-Window-Mode vs. Multi-Window-Mode -
Add configuration for whether to show Problem solution viewers or not and automatically show them when an optimization is started. Properly handle when windows are closed. This makes this a global setting instead of a per-problem setting.
I'll raise each task as an individual issue to track the progress.