This class implements the title screen. More...
#include <title_screen.hpp>
Public Types | |
enum | tresult { TUTORIAL = 1, NEW_CAMPAIGN, DOWNLOAD_CAMPAIGN, MULTIPLAYER, LOAD_GAME, GET_ADDONS, CORES, START_MAP_EDITOR, CHANGE_LANGUAGE, EDIT_PREFERENCES, SHOW_ABOUT, QUIT_GAME, TIP_PREVIOUS, TIP_NEXT, SHOW_HELP, REDRAW_BACKGROUND, RELOAD_GAME_DATA, NOTHING } |
Values for the menu-items of the main menu. More... | |
Public Member Functions | |
ttitle_screen () | |
~ttitle_screen () | |
Public Member Functions inherited from gui2::tdialog | |
tdialog () | |
virtual | ~tdialog () |
bool | show (CVideo &video, const unsigned auto_close_time=0) |
Shows the window. More... | |
int | get_retval () const |
void | set_always_save_fields (const bool always_save_fields) |
void | set_restore (const bool restore) |
Private Member Functions | |
virtual const std::string & | window_id () const |
Inherited from tdialog, implemented by REGISTER_DIALOG. More... | |
virtual void | post_build (twindow &window) |
Inherited from tdialog. More... | |
void | pre_show (twindow &window) |
Inherited from tdialog. More... | |
void | update_tip (twindow &window, const bool previous) |
Updates the tip of day widget. More... | |
void | show_debug_clock_window (CVideo &video) |
Shows the debug clock. More... | |
Private Attributes | |
tpopup * | debug_clock_ |
Holds the debug clock dialog. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from gui2::tdialog | |
tfield_bool * | register_bool (const std::string &id, const bool mandatory, const std::function< bool()> &callback_load_value=std::function< bool()>(), const std::function< void(const bool)> &callback_save_value=std::function< void(const bool)>(), const std::function< void(twidget &)> &callback_change=std::function< void(twidget &)>()) |
Creates a new boolean field. More... | |
tfield_bool * | register_bool (const std::string &id, const bool mandatory, bool &linked_variable, const std::function< void(twidget &)> &callback_change=std::function< void(twidget &)>()) |
Creates a new boolean field. More... | |
tfield_integer * | register_integer (const std::string &id, const bool mandatory, const std::function< int()> &callback_load_value=std::function< int()>(), const std::function< void(const int)> &callback_save_value=std::function< void(const int)>()) |
Creates a new integer field. More... | |
tfield_integer * | register_integer (const std::string &id, const bool mandatory, int &linked_variable) |
Creates a new integer field. More... | |
tfield_text * | register_text (const std::string &id, const bool mandatory, const std::function< std::string()> &callback_load_value=std::function< std::string()>(), const std::function< void(const std::string &)> &callback_save_value=std::function< void(const std::string &)>(), const bool capture_focus=false) |
Creates a new text field. More... | |
tfield_text * | register_text (const std::string &id, const bool mandatory, std::string &linked_variable, const bool capture_focus=false) |
Creates a new text field. More... | |
tfield_label * | register_label (const std::string &id, const bool mandatory, const std::string &text, const bool use_markup=false) |
Registers a new control as a label. More... | |
tfield_label * | register_image (const std::string &id, const bool mandatory, const std::string &filename) |
Registers a new control as image. More... | |
This class implements the title screen.
The menu buttons return a result back to the caller with the button pressed. So at the moment it only handles the tips itself.
Definition at line 36 of file title_screen.hpp.
Values for the menu-items of the main menu.
Definition at line 48 of file title_screen.hpp.
gui2::ttitle_screen::ttitle_screen | ( | ) |
Definition at line 134 of file title_screen.cpp.
gui2::ttitle_screen::~ttitle_screen | ( | ) |
Definition at line 138 of file title_screen.cpp.
References debug_clock_.
Inherited from tdialog.
Reimplemented from gui2::tdialog.
Definition at line 157 of file title_screen.cpp.
References CHANGE_LANGUAGE, CORES, EDIT_PREFERENCES, gui2::fullscreen(), gui2::function_wrapper(), GET_ADDONS, hotkey::HOTKEY_FULLSCREEN, hotkey::HOTKEY_HELP, hotkey::HOTKEY_LANGUAGE, hotkey::HOTKEY_LOAD_GAME, hotkey::HOTKEY_PREFERENCES, hotkey::HOTKEY_QUIT_TO_DESKTOP, gui2::launch_lua_console(), LOAD_GAME, hotkey::LUA_CONSOLE, MULTIPLAYER, NEW_CAMPAIGN, QUIT_GAME, gui2::event::tdispatcher::register_hotkey(), RELOAD_GAME_DATA, SHOW_ABOUT, SHOW_HELP, START_MAP_EDITOR, hotkey::TITLE_SCREEN__ADDONS, hotkey::TITLE_SCREEN__CAMPAIGN, hotkey::TITLE_SCREEN__CORES, hotkey::TITLE_SCREEN__CREDITS, hotkey::TITLE_SCREEN__EDITOR, hotkey::TITLE_SCREEN__MULTIPLAYER, hotkey::TITLE_SCREEN__NEXT_TIP, hotkey::TITLE_SCREEN__PREVIOUS_TIP, hotkey::TITLE_SCREEN__RELOAD_WML, hotkey::TITLE_SCREEN__TUTORIAL, TUTORIAL, update_tip(), and gui2::twindow::video().
Inherited from tdialog.
Reimplemented from gui2::tdialog.
Definition at line 259 of file title_screen.cpp.
References _(), gui2::tmulti_page::add_page(), gui2::tcontrol::canvas(), gui2::event::tdispatcher::connect_signal(), gui2::event::connect_signal_mouse_left_click(), gui2::tgame_version::display(), ERR_CF, gui2::event::tdispatcher::front_child, game_config::images::game_title, game_config::images::game_title_background, gui2::settings::get_tips(), gui2::twidget::tvisible::invisible, game_config::revision, gui2::event::SDL_MOUSE_MOTION, gui2::twindow::set_click_dismiss(), gui2::twindow::set_enter_disabled(), gui2::twindow::set_escape_disabled(), gui2::tdialog::set_restore(), gui2::twidget::set_visible(), gui2::show_debug_clock_button, show_debug_clock_window(), gui2::ttip::source(), gui2::ttip::text(), gui2::tip::tip(), gui2::settings::tips, update_tip(), gui2::twidget::tvisible::visible, and WRN_CF.
Shows the debug clock.
Definition at line 390 of file title_screen.cpp.
References debug_clock_, gui2::tpopup::show(), and gui2::show_debug_clock_button.
Referenced by pre_show().
Updates the tip of day widget.
window | The window being shown. |
previous | Show the previous tip, else shows the next one. |
This dirtying is required to avoid the blurring to be rendered wrong. Not entirely sure why, but since we plan to move to SDL2 that change will probably fix this issue automatically.
Definition at line 359 of file title_screen.cpp.
References gui2::tmulti_page::get_page_count(), gui2::tmulti_page::get_selected_page(), gui2::tmulti_page::select_page(), and gui2::settings::tips.
Referenced by post_build(), and pre_show().
|
privatevirtual |
Inherited from tdialog, implemented by REGISTER_DIALOG.
Implements gui2::tdialog.
|
private |
Holds the debug clock dialog.
Definition at line 95 of file title_screen.hpp.
Referenced by show_debug_clock_window(), and ~ttitle_screen().