You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1559 lines
37 KiB
1559 lines
37 KiB
---@meta
|
|
---
|
|
--- lvgl comments
|
|
---
|
|
|
|
--- The `lvgl` module provides bindings to the LVGL graphics library. These
|
|
--- bindings were originally based on [luavgl](https://github.com/XuNeo/luavgl/),
|
|
--- but have diverged somewhat. These bindings are also largely a very thin
|
|
--- abstraction around LVGL's C API, so [LVGL's documentation](https://docs.lvgl.io/8.3/)
|
|
--- may also be useful to reference.
|
|
--- This module is currently only available from the UI Lua context; i.e. the
|
|
--- `main.lua` script run after boot on-device.
|
|
---@class lvgl
|
|
lvgl = {}
|
|
|
|
--- Event codes for use with `obj:onevent`. See the [LVGL docs](https://docs.lvgl.io/8.3/overview/event.html#event-codes)
|
|
--- for a description of each event type.
|
|
--- @enum ObjEventCode
|
|
lvgl.EVENT = {
|
|
ALL = 0,
|
|
PRESSED = 0,
|
|
PRESSING = 0,
|
|
PRESS_LOST = 0,
|
|
SHORT_CLICKED = 0,
|
|
LONG_PRESSED = 0,
|
|
LONG_PRESSED_REPEAT = 0,
|
|
CLICKED = 0,
|
|
RELEASED = 0,
|
|
SCROLL_BEGIN = 0,
|
|
SCROLL_END = 0,
|
|
SCROLL = 0,
|
|
GESTURE = 0,
|
|
KEY = 0,
|
|
FOCUSED = 0,
|
|
DEFOCUSED = 0,
|
|
LEAVE = 0,
|
|
HIT_TEST = 0,
|
|
COVER_CHECK = 0,
|
|
REFR_EXT_DRAW_SIZE = 0,
|
|
DRAW_MAIN_BEGIN = 0,
|
|
DRAW_MAIN = 0,
|
|
DRAW_MAIN_END = 0,
|
|
DRAW_POST_BEGIN = 0,
|
|
DRAW_POST = 0,
|
|
DRAW_POST_END = 0,
|
|
DRAW_PART_BEGIN = 0,
|
|
DRAW_PART_END = 0,
|
|
VALUE_CHANGED = 0,
|
|
INSERT = 0,
|
|
REFRESH = 0,
|
|
READY = 0,
|
|
CANCEL = 0,
|
|
DELETE = 0,
|
|
CHILD_CHANGED = 0,
|
|
CHILD_CREATED = 0,
|
|
CHILD_DELETED = 0,
|
|
SCREEN_UNLOAD_START = 0,
|
|
SCREEN_LOAD_START = 0,
|
|
SCREEN_LOADED = 0,
|
|
SCREEN_UNLOADED = 0,
|
|
SIZE_CHANGED = 0,
|
|
STYLE_CHANGED = 0,
|
|
LAYOUT_CHANGED = 0,
|
|
GET_SELF_SIZE = 0,
|
|
}
|
|
|
|
--- Flags that can be set for each LVGL object.
|
|
--- @enum ObjFlag
|
|
lvgl.FLAG = {
|
|
PRESSED = 0,
|
|
HIDDEN = 0,
|
|
CLICKABLE = 0,
|
|
CLICK_FOCUSABLE = 0,
|
|
CHECKABLE = 0,
|
|
SCROLLABLE = 0,
|
|
SCROLL_ELASTIC = 0,
|
|
SCROLL_MOMENTUM = 0,
|
|
SCROLL_ONE = 0,
|
|
SCROLL_CHAIN_HOR = 0,
|
|
SCROLL_CHAIN_VER = 0,
|
|
SCROLL_CHAIN = 0,
|
|
SCROLL_ON_FOCUS = 0,
|
|
SCROLL_WITH_ARROW = 0,
|
|
SNAPPABLE = 0,
|
|
PRESS_LOCK = 0,
|
|
EVENT_BUBBLE = 0,
|
|
GESTURE_BUBBLE = 0,
|
|
ADV_HITTEST = 0,
|
|
IGNORE_LAYOUT = 0,
|
|
FLOATING = 0,
|
|
OVERFLOW_VISIBLE = 0,
|
|
LAYOUT_1 = 0,
|
|
LAYOUT_2 = 0,
|
|
WIDGET_1 = 0,
|
|
WIDGET_2 = 0,
|
|
USER_1 = 0,
|
|
USER_2 = 0,
|
|
USER_3 = 0,
|
|
USER_4 = 0,
|
|
}
|
|
|
|
--- States that can be set on each LVGL object. See the [LVGL docs](https://docs.lvgl.io/8.3/overview/object.html#states)
|
|
--- for an explanation of what each state means.
|
|
--- @enum ObjState
|
|
lvgl.STATE = {
|
|
DEFAULT = 0,
|
|
CHECKED = 0,
|
|
FOCUSED = 0,
|
|
FOCUS_KEY = 0,
|
|
EDITED = 0,
|
|
HOVERED = 0,
|
|
PRESSED = 0,
|
|
SCROLLED = 0,
|
|
DISABLED = 0,
|
|
USER_1 = 0,
|
|
USER_2 = 0,
|
|
USER_3 = 0,
|
|
USER_4 = 0,
|
|
ANY = 0,
|
|
}
|
|
|
|
--- Enum for specifying what kind of alignment to use for an LVGL object. See
|
|
--- the [LVGL docs](https://docs.lvgl.io/8.3/overview/style-props.html#align)
|
|
--- for an explanation of each value.
|
|
--- @enum ObjAlignType
|
|
lvgl.ALIGN = {
|
|
DEFAULT = 0,
|
|
TOP_LEFT = 0,
|
|
TOP_MID = 0,
|
|
TOP_RIGHT = 0,
|
|
BOTTOM_LEFT = 0,
|
|
BOTTOM_MID = 0,
|
|
BOTTOM_RIGHT = 0,
|
|
LEFT_MID = 0,
|
|
RIGHT_MID = 0,
|
|
CENTER = 0,
|
|
OUT_TOP_LEFT = 0,
|
|
OUT_TOP_MID = 0,
|
|
OUT_TOP_RIGHT = 0,
|
|
OUT_BOTTOM_LEFT = 0,
|
|
OUT_BOTTOM_MID = 0,
|
|
OUT_BOTTOM_RIGHT = 0,
|
|
OUT_LEFT_TOP = 0,
|
|
OUT_LEFT_MID = 0,
|
|
OUT_LEFT_BOTTOM = 0,
|
|
OUT_RIGHT_TOP = 0,
|
|
OUT_RIGHT_MID = 0,
|
|
OUT_RIGHT_BOTTOM = 0,
|
|
}
|
|
|
|
--- Long modes for use with labels.
|
|
--- @enum LABEL
|
|
lvgl.LABEL = {
|
|
LONG_WRAP = 0,
|
|
LONG_DOT = 0,
|
|
LONG_SCROLL = 0,
|
|
LONG_SCROLL_CIRCULAR = 0,
|
|
LONG_CLIP = 0,
|
|
}
|
|
|
|
--- Scroll modes
|
|
--- @enum ScrollbarMode
|
|
lvgl.SCROLLBAR_MODE = {
|
|
OFF = 0,
|
|
ON = 0,
|
|
ACTIVE = 0,
|
|
AUTO = 0,
|
|
}
|
|
|
|
--- Directions values for dropdown and scroll directions
|
|
--- @enum Dir
|
|
lvgl.DIR = {
|
|
NONE = 0,
|
|
LEFT = 0,
|
|
RIGHT = 0,
|
|
TOP = 0,
|
|
BOTTOM = 0,
|
|
HOR = 0,
|
|
VER = 0,
|
|
ALL = 0,
|
|
}
|
|
|
|
--- Keyboard modes
|
|
--- @enum KeyboardMode
|
|
lvgl.KEYBOARD_MODE = {
|
|
TEXT_LOWER = 0,
|
|
TEXT_UPPER = 0,
|
|
SPECIAL = 0,
|
|
NUMBER = 0,
|
|
USER_1 = 0,
|
|
USER_2 = 0,
|
|
USER_3 = 0,
|
|
USER_4 = 0,
|
|
TEXT_ARABIC = 0,
|
|
}
|
|
|
|
--- Flow direction for flex layouts. See the [LVGL docs](https://docs.lvgl.io/8.3/layouts/flex.html#flex-flow)
|
|
--- for more details.
|
|
--- @enum FlexFlow
|
|
lvgl.FLEX_FLOW = {
|
|
ROW = 0,
|
|
COLUMN = 0,
|
|
ROW_WRAP = 0,
|
|
ROW_REVERSE = 0,
|
|
ROW_WRAP_REVERSE = 0,
|
|
COLUMN_WRAP = 0,
|
|
COLUMN_REVERSE = 0,
|
|
COLUMN_WRAP_REVERSE = 0,
|
|
}
|
|
|
|
--- Alignment values for flex layouts. See the [LVGL docs](https://docs.lvgl.io/8.3/layouts/flex.html#flex-align)
|
|
--- for more details.
|
|
--- @enum FlexAlign
|
|
lvgl.FLEX_ALIGN = {
|
|
START = 0,
|
|
END = 0,
|
|
CENTER = 0,
|
|
SPACE_EVENLY = 0,
|
|
SPACE_AROUND = 0,
|
|
SPACE_BETWEEN = 0,
|
|
}
|
|
|
|
--- Alignment values for grid layouts. See the [LVGL docs](https://docs.lvgl.io/8.3/layouts/grid.html#grid-align)
|
|
--- for more details.
|
|
--- @enum GridAlign
|
|
lvgl.GRID_ALIGN = {
|
|
START = 0,
|
|
CENTER = 0,
|
|
END = 0,
|
|
STRETCH = 0,
|
|
SPACE_EVENLY = 0,
|
|
SPACE_AROUND = 0,
|
|
SPACE_BETWEEN = 0,
|
|
}
|
|
|
|
--- Values for KEY events.
|
|
--- @enum KEY
|
|
lvgl.KEY = {
|
|
UP = 0,
|
|
DOWN = 0,
|
|
RIGHT = 0,
|
|
LEFT = 0,
|
|
ESC = 0,
|
|
DEL = 0,
|
|
BACKSPACE = 0,
|
|
ENTER = 0,
|
|
NEXT = 0,
|
|
PREV = 0,
|
|
HOME = 0,
|
|
END = 0,
|
|
}
|
|
|
|
lvgl.ANIM_REPEAT_INFINITE = 0
|
|
lvgl.ANIM_PLAYTIME_INFINITE = 0
|
|
lvgl.SIZE_CONTENT = 0
|
|
lvgl.RADIUS_CIRCLE = 0
|
|
lvgl.COORD_MAX = 0
|
|
lvgl.COORD_MIN = 0
|
|
lvgl.IMG_ZOOM_NONE = 0
|
|
lvgl.BTNMATRIX_BTN_NONE = 0
|
|
lvgl.CHART_POINT_NONE = 0
|
|
lvgl.DROPDOWN_POS_LAST = 0
|
|
lvgl.LABEL_DOT_NUM = 0
|
|
lvgl.LABEL_POS_LAST = 0
|
|
lvgl.LABEL_TEXT_SELECTION_OFF = 0
|
|
lvgl.TABLE_CELL_NONE = 0
|
|
lvgl.TEXTAREA_CURSOR_LAST = 0
|
|
lvgl.LAYOUT_FLEX = 0
|
|
lvgl.LAYOUT_GRID = 0
|
|
|
|
--- Converts an opacity value as a percentage into the LVGL opacity range of 0
|
|
--- to 255.
|
|
---@param p integer opacity value in range of 0..100
|
|
---@return integer opacity value in the range of 0..255
|
|
function lvgl.OPA(p)
|
|
end
|
|
|
|
--- Converts a size in percent into an LVGL size value.
|
|
---@param p integer size percentage
|
|
---@return integer size in LVGL units
|
|
function lvgl.PCT(p)
|
|
end
|
|
|
|
--- Returns the horizontal resolution of the display.
|
|
---@return integer
|
|
function lvgl.HOR_RES()
|
|
end
|
|
|
|
--- Returns the vertical resolution of the display.
|
|
---@return integer
|
|
function lvgl.VER_RES()
|
|
end
|
|
|
|
--- Creates a new base LVGL object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/obj.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Object
|
|
function lvgl.Object(parent, property)
|
|
end
|
|
|
|
--- Create a new Bar widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/bar.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? BarStyle Style properties to apply to this object
|
|
--- @return Bar
|
|
function lvgl.Bar(parent, property)
|
|
end
|
|
|
|
--- Create a new Button widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/btn.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Button
|
|
function lvgl.Button(parent, property)
|
|
end
|
|
|
|
--- Create a new Calendar widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/calendar.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? CalendarStyle Style properties to apply to this object
|
|
--- @return Calendar
|
|
function lvgl.Calendar(parent, property)
|
|
end
|
|
|
|
--- Create a new Checkbox widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/checkbox.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? CheckboxStyle Style properties to apply to this object
|
|
--- @return Checkbox
|
|
function lvgl.Checkbox(parent, property)
|
|
end
|
|
|
|
--- Create a new Dropdown widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/dropdown.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? DropdownStyle Style properties to apply to this object
|
|
--- @return Dropdown
|
|
function lvgl.Dropdown(parent, property)
|
|
end
|
|
|
|
--- Create a new Image widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/img.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? ImageStyle Style properties to apply to this object
|
|
--- @return Image
|
|
function lvgl.Image(parent, property)
|
|
end
|
|
|
|
--- Create a new Label widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/label.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? LabelStyle Style properties to apply to this object
|
|
--- @return Label
|
|
function lvgl.Label(parent, property)
|
|
end
|
|
|
|
--- Create a new Text Area widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/textarea.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? TextareaStyle Style properties to apply to this object
|
|
--- @return Textarea
|
|
function lvgl.Textarea(parent, property)
|
|
end
|
|
|
|
--- Create a new Keyboard widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/keyboard.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? KeyboardStyle Style properties to apply to this object
|
|
--- @return Keyboard
|
|
function lvgl.Keyboard(parent, property)
|
|
end
|
|
|
|
--- Create a new LED widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/led.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? LedStyle Style properties to apply to this object
|
|
--- @return Led
|
|
function lvgl.Led(parent, property)
|
|
end
|
|
|
|
--- Create a new List widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/list.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? ListStyle Style properties to apply to this object
|
|
--- @return List
|
|
function lvgl.List(parent, property)
|
|
end
|
|
|
|
--- Create a new Roller widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/roller.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? RollerStyle Style properties to apply to this object
|
|
--- @return Roller
|
|
function lvgl.Roller(parent, property)
|
|
end
|
|
|
|
--- Create a new Slider widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/slider.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? BarStyle Style properties to apply to this object. Sliders use the same style properties as Bars.
|
|
--- @return Slider
|
|
function lvgl.Slider(parent, property)
|
|
end
|
|
|
|
--- Create a new Switch widget. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/switch.html)
|
|
--- for details about this widget.
|
|
--- @param parent? Object The parent for this object, or nil to add to the screen root.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Switch
|
|
function lvgl.Switch(parent, property)
|
|
end
|
|
|
|
--- Create a new Timer. See the [LVGL docs](https://docs.lvgl.io/8.3/overview/timer.html)
|
|
--- for more details on LVGL's Timers system.
|
|
--- @param p TimerPara Parameters to use for configuring the timer.
|
|
--- @return Timer
|
|
function lvgl.Timer(p)
|
|
end
|
|
|
|
--- Create a new a font. Currently only the inbuilt "fusion" font family is
|
|
--- available, in "normal" weight and sizes 12 and 10.
|
|
--- @param family string Name of the font family.
|
|
--- @param size integer the font size in px
|
|
--- @param weight string the weight of the font. e.g.g "normal", "bold", "light"
|
|
--- @return Font
|
|
function lvgl.Font(family, size, weight)
|
|
end
|
|
|
|
--- Decodes an image from the filesystem and pins it into RAM, returning a
|
|
--- lightuserdata that can be passed to `img:set_src`.
|
|
--- @param path? string path to the encoded image
|
|
--- @return ImgData
|
|
function lvgl.ImgData(path)
|
|
end
|
|
|
|
--- Create a new style that can be applied to objects via `obj:add_style`.
|
|
--- @param p? StyleProp Style properties that will be applied by this style.
|
|
--- @return Style
|
|
function lvgl.Style(p)
|
|
end
|
|
|
|
---
|
|
--- Base LVGL object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/obj.html)
|
|
--- for additional details.
|
|
--- @class Object
|
|
obj = {}
|
|
|
|
--- Creates a new base LVGL object as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/obj.html)
|
|
--- for details about this widget.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Object
|
|
function obj:Object(property)
|
|
end
|
|
|
|
--- Create a new Bar widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/bar.html)
|
|
--- for details about this widget.
|
|
--- @param property? BarStyle Style properties to apply to this object
|
|
--- @return Bar
|
|
function obj:Bar(property)
|
|
end
|
|
|
|
--- Create a new Button widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/btn.html)
|
|
--- for details about this widget.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Button
|
|
function obj:Button(property)
|
|
end
|
|
|
|
--- Create a new Calendar widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/calendar.html)
|
|
--- for details about this widget.
|
|
--- @param property? CalendarStyle Style properties to apply to this object
|
|
--- @return Calendar
|
|
function obj:Calendar(property)
|
|
end
|
|
|
|
--- Create a new Checkbox widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/checkbox.html)
|
|
--- for details about this widget.
|
|
--- @param property? CheckboxStyle Style properties to apply to this object
|
|
--- @return Checkbox
|
|
function obj:Checkbox(property)
|
|
end
|
|
|
|
--- Create a new Dropdown widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/dropdown.html)
|
|
--- for details about this widget.
|
|
--- @param property? DropdownStyle Style properties to apply to this object
|
|
--- @return Dropdown
|
|
function obj:Dropdown(parent, property)
|
|
end
|
|
|
|
--- Create a new Image widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/img.html)
|
|
--- for details about this widget.
|
|
--- @param property? ImageStyle Style properties to apply to this object
|
|
--- @return Image
|
|
function obj:Image(property)
|
|
end
|
|
|
|
--- Create a new Label widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/label.html)
|
|
--- for details about this widget.
|
|
--- @param property? LabelStyle Style properties to apply to this object
|
|
--- @return Label
|
|
function obj:Label(property)
|
|
end
|
|
|
|
--- Create a new Text Area widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/textarea.html)
|
|
--- for details about this widget.
|
|
--- @param property? TextareaStyle Style properties to apply to this object
|
|
--- @return Textarea
|
|
function obj:Textarea(property)
|
|
end
|
|
|
|
--- Create a new Keyboard widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/keyboard.html)
|
|
--- for details about this widget.
|
|
--- @param property? KeyboardStyle Style properties to apply to this object
|
|
--- @return Keyboard
|
|
function obj:Keyboard(property)
|
|
end
|
|
|
|
--- Create a new LED widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/led.html)
|
|
--- for details about this widget.
|
|
--- @param property? LedStyle Style properties to apply to this object
|
|
--- @return Led
|
|
function obj:Led(property)
|
|
end
|
|
|
|
--- Create a new List widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/extra/list.html)
|
|
--- for details about this widget.
|
|
--- @param property? ListStyle Style properties to apply to this object
|
|
--- @return List
|
|
function obj:List(property)
|
|
end
|
|
|
|
--- Create a new Roller widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/roller.html)
|
|
--- for details about this widget.
|
|
--- @param property? RollerStyle Style properties to apply to this object
|
|
--- @return Roller
|
|
function obj:Roller(parent, property)
|
|
end
|
|
|
|
--- Create a new Slider widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/slider.html)
|
|
--- for details about this widget.
|
|
--- @param property? BarStyle Style properties to apply to this object. Sliders use the same style properties as Bars.
|
|
--- @return Slider
|
|
function obj:Slider(property)
|
|
end
|
|
|
|
--- Create a new Switch widget as a child of this object. See the [LVGL docs](https://docs.lvgl.io/8.3/widgets/core/switch.html)
|
|
--- for details about this widget.
|
|
--- @param property? StyleProp Style properties to apply to this object
|
|
--- @return Switch
|
|
function obj:Switch(property)
|
|
end
|
|
|
|
--- Sets new style properties on this object.
|
|
--- @param p StyleProp Style properties to be applied.
|
|
function obj:set(p)
|
|
end
|
|
|
|
--- Sets new style properties on this object.
|
|
--- @param p StyleProp Style properties to be applied.
|
|
--- @param selector integer Selector to detemine when the style is used
|
|
---
|
|
function obj:set_style(p, selector)
|
|
end
|
|
|
|
--- Sets this object's position relative to another object.
|
|
--- @param p AlignToPara
|
|
function obj:align_to(p)
|
|
end
|
|
|
|
--- Deletes this object, removing it from the view hierarchy.
|
|
function obj:delete()
|
|
end
|
|
|
|
--- Delete all children of this object
|
|
function obj:clean()
|
|
end
|
|
|
|
--- Sets the parent of this object, detaching it from any existing parent.
|
|
--- @param p Object The new parent object
|
|
function obj:set_parent(p)
|
|
end
|
|
|
|
--- Gets this object's parent
|
|
--- @return Object Parent
|
|
function obj:get_parent()
|
|
end
|
|
|
|
---
|
|
--- set and/or get object's parent
|
|
--- @param p Object
|
|
--- @return Object
|
|
function obj:parent(p)
|
|
end
|
|
|
|
---
|
|
--- get child object
|
|
--- @param id integer 0 the first child, -1 the lastly created child
|
|
--- @return Object
|
|
function obj:get_child(id)
|
|
end
|
|
|
|
---
|
|
--- get object children count
|
|
--- @return integer
|
|
function obj:get_child_cnt()
|
|
end
|
|
|
|
---
|
|
--- get the state of this object
|
|
--- @return ObjState
|
|
function obj:get_state(p)
|
|
end
|
|
|
|
---
|
|
--- Scroll to a given coordinate on an object.
|
|
--- @class ScrollToPara
|
|
--- @field x integer position x
|
|
--- @field y integer
|
|
--- @field anim boolean
|
|
---
|
|
--- @param p ScrollToPara
|
|
--- @return ObjState
|
|
function obj:scroll_to(p)
|
|
end
|
|
|
|
---
|
|
--- Tell whether an object is being scrolled or not at this moment
|
|
--- @return boolean
|
|
function obj:is_scrolling()
|
|
end
|
|
|
|
---
|
|
--- Tell whether an object is visible (even partially) now or not
|
|
--- @return boolean
|
|
function obj:is_visible()
|
|
end
|
|
|
|
---
|
|
--- add flag to object
|
|
--- @param p ObjFlag
|
|
--- @return nil
|
|
function obj:add_flag(p)
|
|
end
|
|
|
|
---
|
|
--- clear object flag
|
|
--- @param p ObjFlag
|
|
--- @return nil
|
|
function obj:clear_flag(p)
|
|
end
|
|
|
|
---
|
|
--- add state to object
|
|
--- @param p ObjState
|
|
--- @return nil
|
|
function obj:add_state(p)
|
|
end
|
|
|
|
---
|
|
--- clear object state
|
|
--- @param p ObjState
|
|
--- @return nil
|
|
function obj:clear_state(p)
|
|
end
|
|
|
|
---
|
|
--- add style to object
|
|
--- @param s Style
|
|
--- @param selector? integer
|
|
--- @return nil
|
|
function obj:add_style(s, selector)
|
|
end
|
|
|
|
---
|
|
--- remove style from object
|
|
--- @param s Style
|
|
--- @param selector? integer
|
|
--- @return nil
|
|
function obj:remove_style(s, selector)
|
|
end
|
|
|
|
---
|
|
--- remove all style from object
|
|
--- @return nil
|
|
function obj:remove_style_all()
|
|
end
|
|
|
|
---scroll obj by x,y
|
|
---@param x integer
|
|
---@param y integer
|
|
---@param anim_en? boolean
|
|
function obj:scroll_by(x, y, anim_en)
|
|
end
|
|
|
|
---scroll obj by x,y
|
|
---@param x integer
|
|
---@param y integer
|
|
---@param anim_en boolean
|
|
function obj:scroll_by_bounded(x, y, anim_en)
|
|
end
|
|
|
|
--- Scroll to an object until it becomes visible on its parent
|
|
---@param anim_en? boolean
|
|
function obj:scroll_to_view(anim_en)
|
|
end
|
|
|
|
--- Scroll to an object until it becomes visible on its parent
|
|
--- Do the same on the parent's parent, and so on.
|
|
--- Therefore the object will be scrolled into view even it has nested scrollable parents
|
|
---@param anim_en? boolean
|
|
function obj:scroll_to_view_recursive(anim_en)
|
|
end
|
|
|
|
---scroll obj by x,y, low level APIs
|
|
---@param x integer
|
|
---@param y integer
|
|
---@param anim_en boolean
|
|
function obj:scroll_by_raw(x, y, anim_en)
|
|
end
|
|
|
|
---Invalidate the area of the scrollbars
|
|
function obj:scrollbar_invalidate()
|
|
end
|
|
|
|
---Checked if the content is scrolled "in" and adjusts it to a normal position.
|
|
---@param anim_en boolean
|
|
function obj:readjust_scroll(anim_en)
|
|
end
|
|
|
|
---If object is editable
|
|
---@return boolean
|
|
function obj:is_editable()
|
|
end
|
|
|
|
--- class group def
|
|
---@return boolean
|
|
function obj:is_group_def()
|
|
end
|
|
|
|
--- Test whether the and object is positioned by a layout or not
|
|
---@return boolean
|
|
function obj:is_layout_positioned()
|
|
end
|
|
|
|
--- Mark the object for layout update.
|
|
---@return nil
|
|
function obj:mark_layout_as_dirty()
|
|
end
|
|
|
|
--- Align an object to the center on its parent. same as obj:set{align={type = lvgl.ALIGN.CENTER}}
|
|
---@return nil
|
|
function obj:center()
|
|
end
|
|
|
|
--- Align an object to the center on its parent. same as obj:set{align={type = lvgl.ALIGN.CENTER}}
|
|
---@return nil
|
|
function obj:invalidate()
|
|
end
|
|
|
|
--- Sets this object as the current selection of the object's group.
|
|
---@return nil
|
|
function obj:focus()
|
|
end
|
|
|
|
---
|
|
--- Object event callback. `para` is not used for now.
|
|
--- @alias EventCallback fun(obj:Object, code: ObjEventCode): nil
|
|
---
|
|
--- set object event callback
|
|
--- @param code ObjEventCode
|
|
--- @param cb EventCallback
|
|
--- @return nil
|
|
function obj:onevent(code, cb)
|
|
end
|
|
|
|
---
|
|
--- set object pressed event callback, same as obj:onevent(lvgl.EVENT.PRESSED, cb)
|
|
--- @param cb EventCallback
|
|
--- @return nil
|
|
function obj:onPressed(cb)
|
|
end
|
|
|
|
---
|
|
--- set object clicked event callback, same as obj:onevent(lvgl.EVENT.CLICKED, cb)
|
|
--- @param cb EventCallback
|
|
--- @return nil
|
|
function obj:onClicked(cb)
|
|
end
|
|
|
|
---
|
|
--- set object short clicked event callback, same as obj:onevent(lvgl.EVENT.SHORT_CLICKED, cb)
|
|
--- @param cb EventCallback
|
|
--- @return nil
|
|
function obj:onShortClicked(cb)
|
|
end
|
|
|
|
---
|
|
--- Create anim for object
|
|
--- @param p AnimPara
|
|
--- @return Anim
|
|
function obj:Anim(p)
|
|
end
|
|
|
|
---
|
|
--- Get coords of object
|
|
--- @return Coords coords
|
|
function obj:get_coords()
|
|
end
|
|
|
|
---
|
|
--- Get real postion of object relative to its parent
|
|
--- @return Coords coords
|
|
function obj:get_pos()
|
|
end
|
|
|
|
---
|
|
--- Calendar widget
|
|
---@class Calendar:Object
|
|
---
|
|
local calendar = {}
|
|
|
|
--- set method for calendar widget
|
|
--- @param p CalendarStyle
|
|
--- @return nil
|
|
function calendar:set(p)
|
|
end
|
|
|
|
--- get today para setting from calendar widget
|
|
--- @return CalendarDatePara
|
|
function calendar:get_today(p)
|
|
end
|
|
|
|
--- get the currently showed date
|
|
--- @return CalendarDatePara
|
|
function calendar:get_showed(p)
|
|
end
|
|
|
|
--- get the currently pressed day
|
|
--- @return CalendarDatePara
|
|
function calendar:get_pressed(p)
|
|
end
|
|
|
|
--- get the button matrix object of the calendar.
|
|
--- @return Object
|
|
function calendar:get_btnm(p)
|
|
end
|
|
|
|
--- create a calendar header with drop-drowns to select the year and month.
|
|
--- @return Object
|
|
function calendar:Arrow(p)
|
|
end
|
|
|
|
--- create a calendar header with drop-drowns to select the year and month
|
|
--- @return Object
|
|
function calendar:Dropdown(p)
|
|
end
|
|
|
|
---
|
|
--- Bar widget
|
|
---@class Bar:Object
|
|
---
|
|
local bar = {}
|
|
|
|
--- set method for bar widget
|
|
--- @param p BarStyle
|
|
--- @return nil
|
|
function bar:set(p)
|
|
end
|
|
|
|
---
|
|
--- Button widget
|
|
---@class Button:Object
|
|
---
|
|
local button = {}
|
|
|
|
--- set method for button widget
|
|
--- @param p ButtonStyle
|
|
--- @return nil
|
|
function button:set(p)
|
|
end
|
|
|
|
---
|
|
--- Checkbox widget
|
|
---@class Checkbox:Object
|
|
---
|
|
local checkbox = {}
|
|
|
|
--- set method
|
|
--- @param p CheckboxStyle
|
|
--- @return nil
|
|
function checkbox:set(p)
|
|
end
|
|
|
|
---
|
|
--- Get the text of a label
|
|
--- @return string
|
|
function checkbox:get_text()
|
|
end
|
|
|
|
---
|
|
--- Dropdown widget
|
|
---@class Dropdown:Object
|
|
---
|
|
local dropdown = {}
|
|
|
|
--- set method
|
|
--- @param p DropdownStyle
|
|
--- @return nil
|
|
function dropdown:set(p)
|
|
end
|
|
|
|
--- Gets an attribute of the dropdown.
|
|
--- @param which string Which property to retrieve. Valid values are "list", "options", "selected", "option_cnt", "selected_str", "option_index", "symbol", or "dir"
|
|
--- @param arg ? string
|
|
--- @return string | Dir | Object
|
|
function dropdown:get(which, arg)
|
|
end
|
|
|
|
--- Open the drop down list
|
|
function dropdown:open()
|
|
end
|
|
|
|
--- Close (Collapse) the drop-down list
|
|
function dropdown:close()
|
|
end
|
|
|
|
--- Tells whether the list is opened or not
|
|
function dropdown:is_open()
|
|
end
|
|
|
|
--- Add an options to a drop-down list from a string
|
|
--- @param option string
|
|
--- @param pos integer
|
|
function dropdown:add_option(option, pos)
|
|
end
|
|
|
|
--- Tells whether the list is opened or not
|
|
function dropdown:clear_option()
|
|
end
|
|
|
|
---
|
|
--- Image widget
|
|
---@class Image:Object
|
|
---
|
|
local img = {}
|
|
|
|
--- Image set method
|
|
--- @param p ImageStyle
|
|
--- @return nil
|
|
function img:set(p)
|
|
end
|
|
|
|
--- set image source
|
|
--- @param src string image source path
|
|
--- @return nil
|
|
function img:set_src(src)
|
|
end
|
|
|
|
--- set image offset
|
|
--- img:set_offset{x = 0, y = 100}
|
|
--- @param p table
|
|
--- @return nil
|
|
function img:set_offset(p)
|
|
end
|
|
|
|
--- set image pivot
|
|
--- img:set_pivot{x = 0, y = 100}
|
|
--- @param p table
|
|
--- @return nil
|
|
function img:set_pivot(p)
|
|
end
|
|
|
|
--- get image size, return w,h
|
|
--- w, h = img:get_img_size()
|
|
--- w, h = img:get_img_size("/path/to/this/image.png")
|
|
--- @param src ? string
|
|
--- @return integer, integer
|
|
function img:get_img_size(src)
|
|
end
|
|
|
|
---
|
|
--- Label widget
|
|
---@class Label: Object
|
|
---
|
|
local label = {}
|
|
|
|
--- Image set method
|
|
--- @param p LabelStyle
|
|
--- @return nil
|
|
function label:set(p)
|
|
end
|
|
|
|
---
|
|
--- Get the text of a label
|
|
--- @return string
|
|
function label:get_text()
|
|
end
|
|
|
|
---
|
|
--- Get the long mode of a label
|
|
--- @return string
|
|
function label:get_long_mode()
|
|
end
|
|
|
|
---
|
|
--- Get the recoloring attribute
|
|
--- @return string
|
|
function label:get_recolor()
|
|
end
|
|
|
|
---
|
|
--- Insert a text to a label.
|
|
--- @param pos integer
|
|
--- @param txt string
|
|
--- @return nil
|
|
function label:ins_text(pos, txt)
|
|
end
|
|
|
|
---
|
|
--- Delete characters from a label.
|
|
--- @param pos integer
|
|
--- @param cnt integer
|
|
--- @return nil
|
|
function label:cut_text(pos, cnt)
|
|
end
|
|
|
|
---
|
|
--- Slider widget
|
|
---@class Slider:Object
|
|
---
|
|
local slider = {}
|
|
|
|
--- set method for slider widget. Uses Bar widget's properties.
|
|
--- @param p BarStyle
|
|
--- @return nil
|
|
function slider:set(p)
|
|
end
|
|
|
|
--- get value of slider
|
|
--- @return integer
|
|
function slider:value()
|
|
end
|
|
|
|
--- get whether slider is dragged or not
|
|
--- @return boolean
|
|
function slider:is_dragged()
|
|
end
|
|
|
|
---
|
|
--- Switch widget
|
|
---@class Switch:Object
|
|
---
|
|
local switch = {}
|
|
|
|
--- set method for switch widget
|
|
--- @param p StyleProp
|
|
--- @return nil
|
|
function switch:set(p)
|
|
end
|
|
|
|
--- get checked state of switch
|
|
--- @return boolean
|
|
function switch:enabled()
|
|
end
|
|
|
|
---
|
|
--- Textarea widget
|
|
---@class Textarea: Object
|
|
---
|
|
local textarea = {}
|
|
|
|
--- Textarea set method
|
|
--- @param p TextareaStyle
|
|
--- @return nil
|
|
function textarea:set(p)
|
|
end
|
|
|
|
--- get textarea text
|
|
--- @return string
|
|
function textarea:get_text(p)
|
|
end
|
|
|
|
---
|
|
--- Keyboard widget
|
|
---@class Keyboard: Object based on btnmatrix object
|
|
---
|
|
local keyboard = {}
|
|
|
|
--- Keyboard set method
|
|
--- @param p KeyboardStyle
|
|
--- @return nil
|
|
function keyboard:set(p)
|
|
end
|
|
|
|
---
|
|
--- LED widget
|
|
---@class Led: Object
|
|
---
|
|
local led = {}
|
|
|
|
--- LED set method
|
|
--- @param p LedStyle
|
|
--- @return nil
|
|
function led:set(p)
|
|
end
|
|
|
|
--- LED set to ON
|
|
--- @return nil
|
|
function led:on()
|
|
end
|
|
|
|
--- LED set to OFF
|
|
--- @return nil
|
|
function led:off()
|
|
end
|
|
|
|
--- toggle LED status
|
|
--- @return nil
|
|
function led:toggle()
|
|
end
|
|
|
|
--- get LED brightness
|
|
--- @return integer
|
|
function led:get_brightness()
|
|
end
|
|
|
|
---
|
|
--- List widget
|
|
---@class List: Object
|
|
---
|
|
local list = {}
|
|
|
|
--- List set method
|
|
--- @param p ListStyle
|
|
--- @return nil
|
|
function list:set(p)
|
|
end
|
|
|
|
--- add text to list
|
|
--- @param text string
|
|
--- @return Label
|
|
function list:add_text(text)
|
|
end
|
|
|
|
--- add button to list
|
|
--- @param icon ImgSrc | nil
|
|
--- @param text? string
|
|
--- @return Object a button object
|
|
function list:add_btn(icon, text)
|
|
end
|
|
|
|
--- get list button text
|
|
--- @param btn Object
|
|
--- @return string
|
|
function list:get_btn_text(btn)
|
|
end
|
|
|
|
---
|
|
--- Roller widget
|
|
---@class Roller: Object
|
|
---
|
|
local roller = {}
|
|
|
|
--- Roller set method
|
|
--- @param p RollerStyle
|
|
--- @return nil
|
|
function roller:set(p)
|
|
end
|
|
|
|
--- Get the options of a roller
|
|
--- @return string
|
|
function roller:get_options()
|
|
end
|
|
|
|
--- Get the index of the selected option
|
|
--- @return integer
|
|
function roller:get_selected()
|
|
end
|
|
|
|
--- Get the current selected option as a string.
|
|
--- @return string
|
|
function roller:get_selected_str()
|
|
end
|
|
|
|
--- Get the total number of options
|
|
--- @return integer
|
|
function roller:get_options_cnt()
|
|
end
|
|
|
|
---
|
|
--- Anim
|
|
---@class Anim
|
|
---
|
|
local Anim = {}
|
|
|
|
--- start animation
|
|
--- @return nil
|
|
function Anim:start()
|
|
end
|
|
|
|
--- set animation new parameters
|
|
--- @param para AnimPara new animation parameters
|
|
--- @return nil
|
|
function Anim:set(para)
|
|
end
|
|
|
|
--- stop animation
|
|
--- @return nil
|
|
function Anim:stop()
|
|
end
|
|
|
|
--- delete animation
|
|
--- @return nil
|
|
function Anim:delete()
|
|
end
|
|
|
|
---
|
|
--- Timer
|
|
---@class Timer
|
|
---
|
|
local timer = {}
|
|
|
|
--- set timer property
|
|
--- @param p TimerPara
|
|
--- @return nil
|
|
function timer:set(p)
|
|
end
|
|
|
|
--- resume timer
|
|
--- @return nil
|
|
function timer:resume()
|
|
end
|
|
|
|
--- pause timer
|
|
--- @return nil
|
|
function timer:pause()
|
|
end
|
|
|
|
--- delete timer
|
|
--- @return nil
|
|
function timer:delete()
|
|
end
|
|
|
|
--- make timer ready now, cb will be made soon on next loop
|
|
--- @return nil
|
|
function timer:ready()
|
|
end
|
|
|
|
--[[
|
|
Font is a light userdata that can be uset to set style text_font.
|
|
]]
|
|
--- @class Font
|
|
---
|
|
|
|
local font = {}
|
|
|
|
|
|
--- Decoded image data that is pinned to memory.
|
|
--- @class ImgData
|
|
|
|
local ImgData = {}
|
|
|
|
---
|
|
--- @class Style : lightuserdata
|
|
---
|
|
local style = {}
|
|
|
|
--- update style properties
|
|
--- @param p StyleProp
|
|
--- @return nil
|
|
function style:set(p)
|
|
end
|
|
|
|
--- delete style, only delted style could be gc'ed
|
|
--- @return nil
|
|
function style:delete()
|
|
end
|
|
|
|
--- remove specified property from style
|
|
--- @param p string property name from field of StyleProp
|
|
--- @return nil
|
|
function style:remove_prop(p)
|
|
end
|
|
|
|
---
|
|
--- Align parameter
|
|
--- @class Align
|
|
--- @field type ObjAlignType
|
|
--- @field x_ofs integer
|
|
--- @field y_ofs integer
|
|
|
|
--- AlignTo parameter
|
|
--- @class AlignToPara
|
|
--- @field type ObjAlignType
|
|
--- @field base Object
|
|
--- @field x_ofs integer
|
|
|
|
--- Style properties
|
|
--- @class StyleProp
|
|
--- @field w? integer
|
|
--- @field width? integer
|
|
--- @field min_width? integer
|
|
--- @field max_width? integer
|
|
--- @field height? integer
|
|
--- @field min_height? integer
|
|
--- @field max_height? integer
|
|
--- @field x? integer
|
|
--- @field y? integer
|
|
--- @field size? integer set size is equivalent to set w/h to same value
|
|
--- @field align? Align | ObjAlignType
|
|
--- @field transform_width? integer
|
|
--- @field transform_height? integer
|
|
--- @field translate_x? integer
|
|
--- @field translate_y? integer
|
|
--- @field transform_zoom? integer
|
|
--- @field transform_angle? integer
|
|
--- @field transform_pivot_x? integer
|
|
--- @field transform_pivot_y? integer
|
|
--- @field pad_all? integer
|
|
--- @field pad_top? integer
|
|
--- @field pad_bottom? integer
|
|
--- @field pad_ver? integer
|
|
--- @field pad_left? integer
|
|
--- @field pad_right? integer
|
|
--- @field pad_hor? integer
|
|
--- @field pad_row? integer
|
|
--- @field pad_column? integer
|
|
--- @field pad_gap? integer
|
|
--- @field bg_color? integer | string text color in hex integer or #RGB or #RRGGBB format
|
|
--- @field bg_opa? integer
|
|
--- @field bg_grad_color? integer
|
|
--- @field bg_grad_dir? integer
|
|
--- @field bg_main_stop? integer
|
|
--- @field bg_grad_stop? integer
|
|
--- @field bg_dither_mode? integer
|
|
--- @field bg_img_src? integer
|
|
--- @field bg_img_opa? integer
|
|
--- @field bg_img_recolor? integer
|
|
--- @field bg_img_recolor_opa? integer
|
|
--- @field bg_img_tiled? integer
|
|
--- @field border_color? integer | string
|
|
--- @field border_opa? integer
|
|
--- @field border_width? integer
|
|
--- @field border_side? integer
|
|
--- @field border_post? integer
|
|
--- @field outline_width? integer
|
|
--- @field outline_color? integer | string
|
|
--- @field outline_opa? integer
|
|
--- @field outline_pad? integer
|
|
--- @field shadow_width? integer
|
|
--- @field shadow_ofs_x? integer
|
|
--- @field shadow_ofs_y? integer
|
|
--- @field shadow_spread? integer
|
|
--- @field shadow_color? integer | string
|
|
--- @field shadow_opa? integer
|
|
--- @field img_opa? integer
|
|
--- @field img_recolor? integer
|
|
--- @field img_recolor_opa? integer
|
|
--- @field line_width? integer
|
|
--- @field line_dash_width? integer
|
|
--- @field line_dash_gap? integer
|
|
--- @field line_rounded? integer
|
|
--- @field line_color? integer | string
|
|
--- @field line_opa? integer
|
|
--- @field arc_width? integer
|
|
--- @field arc_rounded? integer
|
|
--- @field arc_color? integer | string
|
|
--- @field arc_opa? integer
|
|
--- @field arc_img_src? integer
|
|
--- @field text_color? integer | string
|
|
--- @field text_opa? integer
|
|
--- @field text_font? Font | BuiltinFont
|
|
--- @field text_letter_space? integer
|
|
--- @field text_line_space/ integer
|
|
--- @field text_decor? integer
|
|
--- @field text_align? integer
|
|
--- @field radius? integer
|
|
--- @field clip_corner? integer
|
|
--- @field opa? integer
|
|
--- @field color_filter_opa? integer
|
|
--- @field anim_time? integer
|
|
--- @field anim_speed? integer
|
|
--- @field blend_mode? integer
|
|
--- @field layout? integer
|
|
--- @field base_dir? integer
|
|
--- @field flex_flow? FlexFlow
|
|
--- @field flex_main_place? FlexAlign
|
|
--- @field flex_cross_place? FlexAlign
|
|
--- @field flex_track_place/ FlexAlign
|
|
--- @field flex_grow? integer 0..255
|
|
--- @field flex? FlexLayoutPara
|
|
|
|
---
|
|
|
|
--- Object style
|
|
--- @class ObjectStyle :StyleProp
|
|
--- @field x integer
|
|
--- @field y integer
|
|
--- @field w integer
|
|
--- @field h integer
|
|
--- @field align Align | integer
|
|
--- @field align_to AlignToPara
|
|
--- @field scrollbar_mode ScrollbarMode
|
|
--- @field scroll_dir Dir
|
|
--- @field scroll_snap_x integer
|
|
--- @field scroll_snap_y integer
|
|
---
|
|
|
|
--- Image style
|
|
--- @class ImageStyle :StyleProp
|
|
--- @field src string
|
|
--- @field offset_x integer offset of image
|
|
--- @field offset_y integer
|
|
--- @field angle integer
|
|
--- @field zoom integer
|
|
--- @field antialias boolean
|
|
--- @field pivot table
|
|
---
|
|
|
|
--- Label style
|
|
--- @class LabelStyle :StyleProp
|
|
--- @field text string
|
|
|
|
--- Bar style
|
|
--- @class BarStyle :StyleProp
|
|
--- @field range BarRangePara
|
|
--- @field value integer
|
|
|
|
--- Button style
|
|
--- @class ButtonStyle :StyleProp
|
|
|
|
--- Checkbox style
|
|
--- @class CalendarStyle :StyleProp
|
|
--- @field today CalendarDatePara
|
|
--- @field showed CalendarDatePara
|
|
|
|
--- Checkbox style
|
|
--- @class CheckboxStyle :StyleProp
|
|
--- @field text string
|
|
|
|
--- Dropdown style
|
|
--- @class DropdownStyle :StyleProp
|
|
--- @field text string | nil
|
|
--- @field options string
|
|
--- @field selected integer
|
|
--- @field dir Dir
|
|
--- @field symbol lightuserdata | string
|
|
--- @field highlight boolean
|
|
|
|
--- Textarea style
|
|
--- @class TextareaStyle :StyleProp
|
|
--- @field text string
|
|
--- @field placeholder string
|
|
--- @field cursor integer cursor position
|
|
--- @field password_mode boolean enable password
|
|
--- @field one_line boolean enable one line mode
|
|
--- @field password_bullet string Set the replacement characters to show in password mode
|
|
--- @field accepted_chars string DO NOT USE. Set a list of characters. Only these characters will be accepted by the text area E.g. "+-.,0123456789"
|
|
--- @field max_length integer Set max length of a Text Area.
|
|
--- @field password_show_time integer Set how long show the password before changing it to '*'
|
|
|
|
--- Keyboard style
|
|
--- @class KeyboardStyle :StyleProp
|
|
--- @field textarea Textarea textarea object
|
|
--- @field mode KeyboardMode
|
|
--- @field popovers boolean Show the button title in a popover when pressed.
|
|
|
|
--- Led style
|
|
--- @class LedStyle :StyleProp
|
|
--- @field color integer|string color of led
|
|
--- @field brightness integer brightness in range of 0..255
|
|
|
|
--- List style
|
|
--- @class ListStyle :StyleProp
|
|
|
|
--- Roller style
|
|
--- @class RollerStyle :StyleProp
|
|
--- @field options table | string
|
|
--- @field selected table | integer
|
|
--- @field visible_cnt integer
|
|
|
|
---
|
|
--- Anim(for object) parameter
|
|
--- @alias AnimExecCb fun(obj:any, value:integer): nil
|
|
--- @alias AnimDoneCb fun(anim:Anim, var:any): nil
|
|
|
|
--- @class AnimPara
|
|
--- @field run boolean run this anim right now, or later using anim:start(). default: false
|
|
--- @field start_value integer start value
|
|
--- @field end_value integer
|
|
--- @field duration integer Anim duration in milisecond
|
|
--- @field delay integer Set a delay before starting the animation
|
|
--- @field repeat_count integer Anim repeat count, default: 1, set to 0 to disable repeat, set to lvgl.ANIM_REPEAT_INFINITE for infinite repeat, set to any other integer for specified repeate count
|
|
--- @field playback_delay integer
|
|
--- @field playback_time integer
|
|
--- @field early_apply boolean set start_value right now or not. default: true
|
|
--- @field path string | "linear" | "ease_in" | "ease_out" | "ease_in_out" | "overshoot" | "bounce" | "step"
|
|
--- @field exec_cb AnimExecCb
|
|
--- @field done_cb AnimDoneCb
|
|
|
|
|
|
---
|
|
--- Timer para
|
|
--- @alias TimerCallback fun(t:Timer): nil
|
|
--- @class TimerPara
|
|
--- @field paused boolean Do not start timer immediaely
|
|
--- @field period integer timer period in ms unit
|
|
--- @field repeat_count integer | -1 |
|
|
--- @field cb TimerCallback
|
|
---
|
|
|
|
|
|
---
|
|
--- @alias ImgSrc string | lightuserdata
|
|
|
|
--- Alignment values for flex layouts. See the [LVGL docs](https://docs.lvgl.io/8.3/layouts/flex.html#flex-align)
|
|
--- for more details.
|
|
--- @alias flexAlignOptions
|
|
---| "flex-start"
|
|
---| "flex-end"
|
|
---| "center" wow
|
|
---| "space-between"
|
|
---| "space-around"
|
|
---| "space-evenly"
|
|
|
|
--- @class FlexLayoutPara
|
|
--- @field flex_direction? "row" | "column" | "row-reverse" | "column-reverse"
|
|
--- @field flex_wrap? "nowrap" | "wrap" | "wrap-reverse"
|
|
--- @field justify_content? flexAlignOptions
|
|
--- @field align_items? flexAlignOptions
|
|
--- @field align_content? flexAlignOptions
|
|
|
|
|
|
---
|
|
--- BarRange para
|
|
--- @class BarRangePara
|
|
--- @field min integer
|
|
--- @field max integer
|
|
---
|
|
|
|
---
|
|
--- CalendarToday para
|
|
--- @class CalendarDatePara
|
|
--- @field year integer
|
|
--- @field month integer
|
|
--- @field day integer
|
|
---
|
|
|
|
---
|
|
--- Coordinates
|
|
--- @class Coords
|
|
--- @field x1 integer
|
|
--- @field y1 integer
|
|
--- @field x2 integer
|
|
--- @field y2 integer
|
|
---
|
|
|
|
return lvgl
|
|
|