#include <multiplayer_connect.hpp>
Classes | |
struct | process_event_data |
class | side |
Public Types | |
typedef std::vector< side > | side_list |
Public Types inherited from mp::ui | |
enum | result { CONTINUE, JOIN, OBSERVE, CREATE, LOAD_GAME, PREFERENCES, PLAY, QUIT } |
enum | user_relation { ME, FRIEND, NEUTRAL, IGNORED } |
enum | user_state { LOBBY, GAME, SEL_GAME } |
Public Member Functions | |
connect (CVideo &v, twesnothd_connection *wesnothd_connection, const std::string &game_name, const config &game_config, chat &c, config &gamelist, ng::connect_engine &engine) | |
~connect () | |
void | start_game () |
void | start_game_commandline (const commandline_options &cmdline_opts) |
Public Member Functions inherited from mp::ui | |
ui (CVideo &v, twesnothd_connection *wesnothd_connection, const std::string &title, const config &cfg, chat &c, config &gamelist) | |
void | process_network () |
Asks the multiplayer_ui to pump some data from the network, and then to process it. More... | |
result | get_result () |
Returns the result of the current widget. More... | |
void | set_location (const SDL_Rect &rect) |
Hides children, moves them (using layout_children), then shows them. More... | |
const std::vector< std::string > & | user_list () const |
void | send_to_server (const config &cfg) override |
bool | receive_from_server (config &dst) |
plugins_context * | get_plugins_context () |
Public Member Functions inherited from gui::widget | |
SDL_Rect const & | location () const |
void | set_location (int x, int y) |
void | set_width (int w) |
void | set_height (int h) |
void | set_measurements (int w, int h) |
int | width () const |
int | height () const |
bool | focus (const SDL_Event *event) |
void | set_focus (bool focus) |
virtual void | hide (bool value=true) |
bool | hidden () const |
virtual void | enable (bool new_val=true) |
bool | enabled () const |
void | set_clip_rect (const SDL_Rect &rect) |
void | set_volatile (bool val=true) |
void | set_dirty (bool dirty=true) |
bool | dirty () const |
const std::string & | id () const |
void | set_id (const std::string &id) |
void | set_help_string (const std::string &str) |
void | set_tooltip_string (const std::string &str) |
virtual void | process_help_string (int mousex, int mousey) |
virtual void | process_tooltip_string (int mousex, int mousey) |
Public Member Functions inherited from events::sdl_handler | |
virtual bool | requires_event_focus (const SDL_Event *=nullptr) const |
virtual void | join () |
virtual void | join (context &c) |
virtual void | join_same (sdl_handler *parent) |
virtual void | leave () |
virtual void | join_global () |
virtual void | leave_global () |
Protected Member Functions | |
virtual void | process_event () |
virtual void | layout_children (const SDL_Rect &rect) |
Lays the children out. More... | |
virtual void | hide_children (bool hide=true) |
Hides or shows all gui::widget children of this widget. More... | |
virtual void | process_network_data (const config &data) |
Processes any pending network data. More... | |
Protected Member Functions inherited from mp::ui | |
int | xscale (int x) const |
int | yscale (int y) const |
SDL_Rect | client_area () const |
CVideo & | video () |
const config & | game_config () const |
Returns the main game config, as defined by loading the preprocessed WML files. More... | |
virtual void | draw_contents () |
virtual void | handle_event (const SDL_Event &event) |
virtual void | handle_key_event (const SDL_KeyboardEvent &event) |
void | add_chat_message (const time_t &time, const std::string &speaker, int side, const std::string &message, events::chat_handler::MESSAGE_TYPE type=events::chat_handler::MESSAGE_PRIVATE) |
Override chat_handler. More... | |
void | send_chat_message (const std::string &message, bool allies_only=false) |
void | process_message (const config &msg, const bool whisper=false) |
Process chat messages. More... | |
result | set_result (result res) |
Sets the result of this dialog, to be checked by get_result(). More... | |
void | set_selected_game (const std::string &game_name) |
Sets the name of the selected game which is used to highlight the names of the players which have joined this game. More... | |
virtual void | gamelist_updated (bool silent=true) |
Called each time the gamelist_ variable is updated. More... | |
void | set_user_list (const std::vector< std::string > &, bool silent) |
Sets the user list. More... | |
void | set_user_menu_items (const std::vector< std::string > &list) |
config & | gamelist () |
Returns the current gamelist. More... | |
void | append_to_title (const std::string &name) |
const gui::label & | title () const |
std::string | get_selected_user_game () |
bool | selected_user_changed () const |
void | set_selected_user_changed (const bool &changed) |
Protected Member Functions inherited from gui::widget | |
widget (widget const &o) | |
widget (CVideo &video, const bool auto_join=true) | |
virtual | ~widget () |
void | bg_register (SDL_Rect const &rect) |
void | bg_restore () const |
void | bg_restore (SDL_Rect const &rect) const |
void | bg_update () |
void | bg_cancel () |
CVideo & | video () const |
virtual void | draw () |
virtual void | update_location (SDL_Rect const &rect) |
const SDL_Rect * | clip_rect () const |
virtual sdl_handler_vector | member_handlers () |
virtual void | handle_window_event (SDL_Event const &event) |
bool | mouse_locked () const |
void | aquire_mouse_lock () |
void | free_mouse_lock () |
Protected Member Functions inherited from events::sdl_handler | |
sdl_handler (const bool auto_join=true) | |
virtual | ~sdl_handler () |
virtual std::vector < sdl_handler * > | handler_members () |
Private Member Functions | |
connect (const connect &) | |
void | operator= (const connect &) |
void | update_playerlist_state (bool silent=true) |
const mp_game_settings & | params () |
bool | force_lock_settings () const |
void | process_event_impl (const process_event_data &) |
bool | plugin_event_helper (const process_event_data &) |
Additional Inherited Members | |
Protected Attributes inherited from mp::ui | |
CVideo & | video_ |
twesnothd_connection * | wesnothd_connection_ |
boost::scoped_ptr < plugins_context > | plugins_context_ |
Protected Attributes inherited from gui::widget | |
bool | focus_ |
Static Protected Attributes inherited from mp::ui | |
static const int | xscale_base = 1024 |
static const int | yscale_base = 768 |
Definition at line 38 of file multiplayer_connect.hpp.
typedef std::vector<side> mp::connect::side_list |
Definition at line 93 of file multiplayer_connect.hpp.
mp::connect::connect | ( | CVideo & | v, |
twesnothd_connection * | wesnothd_connection, | ||
const std::string & | game_name, | ||
const config & | game_config, | ||
chat & | c, | ||
config & | gamelist, | ||
ng::connect_engine & | engine | ||
) |
Definition at line 366 of file multiplayer_connect.cpp.
References _(), ai_algorithms_, mp::ui::append_to_title(), mp::ui::CREATE, DBG_MP, game_config::debug, config::empty(), engine_, error(), ai::configuration::get_available_ais(), mp::ui::get_result(), get_str, gold_title_label_, gui::widget::hide(), income_title_label_, ng::connect_engine::level(), params(), plugin_event_helper(), mp::ui::plugins_context_, mp::ui::QUIT, ng::connect_engine::scenario(), scroll_pane_, mp::ui::send_chat_message(), mp::ui::set_result(), ng::connect_engine::side_engines(), sides_, and update_playerlist_state().
mp::connect::~connect | ( | ) |
Definition at line 442 of file multiplayer_connect.cpp.
|
private |
|
inlineprivate |
Definition at line 123 of file multiplayer_connect.hpp.
References engine_, and ng::connect_engine::force_lock_settings().
|
protectedvirtual |
Hides or shows all gui::widget children of this widget.
Should be overridden by subclasses which add their own children.
Reimplemented from mp::ui.
Definition at line 497 of file multiplayer_connect.cpp.
References cancel_, DBG_MP, faction_name_title_label_, gold_title_label_, gui::widget::hide(), gui::scrollpane::hide(), mp::ui::hide_children(), income_title_label_, launch_, leader_gender_title_label_, params(), scroll_pane_, team_color_title_label_, and waiting_label_.
|
protectedvirtual |
Lays the children out.
This method is to be overridden by the subclasses of the mp_ui class; it will be called.
Reimplemented from mp::ui.
Definition at line 520 of file multiplayer_connect.cpp.
References gui::ButtonHPadding, gui::ButtonVPadding, cancel_, mp::ui::client_area(), faction_name_title_label_, gold_title_label_, gui::widget::height(), income_title_label_, launch_, mp::ui::layout_children(), leader_gender_title_label_, gui::widget::location(), right, scroll_pane_, gui::widget::set_location(), gui::scrollpane::set_location(), swap(), team_color_title_label_, type_title_label_, waiting_label_, and gui::widget::width().
|
inlineprivate |
Definition at line 122 of file multiplayer_connect.hpp.
References engine_, and ng::connect_engine::params().
Referenced by connect(), hide_children(), and mp::connect::side::side().
|
private |
Definition at line 446 of file multiplayer_connect.cpp.
References mp::ui::CONTINUE, mp::ui::get_result(), and process_event_impl().
Referenced by connect().
|
protectedvirtual |
Reimplemented from mp::ui.
Definition at line 452 of file multiplayer_connect.cpp.
References cancel_, mp::connect::process_event_data::launch, launch_, gui::button::pressed(), process_event_impl(), and mp::connect::process_event_data::quit.
|
private |
Definition at line 461 of file multiplayer_connect.cpp.
References config::add_child(), ng::connect_engine::can_start_game(), engine_, mp::connect::process_event_data::launch, mp::ui::PLAY, mp::ui::QUIT, mp::connect::process_event_data::quit, mp::ui::send_to_server(), mp::ui::set_result(), sides_, ng::connect_engine::update_and_send_diff(), update_playerlist_state(), and mp::ui::wesnothd_connection_.
Referenced by plugin_event_helper(), and process_event().
Processes any pending network data.
Called by the public process_network() method. Overridden by subclasses who add more behavior for network.
Reimplemented from mp::ui.
Definition at line 563 of file multiplayer_connect.cpp.
References ng::connect_engine::can_start_game(), DBG_MP, engine_, ng::connect_engine::process_network_data(), mp::ui::process_network_data(), mp::ui::QUIT, mp_ui_alerts::ready_for_start(), mp::ui::set_result(), sides_, and update_playerlist_state().
|
inline |
Definition at line 102 of file multiplayer_connect.hpp.
References engine_, and ng::connect_engine::start_game().
Referenced by mp::goto_mp_connect().
|
inline |
Definition at line 103 of file multiplayer_connect.hpp.
References engine_, and ng::connect_engine::start_game_commandline().
Referenced by mp::start_local_game_commandline().
|
private |
Definition at line 585 of file multiplayer_connect.cpp.
References _(), ng::connect_engine::can_start_game(), config::child(), ng::connect_engine::connected_users(), DBG_MP, gui::button::enable(), engine_, mp::ui::gamelist(), mp::ui::gamelist_updated(), launch_, gui::label::set_text(), mp::ui::set_user_list(), mp::ui::set_user_menu_items(), ng::connect_engine::sides_available(), and waiting_label_.
Referenced by connect(), process_event_impl(), and process_network_data().
|
private |
Definition at line 125 of file multiplayer_connect.hpp.
Referenced by connect().
|
private |
Definition at line 139 of file multiplayer_connect.hpp.
Referenced by hide_children(), layout_children(), and process_event().
|
private |
Definition at line 140 of file multiplayer_connect.hpp.
|
private |
Definition at line 128 of file multiplayer_connect.hpp.
Referenced by connect(), force_lock_settings(), params(), mp::connect::side::process_event(), process_event_impl(), process_network_data(), start_game(), start_game_commandline(), mp::connect::side::update_controller_ui(), mp::connect::side::update_faction_combo(), update_playerlist_state(), and mp::connect::side::update_ui().
|
private |
Definition at line 132 of file multiplayer_connect.hpp.
Referenced by hide_children(), and layout_children().
|
private |
Definition at line 135 of file multiplayer_connect.hpp.
Referenced by connect(), hide_children(), and layout_children().
|
private |
Definition at line 136 of file multiplayer_connect.hpp.
Referenced by connect(), hide_children(), and layout_children().
|
private |
Definition at line 138 of file multiplayer_connect.hpp.
Referenced by hide_children(), layout_children(), process_event(), and update_playerlist_state().
|
private |
Definition at line 133 of file multiplayer_connect.hpp.
Referenced by hide_children(), and layout_children().
|
private |
Definition at line 137 of file multiplayer_connect.hpp.
Referenced by connect(), hide_children(), and layout_children().
|
private |
Definition at line 127 of file multiplayer_connect.hpp.
Referenced by connect(), process_event_impl(), and process_network_data().
|
private |
Definition at line 134 of file multiplayer_connect.hpp.
Referenced by hide_children(), and layout_children().
|
private |
Definition at line 131 of file multiplayer_connect.hpp.
Referenced by layout_children().
|
private |
Definition at line 130 of file multiplayer_connect.hpp.
Referenced by hide_children(), layout_children(), and update_playerlist_state().