A grid listbox is a styled_widget that holds several items of the same type. More...
#include <listbox.hpp>
Public Member Functions | |
builder_grid_listbox (const config &cfg) | |
virtual std::unique_ptr< widget > | build () const override |
virtual std::unique_ptr< widget > | build (const replacements_map &replacements) const override |
![]() | |
builder_styled_widget (const config &cfg) | |
virtual std::unique_ptr< widget > | build (const replacements_map &replacements) const override |
virtual std::unique_ptr< widget > | build () const=0 |
virtual std::unique_ptr< widget > | build (const replacements_map &replacements) const=0 |
![]() | |
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< widget_data > | list_data |
Listbox data. More... | |
bool | has_minimum_ |
bool | has_maximum_ |
![]() | |
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 |
![]() | |
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 | |
![]() | |
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 > |
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_mode | initial_auto | Determines whether or not to show the scrollbar. |
horizontal_scrollbar_mode | scrollbar_mode | initial_auto | Determines 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 574 of file listbox.hpp.
|
explicit |
Definition at line 846 of file listbox.cpp.
References _(), config::has_child(), list_builder, list_data, config::mandatory_child(), config::optional_child(), gui2::implementation::parse_list_data(), and VALIDATE.
|
overridevirtual |
Implements gui2::builder_widget.
Definition at line 869 of file listbox.cpp.
References gui2::generator_base::build(), DBG_GUI_G, gui2::implementation::builder_styled_widget::definition, has_maximum_, has_minimum_, horizontal_scrollbar_mode, list_builder, list_data, gui2::generator_base::table, and vertical_scrollbar_mode.
|
override |
Definition at line 548 of file styled_widget.cpp.
bool gui2::implementation::builder_grid_listbox::has_maximum_ |
Definition at line 595 of file listbox.hpp.
Referenced by build().
bool gui2::implementation::builder_grid_listbox::has_minimum_ |
Definition at line 595 of file listbox.hpp.
Referenced by build().
scrollbar_container::scrollbar_mode gui2::implementation::builder_grid_listbox::horizontal_scrollbar_mode |
Definition at line 583 of file listbox.hpp.
Referenced by build().
builder_grid_ptr gui2::implementation::builder_grid_listbox::list_builder |
Definition at line 585 of file listbox.hpp.
Referenced by build(), and builder_grid_listbox().
std::vector<widget_data> 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 593 of file listbox.hpp.
Referenced by build(), and builder_grid_listbox().
scrollbar_container::scrollbar_mode gui2::implementation::builder_grid_listbox::vertical_scrollbar_mode |
Definition at line 582 of file listbox.hpp.
Referenced by build().