Project Alice
Loading...
Searching...
No Matches
ui::listbox2_base< contents_type > Class Template Referenceabstract

#include <gui_element_types.hpp>

Inheritance diagram for ui::listbox2_base< contents_type >:
Collaboration diagram for ui::listbox2_base< contents_type >:

Public Member Functions

 listbox2_base ()
 
 listbox2_base (bool scrollbar_is_internal)
 
virtual std::unique_ptr< element_basemake_row (sys::state &state) noexcept=0
 
message_result on_scroll (sys::state &state, int32_t x, int32_t y, float amount, sys::key_modifiers mods) noexcept override
 
void on_update (sys::state &state) noexcept override
 
message_result get (sys::state &state, Cyto::Any &payload) noexcept override
 
void on_create (sys::state &state) noexcept override
 
void render (sys::state &state, int32_t x, int32_t y) noexcept override
 
void resize (sys::state &state, int32_t height)
 
message_result test_mouse (sys::state &state, int32_t x, int32_t y, mouse_probe_type type) noexcept override
 
- Public Member Functions inherited from ui::container_base
mouse_probe impl_probe_mouse (sys::state &state, int32_t x, int32_t y, mouse_probe_type type) noexcept override
 
message_result impl_on_key_down (sys::state &state, sys::virtual_key key, sys::key_modifiers mods) noexcept final
 
void impl_on_update (sys::state &state) noexcept override
 
message_result impl_set (sys::state &state, Cyto::Any &payload) noexcept final
 
void impl_render (sys::state &state, int32_t x, int32_t y) noexcept override
 
void impl_on_reset_text (sys::state &state) noexcept override
 
std::unique_ptr< element_baseremove_child (element_base *child) noexcept final
 
void move_child_to_front (element_base *child) noexcept final
 
void move_child_to_back (element_base *child) noexcept final
 
void add_child_to_front (std::unique_ptr< element_base > child) noexcept final
 
void add_child_to_back (std::unique_ptr< element_base > child) noexcept final
 
element_baseget_child_by_name (sys::state const &state, std::string_view name) noexcept final
 
element_baseget_child_by_index (sys::state const &state, int32_t index) noexcept final
 
- Public Member Functions inherited from ui::element_base
bool is_visible () const
 
void set_visible (sys::state &state, bool vis)
 
 element_base ()
 
virtual mouse_probe impl_probe_mouse (sys::state &state, int32_t x, int32_t y, mouse_probe_type type) noexcept
 
virtual message_result impl_on_lbutton_down (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual message_result impl_on_lbutton_up (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods, bool under_mouse) noexcept
 
virtual message_result impl_on_rbutton_down (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual message_result impl_on_key_down (sys::state &state, sys::virtual_key key, sys::key_modifiers mods) noexcept
 
virtual message_result impl_on_scroll (sys::state &state, int32_t x, int32_t y, float amount, sys::key_modifiers mods) noexcept
 
virtual message_result impl_on_mouse_move (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual void impl_on_update (sys::state &state) noexcept
 
message_result impl_get (sys::state &state, Cyto::Any &payload) noexcept
 
virtual message_result impl_set (sys::state &state, Cyto::Any &payload) noexcept
 
virtual void impl_render (sys::state &state, int32_t x, int32_t y) noexcept
 
virtual void impl_on_reset_text (sys::state &state) noexcept
 
virtual void impl_on_drag_finish (sys::state &state) noexcept
 
virtual tooltip_behavior has_tooltip (sys::state &state) noexcept
 
virtual void update_tooltip (sys::state &state, int32_t x, int32_t y, text::columnar_layout &contents) noexcept
 
virtual std::unique_ptr< element_baseremove_child (element_base *child) noexcept
 
virtual void move_child_to_front (element_base *child) noexcept
 
virtual void move_child_to_back (element_base *child) noexcept
 
virtual void add_child_to_front (std::unique_ptr< element_base > child) noexcept
 
virtual void add_child_to_back (std::unique_ptr< element_base > child) noexcept
 
virtual element_baseget_child_by_name (sys::state const &state, std::string_view name) noexcept
 
virtual element_baseget_child_by_index (sys::state const &state, int32_t index) noexcept
 
virtual ~element_base ()
 

Public Attributes

std::vector< ui::element_base * > row_windows {}
 
listbox2_scrollbarlist_scrollbar = nullptr
 
int32_t stored_index = 0
 
int32_t visible_row_count = 0
 
bool scrollbar_is_internal = false
 
std::vector< contents_type > row_contents
 
- Public Attributes inherited from ui::container_base
std::vector< std::unique_ptr< element_base > > children
 
- Public Attributes inherited from ui::element_base
element_data base_data
 
element_baseparent = nullptr
 
uint8_t flags = 0
 

Additional Inherited Members

- Static Public Attributes inherited from ui::element_base
static constexpr uint8_t is_invisible_mask = 0x01
 
- Protected Member Functions inherited from ui::element_base
virtual message_result test_mouse (sys::state &state, int32_t x, int32_t y, mouse_probe_type type) noexcept
 
virtual message_result on_lbutton_down (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual message_result on_lbutton_up (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods, bool under_mouse) noexcept
 
virtual message_result on_rbutton_down (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual message_result on_key_down (sys::state &state, sys::virtual_key key, sys::key_modifiers mods) noexcept
 
virtual message_result on_scroll (sys::state &state, int32_t x, int32_t y, float amount, sys::key_modifiers mods) noexcept
 
virtual message_result on_mouse_move (sys::state &state, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual message_result get (sys::state &state, Cyto::Any &payload) noexcept
 
virtual message_result set (sys::state &state, Cyto::Any &payload) noexcept
 
virtual void render (sys::state &state, int32_t x, int32_t y) noexcept
 
virtual void on_update (sys::state &state) noexcept
 
virtual void on_create (sys::state &state) noexcept
 
virtual void on_drag (sys::state &state, int32_t oldx, int32_t oldy, int32_t x, int32_t y, sys::key_modifiers mods) noexcept
 
virtual void on_text (sys::state &state, char32_t ch) noexcept
 
virtual void on_visible (sys::state &state) noexcept
 
virtual void on_hide (sys::state &state) noexcept
 
virtual void on_reset_text (sys::state &state) noexcept
 
virtual focus_result on_get_focus (sys::state &state) noexcept
 
virtual void on_lose_focus (sys::state &state) noexcept
 
virtual void on_drag_finish (sys::state &state) noexcept
 

Detailed Description

template<typename contents_type>
class ui::listbox2_base< contents_type >

Definition at line 1042 of file gui_element_types.hpp.

Constructor & Destructor Documentation

◆ listbox2_base() [1/2]

template<typename contents_type >
ui::listbox2_base< contents_type >::listbox2_base ( )
inline

Definition at line 1050 of file gui_element_types.hpp.

◆ listbox2_base() [2/2]

template<typename contents_type >
ui::listbox2_base< contents_type >::listbox2_base ( bool  scrollbar_is_internal)
inline

Definition at line 1051 of file gui_element_types.hpp.

Member Function Documentation

◆ get()

template<typename contents_type >
message_result ui::listbox2_base< contents_type >::get ( sys::state state,
Cyto::Any payload 
)
overridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1659 of file gui_element_types.cpp.

◆ make_row()

template<typename contents_type >
virtual std::unique_ptr< element_base > ui::listbox2_base< contents_type >::make_row ( sys::state state)
pure virtualnoexcept

Implemented in ui::outliner_listbox.

◆ on_create()

template<typename contents_type >
void ui::listbox2_base< contents_type >::on_create ( sys::state state)
overridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1712 of file gui_element_types.cpp.

Here is the caller graph for this function:

◆ on_scroll()

template<typename contents_type >
message_result ui::listbox2_base< contents_type >::on_scroll ( sys::state state,
int32_t  x,
int32_t  y,
float  amount,
sys::key_modifiers  mods 
)
overridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1617 of file gui_element_types.cpp.

◆ on_update()

template<typename contents_type >
void ui::listbox2_base< contents_type >::on_update ( sys::state state)
overridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1628 of file gui_element_types.cpp.

Here is the call graph for this function:

◆ render()

template<typename contents_type >
void ui::listbox2_base< contents_type >::render ( sys::state state,
int32_t  x,
int32_t  y 
)
overridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1724 of file gui_element_types.cpp.

Here is the call graph for this function:

◆ resize()

template<typename contents_type >
void ui::listbox2_base< contents_type >::resize ( sys::state state,
int32_t  height 
)

Definition at line 1684 of file gui_element_types.cpp.

◆ test_mouse()

template<typename contents_type >
message_result ui::listbox2_base< contents_type >::test_mouse ( sys::state state,
int32_t  x,
int32_t  y,
mouse_probe_type  type 
)
inlineoverridevirtualnoexcept

Reimplemented from ui::element_base.

Definition at line 1066 of file gui_element_types.hpp.

Member Data Documentation

◆ list_scrollbar

template<typename contents_type >
listbox2_scrollbar* ui::listbox2_base< contents_type >::list_scrollbar = nullptr

Definition at line 1045 of file gui_element_types.hpp.

◆ row_contents

template<typename contents_type >
std::vector<contents_type> ui::listbox2_base< contents_type >::row_contents

Definition at line 1055 of file gui_element_types.hpp.

◆ row_windows

template<typename contents_type >
std::vector<ui::element_base*> ui::listbox2_base< contents_type >::row_windows {}

Definition at line 1044 of file gui_element_types.hpp.

◆ scrollbar_is_internal

template<typename contents_type >
bool ui::listbox2_base< contents_type >::scrollbar_is_internal = false

Definition at line 1048 of file gui_element_types.hpp.

◆ stored_index

template<typename contents_type >
int32_t ui::listbox2_base< contents_type >::stored_index = 0

Definition at line 1046 of file gui_element_types.hpp.

◆ visible_row_count

template<typename contents_type >
int32_t ui::listbox2_base< contents_type >::visible_row_count = 0

Definition at line 1047 of file gui_element_types.hpp.


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