oveRTOS C++ API
C++20 RAII wrappers for the oveRTOS C API
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
ove::lvgl::Box Class Reference

C++ wrapper for a generic LVGL container object with scrolling disabled. More...

#include <lvgl.hpp>

Inheritance diagram for ove::lvgl::Box:
Inheritance graph
[legend]
Collaboration diagram for ove::lvgl::Box:
Collaboration graph
[legend]

Public Member Functions

 Box (lv_obj_t *obj)
 Constructs a Box wrapping an existing LVGL object.
 
- Public Member Functions inherited from ove::lvgl::ObjectView
 ObjectView ()
 Constructs a null ObjectView (no associated LVGL object).
 
 ObjectView (lv_obj_t *obj)
 Constructs an ObjectView wrapping the given lv_obj_t*.
 
lv_obj_t * get () const
 Returns the raw lv_obj_t* pointer.
 
 operator lv_obj_t * () const
 Implicit conversion to lv_obj_t* for use with LVGL C APIs.
 
 operator bool () const
 Contextual bool conversion — true if the object pointer is non-null.
 
ObjectView parent () const
 Returns an ObjectView wrapping the parent of this object.
 
uint32_t child_count () const
 Returns the number of direct children of this object.
 
int32_t get_width () const
 Returns the current rendered width of this object.
 
int32_t get_height () const
 Returns the current rendered height of this object.
 
void del ()
 Deletes the LVGL object and all its children, then nulls the pointer.
 
void clean ()
 Deletes all children of this object without deleting the object itself.
 
- Public Member Functions inherited from ove::lvgl::ObjectMixin< Box >
Boxsize (int32_t w, int32_t h)
 Sets both width and height of the object.
 
Boxwidth (int32_t w)
 Sets the width of the object.
 
Boxheight (int32_t h)
 Sets the height of the object.
 
Boxpos (int32_t x, int32_t y)
 Sets the position of the object relative to its parent.
 
Boxcenter ()
 Centers the object within its parent.
 
Boxalign (lv_align_t a, int32_t x_ofs=0, int32_t y_ofs=0)
 Aligns the object to an anchor with an optional offset.
 
Boxhide ()
 Hides the object by adding LV_OBJ_FLAG_HIDDEN.
 
Boxshow ()
 Shows the object by removing LV_OBJ_FLAG_HIDDEN.
 
Boxvisible (bool v)
 Conditionally shows or hides the object.
 
Boxadd_flag (lv_obj_flag_t f)
 Adds one or more object flags.
 
Boxremove_flag (lv_obj_flag_t f)
 Removes one or more object flags.
 
Boxadd_state (lv_state_t s)
 Adds one or more object states.
 
Boxremove_state (lv_state_t s)
 Removes one or more object states.
 
Boxuser_data (void *data)
 Stores an arbitrary user data pointer on the LVGL object.
 
Boxclickable (bool on)
 Enables or disables click events on the object.
 
- Public Member Functions inherited from ove::lvgl::EventMixin< Box >
Boxon (lv_event_code_t code, F &&fn)
 Registers a stateless callback for the given event code.
 
Boxon (lv_event_code_t code, T *instance)
 Registers a member function pointer as an event callback — zero-cost trampoline.
 
Boxon_click (F &&fn)
 Registers a stateless click callback (shorthand for on(LV_EVENT_CLICKED, fn)).
 
Boxon_click (T *instance)
 Registers a member function click callback.
 
Boxon_value_changed (F &&fn)
 Registers a stateless value-changed callback (shorthand for on(LV_EVENT_VALUE_CHANGED, fn)).
 
Boxon_value_changed (T *instance)
 Registers a member function value-changed callback.
 
- Public Member Functions inherited from ove::lvgl::StyleMixin< Box >
Boxbg_color (lv_color_t c)
 Sets the background color of the object.
 
Boxbg_opa (lv_opa_t opa)
 Sets the background opacity.
 
Boxborder_color (lv_color_t c)
 Sets the border color.
 
Boxborder_width (int32_t w)
 Sets the border width in pixels.
 
Boxradius (int32_t r)
 Sets the corner radius.
 
Boxpad_all (int32_t p)
 Sets uniform padding on all four sides.
 
Boxpad_hor (int32_t p)
 Sets horizontal (left + right) padding.
 
Boxpad_ver (int32_t p)
 Sets vertical (top + bottom) padding.
 
Boxpad_gap (int32_t g)
 Sets the gap between children in flex/grid layouts.
 
Boxtext_color (lv_color_t c)
 Sets the text color.
 
Boxtext_font (const lv_font_t *f)
 Sets the font used to render text.
 

Static Public Member Functions

static Box create (ObjectView parent)
 Factory method — creates a new LVGL container with scrolling disabled.
 
- Static Public Member Functions inherited from ove::lvgl::ObjectView
static ObjectView screen_active ()
 Returns an ObjectView wrapping the currently active screen.
 

Additional Inherited Members

- Protected Attributes inherited from ove::lvgl::ObjectView
lv_obj_t * obj_
 Raw pointer to the wrapped LVGL object.
 

Detailed Description

C++ wrapper for a generic LVGL container object with scrolling disabled.

Box is a plain lv_obj_t container created with the scrollable flag cleared, making it behave as a simple layout box. It supports the full fluent API from ObjectMixin, EventMixin, and StyleMixin.

Use the vbox() and hbox() free functions for pre-configured vertical and horizontal flex containers.

Note
Does not own the underlying LVGL object. Use del() to destroy it.

Constructor & Destructor Documentation

◆ Box()

ove::lvgl::Box::Box ( lv_obj_t obj)
inlineexplicit

Constructs a Box wrapping an existing LVGL object.

Parameters
[in]objPointer to an LVGL object.

Member Function Documentation

◆ create()

static Box ove::lvgl::Box::create ( ObjectView  parent)
inlinestatic

Factory method — creates a new LVGL container with scrolling disabled.

Parameters
[in]parentThe parent ObjectView.
Returns
A Box wrapping the newly created LVGL object.

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