|
NexusForce 1.0.0
A rigorously engineered full-stack C++ backend library.
|
虚拟UI元素 更多...
#include <element.hpp>
Public 类型 | |
| enum class | kind : uint8_t { empty , vbox , hbox , zstack , text , spacer , separator , button , text_input , checkbox , scroll_view , canvas , when , each , flexbox , gridbox } |
| 元素类型枚举 更多... | |
Public 成员函数 | |
| element & | with_key (size_t k) |
| 分配列表 key,帮助 Reconciler 追踪元素身份 | |
| element & | with_style (const tui::style &s) |
| 合并样式 | |
静态 Public 成员函数 | |
| static element | canvas (function< void(int, int, int, int)> draw_function, tui::style style={}) |
| 自定义绘制区域 | |
| static element | flexbox (vector< element > children, box_props config={}) |
| CSS-flexbox 弹性容器 | |
| static element | gridbox (vector< vector< element > > grid) |
| 网格布局容器 | |
| static element | when (bool cond, function< element()> then, function< element()> otherwise=[]() { return element::empty();}) |
| 条件渲染 | |
| template<typename T> | |
| static element | each (const vector< T > &items, function< element(const T &, size_t)> render) |
| 列表渲染 | |
虚拟UI元素
纯值类型,描述 UI 树的一个节点。
在文件 element.hpp 第 37 行定义.
|
strong |
元素类型枚举
在文件 element.hpp 第 42 行定义.
|
inlinestatic |
列表渲染
| T | 列表元素类型 |
| items | 数据列表 |
| render | 渲染回调,接收 (item引用, index) |
在文件 element.hpp 第 177 行定义.
引用了 each , 以及 neforce::vector< T, Alloc >::size().
CSS-flexbox 弹性容器
| children | 子元素列表 |
| config | 布局配置 |
网格布局容器
| grid | 二维子元素网格 |
|
static |
条件渲染
| cond | 条件 |
| then | 条件为真时的渲染函数 |
| otherwise | 条件为假时的渲染函数 |
| element & neforce::tui::element::with_key | ( | size_t | k | ) |
分配列表 key,帮助 Reconciler 追踪元素身份
| k | 唯一标识 |
| element & neforce::tui::element::with_style | ( | const tui::style & | s | ) |
合并样式
| s | 要合并的样式 |