The Battle for Wesnoth  1.17.0-dev
Public Member Functions | Private Member Functions | Private Attributes | List of all members
gui2::dialogs::unit_recruit Class Reference

#include <unit_recruit.hpp>

Inheritance diagram for gui2::dialogs::unit_recruit:

Public Member Functions

 unit_recruit (std::map< const unit_type *, t_string > &recruit_map, team &team)
 
const unit_typeget_selected_unit_type () const
 
- Public Member Functions inherited from gui2::dialogs::modal_dialog
 modal_dialog ()
 
virtual ~modal_dialog ()
 
bool show (const unsigned auto_close_time=0)
 Shows the window. More...
 
windowget_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_
 
teamteam_
 
int selected_index_
 
std::vector< std::string > last_words_
 

Additional Inherited Members

- Protected Member Functions inherited from gui2::dialogs::modal_dialog
field_boolregister_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_boolregister_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_integerregister_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_integerregister_integer (const std::string &id, const bool mandatory, int &linked_variable)
 Creates a new integer field. More...
 
field_textregister_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_textregister_text (const std::string &id, const bool mandatory, std::string &linked_variable, const bool capture_focus=false)
 Creates a new text field. More...
 
field_labelregister_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_labelregister_image (const std::string &id, const bool mandatory, const std::string &filename)
 Registers a new styled_widget as image. More...
 
- Protected Attributes inherited from gui2::dialogs::modal_dialog
std::unique_ptr< windowwindow_
 The window object build for this dialog. More...
 

Detailed Description

Definition at line 25 of file unit_recruit.hpp.

Constructor & Destructor Documentation

◆ unit_recruit()

gui2::dialogs::unit_recruit::unit_recruit ( std::map< const unit_type *, t_string > &  recruit_map,
team team 
)
Parameters
recruit_mapmaps unit typs to strings. The strings are "" if the unit can be recalled and an error message string otherwise.
teamthe team to recruit to.

Definition at line 43 of file unit_recruit.cpp.

References gui2::dialogs::inactive_row_color, sort(), t_string::str(), and unit_type::type_name().

Member Function Documentation

◆ filter_text_changed()

void gui2::dialogs::unit_recruit::filter_text_changed ( const std::string &  text)
private

◆ get_selected_unit_type()

const unit_type* gui2::dialogs::unit_recruit::get_selected_unit_type ( ) const
inline

◆ list_item_clicked()

void gui2::dialogs::unit_recruit::list_item_clicked ( )
private

Definition at line 163 of file unit_recruit.cpp.

References gui2::dialogs::modal_dialog::get_window(), and recruit_list_.

Referenced by get_selected_unit_type(), and pre_show().

◆ post_show()

void gui2::dialogs::unit_recruit::post_show ( window window)
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).

Parameters
windowThe window which has been shown.

Reimplemented from gui2::dialogs::modal_dialog.

Definition at line 181 of file unit_recruit.cpp.

References gui2::dialogs::modal_dialog::get_retval(), gui2::OK, and selected_index_.

Referenced by get_selected_unit_type().

◆ pre_show()

void gui2::dialogs::unit_recruit::pre_show ( window window)
overrideprivatevirtual

◆ show_help()

void gui2::dialogs::unit_recruit::show_help ( )
private

Definition at line 176 of file unit_recruit.cpp.

References help::show_help().

Referenced by get_selected_unit_type(), and pre_show().

◆ window_id()

virtual const std::string& gui2::dialogs::unit_recruit::window_id ( ) const
overrideprivatevirtual

The id of the window to build.

Implements gui2::dialogs::modal_dialog.

Referenced by get_selected_unit_type().

Member Data Documentation

◆ last_words_

std::vector<std::string> gui2::dialogs::unit_recruit::last_words_
private

Definition at line 58 of file unit_recruit.hpp.

Referenced by filter_text_changed().

◆ recruit_list_

std::vector<const unit_type*> gui2::dialogs::unit_recruit::recruit_list_
private

A vector of unit types in the order listed in the UI.

Used by unit_recruit::post_show.

Definition at line 51 of file unit_recruit.hpp.

Referenced by filter_text_changed(), get_selected_unit_type(), list_item_clicked(), and pre_show().

◆ recruit_map_

std::map<const unit_type*, t_string>& gui2::dialogs::unit_recruit::recruit_map_
private

Definition at line 52 of file unit_recruit.hpp.

Referenced by pre_show().

◆ selected_index_

int gui2::dialogs::unit_recruit::selected_index_
private

Definition at line 56 of file unit_recruit.hpp.

Referenced by get_selected_unit_type(), and post_show().

◆ team_

team& gui2::dialogs::unit_recruit::team_
private

Definition at line 54 of file unit_recruit.hpp.

Referenced by pre_show().


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