HomeWildfire Games

Gamesetup subpages support.

Description

Gamesetup subpages support.

Split SetupWindow from GameSetupPage class.
Create Gamesetup/Pages subfolder, starting with the existing GameSetupPage and LoadingPage.
Run the subpage in the same GUI script context instead of separate pages.
Planned subpages are AIConfigPage (refs D2577), MapBrowser (D1703), hero selection dialog, civ selection (refs #3987), starting resources, population capacity (refs #4379, #812...).

This allows:

  • subpages to benefit from direct access and reuse of the gamesetup controlers, (f.e. gameSettingsControl, playerAssignmentsControl, mapCache, netMessages, ...), deduplication.
  • subpages to handle events and control gamesettings even if the according subpage is closed (for example deleting AIBehavior if there is no AI assigned).
  • to keep gamesettings decoupled, i.e. exactly one class per setting (for this example avoiding that both GameSetupPage/AIConfigButton and AIConfigPage/AIBehavior control the AIBehavior setting value.).

Differential Revision: https://code.wildfiregames.com/D2581
Comments By: Vladislav (http://irclogs.wildfiregames.com/2020-01/2020-01-18-QuakeNet-%230ad-dev.log), nani (PM)