This document will provide a description of the concepts and Components used in the Free Orion GUI implementation. Before reading this make sure to be familiar with the general design and concepts and the API Documentation (not yet written ;-).
This document is organized as follows: for each class of the
org.freeorion.gui-package a short description will
be given consisting of the intended function of the class, its
relation to other classes and a short status note. For graphical
Components a screenshot will be given to get a better impression.
In the beginning the MainScreen will be discussed, for it is the nexus connecting everything what follows. Then Components used to display classes of the Free Orion API are described. At the end there is a list of helper classes that are used by the classes of the GUI.
The MainScreen
The class org.freeorion.gui.MainScreen is the central Component of the GUI. It allows the switching between different displays.
Status: mostly complete but in a horrible, unstructured state. more displays could be added for extended functionality.
Until now there are the following displays:
|
Name: "StarMap"
Description: Display Stars and Ships in the Universe and allow to select them. Status: most thinks work fine. |
|
Name: "Colonies"
Description: Display a list of the Players colonies. Status: basics implemented. Todo: display more information, improve the appearance. |
|
Name: "Planets"
Description: Display the known Planets. Status: basics implemented. Todo: display more information, improve the appearance. |
|
Name: "Planet"
Description: Show whats going on in a Colony. Display buildings and Inhabitants, allow to scrap buildings, set the production, ... Status: quick and dirty, does nothing ... Todo: improve it. |
|
Name: "Statistics"
Description: Display some data :-) No actions can be performed but maybe some useful information are displayed. Status: until now there is only a display of the known AlienTypes. Todo: add more information. |
|
Name: "ShipDesign"
Description: Allow the gamer to equip her battle ships. Status: very basic, not up to date Todo: develop a general concept for the Ship design and implement it. |
|
Name: "Fleets"
Description: Display the players fleets, allow to scrap Ships, etc. Status: Not implemented yet. Todo: Implement it! |
|
Name: "main_leader.jpg"
Description: Display the Colony and Fleet leaders the player has hired, like the famous Commander Ruola and his friends. Status: Not implemented yet. Todo: Implement it! |
|
Name: "Research"
Description: Show what kind of research can be done by the player. Status: very basic. there is no real technology and research concept now. Todo: develop a technology concept, reimplement this display. |
|
Name: "InterTurn"
Description: This display is shown when the player finished her turn and is waiting for the others to do so. The actual appearance depends on whether this is a hot seat or a single player display. Status: quick and dirty, but works. Todo: some nicer layout ... |
Components
This section describes Components that are provided to display or manipulate classes of the API.
|
Name: org.freeorion.gui.AlienInfoBox
Description: A Component to display the properties of an org.freeorion.api.AlienType as text. Status: does its job well Todo: the layout could be improved. |
|
Name: org.freeorion.gui.ColonyPanel
Description: Show what is going on in a org.freeorion.api.Colony. This Component uses some other Components of the org.freeorion.gui as
org.freeorion.gui.InhabitantView.
Status: This Component is in an very early (read immature) state. Todo: A lot of things need to be added/improved. |
|
Name: org.freeorion.gui.InhabitantView
Description: A Component to display and select org.freeorion.api.Inhabitants of an org.freeorion.api.Colony. Status: function is ok, the graphics needs improvement. Todo: paint nicer aliens ... |
|
Name: org.freeorion.gui.StarMap
Description: Component to display the org.freeorion.api.StarSystems and org.freeorion.api.Ships in the org.freeorion.api.Universe. Status: healthy Todo: some FIXMEs in the code |
|
Name: org.freeorion.gui.StarSystemPanel
Description: A Component to display an org.freeorion.api.StarSystem. Status: works fine Todo: graphic (especially the central star) could be improved, some minor FIXMEs in the code. |
|
Name: org.freeorion.gui.StarSystemObjectInfoPanel
Description: A small Panel that displays (textual) information about Objects in a org.freeorion.api.StarSystem. Status: ok |
|
Name: org.freeorion.gui.ResearchPanel
Description: Display the ResearchTree and allow to select which research shall be done next. Status: hack. there is no good research concept until now and so this Component should wait until one is developed. Todo: develope a technology and research concept an then reimplement this. |
|
Name: org.freeorion.gui.ResearchInfoBox
Description: A small Component to display the research activity of the org.freeorion.api.Player. Status: function ok Todo: nicer layout |
|
Name: org.freeorion.gui.ShipDesignPanel
Description: Allow the player to create ShipDesigns. Status: The ShipDesign of Free-Orion is rather immature and so is this component Todo: Develope a general ship design concept and then implement this. |
|
Name: org.freeorion.gui.ColonyTable
Description: A JTable to display org.freeorion.api.Colonys Status: basic function ok. Todo: needs some more column and functions |
|
Name: org.freeorion.gui.PlanetTable
Description: A JTable to display org.freeorion.api.Planets Status: works fine Todo: a nice layout would be good ... |
|
Name: org.freeorion.gui.AlienTypeConfiguration
Description: Allow the player to change her org.freeorion.api.AlienType. Status: slightly outdated Todo: needs some brainwork to be set up in a good way (see FIXME-comments in the class). |
|
Helper classes
This section describes classes that support the functionality of the Components of the GUI.
javax.swing.JPanel. Components which want to use
these methods should sublcass this Panel.
|
created on 2003-03-01
last changes on 2003-03-01 contact: webmaster |
please do also visit our project status
page
hosted by |