-
Notifications
You must be signed in to change notification settings - Fork 0
GUI Organization
In keeping with the methodology employed in developing the online version of TechScore, each editing action to be done on a regatta, such as Team names, Rotations, Finishes, etc, occur on a different Editing Pane. TScoreGUI manages all the editing panes that have been registered with it. When the user chooses a pane to use, TScoreGUI makes that pane its content. All subsequent actions within the pane are controlled by the pane object itself, and not by TScoreGUI. Thus, TScoreGUI acts as a GUI manager, and each pane itself is responsible for appropriately editing the same regatta object.
Because all the editing panes need to work on the same regatta, each one requires a regatta object associated with it at instantiation time. All editing panes must subclass the /AbstractPane/ class, which handles listening to regatta changes and also provides basic methods for TScoreGUI to check if the pane should be enabled or not (for instance, the Rotations pane is enabled if there are more than one race and two teams in the regatta).