SuperTuxKart
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
AddonsScreen Class Reference

Addons screen. More...

#include <addons_screen.hpp>

Inheritance diagram for AddonsScreen:
Inheritance graph
[legend]

Public Member Functions

void loadList ()
 Load the addons into the main list. More...
 
virtual void loadedFromFile () OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
virtual void unloaded () OVERRIDE
 Callback invoked when this screen is being unloaded. More...
 
virtual void eventCallback (GUIEngine::Widget *widget, const std::string &name, const int playerID) OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
virtual void beforeAddingWidget () OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
virtual void onColumnClicked (int column_id, bool sort_desc, bool sort_default) OVERRIDE
 
virtual void init () OVERRIDE
 Callback invoked when entering this menu (after the widgets have been added). More...
 
virtual void tearDown () OVERRIDE
 Callback invoked before leaving this menu. More...
 
virtual void onUpdate (float dt) OVERRIDE
 implement callback from parent class GUIEngine::Screen
 
void setLastSelected ()
 Selects the last selected item on the list (which is the item that is just being installed) again. 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...
 
void push ()
 Displays this screen bu pushing it onto the stack of screen in the state manager. 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...
 

Private Member Functions

void loadInformations ()
 

Private Attributes

AddonsLoadingm_load
 
int m_icon_needs_update
 Icon for installed addon, which can be updated. More...
 
int m_icon_installed
 Icon for installed addons, no update available. More...
 
int m_icon_not_installed
 Icon for is not installed yet. More...
 
int m_icon_loading
 Icon for 'loading'.
 
irr::gui::STKModifiedSpriteBank * m_icon_bank
 
GUIEngine::LabelWidgetm_update_status
 
std::string m_type
 Currently selected type. More...
 
int m_selected_index
 The currently selected index, used to re-select this item after addons_loading is being displayed. More...
 
float m_icon_height
 
bool m_reloading
 
bool m_sort_desc
 
std::vector< DateFilterm_date_filters
 List of date filters.
 

Friends

class GUIEngine::ScreenSingleton< AddonsScreen >
 

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< AddonsScreen >
static AddonsScreengetInstance ()
 
- 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 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...
 
- Static Protected Attributes inherited from GUIEngine::ScreenSingleton< AddonsScreen >
static AddonsScreensingleton
 

Detailed Description

Addons screen.

Member Function Documentation

◆ init()

void AddonsScreen::init ( )
virtual

Callback invoked when entering this menu (after the widgets have been added).

Initialisation before the object is displayed.

Note
The same instance of your object may be entered/left more than once, so make sure that one instance of your object can be used several times if the same screen is visited several times.

If necessary this function will pause the race if it is running (i.e. world exists). While only some of the screen can be shown during the race (via the in-game menu you can get the options screen and the help screens only). This is used by the RaceResultGUI to leave the race running (for the end animation) while the results are being shown.

Reimplemented from GUIEngine::Screen.

◆ loadList()

void AddonsScreen::loadList ( )

Load the addons into the main list.

Loads the list of all addons of the given type.

The gui element will be updated.

◆ onColumnClicked()

void AddonsScreen::onColumnClicked ( int  column_id,
bool  sort_desc,
bool  sort_default 
)
virtual

Toggle the sort order after column click

Implements GUIEngine::IListWidgetHeaderListener.

◆ setLastSelected()

void AddonsScreen::setLastSelected ( )

Selects the last selected item on the list (which is the item that is just being installed) again.

This function is used from the addons_loading screen: when it is closed, it will reset the select item so that people can keep on installing from that point on.

◆ tearDown()

void AddonsScreen::tearDown ( )
virtual

Callback invoked before leaving this menu.

Prepares removal of this screen.

Note
The same instance of your object may be entered/left more than once, so make sure that one instance of your object can be used several times if the same screen is visited several times.

If necessary this will unpause the race (so this means that if you have several consecutive screens while the race is running the race will be unpaused and paused when switching from one screen to the next.

Reimplemented from GUIEngine::Screen.

◆ unloaded()

void AddonsScreen::unloaded ( )
virtual

Callback invoked when this screen is being unloaded.

Override this method in children classes if you need to be notified of this.

Note
A Screen object instance may be unloaded then loaded back at will.
An unloaded Screen object does not have its children widgets anymore, it only retains its members (most importantly the path to its GUI file) so that it can be loaded back later.

Reimplemented from GUIEngine::Screen.

Member Data Documentation

◆ m_icon_installed

int AddonsScreen::m_icon_installed
private

Icon for installed addons, no update available.

◆ m_icon_needs_update

int AddonsScreen::m_icon_needs_update
private

Icon for installed addon, which can be updated.

◆ m_icon_not_installed

int AddonsScreen::m_icon_not_installed
private

Icon for is not installed yet.

◆ m_selected_index

int AddonsScreen::m_selected_index
private

The currently selected index, used to re-select this item after addons_loading is being displayed.

◆ m_type

std::string AddonsScreen::m_type
private

Currently selected type.


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