React-style UI component: implement build(), call setState / markDirty, then rebuild(). Mounts onto a named UIHost via mountAs / attach. 更多...
#include <Component.h>
Public 成员函数 | |
| virtual | ~Component ()=default |
| virtual WidgetDesc | build ()=0 |
| void | attach (UIHost *host) |
| void | mountAs (const std::string &hostName) |
| UIHost * | host () const |
| void | rebuild (bool forceFull=false) |
| Rebuild tree onto host (reconcile by key when possible). | |
| void | markDirty () |
| bool | isDirty () const |
| bool | updateIfDirty () |
| If dirty, rebuild and clear flag. Returns true if rebuilt. | |
Protected 成员函数 | |
| void | setState () |
| Subclasses call after mutating local state that affects build(). | |
详细描述
React-style UI component: implement build(), call setState / markDirty, then rebuild(). Mounts onto a named UIHost via mountAs / attach.
在文件 Component.h 第 15 行定义.
构造及析构函数说明
◆ ~Component()
|
virtualdefault |
成员函数说明
◆ attach()
| void eve::ui::Component::attach | ( | UIHost * | host | ) |
◆ build()
|
pure virtual |
被这些函数引用 rebuild().
◆ host()
|
inline |
在文件 Component.h 第 23 行定义.
被这些函数引用 attach().
◆ isDirty()
|
inline |
在文件 Component.h 第 29 行定义.
◆ markDirty()
|
inline |
在文件 Component.h 第 28 行定义.
◆ mountAs()
| void eve::ui::Component::mountAs | ( | const std::string & | hostName | ) |
在文件 Component.cpp 第 12 行定义.
引用了 attach(), eve::ui::UIHost::createHost(), eve::ui::UISystem::findHost(), h , 以及 rebuild().
◆ rebuild()
| void eve::ui::Component::rebuild | ( | bool | forceFull = false | ) |
Rebuild tree onto host (reconcile by key when possible).
在文件 Component.cpp 第 19 行定义.
引用了 build(), eve::ui::UIHost::setTree() , 以及 eve::ui::UIHost::setTreeReconcile().
被这些函数引用 mountAs() , 以及 updateIfDirty().
◆ setState()
|
inlineprotected |
Subclasses call after mutating local state that affects build().
在文件 Component.h 第 36 行定义.
◆ updateIfDirty()
| bool eve::ui::Component::updateIfDirty | ( | ) |
If dirty, rebuild and clear flag. Returns true if rebuilt.
在文件 Component.cpp 第 27 行定义.
引用了 rebuild().
该类的文档由以下文件生成:
- src/modules/ui/Component.h
- src/modules/ui/Component.cpp