The Battle for Wesnoth  1.19.0-dev
Public Member Functions | Public Attributes | List of all members
gui2::implementation::builder_listbox Struct Reference

A listbox is a control that holds several items of the same type. More...

#include <listbox.hpp>

Inheritance diagram for gui2::implementation::builder_listbox:

Public Member Functions

 builder_listbox (const config &cfg)
 
virtual std::unique_ptr< widgetbuild () const override
 
virtual std::unique_ptr< widgetbuild (const replacements_map &replacements) const override
 
- Public Member Functions inherited from gui2::implementation::builder_styled_widget
 builder_styled_widget (const config &cfg)
 
virtual std::unique_ptr< widgetbuild (const replacements_map &replacements) const override
 
virtual std::unique_ptr< widgetbuild () const=0
 
virtual std::unique_ptr< widgetbuild (const replacements_map &replacements) const=0
 
- Public Member Functions inherited from gui2::builder_widget
 builder_widget (const config &cfg)
 
virtual ~builder_widget ()
 

Public Attributes

scrollbar_container::scrollbar_mode vertical_scrollbar_mode
 
scrollbar_container::scrollbar_mode horizontal_scrollbar_mode
 
builder_grid_ptr header
 
builder_grid_ptr footer
 
builder_grid_ptr list_builder
 
std::vector< widget_datalist_data
 Listbox data. More...
 
bool has_minimum_
 
bool has_maximum_
 
- Public Attributes inherited from gui2::implementation::builder_styled_widget
std::string definition
 Parameters for the styled_widget. More...
 
t_string label_string
 
t_string tooltip
 
t_string help
 
bool use_tooltip_on_label_overflow
 
bool use_markup
 
- Public Attributes inherited from gui2::builder_widget
std::string id
 Parameters for the widget. More...
 
std::string linked_group
 
widget::debug_border debug_border_mode
 
color_t debug_border_color
 

Additional Inherited Members

- Public Types inherited from gui2::builder_widget
using replacements_map = std::map< std::string, std::shared_ptr< builder_widget > >
 The replacements type is used to define replacement types. More...
 
using optional_replacements = utils::optional_reference< const replacements_map >
 

Detailed Description

A listbox is a control that holds several items of the same type.

Normally the items in a listbox are ordered in rows, this version might allow more options for ordering the items in the future. The definition of a listbox contains the definition of its scrollbar:

Key Type Default Description
scrollbar section mandatory A grid containing the widgets for the scrollbar. The scrollbar has some special widgets so it can make default behavior for certain widgets.

The resolution for a listbox also contains the following keys:

ID (return value) Type Mandatory Description
_begin clickable no Moves the position to the beginning of the list.
_line_up clickable no Move the position one item up. (NOTE: if too many items to move per item it might be more items.)
_half_page_up clickable no Move the position half the number of the visible items up. (See note at _line_up.)
_page_up clickable no Move the position the number of visible items up. (See note at _line_up.)
_end clickable no Moves the position to the end of the list.
_line_down clickable no Move the position one item down.(See note at _line_up.)
_half_page_down clickable no Move the position half the number of the visible items down. (See note at _line_up.)
_page_down clickable no Move the position the number of visible items down. (See note at _line_up.)
_scrollbar vertical_scrollbar yes This is the scrollbar so the user can scroll through the list.

A clickable is one of:

Definition at line 477 of file listbox.hpp.

Constructor & Destructor Documentation

◆ builder_listbox()

gui2::implementation::builder_listbox::builder_listbox ( const config cfg)
explicit

Member Function Documentation

◆ build() [1/2]

std::unique_ptr< widget > gui2::implementation::builder_listbox::build ( ) const
overridevirtual

◆ build() [2/2]

std::unique_ptr< widget > gui2::implementation::builder_styled_widget::build
override

Definition at line 547 of file styled_widget.cpp.

Member Data Documentation

◆ footer

builder_grid_ptr gui2::implementation::builder_listbox::footer

Definition at line 489 of file listbox.hpp.

Referenced by build(), and builder_listbox().

◆ has_maximum_

bool gui2::implementation::builder_listbox::has_maximum_

Definition at line 501 of file listbox.hpp.

Referenced by build().

◆ has_minimum_

bool gui2::implementation::builder_listbox::has_minimum_

Definition at line 501 of file listbox.hpp.

Referenced by build().

◆ header

builder_grid_ptr gui2::implementation::builder_listbox::header

Definition at line 488 of file listbox.hpp.

Referenced by build(), and builder_listbox().

◆ horizontal_scrollbar_mode

scrollbar_container::scrollbar_mode gui2::implementation::builder_listbox::horizontal_scrollbar_mode

Definition at line 486 of file listbox.hpp.

Referenced by build().

◆ list_builder

builder_grid_ptr gui2::implementation::builder_listbox::list_builder

Definition at line 491 of file listbox.hpp.

Referenced by build(), and builder_listbox().

◆ list_data

std::vector<widget_data> gui2::implementation::builder_listbox::list_data

Listbox data.

Contains a vector with the data to set in every cell, it's used to serialize the data in the config, so the config is no longer required.

Definition at line 499 of file listbox.hpp.

Referenced by build(), and builder_listbox().

◆ vertical_scrollbar_mode

scrollbar_container::scrollbar_mode gui2::implementation::builder_listbox::vertical_scrollbar_mode

Definition at line 485 of file listbox.hpp.

Referenced by build().


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