RealmUI Runtime
Fluxo de Estado
- Host envia
CmdUiDocumentCreate,CmdUiThemeDefine,CmdUiApplyOps. - Core atualiza
UiState(documents,themes,images, foco e caches). - Pass UI executa layout/paint e gera draw data.
PlatformOutputdo egui vira:- comandos internos de janela/cursor/IME;
- eventos para host (
UiOpenUrl, clipboard, screenshot request, viewport sync).
Entrada
- Pointer/keyboard chegam do subsistema de input.
- Roteamento passa por
target layere resolve realm/document foco. - Para
RealmPlane/WidgetRealmViewport, a posição é transformada para coordenadas locais.
Saída
- Eventos de widget:
EngineEvent::Ui(UiEvent). - Eventos de sistema UI:
EngineEvent::System(SystemEvent::Ui*). - Falhas diagnósticas:
SystemEvent::Errortambém é emitido.
Recursos Assíncronos
CmdUiImageCreateFromBufferinicia decode assíncrono.- Progresso por eventos:
UiImageProcessingStartedUiImageProcessingProgressUiImageProcessingFinishedUiImageReady
CmdUiImageDisposecancela decode pendente e descarta resultado.
Foco
- Foco é mapeado por
windowId + realmId + documentId + nodeId. - Comandos:
CmdUiFocusSetCmdUiFocusGet
Trace de Input
CmdUiEventTraceSetcontrola:- nível (
off/errors/basic/full); - sampling (
0..100).
- nível (
- Trace inclui hops realm/target/layer para depuração de roteamento.
Documentation Vulfram Core