SuperTuxKart
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
GPInfoScreen Class Reference

Dialog that shows information about a specific grand prix. More...

#include <gp_info_screen.hpp>

Inheritance diagram for GPInfoScreen:
Inheritance graph
[legend]

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. More...
 
virtual void init () OVERRIDE
 Called before the screen is shown. More...
 
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. More...
 
void setGP (const std::string &gp_ident)
 Sets the GP to be displayed. More...
 
- Public Member Functions inherited from GUIEngine::Screen
 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. More...
 
bool operator== (const char *filename) const
 
void loadFromFile ()
 loads this Screen from the file passed to the constructor
 
bool isLoaded () const
 
bool throttleFPS () const
 
void addWidgets ()
 Adds the IrrLicht widgets corresponding to this screen to the IGUIEnvironment.
 
void calculateLayout ()
 Called after all widgets have been added. More...
 
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. More...
 
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. More...
 
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. More...
 
virtual void unloaded ()
 Callback invoked when this screen is being unloaded. More...
 
void push ()
 Displays this screen bu pushing it onto the stack of screen in the state manager. More...
 
virtual void tearDown ()
 Callback invoked before leaving this menu. More...
 
virtual bool onEscapePressed ()
 Called when escape is pressed. More...
 
virtual void onDraw (float dt)
 optional callback you can override to be notified at every frame.
 
virtual MusicInformationgetMusic () const
 
virtual MusicInformationgetInGameMenuMusic () const
 
virtual int getWidth ()
 Implementing method from AbstractTopLevelContainer.
 
virtual int getHeight ()
 Implementing method from AbstractTopLevelContainer.
 
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. More...
 
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. More...
 
virtual void onFocusChanged (Widget *previous, Widget *focus, int playerID)
 Callback called when focus changes.
 
- Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer
WidgetgetWidget (const char *name)
 This function returns a widget by name if that widget is found. More...
 
WidgetgetWidget (const int id)
 This function returns a widget by irrlicht ID if that widget is found. More...
 
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. More...
 
WidgetgetFirstWidget (PtrVector< Widget > *within_vector=NULL)
 This function returns the first widget found in within_vector. More...
 
WidgetgetLastWidget (PtrVector< Widget > *within_vector=NULL)
 This function returns the last widget found in within_vector. More...
 
void elementsWereDeleted (PtrVector< Widget > *within_vector=NULL)
 This function is called when screen is removed. More...
 
bool isMyChild (Widget *widget) const
 This function checks if a widget is a child of the container. More...
 

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. More...
 
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. More...
 

Protected Attributes

float m_curr_time
 
GrandPrixData m_gp
 The grand prix data. More...
 
- Protected Attributes inherited from GUIEngine::Screen
bool m_throttle_FPS
 
- Protected Attributes inherited from GUIEngine::AbstractTopLevelContainer
PtrVector< Widget, HOLD > m_widgets
 the widgets in this screen
 
Widgetm_first_widget
 AbstractTopLevelContainer is generally able to determine its first widget just fine, but in highly complex screens (e.g. More...
 
Widgetm_last_widget
 AbstractTopLevelContainer is generally able to determine its last widget just fine, but in highly complex screens (e.g. More...
 

Private Member Functions

int getMaxNumTracks (std::string group)
 Get number of available tracks for random GPs.
 

Private Attributes

GUIEngine::SpinnerWidgetm_group_spinner
 Spinner for the different track groups. More...
 
GUIEngine::SpinnerWidgetm_reverse_spinner
 Spinner for reverse mode. More...
 
GUIEngine::SpinnerWidgetm_num_tracks_spinner
 Spinner for number of tracks (in case of random GP). More...
 
GUIEngine::SpinnerWidgetm_ai_kart_spinner
 Spinner for number of AI karts. More...
 
std::string m_group_name
 The currently selected group name. More...
 
std::vector< std::string > m_group_names
 The untranslated group names, used as internal IDs.
 
int m_max_num_tracks
 Number of available tracks.
 

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. More...
 
- Static Public Member Functions inherited from GUIEngine::AbstractTopLevelContainer
static WidgetgetWidget (const char *name, PtrVector< Widget > *within_vector)
 This function returns a widget by name if that widget is found in within_vector. More...
 
static WidgetgetWidget (const int id, PtrVector< Widget > *within_vector)
 This function returns a widget by irrlicht ID if that widget is found. More...
 
- Static Public Member Functions inherited from GUIEngine::ScreenSingleton< GPInfoScreen >
static GPInfoScreengetInstance ()
 
- Static Protected Attributes inherited from GUIEngine::ScreenSingleton< GPInfoScreen >
static GPInfoScreensingleton
 

Detailed Description

Dialog that shows information about a specific grand prix.

Member Function Documentation

◆ addTracks()

void GPInfoScreen::addTracks ( )
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.

◆ init()

void GPInfoScreen::init ( )
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.

◆ loadedFromFile()

void GPInfoScreen::loadedFromFile ( )
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.

◆ onUpdate()

void GPInfoScreen::onUpdate ( float  dt)
virtual

Called every update.

Used to cycle the screenshots.

Parameters
dtTime step size.

Reimplemented from GUIEngine::Screen.

◆ setGP()

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.

Member Data Documentation

◆ m_ai_kart_spinner

GUIEngine::SpinnerWidget* GPInfoScreen::m_ai_kart_spinner
private

Spinner for number of AI karts.

◆ m_gp

GrandPrixData GPInfoScreen::m_gp
protected

The grand prix data.

◆ m_group_name

std::string GPInfoScreen::m_group_name
private

The currently selected group name.

◆ m_group_spinner

GUIEngine::SpinnerWidget* GPInfoScreen::m_group_spinner
private

Spinner for the different track groups.

◆ m_num_tracks_spinner

GUIEngine::SpinnerWidget* GPInfoScreen::m_num_tracks_spinner
private

Spinner for number of tracks (in case of random GP).

◆ m_reverse_spinner

GUIEngine::SpinnerWidget* GPInfoScreen::m_reverse_spinner
private

Spinner for reverse mode.


The documentation for this class was generated from the following files: