lxgui
|
Namespaces | |
namespace | gl |
namespace | sdl |
namespace | sfml |
Classes | |
struct | addon |
A piece of the user interface. More... | |
class | addon_registry |
Loads and owns addons. More... | |
class | alive_checker |
Utility class for safe checking of region validity. More... | |
class | anchor |
Stores a position for a UI region. More... | |
struct | anchor_data |
Raw data of an anchor (value type) More... | |
class | animated_texture |
A layered_region that can draw animated sequences. More... | |
class | atlas |
A class that holds multiple materials for efficient rendering. More... | |
class | atlas_page |
A single texture holding multiple materials for efficient rendering. More... | |
class | backdrop |
Draws borders and background of a frame. More... | |
struct | bounds2 |
Holds 2D bounds of a region. More... | |
class | button |
A frame with a button that can be clicked. More... | |
class | check_button |
A button with two additional states: checked and unchecked. More... | |
struct | code_point_range |
Represents a contiguous range of unicode code points. More... | |
class | color |
Holds a single color (float RGBA, 128 bits) More... | |
struct | color32 |
Holds a single color (byte RGBA, 32 bits) More... | |
class | edit_box |
A frame with an editable text box. More... | |
class | event_data |
Stores a variable number of arguments for an event. More... | |
class | event_emitter |
Generates events and keep tracks of registered callbacks. More... | |
class | event_receiver |
Utility object to store and manage connections to event signals. More... | |
class | exception |
Exception to be thrown by GUI code. More... | |
class | factory |
Handles the creation of new UI objects. More... | |
class | font |
A texture containing characters. More... | |
class | font_string |
A layered_region that can draw text on the screen. More... | |
class | frame |
A region that can contain other regions and react to events. More... | |
class | frame_container |
Container of frames. More... | |
struct | frame_core_attributes |
Struct holding all the core information about a frame necessary for its creation. More... | |
class | frame_renderer |
Abstract class for layering and rendering frames. More... | |
struct | gradient |
Represents color gradients. More... | |
class | key_binder |
Binds global actions to key presses. More... | |
struct | layer_container |
Contains gui::layered_region. More... | |
class | layered_region |
A region that can be rendered in a layer. More... | |
class | layout_attribute |
An attribute in a layout file. More... | |
class | layout_node |
An node in a layout file. More... | |
class | localizer |
Utility class to translate strings for display in GUI. More... | |
class | manager |
Manages the user interface. More... | |
class | material |
A class that holds rendering data. More... | |
struct | matrix4f |
A 4x4 matrix, used for coordinate transformations. More... | |
struct | quad |
Simple structure holding four vertices and a material. More... | |
class | region |
The base class of all elements in the GUI. More... | |
struct | region_core_attributes |
Struct holding all the core information about a region necessary for its creation. More... | |
class | registry |
Keeps track of created UI objects and records their names for lookup. More... | |
class | render_target |
A place to render things (the screen, a texture, ...) More... | |
class | renderer |
Abstract type for implementation specific management. More... | |
class | root |
Root of the UI object hierarchy. More... | |
struct | script_info |
Holds file/line information for a script. More... | |
class | scroll_frame |
A frame with scrollable content. More... | |
class | slider |
A frame with a movable texture. More... | |
class | status_bar |
A frame representing a variable-length bar. More... | |
struct | strata_data |
Contains frames sorted by level. More... | |
class | text |
Used to draw some text on the screen. More... | |
class | texture |
A layered_region that can draw images and colored rectangles. More... | |
struct | vector2 |
Holds 2D coordinates. More... | |
struct | vertex |
Holds position, texture coordinate, and color information for drawing. More... | |
class | vertex_cache |
An object representing cached vertex data on the GPU. More... | |
class | virtual_registry |
Keeps track of virtual UI objects and records their names for lookup. More... | |
class | virtual_root |
Root of the virtual UI object hierarchy. More... | |
Typedefs | |
using | bounds2f = bounds2< float > |
Holds 2D bounds of a region (as floats). | |
using | bounds2i = bounds2< int > |
Holds 2D bounds of a region (as signed integers). | |
using | event_handler_signature = void(const event_data &) |
Signature of event handler. | |
using | event_signal = utils::signal< event_handler_signature > |
Signal type for scripts (used internally). | |
using | event_handler_function = event_signal::function_type |
C++ function type for UI script handlers. | |
using | script_signature = void(frame &, const event_data &) |
Signature of frame scripts. | |
using | script_signal = utils::signal< script_signature > |
Signal type for scripts (used internally). | |
using | script_function = script_signal::function_type |
C++ function type for UI script handlers. | |
using | script_list_view = script_signal::slot_list_view |
View into all the connected scripts for a given event. | |
using | vector2f = vector2< float > |
Holds 2D coordinates (as floats) | |
using | vector2d = vector2< double > |
Holds 2D coordinates (as doubles) | |
using | vector2i = vector2< std::ptrdiff_t > |
Holds 2D coordinates (as signed integers) | |
using | vector2ui = vector2< std::size_t > |
Holds 2D coordinates (as unsigned integers) | |
Enumerations | |
enum class | anchor_type { abs , rel } |
enum class | point { top_left = 0 , top , top_right , right , bottom_right , bottom , bottom_left , left , center } |
enum class | constraint { none , x , y } |
enum class | vertex_cache_strategy { always_disabled , prefer_enabled , always_enabled , automatic } |
Strategy for using a vertex cache. More... | |
enum class | layer { background , border , artwork , overlay , highlight , special_high } |
ID of a layer for rendering inside a frame. More... | |
enum class | orientation { vertical , horizontal } |
enum class | blend_mode { normal , add , mul } |
Specifies the rendering mode of a quad. More... | |
enum class | strata { background , low , medium , high , dialog , fullscreen , fullscreen_dialog , tooltip } |
enum class | alignment_x { left , center , right } |
enum class | alignment_y { top , middle , bottom } |
Functions | |
std::string | serialize (const std::string &tab, const sol::object &value) noexcept |
std::string | serialize_global (sol::state &lua, const std::string &variable) noexcept |
std::string | normalize_node_name (const std::string &name, bool capital_first) |
void | repeat_wrap (const frame &parent, std::vector< std::array< vertex, 4 > > &output, const bounds2f &source_uvs, float tile_size, bool is_rotated, const color color, const bounds2f &destination) |
float | h2_to_rgb (float v1, float v2, float h) noexcept |
color | operator+ (const color &c1, const color &c2) noexcept |
color | operator- (const color &c1, const color &c2) noexcept |
color | operator* (const color &c1, const color &c2) noexcept |
color | operator* (const color &c1, float f) noexcept |
color | operator* (float f, const color &c2) noexcept |
std::ostream & | operator<< (std::ostream &stream, const color &c) |
std::istream & | operator>> (std::istream &stream, color &c) |
std::string | hijack_sol_error_line (std::string original_message, const std::string &file, std::size_t line_nbr) |
std::string | hijack_sol_error_message (std::string_view original_message, const std::string &file, std::size_t line_nbr) |
template<typename T > | |
void | check_sorted (const T &list) |
matrix4f | build_identity () noexcept |
matrix4f | operator+ (const matrix4f &m1, const matrix4f &m2) noexcept |
matrix4f | operator- (const matrix4f &m1, const matrix4f &m2) noexcept |
matrix4f | operator* (const matrix4f &m1, const matrix4f &m2) noexcept |
vector2f | operator* (const matrix4f &m, const vector2f &v) noexcept |
vector2f | operator* (const vector2f &v, const matrix4f &m) noexcept |
std::ostream & | operator<< (std::ostream &o, const matrix4f &m) |
std::ostream | out (std::cout.rdbuf()) |
region_core_attributes | parse_core_attributes (registry ®, virtual_registry &vreg, const layout_node &node, utils::observer_ptr< frame > parent) |
Parse "core" attributes from a layout node, before creating a frame. | |
void | warn_for_not_accessed_node (const layout_node &node) |
Emit a warning if this node (or any of its attributes/children) was not read. | |
bool | check_cyclic_anchors (const region &self, anchor &a) |
void | set_defined_borders (bounds2< bool > &defined_borders, point p, bool defined) |
void | release_focus_to_list (const frame &receiver, std::vector< utils::observer_ptr< frame > > &list) |
void | request_focus_to_list (utils::observer_ptr< frame > receiver, std::vector< utils::observer_ptr< frame > > &list) |
std::string | get_key_name (input::key key_id, bool is_shift_pressed, bool is_ctrl_pressed, bool is_alt_pressed) |
void | step_value (float &value, float step) |
std::array< float, 4 > | select_uvs (const std::array< float, 8 > &uvs) |
template<typename T > | |
bounds2< T > | operator+ (const vector2< T > &offset, const bounds2< T > &quad) noexcept |
template<typename T > | |
bounds2< T > | operator+ (const bounds2< T > &quad, const vector2< T > &offset) noexcept |
template<typename T > | |
bounds2< T > | operator- (const bounds2< T > &quad, const vector2< T > &offset) noexcept |
template<typename T > | |
bounds2< T > | operator* (const bounds2< T > &quad, T scale) noexcept |
template<typename T > | |
bounds2< T > | operator* (T scale, const bounds2< T > &quad) noexcept |
template<typename T > | |
bounds2< T > | operator/ (const bounds2< T > &quad, T scale) noexcept |
template<typename O , typename T > | |
O & | operator<< (O &stream, const bounds2< T > &quad) |
template<> | |
std::optional< std::string > | layout_attribute::try_get_value< std::string > () const noexcept |
template<> | |
std::string | layout_attribute::get_value< std::string > () const |
template<> | |
std::string | layout_attribute::get_value_or< std::string > (std::string) const noexcept |
template<typename ObjectType > | |
const ObjectType * | down_cast (const region *self) |
Obtain a pointer to a derived class. | |
template<typename ObjectType > | |
const ObjectType & | down_cast (const region &self) |
Obtain a reference to a derived class. | |
template<typename ObjectType > | |
ObjectType * | down_cast (region *self) |
Obtain a pointer to a derived class. | |
template<typename ObjectType > | |
ObjectType & | down_cast (region &self) |
Obtain a reference to a derived class. | |
template<typename ObjectType > | |
utils::owner_ptr< ObjectType > | down_cast (utils::owner_ptr< region > &&object) |
Perform a down cast on an owning pointer. | |
template<typename ObjectType > | |
utils::observer_ptr< ObjectType > | down_cast (const utils::observer_ptr< region > &object) |
Perform a down cast on an observer pointer. | |
template<typename ObjectType > | |
utils::observer_ptr< ObjectType > | down_cast (utils::observer_ptr< region > &&object) |
Perform a down cast on an observer pointer. | |
template<typename ObjectType > | |
utils::observer_ptr< ObjectType > | observer_from (ObjectType *self) |
Obtain an observer pointer from a raw pointer (typically 'this') | |
template<typename T > | |
void | sol_lua_check_access (sol::types< T >, lua_State *lua, int index, sol::stack::record &) |
utils::observer_ptr< region > | get_object (manager &mgr, const std::variant< std::string, region * > &parent) |
template<typename T > | |
utils::observer_ptr< T > | get_object (manager &mgr, const std::variant< std::string, T * > &parent) |
template<auto T> | |
constexpr auto | member_function () |
template<typename T > | |
vector2< T > | operator* (T value, const vector2< T > &v) noexcept |
template<typename O , typename T > | |
O & | operator<< (O &stream, const vector2< T > &v) |
Variables | |
const std::string | warning = "warning: " |
const std::string | error = "error: " |
std::ostream | out |
using lxgui::gui::bounds2f = typedef bounds2<float> |
Holds 2D bounds of a region (as floats).
Definition at line 154 of file gui_bounds2.hpp.
using lxgui::gui::bounds2i = typedef bounds2<int> |
Holds 2D bounds of a region (as signed integers).
Definition at line 156 of file gui_bounds2.hpp.
using lxgui::gui::event_handler_function = typedef event_signal::function_type |
C++ function type for UI script handlers.
Definition at line 20 of file gui_event_emitter.hpp.
using lxgui::gui::event_handler_signature = typedef void(const event_data&) |
Signature of event handler.
Definition at line 14 of file gui_event_emitter.hpp.
using lxgui::gui::event_signal = typedef utils::signal<event_handler_signature> |
Signal type for scripts (used internally).
Definition at line 17 of file gui_event_emitter.hpp.
using lxgui::gui::script_function = typedef script_signal::function_type |
C++ function type for UI script handlers.
Definition at line 51 of file gui_frame.hpp.
using lxgui::gui::script_list_view = typedef script_signal::slot_list_view |
View into all the connected scripts for a given event.
Definition at line 54 of file gui_frame.hpp.
using lxgui::gui::script_signal = typedef utils::signal<script_signature> |
Signal type for scripts (used internally).
Definition at line 48 of file gui_frame.hpp.
using lxgui::gui::script_signature = typedef void(frame&, const event_data&) |
Signature of frame scripts.
Definition at line 45 of file gui_frame.hpp.
using lxgui::gui::vector2d = typedef vector2<double> |
Holds 2D coordinates (as doubles)
Definition at line 173 of file gui_vector2.hpp.
using lxgui::gui::vector2f = typedef vector2<float> |
Holds 2D coordinates (as floats)
Definition at line 171 of file gui_vector2.hpp.
using lxgui::gui::vector2i = typedef vector2<std::ptrdiff_t> |
Holds 2D coordinates (as signed integers)
Definition at line 175 of file gui_vector2.hpp.
using lxgui::gui::vector2ui = typedef vector2<std::size_t> |
Holds 2D coordinates (as unsigned integers)
Definition at line 177 of file gui_vector2.hpp.
|
strong |
Enumerator | |
---|---|
left | |
center | |
right |
Definition at line 24 of file gui_text.hpp.
|
strong |
Enumerator | |
---|---|
top | |
middle | |
bottom |
Definition at line 26 of file gui_text.hpp.
|
strong |
Enumerator | |
---|---|
abs | |
rel |
Definition at line 15 of file gui_anchor.hpp.
|
strong |
Specifies the rendering mode of a quad.
Enumerator | |
---|---|
normal | |
add | |
mul |
Definition at line 15 of file gui_quad.hpp.
|
strong |
Enumerator | |
---|---|
none | |
x | |
y |
Definition at line 29 of file gui_anchor.hpp.
|
strong |
ID of a layer for rendering inside a frame.
Enumerator | |
---|---|
background | |
border | |
artwork | |
overlay | |
highlight | |
special_high |
Definition at line 11 of file gui_layered_region.hpp.
|
strong |
Enumerator | |
---|---|
vertical | |
horizontal |
Definition at line 9 of file gui_orientation.hpp.
|
strong |
Enumerator | |
---|---|
top_left | |
top | |
top_right | |
right | |
bottom_right | |
bottom | |
bottom_left | |
left | |
center |
Definition at line 17 of file gui_anchor.hpp.
|
strong |
Enumerator | |
---|---|
background | |
low | |
medium | |
high | |
dialog | |
fullscreen | |
fullscreen_dialog | |
tooltip |
Definition at line 16 of file gui_strata.hpp.
|
strong |
Strategy for using a vertex cache.
Definition at line 14 of file gui_font_string.hpp.
|
noexcept |
Definition at line 8 of file gui_matrix4.cpp.
Definition at line 388 of file gui_region.cpp.
void lxgui::gui::check_sorted | ( | const T & | list | ) |
Definition at line 11 of file gui_frame_renderer.cpp.
const ObjectType & lxgui::gui::down_cast | ( | const region & | self | ) |
Obtain a reference to a derived class.
self | The reference to down cast |
Definition at line 858 of file gui_region.hpp.
const ObjectType * lxgui::gui::down_cast | ( | const region * | self | ) |
Obtain a pointer to a derived class.
self | The pointer to down cast |
Definition at line 837 of file gui_region.hpp.
utils::observer_ptr< ObjectType > lxgui::gui::down_cast | ( | const utils::observer_ptr< region > & | object | ) |
Perform a down cast on an observer pointer.
object | The observer pointer to down cast |
Definition at line 922 of file gui_region.hpp.
ObjectType & lxgui::gui::down_cast | ( | region & | self | ) |
Obtain a reference to a derived class.
self | The reference to down cast |
Definition at line 900 of file gui_region.hpp.
ObjectType * lxgui::gui::down_cast | ( | region * | self | ) |
Obtain a pointer to a derived class.
self | The pointer to down cast |
Definition at line 886 of file gui_region.hpp.
utils::observer_ptr< ObjectType > lxgui::gui::down_cast | ( | utils::observer_ptr< region > && | object | ) |
Perform a down cast on an observer pointer.
object | The observer pointer to down cast |
Definition at line 933 of file gui_region.hpp.
utils::owner_ptr< ObjectType > lxgui::gui::down_cast | ( | utils::owner_ptr< region > && | object | ) |
Perform a down cast on an owning pointer.
object | The owning pointer to down cast |
Definition at line 911 of file gui_region.hpp.
std::string lxgui::gui::get_key_name | ( | input::key | key_id, |
bool | is_shift_pressed, | ||
bool | is_ctrl_pressed, | ||
bool | is_alt_pressed | ||
) |
Definition at line 708 of file gui_root.cpp.
|
inline |
Definition at line 56 of file gui_region_tpl.hpp.
utils::observer_ptr< T > lxgui::gui::get_object | ( | manager & | mgr, |
const std::variant< std::string, T * > & | parent | ||
) |
Definition at line 77 of file gui_region_tpl.hpp.
|
noexcept |
Definition at line 92 of file gui_color.cpp.
std::string lxgui::gui::hijack_sol_error_line | ( | std::string | original_message, |
const std::string & | file, | ||
std::size_t | line_nbr | ||
) |
Definition at line 893 of file gui_frame.cpp.
std::string lxgui::gui::hijack_sol_error_message | ( | std::string_view | original_message, |
const std::string & | file, | ||
std::size_t | line_nbr | ||
) |
Definition at line 933 of file gui_frame.cpp.
|
inline |
Definition at line 496 of file gui_layout_node.hpp.
|
inlinenoexcept |
Definition at line 502 of file gui_layout_node.hpp.
|
inlinenoexcept |
Definition at line 1 of file gui_layout_node.hpp.
|
constexpr |
Definition at line 130 of file gui_region_tpl.hpp.
std::string lxgui::gui::normalize_node_name | ( | const std::string & | name, |
bool | capital_first | ||
) |
Definition at line 78 of file gui_addon_registry_parser.cpp.
utils::observer_ptr< ObjectType > lxgui::gui::observer_from | ( | ObjectType * | self | ) |
Obtain an observer pointer from a raw pointer (typically 'this')
self | The raw pointer to get an observer from |
Definition at line 946 of file gui_region.hpp.
|
noexcept |
Definition at line 121 of file gui_bounds2.hpp.
Definition at line 200 of file gui_color.cpp.
Definition at line 204 of file gui_color.cpp.
Definition at line 180 of file gui_matrix4.cpp.
Definition at line 154 of file gui_matrix4.cpp.
Definition at line 191 of file gui_matrix4.cpp.
Definition at line 208 of file gui_color.cpp.
|
noexcept |
Definition at line 131 of file gui_bounds2.hpp.
|
noexcept |
Definition at line 180 of file gui_vector2.hpp.
|
noexcept |
Definition at line 101 of file gui_bounds2.hpp.
Definition at line 192 of file gui_color.cpp.
Definition at line 136 of file gui_matrix4.cpp.
|
noexcept |
Definition at line 91 of file gui_bounds2.hpp.
|
noexcept |
Definition at line 111 of file gui_bounds2.hpp.
Definition at line 196 of file gui_color.cpp.
Definition at line 145 of file gui_matrix4.cpp.
|
noexcept |
Definition at line 141 of file gui_bounds2.hpp.
O & lxgui::gui::operator<< | ( | O & | stream, |
const bounds2< T > & | quad | ||
) |
Definition at line 159 of file gui_bounds2.hpp.
O & lxgui::gui::operator<< | ( | O & | stream, |
const vector2< T > & | v | ||
) |
Definition at line 185 of file gui_vector2.hpp.
std::ostream & lxgui::gui::operator<< | ( | std::ostream & | o, |
const matrix4f & | m | ||
) |
Definition at line 202 of file gui_matrix4.cpp.
std::ostream & lxgui::gui::operator<< | ( | std::ostream & | stream, |
const color & | c | ||
) |
Definition at line 212 of file gui_color.cpp.
std::istream & lxgui::gui::operator>> | ( | std::istream & | stream, |
color & | c | ||
) |
Definition at line 219 of file gui_color.cpp.
std::ostream lxgui::gui::out | ( | std::cout. | rdbuf() | ) |
region_core_attributes lxgui::gui::parse_core_attributes | ( | registry & | reg, |
virtual_registry & | vreg, | ||
const layout_node & | node, | ||
utils::observer_ptr< frame > | parent | ||
) |
Parse "core" attributes from a layout node, before creating a frame.
reg | The UI object registry, for parent lookup |
vreg | The virtual UI object registry, for inheritance lookup |
node | The layout node to parse from |
parent | The current layout parent frame of this node (nullptr if none) |
Definition at line 13 of file gui_parser_common.cpp.
void lxgui::gui::release_focus_to_list | ( | const frame & | receiver, |
std::vector< utils::observer_ptr< frame > > & | list | ||
) |
Definition at line 414 of file gui_root.cpp.
void lxgui::gui::repeat_wrap | ( | const frame & | parent, |
std::vector< std::array< vertex, 4 > > & | output, | ||
const bounds2f & | source_uvs, | ||
float | tile_size, | ||
bool | is_rotated, | ||
const color | color, | ||
const bounds2f & | destination | ||
) |
Definition at line 289 of file gui_backdrop.cpp.
void lxgui::gui::request_focus_to_list | ( | utils::observer_ptr< frame > | receiver, |
std::vector< utils::observer_ptr< frame > > & | list | ||
) |
Definition at line 434 of file gui_root.cpp.
std::array< float, 4 > lxgui::gui::select_uvs | ( | const std::array< float, 8 > & | uvs | ) |
Definition at line 14 of file gui_status_bar.cpp.
|
noexcept |
Definition at line 189 of file gui_addon_registry.cpp.
|
noexcept |
Definition at line 217 of file gui_addon_registry.cpp.
Definition at line 447 of file gui_region.cpp.
void lxgui::gui::sol_lua_check_access | ( | sol::types< T > | , |
lua_State * | lua, | ||
int | index, | ||
sol::stack::record & | |||
) |
Definition at line 37 of file gui_region_tpl.hpp.
void lxgui::gui::step_value | ( | float & | value, |
float | step | ||
) |
Definition at line 15 of file gui_slider.cpp.
void lxgui::gui::warn_for_not_accessed_node | ( | const layout_node & | node | ) |
Emit a warning if this node (or any of its attributes/children) was not read.
node | The node to check |
Definition at line 63 of file gui_parser_common.cpp.
const std::string lxgui::gui::error = "error: " |
Definition at line 7 of file gui_out.cpp.
|
extern |
const std::string lxgui::gui::warning = "warning: " |
Definition at line 6 of file gui_out.cpp.