34 lines
888 B
Markdown
34 lines
888 B
Markdown
|
|
# ConsolePanel
|
||
|
|
|
||
|
|
**命名空间**: `XCEngine::Editor`
|
||
|
|
|
||
|
|
**类型**: `class`
|
||
|
|
|
||
|
|
**源文件**: `editor/src/panels/ConsolePanel.h`
|
||
|
|
|
||
|
|
**描述**: 控制台面板,负责根据过滤状态显示编辑器日志,并绘制日志工具栏。
|
||
|
|
|
||
|
|
## 概述
|
||
|
|
|
||
|
|
`ConsolePanel` 当前围绕两块逻辑展开:
|
||
|
|
|
||
|
|
- 一个 `UI::ConsoleFilterState`
|
||
|
|
- 一个 `EditorConsoleSink` 日志源
|
||
|
|
|
||
|
|
## 当前实现说明
|
||
|
|
|
||
|
|
- 构造时面板名为 `"Console"`。
|
||
|
|
- `Render()` 里会先绘制工具栏,再绘制日志滚动区域。
|
||
|
|
- 日志行实际绘制和工具栏动作主要委托给 `Actions` 层。
|
||
|
|
|
||
|
|
## 当前实现边界
|
||
|
|
|
||
|
|
- 当前控制台面板自身很薄,大部分行为来自 action router 和 `EditorConsoleSink`。
|
||
|
|
- 当前过滤状态存在面板实例内,不是全局日志视图配置对象。
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [panels](../panels.md)
|
||
|
|
- [Actions](../../Actions/Actions.md)
|
||
|
|
- [UI](../../UI/UI.md)
|