#include <unit_recruit.hpp>
Public Member Functions | |
unit_recruit (std::map< const unit_type *, t_string > &recruit_map, team &team) | |
const unit_type * | get_selected_unit_type () const |
![]() | |
modal_dialog () | |
virtual | ~modal_dialog () |
bool | show (const unsigned auto_close_time=0) |
Shows the window. More... | |
window * | get_window () const |
Returns a pointer to the dialog's window. More... | |
int | get_retval () const |
Returns the cached window exit code. More... | |
void | set_retval (int retval) |
Convenience wrapper to set the window's exit code. More... | |
void | set_always_save_fields (const bool always_save_fields) |
void | set_restore (const bool restore) |
void | set_allow_plugin_skip (const bool allow_plugin_skip) |
void | set_show_even_without_video (const bool show_even_without_video) |
Private Member Functions | |
virtual const std::string & | window_id () const override |
The id of the window to build. More... | |
virtual void | pre_show (window &window) override |
Actions to be taken before showing the window. More... | |
virtual void | post_show (window &window) override |
Actions to be taken after the window has been shown. More... | |
void | list_item_clicked () |
void | filter_text_changed (const std::string &text) |
void | show_help () |
Private Attributes | |
std::vector< const unit_type * > | recruit_list_ |
A vector of unit types in the order listed in the UI. More... | |
std::map< const unit_type *, t_string > & | recruit_map_ |
team & | team_ |
int | selected_index_ |
std::vector< std::string > | last_words_ |
Additional Inherited Members | |
![]() | |
template<typename T , typename... Args> | |
T * | register_field (Args &&... args) |
Creates a new field of given type with given arguments. More... | |
field_bool * | register_bool (const std::string &id, const bool mandatory, const std::function< bool()> callback_load_value=nullptr, const std::function< void(bool)> callback_save_value=nullptr, const std::function< void(widget &)> callback_change=nullptr, const bool initial_fire=false) |
Creates a new boolean field. More... | |
field_bool * | register_bool (const std::string &id, const bool mandatory, bool &linked_variable, const std::function< void(widget &)> callback_change=nullptr, const bool initial_fire=false) |
Creates a new boolean field. More... | |
field_integer * | register_integer (const std::string &id, const bool mandatory, const std::function< int()> callback_load_value=nullptr, const std::function< void(int)> callback_save_value=nullptr) |
Creates a new integer field. More... | |
field_integer * | register_integer (const std::string &id, const bool mandatory, int &linked_variable) |
Creates a new integer field. More... | |
field_text * | register_text (const std::string &id, const bool mandatory, const std::function< std::string()> callback_load_value=nullptr, const std::function< void(const std::string &)> callback_save_value=nullptr, const bool capture_focus=false) |
Creates a new text field. More... | |
field_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... | |
field_label * | register_label (const std::string &id, const bool mandatory, const std::string &text, const bool use_markup=false) |
Registers a new styled_widget as a label. More... | |
field_label * | register_image (const std::string &id, const bool mandatory, const std::string &filename) |
Registers a new styled_widget as image. More... | |
![]() | |
std::unique_ptr< window > | window_ |
The window object build for this dialog. More... | |
Definition at line 26 of file unit_recruit.hpp.
gui2::dialogs::unit_recruit::unit_recruit | ( | std::map< const unit_type *, t_string > & | recruit_map, |
team & | team | ||
) |
recruit_map | maps unit typs to strings. The strings are "" if the unit can be recalled and an error message string otherwise. |
team | the team to recruit to. |
Definition at line 44 of file unit_recruit.cpp.
References gui2::dialogs::inactive_row_color, t_string::str(), and unit_type::type_name().
|
private |
Definition at line 68 of file unit_recruit.cpp.
References translation::ci_search(), game_config::debug, gui2::listbox::get_item_count(), gui2::dialogs::modal_dialog::get_window(), i, last_words_, recruit_list_, gui2::listbox::set_row_shown(), and utils::split().
Referenced by get_selected_unit_type(), and pre_show().
|
inline |
Definition at line 35 of file unit_recruit.hpp.
References filter_text_changed(), list_item_clicked(), post_show(), pre_show(), recruit_list_, selected_index_, show_help(), and window_id().
Referenced by events::menu_handler::recruit().
|
private |
Definition at line 164 of file unit_recruit.cpp.
References gui2::dialogs::modal_dialog::get_window(), and recruit_list_.
Referenced by get_selected_unit_type(), and pre_show().
|
overrideprivatevirtual |
Actions to be taken after the window has been shown.
At this point the registered fields already stored their values (if the OK has been pressed).
window | The window which has been shown. |
Reimplemented from gui2::dialogs::modal_dialog.
Definition at line 182 of file unit_recruit.cpp.
References gui2::dialogs::modal_dialog::get_retval(), gui2::OK, and selected_index_.
Referenced by get_selected_unit_type().
|
overrideprivatevirtual |
Actions to be taken before showing the window.
At this point the registered fields are registered and initialized with their initial values.
window | The window to be shown. |
Reimplemented from gui2::dialogs::modal_dialog.
Definition at line 108 of file unit_recruit.cpp.
References gui2::listbox::add_row(), team::color(), gui2::event::connect_signal_mouse_left_click(), gui2::event::connect_signal_notify_modified(), t_string::empty(), filter_text_changed(), gui2::grid::find(), gui2::image::get_image(), gui2::dialogs::gray_if_unrecruitable(), list_item_clicked(), recruit_list_, recruit_map_, gui2::image::set_image(), gui2::text_box_base::set_text_changed_callback(), show_help(), and team_.
Referenced by get_selected_unit_type().
|
private |
Definition at line 177 of file unit_recruit.cpp.
References help::show_help().
Referenced by get_selected_unit_type(), and pre_show().
|
overrideprivatevirtual |
The id of the window to build.
Implements gui2::dialogs::modal_dialog.
Referenced by get_selected_unit_type().
|
private |
Definition at line 59 of file unit_recruit.hpp.
Referenced by filter_text_changed().
|
private |
A vector of unit types in the order listed in the UI.
Used by unit_recruit::post_show.
Definition at line 52 of file unit_recruit.hpp.
Referenced by filter_text_changed(), get_selected_unit_type(), list_item_clicked(), and pre_show().
Definition at line 53 of file unit_recruit.hpp.
Referenced by pre_show().
|
private |
Definition at line 57 of file unit_recruit.hpp.
Referenced by get_selected_unit_type(), and post_show().
|
private |
Definition at line 55 of file unit_recruit.hpp.
Referenced by pre_show().