Freeciv-3.2: help_widget Class Reference

Freeciv-3.2

Loading...
Searching...
No Matches
Public Slots | Public Member Functions | Private Slots | Private Member Functions | Private Attributes
help_widget Class Reference

`#include <helpdlg.h>`

Inheritance diagram for help_widget:

## Public Slots

void | set_topic (const help_item *item)

## Public Member Functions

| help_widget (QWidget *parent=0)
| help_widget (const help_item *item, QWidget *parent=0)
| ~help_widget ()
void | update_fonts ()
struct terrain * | terrain_max_values ()
struct unit_type * | uclass_max_values (struct unit_class *uclass)

## Private Slots

void | anchor_clicked (const QString &link)

## Private Member Functions

void | setup_ui ()
void | set_main_widget (QWidget *main_widget)
void | do_layout (bool horizontal)
void | undo_layout ()
void | show_info_panel ()
void | add_info_pixmap (QPixmap *pm, bool shadow=false)
void | add_info_label (const QString &text)
void | add_info_progress (const QString &label, int progress, int min, int max, const QString &value=QString())
void | add_extras_of_act_for_terrain (struct terrain *pterr, enum unit_activity act, const char *label)
void | add_info_separator ()
void | add_info_widget (QWidget *widget)
void | info_panel_done ()
void | set_bottom_panel (QWidget *widget)
QLayout * | create_terrain_widget (const QString &title, const struct canvas *image, const QString &legend, const QString &tooltip=QString())
void | set_topic_other (const help_item *item, const char *title)
void | set_topic_any (const help_item *item, const char *title)
void | set_topic_text (const help_item *item, const char *title)
void | set_topic_unit (const help_item *item, const char *title)
void | set_topic_building (const help_item *item, const char *title)
void | set_topic_tech (const help_item *item, const char *title)
void | set_topic_terrain (const help_item *item, const char *title)
bool | set_topic_extra (const help_item *item, const char *title)
void | set_topic_specialist (const help_item *item, const char *title)
void | set_topic_government (const help_item *item, const char *title)
void | set_topic_nation (const help_item *item, const char *title)
void | set_topic_goods (const help_item *item, const char *title)
QString | link_me (const char *str, help_page_type hpt)

## Private Attributes

QFrame * | box_wdg
QLabel * | title_label
QWidget * | main_widget
QTextBrowser * | text_browser
QWidget * | bottom_panel
QWidget * | info_panel
QSplitter * | splitter
QVBoxLayout * | info_layout
QList< int > | splitter_sizes

## Detailed Description

Definition at line 79 of file helpdlg.h.

## Constructor & Destructor Documentation

## ◆ help_widget() [1/2]

help_widget::help_widget | ( | QWidget * | parent = `0` | ) |

Creates a new, empty help widget.

Definition at line 436 of file helpdlg.cpp.

## ◆ help_widget() [2/2]

help_widget::help_widget | ( | const help_item * | topic,
|  | QWidget * | parent = `0`
| ) |  |

Creates a new help widget displaying the specified topic.

Definition at line 447 of file helpdlg.cpp.

## ◆ ~help_widget()

help_widget::~help_widget | ( |  | ) |

Destructor.

Definition at line 459 of file helpdlg.cpp.

## Member Function Documentation

## ◆ add_extras_of_act_for_terrain()

void help_widget::add_extras_of_act_for_terrain | ( | struct terrain * | pterr,
|  | enum unit_activity | act,
|  | const char * | label
| ) |  |

private

Create labels about all extras of one cause buildable to the terrain.

Definition at line 704 of file helpdlg.cpp.

Referenced by set_topic_terrain().

## ◆ add_info_label()

void help_widget::add_info_label | ( | const QString & | text | ) |

private

Adds a text label to the information panel.

Definition at line 648 of file helpdlg.cpp.

Referenced by set_topic_building(), and set_topic_unit().

## ◆ add_info_pixmap()

void help_widget::add_info_pixmap | ( | QPixmap * | pm,
|  | bool | shadow = `false`
| ) |  |

private

Adds a pixmap to the information panel.

Definition at line 627 of file helpdlg.cpp.

