The Battle for Wesnoth  1.15.0+dev
Public Member Functions | Private Member Functions | Private Attributes | List of all members
gui2::dialogs::statistics_dialog Class Reference

#include <statistics_dialog.hpp>

Inheritance diagram for gui2::dialogs::statistics_dialog:
Inheritance graph

Public Member Functions

 statistics_dialog (const team &current_team)
 
- 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
 
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
 Inherited from modal_dialog, implemented by REGISTER_DIALOG. More...
 
virtual void pre_show (window &window) override
 Inherited from modal_dialog. More...
 
const statistics::statscurrent_stats ()
 Picks out the stats structure that was selected for displaying. More...
 
void add_stat_row (window &window, const std::string &type, const statistics::stats::str_int_map &value, const bool has_cost=true)
 
void add_damage_row (window &window, const std::string &type, const long long &damage, const long long &expected, const long long &turn_damage, const long long &turn_expected, const bool show_this_turn)
 Add a row to the Damage table. More...
 
void add_hits_row (window &window, const std::string &type, const bool more_is_better, const statistics::stats::hitrate_map &by_cth, const statistics::stats::hitrate_map &turn_by_cth, const bool show_this_turn)
 Add a row to the Hits table. More...
 
void update_lists (window &window)
 
void on_primary_list_select (window &window)
 
void on_scenario_select (window &window)
 

Private Attributes

const teamcurrent_team_
 
const statistics::stats campaign_
 
const statistics::levels scenarios_
 
std::size_t selection_index_
 
std::vector< const statistics::stats::str_int_map * > main_stat_table_
 

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 27 of file statistics_dialog.hpp.

Constructor & Destructor Documentation

◆ statistics_dialog()

gui2::dialogs::statistics_dialog::statistics_dialog ( const team current_team)

Definition at line 58 of file statistics_dialog.cpp.

Member Function Documentation

◆ add_damage_row()

void gui2::dialogs::statistics_dialog::add_damage_row ( window window,
const std::string &  type,
const long long &  damage,
const long long &  expected,
const long long &  turn_damage,
const long long &  turn_expected,
const bool  show_this_turn 
)
private

◆ add_hits_row()

void gui2::dialogs::statistics_dialog::add_hits_row ( window window,
const std::string &  type,
const bool  more_is_better,
const statistics::stats::hitrate_map by_cth,
const statistics::stats::hitrate_map turn_by_cth,
const bool  show_this_turn 
)
private

Add a row to the Hits table.

Parameters
more_is_betterTrue for "Inflicted" and false for "Taken". Affects coloring.

Definition at line 309 of file statistics_dialog.cpp.

References _(), gui2::listbox::add_row(), gui2::dialogs::hitrate_table_element::hitrate_str, gui2::dialogs::hitrate_table_element::pvalue_str, gui2::styled_widget::set_label(), gui2::dialogs::tally(), and gui2::dialogs::hitrate_table_element::tooltip.

Referenced by update_lists().

◆ add_stat_row()

void gui2::dialogs::statistics_dialog::add_stat_row ( window window,
const std::string &  type,
const statistics::stats::str_int_map value,
const bool  has_cost = true 
)
private

◆ current_stats()

const statistics::stats & gui2::dialogs::statistics_dialog::current_stats ( )
inlineprivate

Picks out the stats structure that was selected for displaying.

Definition at line 106 of file statistics_dialog.cpp.

References campaign_, scenarios_, and selection_index_.

Referenced by update_lists().

◆ on_primary_list_select()

void gui2::dialogs::statistics_dialog::on_primary_list_select ( window window)
private

◆ on_scenario_select()

void gui2::dialogs::statistics_dialog::on_scenario_select ( window window)
private

Definition at line 425 of file statistics_dialog.cpp.

References selection_index_, and update_lists().

Referenced by pre_show().

◆ pre_show()

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

◆ update_lists()

void gui2::dialogs::statistics_dialog::update_lists ( window window)
private

◆ window_id()

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

Inherited from modal_dialog, implemented by REGISTER_DIALOG.

Implements gui2::dialogs::modal_dialog.

Member Data Documentation

◆ campaign_

const statistics::stats gui2::dialogs::statistics_dialog::campaign_
private

Definition at line 76 of file statistics_dialog.hpp.

Referenced by current_stats().

◆ current_team_

const team& gui2::dialogs::statistics_dialog::current_team_
private

Definition at line 74 of file statistics_dialog.hpp.

Referenced by on_primary_list_select(), and pre_show().

◆ main_stat_table_

std::vector<const statistics::stats::str_int_map*> gui2::dialogs::statistics_dialog::main_stat_table_
private

Definition at line 81 of file statistics_dialog.hpp.

Referenced by add_stat_row(), on_primary_list_select(), and update_lists().

◆ scenarios_

const statistics::levels gui2::dialogs::statistics_dialog::scenarios_
private

Definition at line 77 of file statistics_dialog.hpp.

Referenced by current_stats(), pre_show(), and update_lists().

◆ selection_index_

std::size_t gui2::dialogs::statistics_dialog::selection_index_
private

Definition at line 79 of file statistics_dialog.hpp.

Referenced by current_stats(), on_scenario_select(), pre_show(), and update_lists().


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