SuperTuxKart
|
Dialog that shows information about a specific grand prix. More...
#include <gp_info_screen.hpp>
Public Member Functions | |
GPInfoScreen () | |
Constructor, initialised some variables which might be used before loadedFromFile is called. | |
virtual | ~GPInfoScreen () |
Places the focus back on the selected GP, in the case that the dialog was cancelled and we're returning to the track selection screen. | |
void | onEnterPressedInternal () |
virtual void | eventCallback (GUIEngine::Widget *, const std::string &name, const int player_id) OVERRIDE |
Handle user input. | |
virtual void | loadedFromFile () OVERRIDE |
Called when the stkgui file is read. | |
virtual void | init () OVERRIDE |
Called before the screen is shown. | |
virtual void | beforeAddingWidget () OVERRIDE |
Optional callback invoked very early, before widgets have been added (contrast with init(), which is invoked afer widgets were added) | |
virtual void | onUpdate (float dt) OVERRIDE |
Called every update. | |
void | setGP (const std::string &gp_ident) |
Sets the GP to be displayed. | |
virtual void | unloaded () OVERRIDE |
Callback invoked when this screen is being unloaded. | |
Public Member Functions inherited from GUIEngine::Screen | |
std::function< Screen *()> | getNewScreenPointer () const |
Save the function before GUIEngine::clearScreenCache, call it after to get the new screen instance pointer. | |
void | setScreenPointerFunction (const std::function< Screen *()> &f) |
Screen (bool pause_race=true) | |
Creates a dummy incomplete object; only use to override behaviour in sub-class. | |
Screen (const char *filename, bool pause_race=true) | |
Creates a screen populated by the widgets described in a STK GUI file. | |
bool | operator== (const char *filename) const |
void | loadFromFile () |
loads this Screen from the file passed to the constructor | |
bool | isLoaded () const |
void | addWidgets () |
Adds the IrrLicht widgets corresponding to this screen to the IGUIEnvironment. | |
void | calculateLayout () |
Called after all widgets have been added. | |
void | manualAddWidget (Widget *w) |
Can be used for custom purposes for which the load-screen-from-XML code won't make it. | |
void | manualRemoveWidget (Widget *w) |
Can be used for custom purposes for which the load-screen-from-XML code won't make it. | |
void | setUpdateInBackground (bool value) |
When set to true it updates the screen even if modal dialog is opened. | |
bool | getUpdateInBackground () |
const std::string & | getName () const |
virtual void | unload () |
Next time this menu needs to be shown, don't use cached values, re-calculate everything. | |
bool | needs3D () |
Will be called to determine if the 3D scene must be rendered when at this screen. | |
void | setNeeds3D (bool needs3D) |
Invoke this method for screens that use a 3D scene as background. | |
virtual void | loadedFromFile ()=0 |
Callback invoked when loading this menu. | |
virtual void | unloaded () |
Callback invoked when this screen is being unloaded. | |
virtual void | beforeAddingWidget () |
Optional callback invoked very early, before widgets have been added (contrast with init(), which is invoked afer widgets were added) | |
virtual void | init () |
Callback invoked when entering this menu (after the widgets have been added). | |
void | push () |
Displays this screen bu pushing it onto the stack of screen in the state manager. | |
virtual void | tearDown () |
Callback invoked before leaving this menu. | |
virtual bool | onEscapePressed () |
Called when escape is pressed. | |
virtual void | eventCallback (Widget *widget, const std::string &name, const int playerID)=0 |
will be called everytime something happens. | |
virtual void | onUpdate (float dt) |
optional callback you can override to be notified at every frame. | |
virtual void | onDraw (float dt) |
optional callback you can override to be notified at every frame. | |
virtual MusicInformation * | getMusic () const |
virtual MusicInformation * | getInGameMenuMusic () const |
virtual int | getWidth () |
virtual int | getHeight () |
virtual bool | isResizable () const |
virtual EventPropagation | filterActions (PlayerAction action, int deviceID, const unsigned int value, Input::InputType type, int playerId) |
Override this if you need to be notified of player actions in subclasses. | |
virtual void | onDisabledItemClicked (const std::string &item) |
Callback you can use if you want to know when the user pressed on a disabled ribbon item. | |
virtual void | filterInput (Input::InputType type, int deviceID, int btnID, int axisDir, int value) |
Override this if you need to be notified of raw input in subclasses. | |
virtual void | onDialogClose () |
Callback that gets called when a dialog is closed. | |
virtual void | onFocusChanged (Widget *previous, Widget *focus, int playerID) |
Callback called when focus changes. | |
Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer | |
virtual int | getWidth ()=0 |
virtual int | getHeight ()=0 |
Widget * | getWidget (const char *name) |
This function returns a widget by name if that widget is found. | |
Widget * | getWidget (const int id) |
This function returns a widget by irrlicht ID if that widget is found. | |
template<typename T > | |
T * | getWidget (const char *name) |
This function searches and returns a widget by name, cast as specified type, if that widget is found and the type is correct. | |
Widget * | getFirstWidget (PtrVector< Widget > *within_vector=NULL) |
This function returns the first widget found in within_vector. | |
Widget * | getLastWidget (PtrVector< Widget > *within_vector=NULL) |
This function returns the last widget found in within_vector. | |
void | elementsWereDeleted (PtrVector< Widget > *within_vector=NULL) |
This function is called when screen is removed. | |
bool | isMyChild (Widget *widget) const |
This function checks if a widget is a child of the container. | |
virtual bool | enableScreenPadding () const |
Protected Member Functions | |
void | addTracks () |
display all the tracks according to the current gp For a normal gp info dialog, it just creates a label for every track. | |
void | addScreenshot () |
Creates a screenshot widget in the placeholder of the GUI. | |
void | updateRandomGP () |
GrandPrixData::GPReverseType | getReverse () const |
Converts the currently selected reverse status into a value of type GPReverseType . | |
Protected Member Functions inherited from GUIEngine::AbstractTopLevelContainer | |
void | addWidgetsRecursively (PtrVector< Widget > &widgets, Widget *parent=NULL) |
This function adds a list of widgets recursively, effectively creating the hierarchy of widgets. | |
Protected Attributes | |
float | m_curr_time |
GrandPrixData | m_gp |
The grand prix data. | |
Protected Attributes inherited from GUIEngine::Screen | |
bool | m_resizable |
True if this screen is resizable. | |
Protected Attributes inherited from GUIEngine::AbstractTopLevelContainer | |
PtrVector< Widget, HOLD > | m_widgets |
the widgets in this screen | |
Widget * | m_first_widget |
AbstractTopLevelContainer is generally able to determine its first widget just fine, but in highly complex screens (e.g. | |
Widget * | m_last_widget |
AbstractTopLevelContainer is generally able to determine its last widget just fine, but in highly complex screens (e.g. | |
Private Member Functions | |
int | getMaxNumTracks (std::string group) |
Get number of available tracks for random GPs. | |
void | updateHighscores () |
Load highscores for grandprix. | |
Private Attributes | |
GUIEngine::SpinnerWidget * | m_group_spinner |
Spinner for the different track groups. | |
GUIEngine::SpinnerWidget * | m_reverse_spinner |
Spinner for reverse mode. | |
GUIEngine::SpinnerWidget * | m_num_tracks_spinner |
Spinner for number of tracks (in case of random GP). | |
GUIEngine::SpinnerWidget * | m_ai_kart_spinner |
Spinner for number of AI karts. | |
GUIEngine::SpinnerWidget * | m_time_target_spinner |
Spinner for time target in Lap Trial. | |
GUIEngine::ListWidget * | m_highscore_list |
List with last 5 highscores. | |
std::string | m_group_name |
The currently selected group name. | |
std::vector< std::string > | m_group_names |
The untranslated group names, used as internal IDs. | |
int | m_max_num_tracks |
Number of available tracks. | |
irr::gui::STKModifiedSpriteBank * | m_icon_bank |
int | m_unknown_kart_icon |
Icon for unknown kart in highscore list. | |
Additional Inherited Members | |
Static Public Member Functions inherited from GUIEngine::Screen | |
static void | parseScreenFileDiv (irr::io::IXMLReader *xml, PtrVector< Widget > &append_to, irr::gui::IGUIElement *parent=NULL) |
Loads a GUI screen from its XML file. | |
Static Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer | |
static Widget * | getWidget (const char *name, PtrVector< Widget > *within_vector) |
This function returns a widget by name if that widget is found in within_vector. | |
static Widget * | getWidget (const int id, PtrVector< Widget > *within_vector) |
This function returns a widget by irrlicht ID if that widget is found. | |
Static Public Member Functions inherited from GUIEngine::ScreenSingleton< GPInfoScreen > | |
static GPInfoScreen * | getInstance () |
Static Protected Attributes inherited from GUIEngine::ScreenSingleton< GPInfoScreen > | |
static GPInfoScreen * | singleton |
Dialog that shows information about a specific grand prix.
|
protected |
display all the tracks according to the current gp For a normal gp info dialog, it just creates a label for every track.
Updates the list of tracks shown.
But with a random gp info dialog, it tries to reuse as many labels as possible by just changing their text.
|
virtual |
Optional callback invoked very early, before widgets have been added (contrast with init(), which is invoked afer widgets were added)
Reimplemented from GUIEngine::Screen.
|
virtual |
Handle user input.
Implements GUIEngine::Screen.
|
virtual |
Called before the screen is shown.
It adds the screenshot icon, and initialises all widgets depending on GP mode (random or not), if a saved GP is available etc.
Reimplemented from GUIEngine::Screen.
|
virtual |
Called when the stkgui file is read.
It stores the pointer to various widgets and adds the right names for reverse mode.
Implements GUIEngine::Screen.
|
virtual |
Called every update.
Used to cycle the screenshots.
dt | Time step size. |
Reimplemented from GUIEngine::Screen.
void GPInfoScreen::setGP | ( | const std::string & | gp_ident | ) |
Sets the GP to be displayed.
If the identifier is 'random', no gp info will be loaded.
|
virtual |
Callback invoked when this screen is being unloaded.
Override this method in children classes if you need to be notified of this.
Reimplemented from GUIEngine::Screen.