Referenced by set_topic_building(), set_topic_extra(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ add_info_progress()

void help_widget::add_info_progress | ( | const QString & | text,
|  | int | progress,
|  | int | min,
|  | int | max,
|  | const QString & | value = `QString()`
| ) |  |

private

Adds a widget indicating a progress to the information panel. Arguments: text: A descriptive text progress: The progress to display [min,max]: The interval progress is in value: Use this to display a non-numeral value

Definition at line 665 of file helpdlg.cpp.

Referenced by set_topic_terrain(), and set_topic_unit().

## ◆ add_info_separator()

void help_widget::add_info_separator | ( |  | ) |

private

Adds a separator to the information panel.

Definition at line 753 of file helpdlg.cpp.

Referenced by set_topic_terrain(), and set_topic_unit().

## ◆ add_info_widget()

void help_widget::add_info_widget | ( | QWidget * | widget | ) |

private

## ◆ anchor_clicked

void help_widget::anchor_clicked | ( | const QString & | link | ) |

privateslot

Hyperlink clicked, link has 2 variables, string(name of given help) and int(help_page_type)

Definition at line 770 of file helpdlg.cpp.

Referenced by add_extras_of_act_for_terrain(), set_topic_building(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ create_terrain_widget()

QLayout * help_widget::create_terrain_widget | ( | const QString & | title,
|  | const struct canvas * | image,
|  | const QString & | legend,
|  | const QString & | tooltip = `QString()`
| ) |  |

private

Creates a terrain widget with title, terrain image, legend. An optional tooltip can be given to explain the legend.

Definition at line 1250 of file helpdlg.cpp.

Referenced by set_topic_terrain().

## ◆ do_layout()

void help_widget::do_layout | ( | bool | horizontal | ) |

private

Lays things out. In case of horizontal being true, the widget is organized as follows, with the additional complexity that info_ and/or bottom_panel may be absent.

+------------------------------—+ | title_label | +------------------------------—+ |+-main_widget----------------—+| ||+---------—+ +-----------—+|| ||| | | ||| ||| info_panel | | text_browser ||| ||| | | ||| ||| |.+-----------—+|| ||| |. ... || ||| |.+-----------—+|| ||| | | ||| ||| | | bottom_panel ||| ||| | | ||| ||+---------—+ +-----------—+|| |+----------------------------—+| +------------------------------—+

Definition at line 517 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ info_panel_done()

void help_widget::info_panel_done | ( |  | ) |

private

Called when everything needed has been added to the information panel.

Definition at line 761 of file helpdlg.cpp.

Referenced by set_topic_building(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ link_me()

QString help_widget::link_me | ( | const char * | str,
|  | help_page_type | hpt
| ) |  |

private

Creates link to given help page

Definition at line 742 of file helpdlg.cpp.

Referenced by add_extras_of_act_for_terrain(), set_topic_building(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ set_bottom_panel()

void help_widget::set_bottom_panel | ( | QWidget * | widget | ) |

private

Sets the bottom panel.

Definition at line 856 of file helpdlg.cpp.

Referenced by set_topic_terrain().

## ◆ set_main_widget()

void help_widget::set_main_widget | ( | QWidget * | main_widget | ) |

private

## ◆ set_topic

void help_widget::set_topic | ( | const help_item * | topic | ) |

slot

Shows the given help page.

Definition at line 795 of file helpdlg.cpp.

Referenced by help_widget(), help_dialog::item_changed(), and help_dialog::set_topic().

## ◆ set_topic_any()

void help_widget::set_topic_any | ( | const help_item * | item,
|  | const char * | title
| ) |  |

private

## ◆ set_topic_building()

void help_widget::set_topic_building | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates improvement help pages.

Definition at line 1001 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_extra()

bool help_widget::set_topic_extra | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates extra help pages.

Returns
  use horizontal layout

Definition at line 1476 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_goods()

void help_widget::set_topic_goods | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates goods help page.

Definition at line 1566 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_government()

void help_widget::set_topic_government | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates government help pages.

Definition at line 1533 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_nation()

void help_widget::set_topic_nation | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates nation help pages.

Definition at line 1550 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_other()

void help_widget::set_topic_other | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates help pages with no special widgets.

Definition at line 863 of file helpdlg.cpp.

Referenced by set_topic(), set_topic_building(), set_topic_extra(), set_topic_goods(), set_topic_government(), set_topic_nation(), set_topic_specialist(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ set_topic_specialist()

void help_widget::set_topic_specialist | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates specialist help pages.

Definition at line 1516 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_tech()

void help_widget::set_topic_tech | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates technology help pages.

Definition at line 1093 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_terrain()

void help_widget::set_topic_terrain | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates terrain help pages.

Definition at line 1291 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ set_topic_text()

void help_widget::set_topic_text | ( | const help_item * | item,
|  | const char * | title
| ) |  |

private

## ◆ set_topic_unit()

void help_widget::set_topic_unit | ( | const help_item * | topic,
|  | const char * | title
| ) |  |

private

Creates unit help pages.

Definition at line 876 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ setup_ui()

void help_widget::setup_ui | ( |  | ) |

private

Creates the UI.

Definition at line 466 of file helpdlg.cpp.

Referenced by help_widget(), and help_widget().

## ◆ show_info_panel()

void help_widget::show_info_panel | ( |  | ) |

private

Creates the information panel. It will be shown by do_complex_layout().

Definition at line 618 of file helpdlg.cpp.

Referenced by set_topic_building(), set_topic_extra(), set_topic_tech(), set_topic_terrain(), and set_topic_unit().

## ◆ terrain_max_values()

struct terrain * help_widget::terrain_max_values | ( |  | ) |

Retrieves the maximum values any terrain will ever have. Supported fields: base_time, defense_bonus, irrigation_food_incr, irrigation_time, mining_shield_incr, mining_time, movement_cost, output, pillage_time, road_output_incr_pct, road_time, transform_time Other fields in returned value are undefined. Especially, all pointers are invalid.

Definition at line 1590 of file helpdlg.cpp.

Referenced by set_topic_terrain().

## ◆ uclass_max_values()

struct unit_type * help_widget::uclass_max_values | ( | struct unit_class * | uclass | ) |

Retrieves the maximum values any unit of uclass will ever have. Supported fields: attack_strength, bombard_rate, build_cost, city_size, convert_time, defense_strength, firepower, fuel, happy_cost, hp, move_rate, pop_cost, upkeep, vision_radius_sq Other fields in returned value are undefined. Especially, all pointers are invalid except uclass.

Definition at line 1659 of file helpdlg.cpp.

Referenced by set_topic_unit().

## ◆ undo_layout()

void help_widget::undo_layout | ( |  | ) |

private

Deletes the widgets created by do_complex_layout().

Definition at line 595 of file helpdlg.cpp.

Referenced by set_topic().

## ◆ update_fonts()

void help_widget::update_fonts | ( |  | ) |

Updates fonts for manual

Definition at line 565 of file helpdlg.cpp.

Referenced by setup_ui(), and help_dialog::update_fonts().

## Field Documentation

## ◆ bottom_panel

QWidget* help_widget::bottom_panel

private

Definition at line 87 of file helpdlg.h.

Referenced by do_layout(), set_bottom_panel(), and undo_layout().

## ◆ box_wdg

QFrame* help_widget::box_wdg

private

Definition at line 82 of file helpdlg.h.

Referenced by setup_ui().

## ◆ info_layout

QVBoxLayout* help_widget::info_layout

private

Definition at line 90 of file helpdlg.h.

Referenced by add_extras_of_act_for_terrain(), add_info_label(), add_info_pixmap(), add_info_progress(), add_info_separator(), do_layout(), info_panel_done(), set_topic_building(), set_topic_tech(), set_topic_terrain(), set_topic_unit(), show_info_panel(), and undo_layout().

## ◆ info_panel

QWidget* help_widget::info_panel

private

Definition at line 88 of file helpdlg.h.

Referenced by do_layout(), show_info_panel(), and undo_layout().

## ◆ main_widget

QWidget* help_widget::main_widget

private

Definition at line 85 of file helpdlg.h.

Referenced by do_layout(), setup_ui(), and undo_layout().

## ◆ splitter

QSplitter* help_widget::splitter

private

Definition at line 89 of file helpdlg.h.

Referenced by do_layout(), and undo_layout().

## ◆ splitter_sizes

QList<int> help_widget::splitter_sizes

private

Definition at line 91 of file helpdlg.h.

Referenced by do_layout(), setup_ui(), and undo_layout().

## ◆ text_browser

QTextBrowser* help_widget::text_browser

private

Definition at line 86 of file helpdlg.h.

Referenced by do_layout(), set_topic_building(), set_topic_extra(), set_topic_goods(), set_topic_government(), set_topic_nation(), set_topic_other(), set_topic_specialist(), set_topic_tech(), set_topic_terrain(), set_topic_unit(), setup_ui(), and undo_layout().

## ◆ title_label

QLabel* help_widget::title_label

private

Definition at line 83 of file helpdlg.h.

Referenced by set_topic(), and setup_ui().