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

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

#include <listbox.hpp>

Inheritance diagram for gui2::implementation::builder_grid_listbox:

Public Member Functions

 builder_grid_listbox (const config &cfg)
 
virtual widgetbuild () const override
 
- Public Member Functions inherited from gui2::implementation::builder_styled_widget
 builder_styled_widget (const config &cfg)
 
virtual widgetbuild (const replacements_map &replacements) const override
 
- 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 list_builder
 
std::vector< std::map< std::string, string_map > > list_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
typedef std::map< std::string, std::shared_ptr< builder_widget > > replacements_map
 The replacements type is used to define replacement types. More...
 

Detailed Description

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

Normally the items in a listbox are ordered in rows, this version orders them in a grid instead.

List with the grid listbox specific variables:

Key Type Default Description
vertical_scrollbar_mode scrollbar_modeinitial_autoDetermines whether or not to show the scrollbar.
horizontal_scrollbar_modescrollbar_modeinitial_autoDetermines whether or not to show the scrollbar.
list_definition section mandatory This defines how a listbox item looks. It must contain the grid definition for 1 column of the list.
list_data section [] A grid alike section which stores the initial data for the listbox. Every row must have the same number of columns as the 'list_definition'.
has_minimum bool true If false, less than one row can be selected.
has_maximum bool true If false, more than one row can be selected.

In order to force widgets to be the same size inside a horizontal listbox, the widgets need to be inside a linked_group. Inside the list section there are only the following widgets allowed:

Definition at line 583 of file listbox.hpp.

Constructor & Destructor Documentation

◆ builder_grid_listbox()

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

Member Function Documentation

◆ build()

widget * gui2::implementation::builder_grid_listbox::build ( ) const
overridevirtual

Member Data Documentation

◆ has_maximum_

bool gui2::implementation::builder_grid_listbox::has_maximum_

Definition at line 604 of file listbox.hpp.

Referenced by build().

◆ has_minimum_

bool gui2::implementation::builder_grid_listbox::has_minimum_

Definition at line 604 of file listbox.hpp.

Referenced by build().

◆ horizontal_scrollbar_mode

scrollbar_container::scrollbar_mode gui2::implementation::builder_grid_listbox::horizontal_scrollbar_mode

Definition at line 592 of file listbox.hpp.

Referenced by build().

◆ list_builder

builder_grid_ptr gui2::implementation::builder_grid_listbox::list_builder

Definition at line 594 of file listbox.hpp.

Referenced by build(), and builder_grid_listbox().

◆ list_data

std::vector<std::map<std::string, string_map> > gui2::implementation::builder_grid_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 602 of file listbox.hpp.

Referenced by build(), and builder_grid_listbox().

◆ vertical_scrollbar_mode

scrollbar_container::scrollbar_mode gui2::implementation::builder_grid_listbox::vertical_scrollbar_mode

Definition at line 591 of file listbox.hpp.

Referenced by build().


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