diff --git a/docs/api/XCEditor/Collections/Collections.md b/docs/api/XCEditor/Collections/Collections.md new file mode 100644 index 00000000..4a415b3e --- /dev/null +++ b/docs/api/XCEditor/Collections/Collections.md @@ -0,0 +1,47 @@ +# Collections + +**命名空间**: `XCEngine::UI::Editor::Widgets` + +**类型**: `submodule` + +**描述**: 编辑器集合类控件子模块,覆盖列表、树、标签栏、滚动视图及其交互辅助。 + +## 概述 + +`Collections` 主要提供“多项内容如何排布、命中、滚动与选择”的公共 UI 原语。按当前头文件与实现分工: + +- `UIEditorListView*` + - 双行列表项布局、命中测试与交互 +- `UIEditorTreeView*` + - 树节点可见性、展开/折叠与行命中 +- `UIEditorScrollView*` + - 视口、内容范围与滚动条交互 +- `UIEditorTabStrip*` + - 面板标签切换 +- `UIEditorInlineRenameSession` + - 就地重命名会话状态 + +这些类型大多位于 `XCEngine::UI::Editor::Widgets` 命名空间下,并且被 `Fields` 与 `Shell` 复用。 + +## 公开头文件 + +- `UIEditorInlineRenameSession.h` +- `UIEditorListView.h` +- `UIEditorListViewInteraction.h` +- `UIEditorScrollView.h` +- `UIEditorScrollViewInteraction.h` +- `UIEditorTabStrip.h` +- `UIEditorTabStripInteraction.h` +- `UIEditorTreeView.h` +- `UIEditorTreeViewInteraction.h` + +## 当前实现边界 + +- 当前这里只建立目录索引页,具体头文件页仍需后续分批补齐。 +- 该模块依赖 `XCEngine/UI/Widgets` 的选择、展开、输入模型,而不是自行维护通用状态容器。 + +## 相关文档 + +- [XCEditor](../XCEditor.md) +- [Fields](../Fields/Fields.md) +- [Widgets](../Widgets/Widgets.md) diff --git a/docs/api/XCEditor/Collections/UIEditorInlineRenameSession/UIEditorInlineRenameSession.md b/docs/api/XCEditor/Collections/UIEditorInlineRenameSession/UIEditorInlineRenameSession.md new file mode 100644 index 00000000..257d94dd --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorInlineRenameSession/UIEditorInlineRenameSession.md @@ -0,0 +1,36 @@ +# UIEditorInlineRenameSession + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorInlineRenameSession.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorInlineRenameSession` public API。 + +## 概述 + +`UIEditorInlineRenameSession.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorInlineRenameSessionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorInlineRenameSessionRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorInlineRenameSessionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorInlineRenameSessionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `active` | `bool` | 结构体公开字段。 | `false` | +| `itemId` | `std::string` | 结构体公开字段。 | `{}` | +| `textFieldSpec` | `Widgets::UIEditorTextFieldSpec` | 结构体公开字段。 | `{}` | +| `textFieldInteraction` | `UIEditorTextFieldInteractionState` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorListView/UIEditorListView.md b/docs/api/XCEditor/Collections/UIEditorListView/UIEditorListView.md new file mode 100644 index 00000000..38b1a7e2 --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorListView/UIEditorListView.md @@ -0,0 +1,37 @@ +# UIEditorListView + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Collections/UIEditorListView.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorListView` public API。 + +## 概述 + +`UIEditorListView.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorListViewHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorListViewItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewState` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorListViewInteraction/UIEditorListViewInteraction.md b/docs/api/XCEditor/Collections/UIEditorListViewInteraction/UIEditorListViewInteraction.md new file mode 100644 index 00000000..e7188f4d --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorListViewInteraction/UIEditorListViewInteraction.md @@ -0,0 +1,36 @@ +# UIEditorListViewInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorListViewInteraction.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorListViewInteraction` public API。 + +## 概述 + +`UIEditorListViewInteraction.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorListViewInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorListViewInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `listViewState` | `Widgets::UIEditorListViewState` | 结构体公开字段。 | `{}` | +| `keyboardNavigation` | `::XCEngine::UI::Widgets::UIKeyboardNavigationModel` | 结构体公开字段。 | `{}` | +| `selectionAnchorId` | `std::string` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorScrollView/UIEditorScrollView.md b/docs/api/XCEditor/Collections/UIEditorScrollView/UIEditorScrollView.md new file mode 100644 index 00000000..2523169c --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorScrollView/UIEditorScrollView.md @@ -0,0 +1,38 @@ +# UIEditorScrollView + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Collections/UIEditorScrollView.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorScrollView` public API。 + +## 概述 + +`UIEditorScrollView.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorScrollViewHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorScrollViewState` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Content` | - | 枚举项。 | +| `ScrollbarTrack` | - | 枚举项。 | +| `ScrollbarThumb` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorScrollViewInteraction/UIEditorScrollViewInteraction.md b/docs/api/XCEditor/Collections/UIEditorScrollViewInteraction/UIEditorScrollViewInteraction.md new file mode 100644 index 00000000..4c53bd3c --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorScrollViewInteraction/UIEditorScrollViewInteraction.md @@ -0,0 +1,36 @@ +# UIEditorScrollViewInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorScrollViewInteraction.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorScrollViewInteraction` public API。 + +## 概述 + +`UIEditorScrollViewInteraction.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorScrollViewInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorScrollViewInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `scrollViewState` | `Widgets::UIEditorScrollViewState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `thumbDragStartPointerY` | `float` | 结构体公开字段。 | `0.0f` | +| `thumbDragStartOffset` | `float` | 结构体公开字段。 | `0.0f` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorTabStrip/UIEditorTabStrip.md b/docs/api/XCEditor/Collections/UIEditorTabStrip/UIEditorTabStrip.md new file mode 100644 index 00000000..657c08ef --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorTabStrip/UIEditorTabStrip.md @@ -0,0 +1,39 @@ +# UIEditorTabStrip + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorTabStrip.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorTabStrip` public API。 + +## 概述 + +`UIEditorTabStrip.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTabStripItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorTabStripHitTarget` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `tabId` | `std::string` | 结构体公开字段。 | `{}` | +| `title` | `std::string` | 结构体公开字段。 | `{}` | +| `closable` | `bool` | 结构体公开字段。 | `true` | +| `desiredHeaderLabelWidth` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorTabStripInteraction/UIEditorTabStripInteraction.md b/docs/api/XCEditor/Collections/UIEditorTabStripInteraction/UIEditorTabStripInteraction.md new file mode 100644 index 00000000..4aabfa81 --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorTabStripInteraction/UIEditorTabStripInteraction.md @@ -0,0 +1,36 @@ +# UIEditorTabStripInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorTabStripInteraction.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorTabStripInteraction` public API。 + +## 概述 + +`UIEditorTabStripInteraction.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTabStripInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorTabStripInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `tabStripState` | `Widgets::UIEditorTabStripState` | 结构体公开字段。 | `{}` | +| `navigationModel` | `::XCEngine::UI::Widgets::UITabStripModel` | 结构体公开字段。 | `{}` | +| `pressedTarget` | `Widgets::UIEditorTabStripHitTarget` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorTreeView/UIEditorTreeView.md b/docs/api/XCEditor/Collections/UIEditorTreeView/UIEditorTreeView.md new file mode 100644 index 00000000..b1536f6c --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorTreeView/UIEditorTreeView.md @@ -0,0 +1,38 @@ +# UIEditorTreeView + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Collections/UIEditorTreeView.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorTreeView` public API。 + +## 概述 + +`UIEditorTreeView.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTreeViewHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorTreeViewItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Disclosure` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Collections/UIEditorTreeViewInteraction/UIEditorTreeViewInteraction.md b/docs/api/XCEditor/Collections/UIEditorTreeViewInteraction/UIEditorTreeViewInteraction.md new file mode 100644 index 00000000..a25ed039 --- /dev/null +++ b/docs/api/XCEditor/Collections/UIEditorTreeViewInteraction/UIEditorTreeViewInteraction.md @@ -0,0 +1,36 @@ +# UIEditorTreeViewInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Collections/UIEditorTreeViewInteraction.h` + +**描述**: 定义 `XCEditor/Collections` 子目录中的 `UIEditorTreeViewInteraction` public API。 + +## 概述 + +`UIEditorTreeViewInteraction.h` 是 `XCEditor/Collections` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTreeViewInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorTreeViewInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `treeViewState` | `Widgets::UIEditorTreeViewState` | 结构体公开字段。 | `{}` | +| `keyboardNavigation` | `::XCEngine::UI::Widgets::UIKeyboardNavigationModel` | 结构体公开字段。 | `{}` | +| `selectionAnchorId` | `std::string` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Collections.md) - 返回 `Collections` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/Fields.md b/docs/api/XCEditor/Fields/Fields.md new file mode 100644 index 00000000..7524837b --- /dev/null +++ b/docs/api/XCEditor/Fields/Fields.md @@ -0,0 +1,68 @@ +# Fields + +**命名空间**: `XCEngine::UI::Editor::Widgets` + +**类型**: `submodule` + +**描述**: 编辑器字段控件子模块,覆盖布尔、数字、文本、颜色、对象、资源与属性网格等值编辑控件。 + +## 概述 + +`Fields` 面向“属性编辑”场景。当前头文件可以分成两层: + +- 单字段控件 + - `UIEditorBoolField*` + - `UIEditorNumberField*` + - `UIEditorTextField*` + - `UIEditorEnumField*` + - `UIEditorColorField*` + - `UIEditorObjectField*` + - `UIEditorAssetField*` + - `UIEditorVector2/3/4Field*` +- 聚合编辑控件 + - `UIEditorPropertyGrid*` + - 把 section、field row、弹窗菜单和颜色字段等组合成统一 inspector 布局 + +按当前 `UIEditorPropertyGrid.h`,这一层会复用: + +- `Collections` 中的滚动/列表布局能力 +- `Shell/UIEditorMenuPopup.h` 提供的弹出菜单能力 +- `Widgets/UIEditorFieldRowLayout.h` 和 `UIEditorTextLayout.h` 等基础布局工具 + +## 公开头文件 + +- `UIEditorAssetField.h` +- `UIEditorAssetFieldInteraction.h` +- `UIEditorBoolField.h` +- `UIEditorBoolFieldInteraction.h` +- `UIEditorColorField.h` +- `UIEditorColorFieldInteraction.h` +- `UIEditorEnumField.h` +- `UIEditorEnumFieldInteraction.h` +- `UIEditorFieldStyle.h` +- `UIEditorNumberField.h` +- `UIEditorNumberFieldInteraction.h` +- `UIEditorObjectField.h` +- `UIEditorObjectFieldInteraction.h` +- `UIEditorPropertyGrid.h` +- `UIEditorPropertyGridInteraction.h` +- `UIEditorTextField.h` +- `UIEditorTextFieldInteraction.h` +- `UIEditorVector2Field.h` +- `UIEditorVector2FieldInteraction.h` +- `UIEditorVector3Field.h` +- `UIEditorVector3FieldInteraction.h` +- `UIEditorVector4Field.h` +- `UIEditorVector4FieldInteraction.h` + +## 当前实现边界 + +- 当前这里只建立目录索引页,具体头文件页仍需后续逐个补齐。 +- 这一层当前偏重 UI 表达与交互状态,不负责真正的资产解析、对象生命周期或命令持久化。 + +## 相关文档 + +- [XCEditor](../XCEditor.md) +- [Collections](../Collections/Collections.md) +- [Shell](../Shell/Shell.md) +- [Widgets](../Widgets/Widgets.md) diff --git a/docs/api/XCEditor/Fields/UIEditorAssetField/UIEditorAssetField.md b/docs/api/XCEditor/Fields/UIEditorAssetField/UIEditorAssetField.md new file mode 100644 index 00000000..89ef65f8 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorAssetField/UIEditorAssetField.md @@ -0,0 +1,40 @@ +# UIEditorAssetField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorAssetField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorAssetField` public API。 + +## 概述 + +`UIEditorAssetField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorAssetFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorAssetFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `ValueBox` | - | 枚举项。 | +| `PickerButton` | - | 枚举项。 | +| `ClearButton` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorAssetFieldInteraction/UIEditorAssetFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorAssetFieldInteraction/UIEditorAssetFieldInteraction.md new file mode 100644 index 00000000..52c003ac --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorAssetFieldInteraction/UIEditorAssetFieldInteraction.md @@ -0,0 +1,34 @@ +# UIEditorAssetFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorAssetFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorAssetFieldInteraction` public API。 + +## 概述 + +`UIEditorAssetFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorAssetFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorAssetFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `fieldState` | `Widgets::UIEditorAssetFieldState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorBoolField/UIEditorBoolField.md b/docs/api/XCEditor/Fields/UIEditorBoolField/UIEditorBoolField.md new file mode 100644 index 00000000..76c681c8 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorBoolField/UIEditorBoolField.md @@ -0,0 +1,38 @@ +# UIEditorBoolField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorBoolField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorBoolField` public API。 + +## 概述 + +`UIEditorBoolField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorBoolFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorBoolFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Checkbox` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorBoolFieldInteraction/UIEditorBoolFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorBoolFieldInteraction/UIEditorBoolFieldInteraction.md new file mode 100644 index 00000000..d06156d2 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorBoolFieldInteraction/UIEditorBoolFieldInteraction.md @@ -0,0 +1,34 @@ +# UIEditorBoolFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorBoolFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorBoolFieldInteraction` public API。 + +## 概述 + +`UIEditorBoolFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorBoolFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorBoolFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `fieldState` | `Widgets::UIEditorBoolFieldState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorColorField/UIEditorColorField.md b/docs/api/XCEditor/Fields/UIEditorColorField/UIEditorColorField.md new file mode 100644 index 00000000..9ad823ce --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorColorField/UIEditorColorField.md @@ -0,0 +1,46 @@ +# UIEditorColorField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorColorField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorColorField` public API。 + +## 概述 + +`UIEditorColorField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorColorFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorColorFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Swatch` | - | 枚举项。 | +| `PopupSurface` | - | 枚举项。 | +| `PopupCloseButton` | - | 枚举项。 | +| `HueWheel` | - | 枚举项。 | +| `SaturationValue` | - | 枚举项。 | +| `RedChannel` | - | 枚举项。 | +| `GreenChannel` | - | 枚举项。 | +| `BlueChannel` | - | 枚举项。 | +| `AlphaChannel` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorColorFieldInteraction/UIEditorColorFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorColorFieldInteraction/UIEditorColorFieldInteraction.md new file mode 100644 index 00000000..bce292e8 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorColorFieldInteraction/UIEditorColorFieldInteraction.md @@ -0,0 +1,34 @@ +# UIEditorColorFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorColorFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorColorFieldInteraction` public API。 + +## 概述 + +`UIEditorColorFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorColorFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorColorFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `colorFieldState` | `Widgets::UIEditorColorFieldState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorEnumField/UIEditorEnumField.md b/docs/api/XCEditor/Fields/UIEditorEnumField/UIEditorEnumField.md new file mode 100644 index 00000000..aec18980 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorEnumField/UIEditorEnumField.md @@ -0,0 +1,39 @@ +# UIEditorEnumField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorEnumField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorEnumField` public API。 + +## 概述 + +`UIEditorEnumField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorEnumFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorEnumFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `ValueBox` | - | 枚举项。 | +| `DropdownArrow` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorEnumFieldInteraction/UIEditorEnumFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorEnumFieldInteraction/UIEditorEnumFieldInteraction.md new file mode 100644 index 00000000..2ff980c2 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorEnumFieldInteraction/UIEditorEnumFieldInteraction.md @@ -0,0 +1,37 @@ +# UIEditorEnumFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorEnumFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorEnumFieldInteraction` public API。 + +## 概述 + +`UIEditorEnumFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorEnumFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorEnumFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `fieldState` | `Widgets::UIEditorEnumFieldState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `highlightedIndex` | `std::size_t` | 结构体公开字段。 | `Widgets::UIEditorMenuPopupInvalidIndex` | +| `pressedPopupIndex` | `std::size_t` | 结构体公开字段。 | `Widgets::UIEditorMenuPopupInvalidIndex` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | +| `popupOpen` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorFieldStyle/UIEditorFieldStyle.md b/docs/api/XCEditor/Fields/UIEditorFieldStyle/UIEditorFieldStyle.md new file mode 100644 index 00000000..078c05d8 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorFieldStyle/UIEditorFieldStyle.md @@ -0,0 +1,18 @@ +# UIEditorFieldStyle + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEditor/Fields/UIEditorFieldStyle.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorFieldStyle` public API。 + +## 概述 + +`UIEditorFieldStyle.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorNumberField/UIEditorNumberField.md b/docs/api/XCEditor/Fields/UIEditorNumberField/UIEditorNumberField.md new file mode 100644 index 00000000..991ed89e --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorNumberField/UIEditorNumberField.md @@ -0,0 +1,38 @@ +# UIEditorNumberField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorNumberField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorNumberField` public API。 + +## 概述 + +`UIEditorNumberField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorNumberFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorNumberFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `ValueBox` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorNumberFieldInteraction/UIEditorNumberFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorNumberFieldInteraction/UIEditorNumberFieldInteraction.md new file mode 100644 index 00000000..6be36e14 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorNumberFieldInteraction/UIEditorNumberFieldInteraction.md @@ -0,0 +1,36 @@ +# UIEditorNumberFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorNumberFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorNumberFieldInteraction` public API。 + +## 概述 + +`UIEditorNumberFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorNumberFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorNumberFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `numberFieldState` | `Widgets::UIEditorNumberFieldState` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `editModel` | `::XCEngine::UI::Widgets::UIPropertyEditModel` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorObjectField/UIEditorObjectField.md b/docs/api/XCEditor/Fields/UIEditorObjectField/UIEditorObjectField.md new file mode 100644 index 00000000..18312971 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorObjectField/UIEditorObjectField.md @@ -0,0 +1,40 @@ +# UIEditorObjectField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorObjectField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorObjectField` public API。 + +## 概述 + +`UIEditorObjectField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorObjectFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorObjectFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `ValueBox` | - | 枚举项。 | +| `ClearButton` | - | 枚举项。 | +| `PickerButton` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorObjectFieldInteraction/UIEditorObjectFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorObjectFieldInteraction/UIEditorObjectFieldInteraction.md new file mode 100644 index 00000000..dd3072da --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorObjectFieldInteraction/UIEditorObjectFieldInteraction.md @@ -0,0 +1,34 @@ +# UIEditorObjectFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorObjectFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorObjectFieldInteraction` public API。 + +## 概述 + +`UIEditorObjectFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorObjectFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorObjectFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `fieldState` | `Widgets::UIEditorObjectFieldState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorPropertyGrid/UIEditorPropertyGrid.md b/docs/api/XCEditor/Fields/UIEditorPropertyGrid/UIEditorPropertyGrid.md new file mode 100644 index 00000000..80ff0613 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorPropertyGrid/UIEditorPropertyGrid.md @@ -0,0 +1,53 @@ +# UIEditorPropertyGrid + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorPropertyGrid.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorPropertyGrid` public API。 + +## 概述 + +`UIEditorPropertyGrid.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPropertyGridFieldKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPropertyGridHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPropertyGridFieldLocation` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridNumberFieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridEnumFieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridColorFieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridVector2FieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridVector3FieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridVector4FieldValue` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridField` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridSection` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridColorFieldVisualState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Text` | `0` | 枚举项。 | +| `Bool` | - | 枚举项。 | +| `Number` | - | 枚举项。 | +| `Enum` | - | 枚举项。 | +| `Color` | - | 枚举项。 | +| `Vector2` | - | 枚举项。 | +| `Vector3` | - | 枚举项。 | +| `Vector4` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorPropertyGridInteraction/UIEditorPropertyGridInteraction.md b/docs/api/XCEditor/Fields/UIEditorPropertyGridInteraction/UIEditorPropertyGridInteraction.md new file mode 100644 index 00000000..7ae0b47d --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorPropertyGridInteraction/UIEditorPropertyGridInteraction.md @@ -0,0 +1,37 @@ +# UIEditorPropertyGridInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorPropertyGridInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorPropertyGridInteraction` public API。 + +## 概述 + +`UIEditorPropertyGridInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPropertyGridInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorPropertyGridInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `propertyGridState` | `Widgets::UIEditorPropertyGridState` | 结构体公开字段。 | `{}` | +| `keyboardNavigation` | `::XCEngine::UI::Widgets::UIKeyboardNavigationModel` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `pressedPopupIndex` | `std::size_t` | 结构体公开字段。 | `Widgets::UIEditorPropertyGridInvalidIndex` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorTextField/UIEditorTextField.md b/docs/api/XCEditor/Fields/UIEditorTextField/UIEditorTextField.md new file mode 100644 index 00000000..053b7774 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorTextField/UIEditorTextField.md @@ -0,0 +1,38 @@ +# UIEditorTextField + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorTextField.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorTextField` public API。 + +## 概述 + +`UIEditorTextField.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTextFieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorTextFieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `ValueBox` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorTextFieldInteraction/UIEditorTextFieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorTextFieldInteraction/UIEditorTextFieldInteraction.md new file mode 100644 index 00000000..aea5f8cb --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorTextFieldInteraction/UIEditorTextFieldInteraction.md @@ -0,0 +1,36 @@ +# UIEditorTextFieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorTextFieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorTextFieldInteraction` public API。 + +## 概述 + +`UIEditorTextFieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorTextFieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorTextFieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `textFieldState` | `Widgets::UIEditorTextFieldState` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `editModel` | `::XCEngine::UI::Widgets::UIPropertyEditModel` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector2Field/UIEditorVector2Field.md b/docs/api/XCEditor/Fields/UIEditorVector2Field/UIEditorVector2Field.md new file mode 100644 index 00000000..87d0359a --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector2Field/UIEditorVector2Field.md @@ -0,0 +1,38 @@ +# UIEditorVector2Field + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorVector2Field.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector2Field` public API。 + +## 概述 + +`UIEditorVector2Field.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector2FieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorVector2FieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Component` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector2FieldInteraction/UIEditorVector2FieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorVector2FieldInteraction/UIEditorVector2FieldInteraction.md new file mode 100644 index 00000000..687034bd --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector2FieldInteraction/UIEditorVector2FieldInteraction.md @@ -0,0 +1,36 @@ +# UIEditorVector2FieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorVector2FieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector2FieldInteraction` public API。 + +## 概述 + +`UIEditorVector2FieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector2FieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector2FieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `vector2FieldState` | `Widgets::UIEditorVector2FieldState` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `editModel` | `::XCEngine::UI::Widgets::UIPropertyEditModel` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector3Field/UIEditorVector3Field.md b/docs/api/XCEditor/Fields/UIEditorVector3Field/UIEditorVector3Field.md new file mode 100644 index 00000000..31f02863 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector3Field/UIEditorVector3Field.md @@ -0,0 +1,38 @@ +# UIEditorVector3Field + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorVector3Field.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector3Field` public API。 + +## 概述 + +`UIEditorVector3Field.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector3FieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorVector3FieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Component` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector3FieldInteraction/UIEditorVector3FieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorVector3FieldInteraction/UIEditorVector3FieldInteraction.md new file mode 100644 index 00000000..9fa09267 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector3FieldInteraction/UIEditorVector3FieldInteraction.md @@ -0,0 +1,36 @@ +# UIEditorVector3FieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorVector3FieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector3FieldInteraction` public API。 + +## 概述 + +`UIEditorVector3FieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector3FieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector3FieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `vector3FieldState` | `Widgets::UIEditorVector3FieldState` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `editModel` | `::XCEngine::UI::Widgets::UIPropertyEditModel` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector4Field/UIEditorVector4Field.md b/docs/api/XCEditor/Fields/UIEditorVector4Field/UIEditorVector4Field.md new file mode 100644 index 00000000..68acb535 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector4Field/UIEditorVector4Field.md @@ -0,0 +1,38 @@ +# UIEditorVector4Field + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Fields/UIEditorVector4Field.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector4Field` public API。 + +## 概述 + +`UIEditorVector4Field.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector4FieldHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorVector4FieldSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Row` | - | 枚举项。 | +| `Component` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Fields/UIEditorVector4FieldInteraction/UIEditorVector4FieldInteraction.md b/docs/api/XCEditor/Fields/UIEditorVector4FieldInteraction/UIEditorVector4FieldInteraction.md new file mode 100644 index 00000000..2d69ad14 --- /dev/null +++ b/docs/api/XCEditor/Fields/UIEditorVector4FieldInteraction/UIEditorVector4FieldInteraction.md @@ -0,0 +1,36 @@ +# UIEditorVector4FieldInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Fields/UIEditorVector4FieldInteraction.h` + +**描述**: 定义 `XCEditor/Fields` 子目录中的 `UIEditorVector4FieldInteraction` public API。 + +## 概述 + +`UIEditorVector4FieldInteraction.h` 是 `XCEditor/Fields` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorVector4FieldInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorVector4FieldInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `vector4FieldState` | `Widgets::UIEditorVector4FieldState` | 结构体公开字段。 | `{}` | +| `textInputState` | `::XCEngine::UI::Text::UITextInputState` | 结构体公开字段。 | `{}` | +| `editModel` | `::XCEngine::UI::Widgets::UIPropertyEditModel` | 结构体公开字段。 | `{}` | +| `pointerPosition` | `::XCEngine::UI::UIPoint` | 结构体公开字段。 | `{}` | +| `hasPointerPosition` | `bool` | 结构体公开字段。 | `false` | + +## 相关文档 + +- [当前目录](../Fields.md) - 返回 `Fields` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Foundation/Foundation.md b/docs/api/XCEditor/Foundation/Foundation.md new file mode 100644 index 00000000..faa552ee --- /dev/null +++ b/docs/api/XCEditor/Foundation/Foundation.md @@ -0,0 +1,40 @@ +# Foundation + +**命名空间**: `XCEngine::UI::Editor` + +**类型**: `submodule` + +**描述**: 编辑器基础设施子模块,覆盖命令注册、命令派发、快捷键管理以及主题度量解析入口。 + +## 概述 + +`Foundation` 负责把 shell 壳层的静态配置转换成运行时可执行的命令与快捷键系统。按当前头文件分工: + +- `UIEditorCommandRegistry.h` + - 声明命令描述、workspace 命令描述和注册表校验规则 +- `UIEditorCommandDispatcher.h` + - 把命令 id 分发到 workspace controller 或 host command handler +- `UIEditorShortcutManager.h` + - 在 `UIShortcutRegistry` 之上管理绑定、校验冲突并执行调度 +- `UIEditorTheme.h` + - 汇总 Collections / Fields / Shell 各控件的 metrics 与 palette 解析入口 + +`new_editor/app/Application.cpp` 当前会构造 `UIEditorWorkspaceController`,再通过 `BuildEditorShellShortcutManager(...)` 接入这一层。 + +## 公开头文件 + +- `UIEditorCommandDispatcher.h` +- `UIEditorCommandRegistry.h` +- `UIEditorShortcutManager.h` +- `UIEditorTheme.h` + +## 当前实现边界 + +- 当前这里只建立目录索引页,具体头文件页仍需后续补齐。 +- 该模块不直接渲染 UI,而是为 `Shell` 与各控件模块提供命令、快捷键、主题和度量解析能力。 + +## 相关文档 + +- [XCEditor](../XCEditor.md) +- [Shell](../Shell/Shell.md) +- [Widgets](../Widgets/Widgets.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Constructor.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Constructor.md new file mode 100644 index 00000000..88bb7921 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Constructor.md @@ -0,0 +1,41 @@ +# UIEditorCommandDispatcher::UIEditorCommandDispatcher() + +构造对象。 + +该方法在 `XCEditor/Foundation/UIEditorCommandDispatcher.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +UIEditorCommandDispatcher() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit UIEditorCommandDispatcher(UIEditorCommandRegistry commandRegistry); +``` + +**参数:** +- `commandRegistry` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Dispatch.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Dispatch.md new file mode 100644 index 00000000..a1a8b5b9 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Dispatch.md @@ -0,0 +1,32 @@ +# UIEditorCommandDispatcher::Dispatch + +公开方法,详见头文件声明。 + +```cpp +UIEditorCommandDispatchResult Dispatch( std::string_view commandId, UIEditorWorkspaceController& controller) const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** +- `commandId` - 参数语义详见头文件声明。 +- `controller` - 参数语义详见头文件声明。 + +**返回:** `UIEditorCommandDispatchResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Evaluate.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Evaluate.md new file mode 100644 index 00000000..f89b4381 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/Evaluate.md @@ -0,0 +1,32 @@ +# UIEditorCommandDispatcher::Evaluate + +公开方法,详见头文件声明。 + +```cpp +UIEditorCommandEvaluationResult Evaluate( std::string_view commandId, const UIEditorWorkspaceController& controller) const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** +- `commandId` - 参数语义详见头文件声明。 +- `controller` - 参数语义详见头文件声明。 + +**返回:** `UIEditorCommandEvaluationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::Evaluate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetCommandRegistry.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetCommandRegistry.md new file mode 100644 index 00000000..a03d28d7 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetCommandRegistry.md @@ -0,0 +1,30 @@ +# UIEditorCommandDispatcher::GetCommandRegistry + +获取相关状态或对象。 + +```cpp +const UIEditorCommandRegistry& GetCommandRegistry() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorCommandRegistry&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::GetCommandRegistry(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetHostCommandHandler.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetHostCommandHandler.md new file mode 100644 index 00000000..d82c58b9 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/GetHostCommandHandler.md @@ -0,0 +1,30 @@ +# UIEditorCommandDispatcher::GetHostCommandHandler + +获取相关状态或对象。 + +```cpp +UIEditorHostCommandHandler* GetHostCommandHandler() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorHostCommandHandler*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::GetHostCommandHandler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/SetHostCommandHandler.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/SetHostCommandHandler.md new file mode 100644 index 00000000..6ce6a0b4 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/SetHostCommandHandler.md @@ -0,0 +1,31 @@ +# UIEditorCommandDispatcher::SetHostCommandHandler + +设置相关状态或配置。 + +```cpp +void SetHostCommandHandler(UIEditorHostCommandHandler* handler); +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** +- `handler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::SetHostCommandHandler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/UIEditorCommandDispatcher.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/UIEditorCommandDispatcher.md new file mode 100644 index 00000000..85e9eab8 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/UIEditorCommandDispatcher.md @@ -0,0 +1,43 @@ +# UIEditorCommandDispatcher + +**命名空间**: `XCEngine` + +**类型**: `class` + +**头文件**: `XCEditor/Foundation/UIEditorCommandDispatcher.h` + +**描述**: 定义 `XCEditor/Foundation` 子目录中的 `UIEditorCommandDispatcher` public API。 + +## 概述 + +`UIEditorCommandDispatcher.h` 是 `XCEditor/Foundation` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorHostCommandEvaluationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorHostCommandDispatchResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorHostCommandHandler` | `class` | 头文件中的公开声明。 | +| `UIEditorCommandEvaluationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorCommandEvaluationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorCommandDispatchStatus` | `enum class` | 头文件中的公开声明。 | +| `UIEditorCommandDispatchResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorCommandDispatcher` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [UIEditorCommandDispatcher()](Constructor.md) | 构造对象。 | +| [GetCommandRegistry](GetCommandRegistry.md) | 获取相关状态或对象。 | +| [SetHostCommandHandler](SetHostCommandHandler.md) | 设置相关状态或配置。 | +| [GetHostCommandHandler](GetHostCommandHandler.md) | 获取相关状态或对象。 | +| [ValidateConfiguration](ValidateConfiguration.md) | 公开方法,详见头文件声明。 | +| [Evaluate](Evaluate.md) | 公开方法,详见头文件声明。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Foundation.md) - 返回 `Foundation` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/ValidateConfiguration.md b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/ValidateConfiguration.md new file mode 100644 index 00000000..287d6d5b --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandDispatcher/ValidateConfiguration.md @@ -0,0 +1,30 @@ +# UIEditorCommandDispatcher::ValidateConfiguration + +公开方法,详见头文件声明。 + +```cpp +UIEditorCommandRegistryValidationResult ValidateConfiguration() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorCommandDispatcher.h`,当前页面用于固定 `UIEditorCommandDispatcher` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorCommandRegistryValidationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorCommandDispatcher object; + // 根据上下文补齐参数后调用 UIEditorCommandDispatcher::ValidateConfiguration(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorCommandDispatcher.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorCommandRegistry/UIEditorCommandRegistry.md b/docs/api/XCEditor/Foundation/UIEditorCommandRegistry/UIEditorCommandRegistry.md new file mode 100644 index 00000000..f33ecd00 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorCommandRegistry/UIEditorCommandRegistry.md @@ -0,0 +1,36 @@ +# UIEditorCommandRegistry + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Foundation/UIEditorCommandRegistry.h` + +**描述**: 定义 `XCEditor/Foundation` 子目录中的 `UIEditorCommandRegistry` public API。 + +## 概述 + +`UIEditorCommandRegistry.h` 是 `XCEditor/Foundation` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorCommandKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorCommandPanelSource` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceCommandDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorCommandDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorCommandRegistry` | `struct` | 头文件中的公开声明。 | +| `UIEditorCommandRegistryValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorCommandRegistryValidationResult` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `commands` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Foundation.md) - 返回 `Foundation` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ClearBindings.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ClearBindings.md new file mode 100644 index 00000000..cd2f6cf6 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ClearBindings.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::ClearBindings + +清空内部数据。 + +```cpp +void ClearBindings(); +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::ClearBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Constructor.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Constructor.md new file mode 100644 index 00000000..41117242 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Constructor.md @@ -0,0 +1,41 @@ +# UIEditorShortcutManager::UIEditorShortcutManager() + +构造对象。 + +该方法在 `XCEditor/Foundation/UIEditorShortcutManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +UIEditorShortcutManager() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit UIEditorShortcutManager(UIEditorCommandRegistry commandRegistry); +``` + +**参数:** +- `commandRegistry` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Dispatch.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Dispatch.md new file mode 100644 index 00000000..1c3903f0 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/Dispatch.md @@ -0,0 +1,33 @@ +# UIEditorShortcutManager::Dispatch + +公开方法,详见头文件声明。 + +```cpp +UIEditorShortcutDispatchResult Dispatch( const XCEngine::UI::UIInputEvent& event, const XCEngine::UI::UIShortcutContext& shortcutContext, UIEditorWorkspaceController& controller) const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `event` - 参数语义详见头文件声明。 +- `shortcutContext` - 参数语义详见头文件声明。 +- `controller` - 参数语义详见头文件声明。 + +**返回:** `UIEditorShortcutDispatchResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandDispatcher.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandDispatcher.md new file mode 100644 index 00000000..3976faf5 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandDispatcher.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::GetCommandDispatcher + +获取相关状态或对象。 + +```cpp +const UIEditorCommandDispatcher& GetCommandDispatcher() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorCommandDispatcher&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::GetCommandDispatcher(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandRegistry.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandRegistry.md new file mode 100644 index 00000000..6f5b02be --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetCommandRegistry.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::GetCommandRegistry + +获取相关状态或对象。 + +```cpp +const UIEditorCommandRegistry& GetCommandRegistry() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorCommandRegistry&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::GetCommandRegistry(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetHostCommandHandler.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetHostCommandHandler.md new file mode 100644 index 00000000..339e8373 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetHostCommandHandler.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::GetHostCommandHandler + +获取相关状态或对象。 + +```cpp +UIEditorHostCommandHandler* GetHostCommandHandler() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorHostCommandHandler*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::GetHostCommandHandler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetPreferredShortcutText.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetPreferredShortcutText.md new file mode 100644 index 00000000..72547b1e --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetPreferredShortcutText.md @@ -0,0 +1,31 @@ +# UIEditorShortcutManager::GetPreferredShortcutText + +获取相关状态或对象。 + +```cpp +std::string GetPreferredShortcutText(std::string_view commandId) const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `commandId` - 参数语义详见头文件声明。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::GetPreferredShortcutText(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetShortcutRegistry.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetShortcutRegistry.md new file mode 100644 index 00000000..6910c90d --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/GetShortcutRegistry.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::GetShortcutRegistry + +获取相关状态或对象。 + +```cpp +const XCEngine::UI::UIShortcutRegistry& GetShortcutRegistry() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const XCEngine::UI::UIShortcutRegistry&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::GetShortcutRegistry(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/RegisterBinding.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/RegisterBinding.md new file mode 100644 index 00000000..44c3ed7f --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/RegisterBinding.md @@ -0,0 +1,31 @@ +# UIEditorShortcutManager::RegisterBinding + +注册对象、回调或映射。 + +```cpp +std::uint64_t RegisterBinding(const XCEngine::UI::UIShortcutBinding& binding); +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `std::uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::RegisterBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/SetHostCommandHandler.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/SetHostCommandHandler.md new file mode 100644 index 00000000..5353cb5e --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/SetHostCommandHandler.md @@ -0,0 +1,31 @@ +# UIEditorShortcutManager::SetHostCommandHandler + +设置相关状态或配置。 + +```cpp +void SetHostCommandHandler(UIEditorHostCommandHandler* handler); +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `handler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::SetHostCommandHandler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UIEditorShortcutManager.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UIEditorShortcutManager.md new file mode 100644 index 00000000..932654dd --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UIEditorShortcutManager.md @@ -0,0 +1,45 @@ +# UIEditorShortcutManager + +**命名空间**: `XCEngine` + +**类型**: `class` + +**头文件**: `XCEditor/Foundation/UIEditorShortcutManager.h` + +**描述**: 定义 `XCEditor/Foundation` 子目录中的 `UIEditorShortcutManager` public API。 + +## 概述 + +`UIEditorShortcutManager.h` 是 `XCEditor/Foundation` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorShortcutManagerValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorShortcutManagerValidationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorShortcutDispatchStatus` | `enum class` | 头文件中的公开声明。 | +| `UIEditorShortcutDispatchResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorShortcutManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [UIEditorShortcutManager()](Constructor.md) | 构造对象。 | +| [GetCommandDispatcher](GetCommandDispatcher.md) | 获取相关状态或对象。 | +| [SetHostCommandHandler](SetHostCommandHandler.md) | 设置相关状态或配置。 | +| [GetHostCommandHandler](GetHostCommandHandler.md) | 获取相关状态或对象。 | +| [GetCommandRegistry](GetCommandRegistry.md) | 获取相关状态或对象。 | +| [GetShortcutRegistry](GetShortcutRegistry.md) | 获取相关状态或对象。 | +| [RegisterBinding](RegisterBinding.md) | 注册对象、回调或映射。 | +| [UnregisterBinding](UnregisterBinding.md) | 取消注册对象、回调或映射。 | +| [ClearBindings](ClearBindings.md) | 清空内部数据。 | +| [ValidateConfiguration](ValidateConfiguration.md) | 公开方法,详见头文件声明。 | +| [GetPreferredShortcutText](GetPreferredShortcutText.md) | 获取相关状态或对象。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Foundation.md) - 返回 `Foundation` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UnregisterBinding.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UnregisterBinding.md new file mode 100644 index 00000000..05810b5a --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/UnregisterBinding.md @@ -0,0 +1,31 @@ +# UIEditorShortcutManager::UnregisterBinding + +取消注册对象、回调或映射。 + +```cpp +bool UnregisterBinding(std::uint64_t bindingId); +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingId` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::UnregisterBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ValidateConfiguration.md b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ValidateConfiguration.md new file mode 100644 index 00000000..a7255916 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorShortcutManager/ValidateConfiguration.md @@ -0,0 +1,30 @@ +# UIEditorShortcutManager::ValidateConfiguration + +公开方法,详见头文件声明。 + +```cpp +UIEditorShortcutManagerValidationResult ValidateConfiguration() const; +``` + +该方法声明于 `XCEditor/Foundation/UIEditorShortcutManager.h`,当前页面用于固定 `UIEditorShortcutManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorShortcutManagerValidationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorShortcutManager object; + // 根据上下文补齐参数后调用 UIEditorShortcutManager::ValidateConfiguration(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorShortcutManager.md) +- [返回模块目录](../Foundation.md) diff --git a/docs/api/XCEditor/Foundation/UIEditorTheme/UIEditorTheme.md b/docs/api/XCEditor/Foundation/UIEditorTheme/UIEditorTheme.md new file mode 100644 index 00000000..4bc1c670 --- /dev/null +++ b/docs/api/XCEditor/Foundation/UIEditorTheme/UIEditorTheme.md @@ -0,0 +1,18 @@ +# UIEditorTheme + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEditor/Foundation/UIEditorTheme.h` + +**描述**: 定义 `XCEditor/Foundation` 子目录中的 `UIEditorTheme` public API。 + +## 概述 + +`UIEditorTheme.h` 是 `XCEditor/Foundation` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Foundation.md) - 返回 `Foundation` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/Shell.md b/docs/api/XCEditor/Shell/Shell.md new file mode 100644 index 00000000..768d7229 --- /dev/null +++ b/docs/api/XCEditor/Shell/Shell.md @@ -0,0 +1,74 @@ +# Shell + +**命名空间**: `XCEngine::UI::Editor` + +**类型**: `submodule` + +**描述**: 编辑器壳层子模块,覆盖 menu、dock、workspace、viewport slot、panel registry 以及整套 shell compose / interaction 流程。 + +## 概述 + +`Shell` 是当前新编辑器 public headers 中最靠近应用层的一层。按 `new_editor/app/Application.cpp` 当前启动链: + +1. 先构造 `EditorShellAsset` +2. 用 `ValidateEditorShellAsset(...)` 校验 panel / workspace / shortcut 配置 +3. 创建 `UIEditorWorkspaceController` +4. 在每帧中调用 `UpdateUIEditorShellInteraction(...)` +5. 再调用 `AppendUIEditorShellInteraction(...)` 输出绘制数据 + +因此这个子模块既包含纯数据模型,也包含布局与交互协议: + +- shell 资产与配置 + - `UIEditorShellAsset.h` + - `UIEditorPanelRegistry.h` + - `UIEditorWorkspaceModel.h` + - `UIEditorWorkspaceSession.h` +- 壳层布局与交互 + - `UIEditorShellCompose.h` + - `UIEditorShellInteraction.h` + - `UIEditorWorkspaceCompose.h` + - `UIEditorWorkspaceInteraction.h` +- 具体面板宿主与框架控件 + - `UIEditorDockHost*` + - `UIEditorMenu*` + - `UIEditorStatusBar.h` + - `UIEditorViewportSlot.h` + - `UIEditorViewportShell.h` + +## 公开头文件 + +- `UIEditorDockHost.h` +- `UIEditorDockHostInteraction.h` +- `UIEditorMenuBar.h` +- `UIEditorMenuModel.h` +- `UIEditorMenuPopup.h` +- `UIEditorMenuSession.h` +- `UIEditorPanelContentHost.h` +- `UIEditorPanelFrame.h` +- `UIEditorPanelHostLifecycle.h` +- `UIEditorPanelRegistry.h` +- `UIEditorShellAsset.h` +- `UIEditorShellCompose.h` +- `UIEditorShellInteraction.h` +- `UIEditorStatusBar.h` +- `UIEditorStructuredShell.h` +- `UIEditorViewportInputBridge.h` +- `UIEditorViewportShell.h` +- `UIEditorViewportSlot.h` +- `UIEditorWorkspaceCompose.h` +- `UIEditorWorkspaceController.h` +- `UIEditorWorkspaceInteraction.h` +- `UIEditorWorkspaceLayoutPersistence.h` +- `UIEditorWorkspaceModel.h` +- `UIEditorWorkspaceSession.h` + +## 当前实现边界 + +- 当前这里只建立目录索引页,具体头文件页仍需后续分批补齐。 +- 这层 public API 面向新编辑器宿主;旧版 `editor/src/Viewport/**` 的 source-backed helper 不属于这里。 + +## 相关文档 + +- [XCEditor](../XCEditor.md) +- [Foundation](../Foundation/Foundation.md) +- [Fields](../Fields/Fields.md) diff --git a/docs/api/XCEditor/Shell/UIEditorDockHost/UIEditorDockHost.md b/docs/api/XCEditor/Shell/UIEditorDockHost/UIEditorDockHost.md new file mode 100644 index 00000000..061a2ab4 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorDockHost/UIEditorDockHost.md @@ -0,0 +1,49 @@ +# UIEditorDockHost + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorDockHost.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorDockHost` public API。 + +## 概述 + +`UIEditorDockHost.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorDockHostHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorDockHostHitTarget` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostTabStripVisualState` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostState` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostTabItemLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostSplitterLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostPanelLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostTabStackLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostForegroundOptions` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `SplitterHandle` | - | 枚举项。 | +| `TabStripBackground` | - | 枚举项。 | +| `Tab` | - | 枚举项。 | +| `TabCloseButton` | - | 枚举项。 | +| `PanelHeader` | - | 枚举项。 | +| `PanelBody` | - | 枚举项。 | +| `PanelFooter` | - | 枚举项。 | +| `PanelCloseButton` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorDockHostInteraction/UIEditorDockHostInteraction.md b/docs/api/XCEditor/Shell/UIEditorDockHostInteraction/UIEditorDockHostInteraction.md new file mode 100644 index 00000000..d1a1202e --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorDockHostInteraction/UIEditorDockHostInteraction.md @@ -0,0 +1,34 @@ +# UIEditorDockHostInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorDockHostInteraction.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorDockHostInteraction` public API。 + +## 概述 + +`UIEditorDockHostInteraction.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorDockHostTabStripInteractionEntry` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorDockHostInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `nodeId` | `std::string` | 结构体公开字段。 | `{}` | +| `state` | `UIEditorTabStripInteractionState` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorMenuBar/UIEditorMenuBar.md b/docs/api/XCEditor/Shell/UIEditorMenuBar/UIEditorMenuBar.md new file mode 100644 index 00000000..8f906a31 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuBar/UIEditorMenuBar.md @@ -0,0 +1,39 @@ +# UIEditorMenuBar + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorMenuBar.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorMenuBar` public API。 + +## 概述 + +`UIEditorMenuBar.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorMenuBarItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuBarState` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuBarMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuBarPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuBarLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuBarHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorMenuBarHitTarget` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `menuId` | `std::string` | 结构体公开字段。 | `{}` | +| `label` | `std::string` | 结构体公开字段。 | `{}` | +| `enabled` | `bool` | 结构体公开字段。 | `true` | +| `desiredLabelWidth` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorMenuModel/UIEditorMenuModel.md b/docs/api/XCEditor/Shell/UIEditorMenuModel/UIEditorMenuModel.md new file mode 100644 index 00000000..f8b085de --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuModel/UIEditorMenuModel.md @@ -0,0 +1,40 @@ +# UIEditorMenuModel + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorMenuModel.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorMenuModel` public API。 + +## 概述 + +`UIEditorMenuModel.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorMenuItemKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorMenuCheckedStateSource` | `enum class` | 头文件中的公开声明。 | +| `UIEditorMenuCheckedStateBinding` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuItemDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuModelValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorMenuModelValidationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorResolvedMenuItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorResolvedMenuDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorResolvedMenuModel` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `menus` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorMenuPopup/UIEditorMenuPopup.md b/docs/api/XCEditor/Shell/UIEditorMenuPopup/UIEditorMenuPopup.md new file mode 100644 index 00000000..4cdef4e2 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuPopup/UIEditorMenuPopup.md @@ -0,0 +1,44 @@ +# UIEditorMenuPopup + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorMenuPopup.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorMenuPopup` public API。 + +## 概述 + +`UIEditorMenuPopup.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorMenuPopupItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuPopupState` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuPopupMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuPopupPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuPopupLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuPopupHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorMenuPopupHitTarget` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `itemId` | `std::string` | 结构体公开字段。 | `{}` | +| `kind` | `::XCEngine::UI::Editor::UIEditorMenuItemKind` | 结构体公开字段。 | `::XCEngine::UI::Editor::UIEditorMenuItemKind::Command` | +| `label` | `std::string` | 结构体公开字段。 | `{}` | +| `shortcutText` | `std::string` | 结构体公开字段。 | `{}` | +| `enabled` | `bool` | 结构体公开字段。 | `true` | +| `checked` | `bool` | 结构体公开字段。 | `false` | +| `hasSubmenu` | `bool` | 结构体公开字段。 | `false` | +| `desiredLabelWidth` | `float` | 结构体公开字段。 | `0.0f` | +| `desiredShortcutWidth` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/CloseAll.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/CloseAll.md new file mode 100644 index 00000000..7a86b958 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/CloseAll.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::CloseAll + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult CloseAll( ::XCEngine::UI::Widgets::UIPopupDismissReason dismissReason = ::XCEngine::UI::Widgets::UIPopupDismissReason::Programmatic); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dismissReason` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::CloseAll(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromEscape.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromEscape.md new file mode 100644 index 00000000..ebc99c22 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromEscape.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::DismissFromEscape + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult DismissFromEscape(); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::DismissFromEscape(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromFocusLoss.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromFocusLoss.md new file mode 100644 index 00000000..8eae01dd --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromFocusLoss.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::DismissFromFocusLoss + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult DismissFromFocusLoss( const UIInputPath& focusedPath); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `focusedPath` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::DismissFromFocusLoss(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromPointerDown.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromPointerDown.md new file mode 100644 index 00000000..5fb42d20 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/DismissFromPointerDown.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::DismissFromPointerDown + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult DismissFromPointerDown( const UIInputPath& hitPath); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `hitPath` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::DismissFromPointerDown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/FindPopupState.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/FindPopupState.md new file mode 100644 index 00000000..d8568515 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/FindPopupState.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::FindPopupState + +查找并返回匹配对象。 + +```cpp +const UIEditorMenuPopupState* FindPopupState(std::string_view popupId) const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `popupId` - 参数语义详见头文件声明。 + +**返回:** `const UIEditorMenuPopupState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::FindPopupState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenRootMenuId.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenRootMenuId.md new file mode 100644 index 00000000..b692db5d --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenRootMenuId.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::GetOpenRootMenuId + +获取相关状态或对象。 + +```cpp +std::string_view GetOpenRootMenuId() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string_view` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::GetOpenRootMenuId(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenSubmenuItemIds.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenSubmenuItemIds.md new file mode 100644 index 00000000..91c77b01 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetOpenSubmenuItemIds.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::GetOpenSubmenuItemIds + +获取相关状态或对象。 + +```cpp +const std::vector& GetOpenSubmenuItemIds() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::GetOpenSubmenuItemIds(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupOverlayModel.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupOverlayModel.md new file mode 100644 index 00000000..74e1be3c --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupOverlayModel.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::GetPopupOverlayModel + +获取相关状态或对象。 + +```cpp +const ::XCEngine::UI::Widgets::UIPopupOverlayModel& GetPopupOverlayModel() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const ::XCEngine::UI::Widgets::UIPopupOverlayModel&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::GetPopupOverlayModel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupStates.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupStates.md new file mode 100644 index 00000000..4157e2e7 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/GetPopupStates.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::GetPopupStates + +获取相关状态或对象。 + +```cpp +const std::vector& GetPopupStates() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::GetPopupStates(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/HasOpenMenu.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/HasOpenMenu.md new file mode 100644 index 00000000..0da3e848 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/HasOpenMenu.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::HasOpenMenu + +判断是否具备指定状态或能力。 + +```cpp +[[nodiscard]] bool HasOpenMenu() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `[[nodiscard]] bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::HasOpenMenu(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverMenuBarRoot.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverMenuBarRoot.md new file mode 100644 index 00000000..78058a36 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverMenuBarRoot.md @@ -0,0 +1,32 @@ +# UIEditorMenuSession::HoverMenuBarRoot + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult HoverMenuBarRoot( std::string_view menuId, ::XCEngine::UI::Widgets::UIPopupOverlayEntry entry); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `menuId` - 参数语义详见头文件声明。 +- `entry` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::HoverMenuBarRoot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverSubmenu.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverSubmenu.md new file mode 100644 index 00000000..bb7a5271 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/HoverSubmenu.md @@ -0,0 +1,32 @@ +# UIEditorMenuSession::HoverSubmenu + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult HoverSubmenu( std::string_view itemId, ::XCEngine::UI::Widgets::UIPopupOverlayEntry entry); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `itemId` - 参数语义详见头文件声明。 +- `entry` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::HoverSubmenu(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/IsMenuOpen.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/IsMenuOpen.md new file mode 100644 index 00000000..a0fa077d --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/IsMenuOpen.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::IsMenuOpen + +查询当前状态。 + +```cpp +[[nodiscard]] bool IsMenuOpen(std::string_view menuId) const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `menuId` - 参数语义详见头文件声明。 + +**返回:** `[[nodiscard]] bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::IsMenuOpen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/IsPopupOpen.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/IsPopupOpen.md new file mode 100644 index 00000000..d4be31c9 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/IsPopupOpen.md @@ -0,0 +1,31 @@ +# UIEditorMenuSession::IsPopupOpen + +查询当前状态。 + +```cpp +[[nodiscard]] bool IsPopupOpen(std::string_view popupId) const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `popupId` - 参数语义详见头文件声明。 + +**返回:** `[[nodiscard]] bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::IsPopupOpen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenMenuBarRoot.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenMenuBarRoot.md new file mode 100644 index 00000000..5b7b548a --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenMenuBarRoot.md @@ -0,0 +1,32 @@ +# UIEditorMenuSession::OpenMenuBarRoot + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult OpenMenuBarRoot( std::string_view menuId, ::XCEngine::UI::Widgets::UIPopupOverlayEntry entry); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `menuId` - 参数语义详见头文件声明。 +- `entry` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::OpenMenuBarRoot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenRootMenu.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenRootMenu.md new file mode 100644 index 00000000..964c89b7 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/OpenRootMenu.md @@ -0,0 +1,32 @@ +# UIEditorMenuSession::OpenRootMenu + +公开方法,详见头文件声明。 + +```cpp +UIEditorMenuSessionMutationResult OpenRootMenu( std::string_view menuId, ::XCEngine::UI::Widgets::UIPopupOverlayEntry entry); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** +- `menuId` - 参数语义详见头文件声明。 +- `entry` - 参数语义详见头文件声明。 + +**返回:** `UIEditorMenuSessionMutationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::OpenRootMenu(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/Reset.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/Reset.md new file mode 100644 index 00000000..f4fe4034 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/Reset.md @@ -0,0 +1,30 @@ +# UIEditorMenuSession::Reset + +公开方法,详见头文件声明。 + +```cpp +void Reset(); +``` + +该方法声明于 `XCEditor/Shell/UIEditorMenuSession.h`,当前页面用于固定 `UIEditorMenuSession` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorMenuSession object; + // 根据上下文补齐参数后调用 UIEditorMenuSession::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorMenuSession.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorMenuSession/UIEditorMenuSession.md b/docs/api/XCEditor/Shell/UIEditorMenuSession/UIEditorMenuSession.md new file mode 100644 index 00000000..8426c202 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorMenuSession/UIEditorMenuSession.md @@ -0,0 +1,48 @@ +# UIEditorMenuSession + +**命名空间**: `XCEngine` + +**类型**: `class` + +**头文件**: `XCEditor/Shell/UIEditorMenuSession.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorMenuSession` public API。 + +## 概述 + +`UIEditorMenuSession.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorMenuPopupState` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuSessionMutationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorMenuSession` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [GetPopupOverlayModel](GetPopupOverlayModel.md) | 获取相关状态或对象。 | +| [GetPopupStates](GetPopupStates.md) | 获取相关状态或对象。 | +| [GetOpenSubmenuItemIds](GetOpenSubmenuItemIds.md) | 获取相关状态或对象。 | +| [GetOpenRootMenuId](GetOpenRootMenuId.md) | 获取相关状态或对象。 | +| [HasOpenMenu](HasOpenMenu.md) | 判断是否具备指定状态或能力。 | +| [IsMenuOpen](IsMenuOpen.md) | 查询当前状态。 | +| [IsPopupOpen](IsPopupOpen.md) | 查询当前状态。 | +| [FindPopupState](FindPopupState.md) | 查找并返回匹配对象。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [OpenRootMenu](OpenRootMenu.md) | 公开方法,详见头文件声明。 | +| [OpenMenuBarRoot](OpenMenuBarRoot.md) | 公开方法,详见头文件声明。 | +| [HoverMenuBarRoot](HoverMenuBarRoot.md) | 公开方法,详见头文件声明。 | +| [HoverSubmenu](HoverSubmenu.md) | 公开方法,详见头文件声明。 | +| [CloseAll](CloseAll.md) | 公开方法,详见头文件声明。 | +| [DismissFromEscape](DismissFromEscape.md) | 公开方法,详见头文件声明。 | +| [DismissFromPointerDown](DismissFromPointerDown.md) | 公开方法,详见头文件声明。 | +| [DismissFromFocusLoss](DismissFromFocusLoss.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorPanelContentHost/UIEditorPanelContentHost.md b/docs/api/XCEditor/Shell/UIEditorPanelContentHost/UIEditorPanelContentHost.md new file mode 100644 index 00000000..23023bf9 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorPanelContentHost/UIEditorPanelContentHost.md @@ -0,0 +1,39 @@ +# UIEditorPanelContentHost + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorPanelContentHost.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorPanelContentHost` public API。 + +## 概述 + +`UIEditorPanelContentHost.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPanelContentHostEventKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostBinding` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostMountRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostPanelState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostEvent` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelContentHostFrame` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Mounted` | `0` | 枚举项。 | +| `Unmounted` | - | 枚举项。 | +| `BoundsChanged` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorPanelFrame/UIEditorPanelFrame.md b/docs/api/XCEditor/Shell/UIEditorPanelFrame/UIEditorPanelFrame.md new file mode 100644 index 00000000..d2556eca --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorPanelFrame/UIEditorPanelFrame.md @@ -0,0 +1,38 @@ +# UIEditorPanelFrame + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorPanelFrame.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorPanelFrame` public API。 + +## 概述 + +`UIEditorPanelFrame.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPanelFrameAction` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelFrameHitTarget` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelFrameState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelFrameText` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelFrameMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelFramePalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelFrameLayout` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `Pin` | - | 枚举项。 | +| `Close` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorPanelHostLifecycle/UIEditorPanelHostLifecycle.md b/docs/api/XCEditor/Shell/UIEditorPanelHostLifecycle/UIEditorPanelHostLifecycle.md new file mode 100644 index 00000000..c5c92d81 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorPanelHostLifecycle/UIEditorPanelHostLifecycle.md @@ -0,0 +1,42 @@ +# UIEditorPanelHostLifecycle + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorPanelHostLifecycle.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorPanelHostLifecycle` public API。 + +## 概述 + +`UIEditorPanelHostLifecycle.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPanelHostLifecycleEventKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelHostState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelHostLifecycleEvent` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelHostLifecycleState` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelHostLifecycleRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelHostLifecycleFrame` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Attached` | `0` | 枚举项。 | +| `Detached` | - | 枚举项。 | +| `Shown` | - | 枚举项。 | +| `Hidden` | - | 枚举项。 | +| `Activated` | - | 枚举项。 | +| `Deactivated` | - | 枚举项。 | +| `FocusGained` | - | 枚举项。 | +| `FocusLost` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorPanelRegistry/UIEditorPanelRegistry.md b/docs/api/XCEditor/Shell/UIEditorPanelRegistry/UIEditorPanelRegistry.md new file mode 100644 index 00000000..0933db1c --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorPanelRegistry/UIEditorPanelRegistry.md @@ -0,0 +1,34 @@ +# UIEditorPanelRegistry + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorPanelRegistry.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorPanelRegistry` public API。 + +## 概述 + +`UIEditorPanelRegistry.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPanelPresentationKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelDescriptor` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelRegistry` | `struct` | 头文件中的公开声明。 | +| `UIEditorPanelRegistryValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorPanelRegistryValidationResult` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `panels` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorShellAsset/UIEditorShellAsset.md b/docs/api/XCEditor/Shell/UIEditorShellAsset/UIEditorShellAsset.md new file mode 100644 index 00000000..e887fda1 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorShellAsset/UIEditorShellAsset.md @@ -0,0 +1,34 @@ +# UIEditorShellAsset + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorShellAsset.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorShellAsset` public API。 + +## 概述 + +`UIEditorShellAsset.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `EditorShellShortcutAsset` | `struct` | 头文件中的公开声明。 | +| `EditorShellAsset` | `struct` | 头文件中的公开声明。 | +| `EditorShellAssetValidationCode` | `enum class` | 头文件中的公开声明。 | +| `EditorShellAssetValidationResult` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `commandRegistry` | `UIEditorCommandRegistry` | 结构体公开字段。 | `{}` | +| `bindings` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorShellCompose/UIEditorShellCompose.md b/docs/api/XCEditor/Shell/UIEditorShellCompose/UIEditorShellCompose.md new file mode 100644 index 00000000..c591d9a5 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorShellCompose/UIEditorShellCompose.md @@ -0,0 +1,43 @@ +# UIEditorShellCompose + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorShellCompose.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorShellCompose` public API。 + +## 概述 + +`UIEditorShellCompose.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorShellToolbarGlyph` | `enum class` | 头文件中的公开声明。 | +| `UIEditorShellToolbarButton` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellToolbarLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellToolbarMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellToolbarPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeState` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposePalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellComposeFrame` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Play` | `0` | 枚举项。 | +| `Pause` | - | 枚举项。 | +| `Step` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorShellInteraction/UIEditorShellInteraction.md b/docs/api/XCEditor/Shell/UIEditorShellInteraction/UIEditorShellInteraction.md new file mode 100644 index 00000000..772ac1b0 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorShellInteraction/UIEditorShellInteraction.md @@ -0,0 +1,45 @@ +# UIEditorShellInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorShellInteraction.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorShellInteraction` public API。 + +## 概述 + +`UIEditorShellInteraction.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorShellInteractionDefinition` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionServices` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionMenuButtonRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionPopupItemRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionPopupRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionPopupFrame` | `struct` | 头文件中的公开声明。 | +| `UIEditorShellInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `menuModel` | `UIEditorMenuModel` | 结构体公开字段。 | `{}` | +| `toolbarButtons` | `std::vector` | 结构体公开字段。 | `{}` | +| `statusSegments` | `std::vector` | 结构体公开字段。 | `{}` | +| `workspacePresentations` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorStatusBar/UIEditorStatusBar.md b/docs/api/XCEditor/Shell/UIEditorStatusBar/UIEditorStatusBar.md new file mode 100644 index 00000000..5facdaa5 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorStatusBar/UIEditorStatusBar.md @@ -0,0 +1,39 @@ +# UIEditorStatusBar + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorStatusBar.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorStatusBar` public API。 + +## 概述 + +`UIEditorStatusBar.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorStatusBarSlot` | `enum class` | 头文件中的公开声明。 | +| `UIEditorStatusBarTextTone` | `enum class` | 头文件中的公开声明。 | +| `UIEditorStatusBarHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorStatusBarSegment` | `struct` | 头文件中的公开声明。 | +| `UIEditorStatusBarState` | `struct` | 头文件中的公开声明。 | +| `UIEditorStatusBarMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorStatusBarPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorStatusBarLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorStatusBarHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Leading` | `0` | 枚举项。 | +| `Trailing` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorStructuredShell/UIEditorStructuredShell.md b/docs/api/XCEditor/Shell/UIEditorStructuredShell/UIEditorStructuredShell.md new file mode 100644 index 00000000..4e8cb8a7 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorStructuredShell/UIEditorStructuredShell.md @@ -0,0 +1,34 @@ +# UIEditorStructuredShell + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorStructuredShell.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorStructuredShell` public API。 + +## 概述 + +`UIEditorStructuredShell.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `StructuredEditorShellBinding` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `screenAsset` | `::XCEngine::UI::Runtime::UIScreenAsset` | 结构体公开字段。 | `{}` | +| `workspaceController` | `UIEditorWorkspaceController` | 结构体公开字段。 | `{}` | +| `shellDefinition` | `UIEditorShellInteractionDefinition` | 结构体公开字段。 | `{}` | +| `shortcutManager` | `UIEditorShortcutManager` | 结构体公开字段。 | `{}` | +| `assetValidation` | `EditorShellAssetValidationResult` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorViewportInputBridge/UIEditorViewportInputBridge.md b/docs/api/XCEditor/Shell/UIEditorViewportInputBridge/UIEditorViewportInputBridge.md new file mode 100644 index 00000000..73f6f3bd --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorViewportInputBridge/UIEditorViewportInputBridge.md @@ -0,0 +1,34 @@ +# UIEditorViewportInputBridge + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorViewportInputBridge.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorViewportInputBridge` public API。 + +## 概述 + +`UIEditorViewportInputBridge.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorViewportInputBridgeConfig` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportInputBridgeState` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportInputBridgeFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `focusOnPointerDownInside` | `bool` | 结构体公开字段。 | `true` | +| `clearFocusOnPointerDownOutside` | `bool` | 结构体公开字段。 | `true` | +| `capturePointerOnPointerDownInside` | `bool` | 结构体公开字段。 | `true` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorViewportShell/UIEditorViewportShell.md b/docs/api/XCEditor/Shell/UIEditorViewportShell/UIEditorViewportShell.md new file mode 100644 index 00000000..15ee7756 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorViewportShell/UIEditorViewportShell.md @@ -0,0 +1,37 @@ +# UIEditorViewportShell + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorViewportShell.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorViewportShell` public API。 + +## 概述 + +`UIEditorViewportShell.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorViewportShellVisualState` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportShellSpec` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportShellModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportShellRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportShellState` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportShellFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `hoveredToolIndex` | `std::size_t` | 结构体公开字段。 | `Widgets::UIEditorViewportSlotInvalidIndex` | +| `activeToolIndex` | `std::size_t` | 结构体公开字段。 | `Widgets::UIEditorViewportSlotInvalidIndex` | +| `statusBarState` | `Widgets::UIEditorStatusBarState` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorViewportSlot/UIEditorViewportSlot.md b/docs/api/XCEditor/Shell/UIEditorViewportSlot/UIEditorViewportSlot.md new file mode 100644 index 00000000..20ae9f0b --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorViewportSlot/UIEditorViewportSlot.md @@ -0,0 +1,40 @@ +# UIEditorViewportSlot + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Shell/UIEditorViewportSlot.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorViewportSlot` public API。 + +## 概述 + +`UIEditorViewportSlot.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorViewportSlotToolSlot` | `enum class` | 头文件中的公开声明。 | +| `UIEditorViewportSlotHitTargetKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorViewportSlotFrame` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotChrome` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotToolItem` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotState` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotPalette` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotLayout` | `struct` | 头文件中的公开声明。 | +| `UIEditorViewportSlotHitTarget` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Leading` | `0` | 枚举项。 | +| `Trailing` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceCompose/UIEditorWorkspaceCompose.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceCompose/UIEditorWorkspaceCompose.md new file mode 100644 index 00000000..9044911b --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceCompose/UIEditorWorkspaceCompose.md @@ -0,0 +1,38 @@ +# UIEditorWorkspaceCompose + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceCompose.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceCompose` public API。 + +## 概述 + +`UIEditorWorkspaceCompose.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorWorkspacePanelPresentationModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspacePanelPresentationState` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceComposeState` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceViewportComposeRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceComposeRequest` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceViewportComposeFrame` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceComposeFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `panelId` | `std::string` | 结构体公开字段。 | `{}` | +| `kind` | `UIEditorPanelPresentationKind` | 结构体公开字段。 | `UIEditorPanelPresentationKind::Placeholder` | +| `viewportShellModel` | `UIEditorViewportShellModel` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/CaptureLayoutSnapshot.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/CaptureLayoutSnapshot.md new file mode 100644 index 00000000..bf6fc993 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/CaptureLayoutSnapshot.md @@ -0,0 +1,30 @@ +# UIEditorWorkspaceController::CaptureLayoutSnapshot + +公开方法,详见头文件声明。 + +```cpp +UIEditorWorkspaceLayoutSnapshot CaptureLayoutSnapshot() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorWorkspaceLayoutSnapshot` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::CaptureLayoutSnapshot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Constructor.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Constructor.md new file mode 100644 index 00000000..d433ad2b --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Constructor.md @@ -0,0 +1,43 @@ +# UIEditorWorkspaceController::UIEditorWorkspaceController() + +构造对象。 + +该方法在 `XCEditor/Shell/UIEditorWorkspaceController.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +UIEditorWorkspaceController() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +UIEditorWorkspaceController( UIEditorPanelRegistry panelRegistry, UIEditorWorkspaceModel workspace, UIEditorWorkspaceSession session); +``` + +**参数:** +- `panelRegistry` - 参数语义详见头文件声明。 +- `workspace` - 参数语义详见头文件声明。 +- `session` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Dispatch.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Dispatch.md new file mode 100644 index 00000000..ebc7d1de --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/Dispatch.md @@ -0,0 +1,31 @@ +# UIEditorWorkspaceController::Dispatch + +公开方法,详见头文件声明。 + +```cpp +UIEditorWorkspaceCommandResult Dispatch(const UIEditorWorkspaceCommand& command); +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** +- `command` - 参数语义详见头文件声明。 + +**返回:** `UIEditorWorkspaceCommandResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetPanelRegistry.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetPanelRegistry.md new file mode 100644 index 00000000..ad05a630 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetPanelRegistry.md @@ -0,0 +1,30 @@ +# UIEditorWorkspaceController::GetPanelRegistry + +获取相关状态或对象。 + +```cpp +const UIEditorPanelRegistry& GetPanelRegistry() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorPanelRegistry&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::GetPanelRegistry(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetSession.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetSession.md new file mode 100644 index 00000000..346a3431 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetSession.md @@ -0,0 +1,30 @@ +# UIEditorWorkspaceController::GetSession + +获取相关状态或对象。 + +```cpp +const UIEditorWorkspaceSession& GetSession() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorWorkspaceSession&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::GetSession(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetWorkspace.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetWorkspace.md new file mode 100644 index 00000000..e745e92f --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/GetWorkspace.md @@ -0,0 +1,30 @@ +# UIEditorWorkspaceController::GetWorkspace + +获取相关状态或对象。 + +```cpp +const UIEditorWorkspaceModel& GetWorkspace() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const UIEditorWorkspaceModel&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::GetWorkspace(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreLayoutSnapshot.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreLayoutSnapshot.md new file mode 100644 index 00000000..d9b0a333 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreLayoutSnapshot.md @@ -0,0 +1,31 @@ +# UIEditorWorkspaceController::RestoreLayoutSnapshot + +公开方法,详见头文件声明。 + +```cpp +UIEditorWorkspaceLayoutOperationResult RestoreLayoutSnapshot( const UIEditorWorkspaceLayoutSnapshot& snapshot); +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** +- `snapshot` - 参数语义详见头文件声明。 + +**返回:** `UIEditorWorkspaceLayoutOperationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::RestoreLayoutSnapshot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreSerializedLayout.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreSerializedLayout.md new file mode 100644 index 00000000..6e010ce0 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/RestoreSerializedLayout.md @@ -0,0 +1,31 @@ +# UIEditorWorkspaceController::RestoreSerializedLayout + +公开方法,详见头文件声明。 + +```cpp +UIEditorWorkspaceLayoutOperationResult RestoreSerializedLayout( std::string_view serializedLayout); +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** +- `serializedLayout` - 参数语义详见头文件声明。 + +**返回:** `UIEditorWorkspaceLayoutOperationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::RestoreSerializedLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/SetSplitRatio.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/SetSplitRatio.md new file mode 100644 index 00000000..71b7d975 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/SetSplitRatio.md @@ -0,0 +1,32 @@ +# UIEditorWorkspaceController::SetSplitRatio + +设置相关状态或配置。 + +```cpp +UIEditorWorkspaceLayoutOperationResult SetSplitRatio( std::string_view nodeId, float splitRatio); +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** +- `nodeId` - 参数语义详见头文件声明。 +- `splitRatio` - 参数语义详见头文件声明。 + +**返回:** `UIEditorWorkspaceLayoutOperationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::SetSplitRatio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/UIEditorWorkspaceController.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/UIEditorWorkspaceController.md new file mode 100644 index 00000000..d156f28c --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/UIEditorWorkspaceController.md @@ -0,0 +1,47 @@ +# UIEditorWorkspaceController + +**命名空间**: `XCEngine` + +**类型**: `class` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceController.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceController` public API。 + +## 概述 + +`UIEditorWorkspaceController.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorWorkspaceCommandKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceCommandStatus` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceCommand` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceCommandResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceControllerValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceControllerValidationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceLayoutOperationStatus` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceLayoutOperationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceController` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [UIEditorWorkspaceController()](Constructor.md) | 构造对象。 | +| [GetPanelRegistry](GetPanelRegistry.md) | 获取相关状态或对象。 | +| [GetWorkspace](GetWorkspace.md) | 获取相关状态或对象。 | +| [GetSession](GetSession.md) | 获取相关状态或对象。 | +| [ValidateState](ValidateState.md) | 公开方法,详见头文件声明。 | +| [CaptureLayoutSnapshot](CaptureLayoutSnapshot.md) | 公开方法,详见头文件声明。 | +| [RestoreLayoutSnapshot](RestoreLayoutSnapshot.md) | 公开方法,详见头文件声明。 | +| [RestoreSerializedLayout](RestoreSerializedLayout.md) | 公开方法,详见头文件声明。 | +| [SetSplitRatio](SetSplitRatio.md) | 设置相关状态或配置。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceController/ValidateState.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/ValidateState.md new file mode 100644 index 00000000..f696bd25 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceController/ValidateState.md @@ -0,0 +1,30 @@ +# UIEditorWorkspaceController::ValidateState + +公开方法,详见头文件声明。 + +```cpp +UIEditorWorkspaceControllerValidationResult ValidateState() const; +``` + +该方法声明于 `XCEditor/Shell/UIEditorWorkspaceController.h`,当前页面用于固定 `UIEditorWorkspaceController` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `UIEditorWorkspaceControllerValidationResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::UIEditorWorkspaceController object; + // 根据上下文补齐参数后调用 UIEditorWorkspaceController::ValidateState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](UIEditorWorkspaceController.md) +- [返回模块目录](../Shell.md) diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceInteraction/UIEditorWorkspaceInteraction.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceInteraction/UIEditorWorkspaceInteraction.md new file mode 100644 index 00000000..551a21d7 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceInteraction/UIEditorWorkspaceInteraction.md @@ -0,0 +1,33 @@ +# UIEditorWorkspaceInteraction + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceInteraction.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceInteraction` public API。 + +## 概述 + +`UIEditorWorkspaceInteraction.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorWorkspaceInteractionModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceInteractionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceInteractionResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceInteractionFrame` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `workspacePresentations` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceLayoutPersistence/UIEditorWorkspaceLayoutPersistence.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceLayoutPersistence/UIEditorWorkspaceLayoutPersistence.md new file mode 100644 index 00000000..b0d789a6 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceLayoutPersistence/UIEditorWorkspaceLayoutPersistence.md @@ -0,0 +1,33 @@ +# UIEditorWorkspaceLayoutPersistence + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceLayoutPersistence.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceLayoutPersistence` public API。 + +## 概述 + +`UIEditorWorkspaceLayoutPersistence.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorWorkspaceLayoutSnapshot` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceLayoutLoadCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceLayoutLoadResult` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `workspace` | `UIEditorWorkspaceModel` | 结构体公开字段。 | `{}` | +| `session` | `UIEditorWorkspaceSession` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceModel/UIEditorWorkspaceModel.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceModel/UIEditorWorkspaceModel.md new file mode 100644 index 00000000..abe64b97 --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceModel/UIEditorWorkspaceModel.md @@ -0,0 +1,38 @@ +# UIEditorWorkspaceModel + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceModel.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceModel` public API。 + +## 概述 + +`UIEditorWorkspaceModel.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorWorkspaceNodeKind` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceSplitAxis` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspacePanelState` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceNode` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceModel` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceValidationResult` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceVisiblePanel` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `root` | `UIEditorWorkspaceNode` | 结构体公开字段。 | `{}` | +| `activePanelId` | `std::string` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Shell/UIEditorWorkspaceSession/UIEditorWorkspaceSession.md b/docs/api/XCEditor/Shell/UIEditorWorkspaceSession/UIEditorWorkspaceSession.md new file mode 100644 index 00000000..1e981a2a --- /dev/null +++ b/docs/api/XCEditor/Shell/UIEditorWorkspaceSession/UIEditorWorkspaceSession.md @@ -0,0 +1,33 @@ +# UIEditorWorkspaceSession + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Shell/UIEditorWorkspaceSession.h` + +**描述**: 定义 `XCEditor/Shell` 子目录中的 `UIEditorWorkspaceSession` public API。 + +## 概述 + +`UIEditorWorkspaceSession.h` 是 `XCEditor/Shell` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorPanelSessionState` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceSession` | `struct` | 头文件中的公开声明。 | +| `UIEditorWorkspaceSessionValidationCode` | `enum class` | 头文件中的公开声明。 | +| `UIEditorWorkspaceSessionValidationResult` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `panelStates` | `std::vector` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Shell.md) - 返回 `Shell` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Widgets/UIEditorCollectionPrimitives/UIEditorCollectionPrimitives.md b/docs/api/XCEditor/Widgets/UIEditorCollectionPrimitives/UIEditorCollectionPrimitives.md new file mode 100644 index 00000000..8dd7a770 --- /dev/null +++ b/docs/api/XCEditor/Widgets/UIEditorCollectionPrimitives/UIEditorCollectionPrimitives.md @@ -0,0 +1,37 @@ +# UIEditorCollectionPrimitives + +**命名空间**: `XCEngine` + +**类型**: `enum class` + +**头文件**: `XCEditor/Widgets/UIEditorCollectionPrimitives.h` + +**描述**: 定义 `XCEditor/Widgets` 子目录中的 `UIEditorCollectionPrimitives` public API。 + +## 概述 + +`UIEditorCollectionPrimitives.h` 是 `XCEditor/Widgets` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorCollectionPrimitiveKind` | `enum class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `ScrollView` | - | 枚举项。 | +| `TreeView` | - | 枚举项。 | +| `TreeItem` | - | 枚举项。 | +| `ListView` | - | 枚举项。 | +| `ListItem` | - | 枚举项。 | +| `PropertySection` | - | 枚举项。 | +| `FieldRow` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Widgets.md) - 返回 `Widgets` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Widgets/UIEditorColorUtils/UIEditorColorUtils.md b/docs/api/XCEditor/Widgets/UIEditorColorUtils/UIEditorColorUtils.md new file mode 100644 index 00000000..ca7b7ca7 --- /dev/null +++ b/docs/api/XCEditor/Widgets/UIEditorColorUtils/UIEditorColorUtils.md @@ -0,0 +1,33 @@ +# UIEditorColorUtils + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Widgets/UIEditorColorUtils.h` + +**描述**: 定义 `XCEditor/Widgets` 子目录中的 `UIEditorColorUtils` public API。 + +## 概述 + +`UIEditorColorUtils.h` 是 `XCEditor/Widgets` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorHsvColor` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `hue` | `float` | 结构体公开字段。 | `0.0f` | +| `saturation` | `float` | 结构体公开字段。 | `0.0f` | +| `value` | `float` | 结构体公开字段。 | `0.0f` | +| `alpha` | `float` | 结构体公开字段。 | `1.0f` | + +## 相关文档 + +- [当前目录](../Widgets.md) - 返回 `Widgets` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Widgets/UIEditorFieldRowLayout/UIEditorFieldRowLayout.md b/docs/api/XCEditor/Widgets/UIEditorFieldRowLayout/UIEditorFieldRowLayout.md new file mode 100644 index 00000000..93912377 --- /dev/null +++ b/docs/api/XCEditor/Widgets/UIEditorFieldRowLayout/UIEditorFieldRowLayout.md @@ -0,0 +1,34 @@ +# UIEditorFieldRowLayout + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEditor/Widgets/UIEditorFieldRowLayout.h` + +**描述**: 定义 `XCEditor/Widgets` 子目录中的 `UIEditorFieldRowLayout` public API。 + +## 概述 + +`UIEditorFieldRowLayout.h` 是 `XCEditor/Widgets` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `UIEditorInspectorFieldStyleTokens` | `struct` | 头文件中的公开声明。 | +| `UIEditorFieldRowLayoutMetrics` | `struct` | 头文件中的公开声明。 | +| `UIEditorFieldRowLayout` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `bounds` | `::XCEngine::UI::UIRect` | 结构体公开字段。 | `{}` | +| `labelRect` | `::XCEngine::UI::UIRect` | 结构体公开字段。 | `{}` | +| `controlRect` | `::XCEngine::UI::UIRect` | 结构体公开字段。 | `{}` | + +## 相关文档 + +- [当前目录](../Widgets.md) - 返回 `Widgets` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Widgets/UIEditorTextLayout/UIEditorTextLayout.md b/docs/api/XCEditor/Widgets/UIEditorTextLayout/UIEditorTextLayout.md new file mode 100644 index 00000000..462d9e54 --- /dev/null +++ b/docs/api/XCEditor/Widgets/UIEditorTextLayout/UIEditorTextLayout.md @@ -0,0 +1,18 @@ +# UIEditorTextLayout + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEditor/Widgets/UIEditorTextLayout.h` + +**描述**: 定义 `XCEditor/Widgets` 子目录中的 `UIEditorTextLayout` public API。 + +## 概述 + +`UIEditorTextLayout.h` 是 `XCEditor/Widgets` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Widgets.md) - 返回 `Widgets` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEditor/Widgets/Widgets.md b/docs/api/XCEditor/Widgets/Widgets.md new file mode 100644 index 00000000..a3763c3a --- /dev/null +++ b/docs/api/XCEditor/Widgets/Widgets.md @@ -0,0 +1,41 @@ +# Widgets + +**命名空间**: `XCEngine::UI::Editor::Widgets` + +**类型**: `submodule` + +**描述**: 编辑器基础 UI 原语子模块,覆盖集合控件标签分类、通用文本布局、字段行布局与颜色工具。 + +## 概述 + +`Widgets` 不是完整控件集合,而是被 `Collections`、`Fields` 和 `Shell` 反复复用的低层工具头文件: + +- `UIEditorCollectionPrimitives.h` + - 统一描述 scroll/tree/list/property-section/field-row 等标签的分类和布局属性 +- `UIEditorColorUtils.h` + - 颜色与视觉辅助函数 +- `UIEditorFieldRowLayout.h` + - 字段标签列 / 控件列的基础布局工具 +- `UIEditorTextLayout.h` + - 文本高度、顶边与裁剪矩形的内联 helper + +这些类型被 `UIEditorTheme.h`、`UIEditorPropertyGrid.h`、`UIEditorShellCompose.h` 等更高层模块直接复用。 + +## 公开头文件 + +- `UIEditorCollectionPrimitives.h` +- `UIEditorColorUtils.h` +- `UIEditorFieldRowLayout.h` +- `UIEditorTextLayout.h` + +## 当前实现边界 + +- 当前这里只建立目录索引页,具体头文件页仍需后续逐个补齐。 +- 这一层主要提供纯函数和轻量布局工具,不承担 panel / workspace 级状态管理。 + +## 相关文档 + +- [XCEditor](../XCEditor.md) +- [Collections](../Collections/Collections.md) +- [Fields](../Fields/Fields.md) +- [Foundation](../Foundation/Foundation.md) diff --git a/docs/api/XCEditor/XCEditor.md b/docs/api/XCEditor/XCEditor.md new file mode 100644 index 00000000..33b7723e --- /dev/null +++ b/docs/api/XCEditor/XCEditor.md @@ -0,0 +1,43 @@ +# XCEditor + +**命名空间**: `XCEngine::UI::Editor` + +**类型**: `module-root` + +**描述**: `XCEditor` public API 的根目录入口,对齐 `new_editor/include/XCEditor` 的模块结构,描述新编辑器壳层、交互层与控件库。 + +## 概述 + +`docs/api/XCEditor` 是当前与 `new_editor/include/XCEditor/**` 并行的 canonical 文档根树。它覆盖的是新编辑器公开头文件,而不是旧版 `editor/src/**` 的 source-backed API。 + +按 `new_editor/app/Application.cpp` 当前真实调用链,新编辑器壳层大致由下面几部分组成: + +1. `Shell` + - 组合 panel registry、workspace model、workspace session 与 shell interaction +2. `Foundation` + - 提供 command registry、dispatcher、shortcut manager 与 theme/metrics 解析 +3. `Collections` / `Fields` / `Widgets` + - 提供树、列表、滚动、属性面板以及文本/配色/布局等底层 UI 原语 + +## 子目录 + +- [Collections](Collections/Collections.md) +- [Fields](Fields/Fields.md) +- [Foundation](Foundation/Foundation.md) +- [Shell](Shell/Shell.md) +- [Widgets](Widgets/Widgets.md) + +## 与旧编辑器文档的边界 + +- `docs/api/XCEngine/Editor/**` + - 仍然描述旧版 `editor/src/**` source-backed API +- `docs/api/XCEditor/**` + - 描述 `new_editor/include/XCEditor/**` 的 public headers + +这两棵树都属于当前 API 文档,但来源代码树不同,不能混写。 + +## 相关文档 + +- [API 总索引](../main.md) +- [XCEngine/Editor](../XCEngine/Editor/Editor.md) +- [API 文档重构状态](../_meta/rebuild-status.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat.md new file mode 100644 index 00000000..4ffa594c --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat.md @@ -0,0 +1,32 @@ +# GaussianSplat + +**命名空间**: `XCEngine::Resources` + +**类型**: `submodule` + +**描述**: Gaussian Splat 资源子模块,覆盖运行时 splat payload、artifact I/O 与对应 loader。 + +## 概述 + +`Resources::GaussianSplat` 当前负责把压缩后的 splat payload 以资源形式接入引擎。按当前实现,这条链路分成三层: + +1. `GaussianSplat` + - 保存 metadata、section table 与原始 payload +2. `GaussianSplatArtifactIO` + - 读写 `.xcgsplat` artifact,并在加载时构造 `GaussianSplat` +3. `GaussianSplatLoader` + - 作为 `IResourceLoader` 接入 `ResourceManager` + +和 [Model](../Model/Model.md) / [Mesh](../Mesh/Mesh.md) 这类图结构资源不同,`GaussianSplat` 更像“多 section 二进制块 + metadata”的只读 payload 资源。 + +## 头文件 + +- [GaussianSplat](GaussianSplat/GaussianSplat.md) - `GaussianSplat.h` +- [GaussianSplatArtifactIO](GaussianSplatArtifactIO/GaussianSplatArtifactIO.md) - `GaussianSplatArtifactIO.h` +- [GaussianSplatLoader](GaussianSplatLoader/GaussianSplatLoader.md) - `GaussianSplatLoader.h` + +## 相关文档 + +- [Resources](../Resources.md) +- [Core / Asset](../../Core/Asset/Asset.md) +- [Model](../Model/Model.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Clear.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Clear.md new file mode 100644 index 00000000..999be6e4 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Clear.md @@ -0,0 +1,30 @@ +# GaussianSplat::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Constructor.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Constructor.md new file mode 100644 index 00000000..cbafb8ea --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Constructor.md @@ -0,0 +1,28 @@ +# GaussianSplat::GaussianSplat() + +构造对象。 + +```cpp +GaussianSplat(); +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/CreateOwned.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/CreateOwned.md new file mode 100644 index 00000000..954af1ef --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/CreateOwned.md @@ -0,0 +1,33 @@ +# GaussianSplat::CreateOwned + +创建新对象或资源。 + +```cpp +bool CreateOwned(const GaussianSplatMetadata& metadata, Containers::Array&& sections, Containers::Array&& payload); +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** +- `metadata` - 参数语义详见头文件声明。 +- `sections` - 参数语义详见头文件声明。 +- `payload` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::CreateOwned(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Destructor.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Destructor.md new file mode 100644 index 00000000..3010c95d --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Destructor.md @@ -0,0 +1,29 @@ +# GaussianSplat::~GaussianSplat() + +销毁对象并释放相关资源。 + +```cpp +~GaussianSplat() override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/FindSection.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/FindSection.md new file mode 100644 index 00000000..792b6b7b --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/FindSection.md @@ -0,0 +1,31 @@ +# GaussianSplat::FindSection + +查找并返回匹配对象。 + +```cpp +const GaussianSplatSection* FindSection(GaussianSplatSectionType type) const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `const GaussianSplatSection*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::FindSection(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GaussianSplat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GaussianSplat.md new file mode 100644 index 00000000..d05dcdad --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GaussianSplat.md @@ -0,0 +1,64 @@ +# GaussianSplat + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/GaussianSplat/GaussianSplat.h` + +**源文件**: `engine/src/Resources/GaussianSplat/GaussianSplat.cpp` + +**描述**: Gaussian Splat 运行时资源对象,保存 metadata、section table 与原始 payload。 + +## 概述 + +`GaussianSplat` 当前把 splat 数据拆成三层状态: + +- `GaussianSplatMetadata` + - 内容版本、splat/chunk/camera 数量、bounds 与 section format +- `GaussianSplatSection` + - 每个 section 的类型、格式、payload 偏移、大小和元素布局 +- `payload` + - 实际的二进制块数据 + +这让资源对象可以在不理解每种 section 语义的前提下,统一保存和查询 payload。 + +## 当前状态模型 + +| 字段 | 说明 | +|------|------| +| `m_metadata` | 版本、bounds、计数和 section format | +| `m_sections` | section 描述表 | +| `m_payload` | 原始二进制 payload | + +## 当前实现行为 + +- `CreateOwned(...)` + - 先验证 section table,再接管 metadata / sections / payload +- `FindSection(...)` + - 按 `GaussianSplatSectionType` 查找 section 记录 +- `GetSectionData(...)` + - 根据 section 的 `dataOffset` 返回 payload 里的起始地址 +- `Clear()` + - 清空 metadata、section table 和 payload,并把资源标记为 invalid +- `Release()` + - 当前直接执行 `delete this` + +## 测试与调用链 + +- `tests/Resources/GaussianSplat/test_gaussian_splat.cpp` + - 覆盖 `CreateOwned(...)` 的 metadata / payload 保存与非法 section layout 拒绝 +- `engine/src/Resources/GaussianSplat/GaussianSplatArtifactIO.cpp` + - 当前把 artifact 读回结果装配成 `GaussianSplat` + +## 当前实现边界 + +- 当前对象只提供按 section 粗粒度查询,不做更高层语义解码。 +- `ValidateSections(...)` 会拒绝 `Unknown` section、越界 payload 区间和重复 section type。 +- payload 生命周期完全由资源对象拥有,不借用外部内存。 + +## 相关文档 + +- [GaussianSplat 子模块](../GaussianSplat.md) +- [GaussianSplatArtifactIO](../GaussianSplatArtifactIO/GaussianSplatArtifactIO.md) +- [GaussianSplatLoader](../GaussianSplatLoader/GaussianSplatLoader.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetBounds.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetBounds.md new file mode 100644 index 00000000..c4805015 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetBounds.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetBounds + +获取相关状态或对象。 + +```cpp +const Math::Bounds& GetBounds() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Bounds&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetBounds(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraCount.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraCount.md new file mode 100644 index 00000000..66d5ceee --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraCount.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetCameraCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetCameraCount() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetCameraCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraFormat.md new file mode 100644 index 00000000..23c4be78 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetCameraFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetCameraFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetCameraFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetCameraFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkCount.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkCount.md new file mode 100644 index 00000000..70fb1594 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkCount.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetChunkCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetChunkCount() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetChunkCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkFormat.md new file mode 100644 index 00000000..b42220a8 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetChunkFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetChunkFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetChunkFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetChunkFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetColorFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetColorFormat.md new file mode 100644 index 00000000..a6368712 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetColorFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetColorFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetColorFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetColorFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetContentVersion.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetContentVersion.md new file mode 100644 index 00000000..1badfae9 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetContentVersion.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetContentVersion + +获取相关状态或对象。 + +```cpp +Core::uint32 GetContentVersion() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetContentVersion(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetGUID.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetGUID.md new file mode 100644 index 00000000..d7d99de6 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetGUID.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMemorySize.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMemorySize.md new file mode 100644 index 00000000..1cc049ad --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMemorySize.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMetadata.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMetadata.md new file mode 100644 index 00000000..08097723 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetMetadata.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetMetadata + +获取相关状态或对象。 + +```cpp +const GaussianSplatMetadata& GetMetadata() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const GaussianSplatMetadata&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetMetadata(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetName.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetName.md new file mode 100644 index 00000000..f7abf362 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetName.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetOtherFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetOtherFormat.md new file mode 100644 index 00000000..ec088997 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetOtherFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetOtherFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetOtherFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetOtherFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPath.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPath.md new file mode 100644 index 00000000..cee710e0 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPath.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadData.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadData.md new file mode 100644 index 00000000..d8dd2395 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadData.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetPayloadData + +获取相关状态或对象。 + +```cpp +const Core::uint8* GetPayloadData() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Core::uint8*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetPayloadData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadSize.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadSize.md new file mode 100644 index 00000000..6d81fe8e --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPayloadSize.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetPayloadSize + +获取相关状态或对象。 + +```cpp +size_t GetPayloadSize() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetPayloadSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPositionFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPositionFormat.md new file mode 100644 index 00000000..886456b7 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetPositionFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetPositionFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetPositionFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetPositionFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSHFormat.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSHFormat.md new file mode 100644 index 00000000..6d2e053c --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSHFormat.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetSHFormat + +获取相关状态或对象。 + +```cpp +GaussianSplatSectionFormat GetSHFormat() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GaussianSplatSectionFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetSHFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSectionData.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSectionData.md new file mode 100644 index 00000000..8196b2db --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSectionData.md @@ -0,0 +1,31 @@ +# GaussianSplat::GetSectionData + +获取相关状态或对象。 + +```cpp +const void* GetSectionData(GaussianSplatSectionType type) const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `const void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetSectionData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSections.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSections.md new file mode 100644 index 00000000..295fade5 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSections.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetSections + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetSections() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetSections(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSplatCount.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSplatCount.md new file mode 100644 index 00000000..ca002a03 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetSplatCount.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetSplatCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetSplatCount() const; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetSplatCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetType.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetType.md new file mode 100644 index 00000000..cb844fe1 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/GetType.md @@ -0,0 +1,30 @@ +# GaussianSplat::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/IsValid.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/IsValid.md new file mode 100644 index 00000000..ec14560d --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/IsValid.md @@ -0,0 +1,30 @@ +# GaussianSplat::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Release.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Release.md new file mode 100644 index 00000000..ecb56e01 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplat/Release.md @@ -0,0 +1,30 @@ +# GaussianSplat::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplat.h`,当前页面用于固定 `GaussianSplat` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplat object; + // 根据上下文补齐参数后调用 GaussianSplat::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplat.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatArtifactIO/GaussianSplatArtifactIO.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatArtifactIO/GaussianSplatArtifactIO.md new file mode 100644 index 00000000..48debef9 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatArtifactIO/GaussianSplatArtifactIO.md @@ -0,0 +1,58 @@ +# GaussianSplatArtifactIO + +**命名空间**: `XCEngine::Resources` + +**类型**: `functions` + +**头文件**: `XCEngine/Resources/GaussianSplat/GaussianSplatArtifactIO.h` + +**源文件**: `engine/src/Resources/GaussianSplat/GaussianSplatArtifactIO.cpp` + +**描述**: `.xcgsplat` artifact 的读写入口,负责把 Gaussian Splat payload 序列化到磁盘并恢复成运行时资源。 + +## 概述 + +`GaussianSplatArtifactIO` 当前公开两个函数: + +- `WriteGaussianSplatArtifactFile(...)` + - 把 `GaussianSplat` 的 metadata、section table 和 payload 写成 `.xcgsplat` +- `LoadGaussianSplatArtifact(...)` + - 读取 `.xcgsplat` 并恢复成 `GaussianSplat` + +## 当前实现行为 + +### 写入路径 + +- 会先解析 artifact 路径并在需要时创建父目录。 +- 文件头 magic 当前校验为 `XCGSP01` 协议。 +- 写入顺序是: + - `GaussianSplatArtifactFileHeader` + - `GaussianSplatArtifactHeader` + - section table + - payload 字节块 + +### 读取路径 + +- 会解析真实路径,必要时回退到 `ResourceManager::Get().GetResourceRoot()`。 +- header 校验失败会直接返回错误的 `LoadResult`。 +- 读取 section table 后会还原成 `GaussianSplatSection` 数组,再读 payload。 +- 成功时通过内部 `CreateOwnedGaussianSplatResource(...)` 构造资源对象。 + +## 测试与调用链 + +- `tests/Resources/GaussianSplat/test_gaussian_splat_loader.cpp` + - 覆盖写 artifact、再由 loader 读回的往返路径 +- `engine/src/Resources/GaussianSplat/GaussianSplatLoader.cpp` + - 当前把实际 `.xcgsplat` 读取委托给 `LoadGaussianSplatArtifact(...)` + +## 当前实现边界 + +- 当前只处理 `.xcgsplat` artifact,不直接解析外部原始 Gaussian Splat 源格式。 +- artifact 的 section 语义依赖 header 里的 metadata/format,不在这里做高层解释。 +- 读取失败时直接返回错误,不做容错修复。 + +## 相关文档 + +- [GaussianSplat 子模块](../GaussianSplat.md) +- [GaussianSplat](../GaussianSplat/GaussianSplat.md) +- [GaussianSplatLoader](../GaussianSplatLoader/GaussianSplatLoader.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/CanLoad.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/CanLoad.md new file mode 100644 index 00000000..ee54a13b --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/CanLoad.md @@ -0,0 +1,31 @@ +# GaussianSplatLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 根据上下文补齐参数后调用 GaussianSplatLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Constructor.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Constructor.md new file mode 100644 index 00000000..fb1023a5 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Constructor.md @@ -0,0 +1,28 @@ +# GaussianSplatLoader::GaussianSplatLoader() + +构造对象。 + +```cpp +GaussianSplatLoader(); +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Destructor.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Destructor.md new file mode 100644 index 00000000..bc9f4bd9 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Destructor.md @@ -0,0 +1,29 @@ +# GaussianSplatLoader::~GaussianSplatLoader() + +销毁对象并释放相关资源。 + +```cpp +~GaussianSplatLoader() override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GaussianSplatLoader.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GaussianSplatLoader.md new file mode 100644 index 00000000..043ff3fe --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GaussianSplatLoader.md @@ -0,0 +1,52 @@ +# GaussianSplatLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h` + +**源文件**: `engine/src/Resources/GaussianSplat/GaussianSplatLoader.cpp` + +**描述**: `GaussianSplat` 资源的标准 loader,负责识别 `.xcgsplat` artifact 并通过 `GaussianSplatArtifactIO` 读入运行时资源。 + +## 概述 + +`GaussianSplatLoader` 继承自 `IResourceLoader`,是 `ResourceManager` 当前注册的 Gaussian Splat 资源入口。实现策略和 `ModelLoader` 类似: + +- 只接受 `.xcgsplat` +- 实际反序列化委托给 `LoadGaussianSplatArtifact(...)` +- 默认不声明额外导入设置 + +## 当前实现行为 + +### 扩展名与资源类型 + +- `GetResourceType()` 固定返回 `ResourceType::GaussianSplat` +- `GetSupportedExtensions()` 当前只返回: + - `xcgsplat` +- `CanLoad(...)` 当前只接受 `.xcgsplat` + +### 加载路径 + +- `Load(...)` 会先检查扩展名 +- 不支持的扩展名会返回 `Unsupported GaussianSplat format` +- 合法输入则直接调用 `LoadGaussianSplatArtifact(path)` + +### 默认设置与注册 + +- `GetDefaultSettings()` 当前返回 `nullptr` +- 文件末尾通过 `REGISTER_RESOURCE_LOADER(GaussianSplatLoader)` 注册到资源系统 + +## 测试与调用链 + +- `tests/Resources/GaussianSplat/test_gaussian_splat_loader.cpp` + - 覆盖扩展名判断、非法路径、artifact 往返加载与 `ResourceManager` 注册 +- `engine/src/Core/Asset/ResourceManager.cpp` + - 当前持有全局 `GaussianSplatLoader` 并注册到资源系统 + +## 相关文档 + +- [GaussianSplat 子模块](../GaussianSplat.md) +- [GaussianSplat](../GaussianSplat/GaussianSplat.md) +- [GaussianSplatArtifactIO](../GaussianSplatArtifactIO/GaussianSplatArtifactIO.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetDefaultSettings.md new file mode 100644 index 00000000..9a379d67 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# GaussianSplatLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 根据上下文补齐参数后调用 GaussianSplatLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetResourceType.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetResourceType.md new file mode 100644 index 00000000..ef661466 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# GaussianSplatLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 根据上下文补齐参数后调用 GaussianSplatLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..6ed6d4a8 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# GaussianSplatLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 根据上下文补齐参数后调用 GaussianSplatLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Load.md b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Load.md new file mode 100644 index 00000000..92794345 --- /dev/null +++ b/docs/api/XCEngine/Resources/GaussianSplat/GaussianSplatLoader/Load.md @@ -0,0 +1,32 @@ +# GaussianSplatLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/GaussianSplat/GaussianSplatLoader.h`,当前页面用于固定 `GaussianSplatLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::GaussianSplatLoader object; + // 根据上下文补齐参数后调用 GaussianSplatLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GaussianSplatLoader.md) +- [返回模块目录](../GaussianSplat.md) diff --git a/docs/api/XCEngine/Resources/Model/Model.md b/docs/api/XCEngine/Resources/Model/Model.md new file mode 100644 index 00000000..9a557a94 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model.md @@ -0,0 +1,48 @@ +# Model + +**命名空间**: `XCEngine::Resources` + +**类型**: `submodule` + +**描述**: 模型资源子模块,覆盖运行时 `Model` 资源对象、`.xcmodel` artifact 读写以及对应的标准 loader。 + +## 概述 + +`Resources::Model` 当前不是通用场景导入层,而是资源系统内部的模型图结构承载层。按当前实现,这条链路是: + +1. `WriteModelArtifactFile(...)` + - 把内存中的 `Model` 图结构序列化成 `XCMOD01` / schema v1 的 `.xcmodel` +2. `LoadModelArtifact(...)` + - 从 `.xcmodel` 反序列化出新的堆分配 `Model` +3. `ModelLoader` + - 作为 `ResourceManager` 的 `IResourceLoader` 入口,只接受 `.xcmodel` + +当前 `Model` 只保存节点树、mesh local id 与 material local id 绑定,不直接持有解析后的 `Mesh` / `Material` 资源指针。 + +## 头文件 + +- [Model](Model/Model.md) - `Model.h` +- [ModelArtifactIO](ModelArtifactIO/ModelArtifactIO.md) - `ModelArtifactIO.h` +- [ModelLoader](ModelLoader/ModelLoader.md) - `ModelLoader.h` + +## 测试与调用链 + +- `tests/Resources/Model/test_model.cpp` + - 覆盖默认状态、图结构增量写入、`Release()` 后清空状态 +- `tests/Resources/Model/test_model_loader.cpp` + - 覆盖 `.xcmodel` 扩展名识别、artifact 写入/读回、`ResourceManager` 注册 +- `engine/include/XCEngine/Resources/Resources.h` + - 当前 umbrella header 已把三份 public header 统一对外暴露 +- `engine/src/Core/Asset/ResourceManager.cpp` + - 当前通过全局 `ModelLoader` 注册 `ResourceType::Model` + +## 当前实现边界 + +- 当前只支持 `.xcmodel` artifact,`ModelLoader` 不直接读取 `.fbx` / `.obj` 等源格式。 +- 当前 artifact 负载只覆盖节点图、mesh binding、material binding 与局部变换,不包含动画、骨骼或材质参数展开数据。 +- `LoadModelArtifact(...)` 当前返回堆分配资源对象;直接调用方需要遵守 `LoadResult` 的资源释放约定。 + +## 相关文档 + +- [Resources](../Resources.md) +- [Asset](../../Core/Asset/Asset.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/AddMaterialBinding.md b/docs/api/XCEngine/Resources/Model/Model/AddMaterialBinding.md new file mode 100644 index 00000000..77d6e750 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/AddMaterialBinding.md @@ -0,0 +1,31 @@ +# Model::AddMaterialBinding + +添加元素或建立关联。 + +```cpp +void AddMaterialBinding(const ModelMaterialBinding& binding); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::AddMaterialBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/AddMeshBinding.md b/docs/api/XCEngine/Resources/Model/Model/AddMeshBinding.md new file mode 100644 index 00000000..1b0a5cf3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/AddMeshBinding.md @@ -0,0 +1,31 @@ +# Model::AddMeshBinding + +添加元素或建立关联。 + +```cpp +void AddMeshBinding(const ModelMeshBinding& binding); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::AddMeshBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/AddNode.md b/docs/api/XCEngine/Resources/Model/Model/AddNode.md new file mode 100644 index 00000000..246df9e9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/AddNode.md @@ -0,0 +1,31 @@ +# Model::AddNode + +添加元素或建立关联。 + +```cpp +void AddNode(const ModelNode& node); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** +- `node` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::AddNode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/ClearGraph.md b/docs/api/XCEngine/Resources/Model/Model/ClearGraph.md new file mode 100644 index 00000000..af9fa364 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/ClearGraph.md @@ -0,0 +1,30 @@ +# Model::ClearGraph + +清空内部数据。 + +```cpp +void ClearGraph(); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::ClearGraph(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/Constructor.md b/docs/api/XCEngine/Resources/Model/Model/Constructor.md new file mode 100644 index 00000000..27bebdce --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/Constructor.md @@ -0,0 +1,28 @@ +# Model::Model() + +构造对象。 + +```cpp +Model(); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/Destructor.md b/docs/api/XCEngine/Resources/Model/Model/Destructor.md new file mode 100644 index 00000000..b7fbbda0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/Destructor.md @@ -0,0 +1,29 @@ +# Model::~Model() + +销毁对象并释放相关资源。 + +```cpp +~Model() override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetGUID.md b/docs/api/XCEngine/Resources/Model/Model/GetGUID.md new file mode 100644 index 00000000..19cede74 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetGUID.md @@ -0,0 +1,30 @@ +# Model::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetMaterialBindings.md b/docs/api/XCEngine/Resources/Model/Model/GetMaterialBindings.md new file mode 100644 index 00000000..91c67fcb --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetMaterialBindings.md @@ -0,0 +1,30 @@ +# Model::GetMaterialBindings + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetMaterialBindings() const; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetMaterialBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetMemorySize.md b/docs/api/XCEngine/Resources/Model/Model/GetMemorySize.md new file mode 100644 index 00000000..62f23aa8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetMemorySize.md @@ -0,0 +1,30 @@ +# Model::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetMeshBindings.md b/docs/api/XCEngine/Resources/Model/Model/GetMeshBindings.md new file mode 100644 index 00000000..f6388868 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetMeshBindings.md @@ -0,0 +1,30 @@ +# Model::GetMeshBindings + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetMeshBindings() const; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetMeshBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetName.md b/docs/api/XCEngine/Resources/Model/Model/GetName.md new file mode 100644 index 00000000..bb8f1f0f --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetName.md @@ -0,0 +1,30 @@ +# Model::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetNodes.md b/docs/api/XCEngine/Resources/Model/Model/GetNodes.md new file mode 100644 index 00000000..55e8f005 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetNodes.md @@ -0,0 +1,30 @@ +# Model::GetNodes + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetNodes() const; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetNodes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetPath.md b/docs/api/XCEngine/Resources/Model/Model/GetPath.md new file mode 100644 index 00000000..a659e297 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetPath.md @@ -0,0 +1,30 @@ +# Model::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetRootNodeIndex.md b/docs/api/XCEngine/Resources/Model/Model/GetRootNodeIndex.md new file mode 100644 index 00000000..75bea71f --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetRootNodeIndex.md @@ -0,0 +1,30 @@ +# Model::GetRootNodeIndex + +获取相关状态或对象。 + +```cpp +Core::uint32 GetRootNodeIndex() const; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetRootNodeIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/GetType.md b/docs/api/XCEngine/Resources/Model/Model/GetType.md new file mode 100644 index 00000000..f7604318 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/GetType.md @@ -0,0 +1,30 @@ +# Model::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/HasRootNode.md b/docs/api/XCEngine/Resources/Model/Model/HasRootNode.md new file mode 100644 index 00000000..1610e093 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/HasRootNode.md @@ -0,0 +1,30 @@ +# Model::HasRootNode + +判断是否具备指定状态或能力。 + +```cpp +bool HasRootNode() const; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::HasRootNode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/IsValid.md b/docs/api/XCEngine/Resources/Model/Model/IsValid.md new file mode 100644 index 00000000..05b76534 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/IsValid.md @@ -0,0 +1,30 @@ +# Model::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/Model.md b/docs/api/XCEngine/Resources/Model/Model/Model.md new file mode 100644 index 00000000..9ce646c8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/Model.md @@ -0,0 +1,75 @@ +# Model + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Model/Model.h` + +**源文件**: `engine/src/Resources/Model/Model.cpp` + +**描述**: 运行时模型资源对象,保存节点树、mesh binding 与 material binding 的轻量图结构。 + +## 概述 + +`Model` 继承自 `IResource`,但它当前承载的是“资源图描述”而不是 GPU 侧数据。实现里只保存: + +- `ModelNode` + - 节点名称、父节点索引、局部位移/旋转/缩放,以及节点对应的 mesh binding 区间 +- `ModelMeshBinding` + - 单个 mesh local id 以及它在 material binding 数组中的区间 +- `ModelMaterialBinding` + - slot 到 material local id 的映射 + +这意味着 `Model` 当前更接近导入后场景层次结构的归档结果,后续系统需要再通过 local id 去解析 mesh / material 资源。 + +## 当前实现行为 + +- 默认构造后: + - `GetType()` 返回 `ResourceType::Model` + - `HasRootNode()` 为 `false` + - 三类数组都为空 + - `GetMemorySize()` 为 `0` +- `SetRootNodeIndex(...)` 只记录根节点索引并刷新 `memorySize` +- `AddNode(...)` / `AddMeshBinding(...)` / `AddMaterialBinding(...)` + - 追加到对应数组并刷新 `memorySize` +- `ClearGraph()` + - 清空所有节点与绑定,根索引回到 `kInvalidModelNodeIndex` +- `Release()` + - 当前只调用 `ClearGraph()` 并 `SetInvalid()`,不会 `delete this` + +## 内存与所有权 + +- `UpdateMemorySize()` 通过结构体大小累加,再额外把每个 `ModelNode::name` 的字符串长度计入统计。 +- `Model` 自身拥有三组数组的生命周期。 +- 当前测试 `tests/Resources/Model/test_model_loader.cpp` 直接对 `LoadModelArtifact(...)` 返回的 `Model*` 执行 `delete`,说明直接调用路径下对象析构仍由调用方收口。 + +## 公开状态模型 + +| 字段 | 语义 | +|------|------| +| `kInvalidModelNodeIndex` | 无根节点或未设置根节点时使用的哨兵值 | +| `ModelNode::parentIndex` | 父节点索引;根节点当前使用 `-1` | +| `ModelNode::meshBindingStart` / `meshBindingCount` | 节点对应 mesh binding 数组切片 | +| `ModelMeshBinding::materialBindingStart` / `materialBindingCount` | 单个 mesh 对应 material binding 数组切片 | +| `ModelMaterialBinding::slotIndex` | 子网格材质槽位 | +| `ModelMaterialBinding::materialLocalID` | 指向 artifact 内材质表的 local id | + +## 测试与调用链 + +- `tests/Resources/Model/test_model.cpp` + - 验证节点、mesh binding、material binding 的追加与 `memorySize` 刷新 +- `engine/src/Resources/Model/ModelArtifactIO.cpp` + - 负责把 `Model` 序列化与反序列化为 `.xcmodel` + +## 当前实现边界 + +- 当前没有面向调用方的随机查询 helper,例如“根据节点名查索引”或“根据节点遍历子树”。 +- 当前 `Release()` 只清空内部状态,不承担对象销毁职责;这点与部分资源类型的 `delete this` 语义不同。 +- 当前没有线程同步;读写图结构默认要求调用方自己约束时序。 + +## 相关文档 + +- [Model 子模块](../Model.md) +- [ModelArtifactIO](../ModelArtifactIO/ModelArtifactIO.md) +- [ModelLoader](../ModelLoader/ModelLoader.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/Release.md b/docs/api/XCEngine/Resources/Model/Model/Release.md new file mode 100644 index 00000000..52ccc116 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/Release.md @@ -0,0 +1,30 @@ +# Model::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/Model/SetRootNodeIndex.md b/docs/api/XCEngine/Resources/Model/Model/SetRootNodeIndex.md new file mode 100644 index 00000000..0c9b4b81 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/Model/SetRootNodeIndex.md @@ -0,0 +1,31 @@ +# Model::SetRootNodeIndex + +设置相关状态或配置。 + +```cpp +void SetRootNodeIndex(Core::uint32 index); +``` + +该方法声明于 `XCEngine/Resources/Model/Model.h`,当前页面用于固定 `Model` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Model object; + // 根据上下文补齐参数后调用 Model::SetRootNodeIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Model.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelArtifactIO/ModelArtifactIO.md b/docs/api/XCEngine/Resources/Model/ModelArtifactIO/ModelArtifactIO.md new file mode 100644 index 00000000..0ecc5779 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelArtifactIO/ModelArtifactIO.md @@ -0,0 +1,75 @@ +# ModelArtifactIO + +**命名空间**: `XCEngine::Resources` + +**类型**: `header` + +**头文件**: `XCEngine/Resources/Model/ModelArtifactIO.h` + +**源文件**: `engine/src/Resources/Model/ModelArtifactIO.cpp` + +**描述**: `Model` 的 `.xcmodel` artifact 读写入口,负责把运行时图结构编码为 `XCMOD01`,以及从 artifact 还原堆分配 `Model`。 + +## 概述 + +这份头文件当前只暴露两个函数: + +- `WriteModelArtifactFile(...)` + - 序列化 `Model` +- `LoadModelArtifact(...)` + - 反序列化 `Model` + +实现依赖 `ArtifactFormats.h` 中的 `ModelArtifactFileHeader`、`ModelArtifactHeader`、`ModelNodeArtifactHeader` 等结构,并通过 `ResourceManager::Get().GetResourceRoot()` 补全相对路径。 + +## 当前实现行为 + +### `WriteModelArtifactFile(...)` + +- 若输出父目录不存在,会先尝试创建目录。 +- 文件头固定写入: + - magic `XCMOD01` + - `schemaVersion == kModelArtifactSchemaVersion` +- 之后顺序写入: + - `ModelArtifactHeader` + - 每个节点的字符串名与 `ModelNodeArtifactHeader` + - 每个 `ModelMeshBindingArtifact` + - 每个 `ModelMaterialBindingArtifact` +- 失败时返回 `false`,并在提供 `outErrorMessage` 时写入简短错误文本。 + +### `LoadModelArtifact(...)` + +- 支持相对路径;当相对路径在当前目录不存在时,会尝试拼接 `ResourceManager` 的 resource root。 +- 会严格校验: + - 文件头 magic 是否为 `XCMOD01` + - schema version 是否匹配 + - `rootNodeIndex` 是否落在 `nodeCount` 范围内 +- 成功时通过内部 `CreateOwnedModelResource(...)`: + - `new Model()` + - 调用 `Initialize(...)` + - 逐项追加节点与绑定 +- 失败时返回带错误信息的 `LoadResult` + +## 所有权与失败路径 + +- 当前 `LoadModelArtifact(...)` 返回的资源对象由堆分配创建。 +- `tests/Resources/Model/test_model_loader.cpp` 直接对结果中的 `resource` 指针执行 `delete`,说明在非 `ResourceManager` 托管路径下,调用方需要负责析构收口。 +- 任何一步读流失败都会立即返回失败 `LoadResult`,不会返回部分填充的 `Model`。 + +## 测试与调用链 + +- `tests/Resources/Model/test_model_loader.cpp` + - 覆盖 artifact 写入后再加载的回归路径 +- `engine/src/Resources/Model/ModelLoader.cpp` + - `ModelLoader::Load(...)` 最终直接委托给 `LoadModelArtifact(...)` + +## 当前实现边界 + +- 当前没有向后兼容旧 schema 的分支;header 校验失败就直接返回错误。 +- 当前文件格式只保存 local id 级别的 mesh / material 绑定,不写入完整子资源 payload。 +- 当前名称字符串采用长度前缀 + 原始字节写入,不做额外压缩或去重。 + +## 相关文档 + +- [Model 子模块](../Model.md) +- [Model](../Model/Model.md) +- [ModelLoader](../ModelLoader/ModelLoader.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/CanLoad.md b/docs/api/XCEngine/Resources/Model/ModelLoader/CanLoad.md new file mode 100644 index 00000000..8c5e27e0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/CanLoad.md @@ -0,0 +1,31 @@ +# ModelLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 根据上下文补齐参数后调用 ModelLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/Constructor.md b/docs/api/XCEngine/Resources/Model/ModelLoader/Constructor.md new file mode 100644 index 00000000..12169ff1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/Constructor.md @@ -0,0 +1,28 @@ +# ModelLoader::ModelLoader() + +构造对象。 + +```cpp +ModelLoader(); +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/Destructor.md b/docs/api/XCEngine/Resources/Model/ModelLoader/Destructor.md new file mode 100644 index 00000000..e583ba91 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/Destructor.md @@ -0,0 +1,29 @@ +# ModelLoader::~ModelLoader() + +销毁对象并释放相关资源。 + +```cpp +~ModelLoader() override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/Model/ModelLoader/GetDefaultSettings.md new file mode 100644 index 00000000..cc80d03f --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# ModelLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 根据上下文补齐参数后调用 ModelLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/GetResourceType.md b/docs/api/XCEngine/Resources/Model/ModelLoader/GetResourceType.md new file mode 100644 index 00000000..3f571ae9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# ModelLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 根据上下文补齐参数后调用 ModelLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/Model/ModelLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..f007de7e --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# ModelLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 根据上下文补齐参数后调用 ModelLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/Load.md b/docs/api/XCEngine/Resources/Model/ModelLoader/Load.md new file mode 100644 index 00000000..3fd9ea3c --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/Load.md @@ -0,0 +1,32 @@ +# ModelLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/Model/ModelLoader.h`,当前页面用于固定 `ModelLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ModelLoader object; + // 根据上下文补齐参数后调用 ModelLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ModelLoader.md) +- [返回模块目录](../Model.md) diff --git a/docs/api/XCEngine/Resources/Model/ModelLoader/ModelLoader.md b/docs/api/XCEngine/Resources/Model/ModelLoader/ModelLoader.md new file mode 100644 index 00000000..6f32b606 --- /dev/null +++ b/docs/api/XCEngine/Resources/Model/ModelLoader/ModelLoader.md @@ -0,0 +1,55 @@ +# ModelLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Model/ModelLoader.h` + +**源文件**: `engine/src/Resources/Model/ModelLoader.cpp` + +**描述**: `Model` 资源的标准 `IResourceLoader`,当前只接受 `.xcmodel` artifact,并把加载工作委托给 `LoadModelArtifact(...)`。 + +## 概述 + +`ModelLoader` 是 `ResourceManager` 识别 `ResourceType::Model` 的入口。当前它不承担源格式导入,只负责: + +1. 声明资源类型 `ResourceType::Model` +2. 声明支持扩展名 `xcmodel` +3. 在 `Load(...)` 中做扩展名校验 +4. 转交给 `LoadModelArtifact(...)` + +文件末尾通过 `REGISTER_RESOURCE_LOADER(ModelLoader)` 完成注册;`engine/src/Core/Asset/ResourceManager.cpp` 也会持有对应全局 loader 实例。 + +## 当前实现行为 + +- `GetSupportedExtensions()` + - 当前只返回一个扩展名:`xcmodel` +- `CanLoad(...)` + - 把文件扩展名转小写后比较,因此 `test.XCMODEL` 也会被接受 +- `Load(...)` + - 若扩展名不匹配,返回 `"Unsupported model format: "` + - 若扩展名匹配,直接调用 `LoadModelArtifact(...)` +- `GetDefaultSettings()` + - 当前固定返回 `nullptr` + +## 测试与调用链 + +- `tests/Resources/Model/test_model_loader.cpp` + - 覆盖 `GetResourceType()`、`CanLoad()`、非法路径失败以及 artifact round-trip +- `tests/Resources/Model/test_model_loader.cpp` + - 还验证了 `ResourceManager::Get().GetLoader(ResourceType::Model)` 非空 +- `engine/include/XCEngine/Resources/Resources.h` + - 当前 umbrella header 已把 `ModelLoader.h` 对外暴露 + +## 当前实现边界 + +- 当前不支持 import settings;`settings` 参数在实现里被显式忽略。 +- 当前不直接读取源模型格式,所有成功路径都要求先有 `.xcmodel` artifact。 +- 当前没有多格式回退逻辑或 MIME / 内容探测逻辑,完全依赖扩展名。 + +## 相关文档 + +- [Model 子模块](../Model.md) +- [ModelArtifactIO](../ModelArtifactIO/ModelArtifactIO.md) +- [Resources](../../Resources.md) diff --git a/docs/api/XCEngine/Resources/Resources.md b/docs/api/XCEngine/Resources/Resources.md index 9918d470..c8742c39 100644 --- a/docs/api/XCEngine/Resources/Resources.md +++ b/docs/api/XCEngine/Resources/Resources.md @@ -20,8 +20,10 @@ ## 子目录 - [AudioClip](AudioClip/AudioClip.md) +- [GaussianSplat](GaussianSplat/GaussianSplat.md) - [Material](Material/Material.md) - [Mesh](Mesh/Mesh.md) +- [Model](Model/Model.md) - [Shader](Shader/Shader.md) - [Texture](Texture/Texture.md) - [Volume](Volume/Volume.md) diff --git a/docs/api/_tools/audit_api_docs.py b/docs/api/_tools/audit_api_docs.py index a99bccec..5db03010 100644 --- a/docs/api/_tools/audit_api_docs.py +++ b/docs/api/_tools/audit_api_docs.py @@ -13,8 +13,8 @@ DOC_ROOT = SCRIPT_DIR.parent if SCRIPT_DIR.name == "_tools" else SCRIPT_DIR REPO_ROOT = DOC_ROOT.parents[1] INCLUDE_ROOT = REPO_ROOT / "engine" / "include" PUBLIC_INCLUDE_ROOT = INCLUDE_ROOT / "XCEngine" +XCEDITOR_INCLUDE_ROOT = REPO_ROOT / "new_editor" / "include" / "XCEditor" EDITOR_SOURCE_ROOT = REPO_ROOT / "editor" / "src" -PARALLEL_ROOT = DOC_ROOT / "XCEngine" META_ROOT = DOC_ROOT / "_meta" DEFAULT_REPORT = META_ROOT / "rebuild-status.md" @@ -69,17 +69,17 @@ STALE_EDITOR_PAGE_TOKENS: tuple[tuple[str, str, str], ...] = ( ) STALE_CANONICAL_PAGE_TOKENS: tuple[tuple[str, str, str], ...] = ( ( - "XCEngine/Rendering/CameraRenderRequest/", + "XCEngine/Rendering/Planning/CameraRenderRequest/", "builtinPostProcess", "与当前 CameraRenderRequest 已删除该字段的实现不符", ), ( - "XCEngine/Rendering/CameraRenderRequest/", + "XCEngine/Rendering/Planning/CameraRenderRequest/", "BuiltinPostProcessRequest", "与当前 CameraRenderRequest 已删除该子请求对象的实现不符", ), ( - "XCEngine/Rendering/CameraRenderer/", + "XCEngine/Rendering/Execution/CameraRenderer/", "m_builtinPostProcessBuilder", "与当前 CameraRenderer 已删除该成员的实现不符", ), @@ -147,6 +147,33 @@ class StaleCanonicalPageMatch: reason: str +@dataclass(frozen=True) +class PublicDocRoot: + doc_root_name: str + include_root: Path + doc_root: Path + + +PUBLIC_DOC_ROOTS: tuple[PublicDocRoot, ...] = ( + PublicDocRoot( + doc_root_name="XCEngine", + include_root=PUBLIC_INCLUDE_ROOT, + doc_root=DOC_ROOT / "XCEngine", + ), + PublicDocRoot( + doc_root_name="XCEditor", + include_root=XCEDITOR_INCLUDE_ROOT, + doc_root=DOC_ROOT / "XCEditor", + ), +) +PUBLIC_DOC_ROOT_NAMES = tuple(root.doc_root_name for root in PUBLIC_DOC_ROOTS) +CANONICAL_PAGE_PREFIXES = tuple(f"{root.doc_root_name}/" for root in PUBLIC_DOC_ROOTS) +PUBLIC_HEADER_ROOT_MAP = { + root.doc_root_name: root.include_root.parent + for root in PUBLIC_DOC_ROOTS +} + + def normalize_rel_path(path: str) -> str: return path.replace("\\", "/") @@ -160,17 +187,24 @@ def iter_markdown_files() -> list[Path]: def iter_canonical_markdown_files() -> list[Path]: - return sorted( - path - for path in PARALLEL_ROOT.rglob("*.md") - ) + files: list[Path] = [] + for root in PUBLIC_DOC_ROOTS: + if not root.doc_root.exists(): + continue + files.extend(root.doc_root.rglob("*.md")) + return sorted(files) def iter_public_headers() -> list[str]: - return sorted( - normalize_rel_path(path.relative_to(INCLUDE_ROOT).as_posix()) - for path in PUBLIC_INCLUDE_ROOT.rglob("*.h") - ) + headers: list[str] = [] + for root in PUBLIC_DOC_ROOTS: + if not root.include_root.exists(): + continue + headers.extend( + normalize_rel_path(path.relative_to(root.include_root.parent).as_posix()) + for path in root.include_root.rglob("*.h") + ) + return sorted(headers) def iter_editor_source_headers() -> list[str]: @@ -181,15 +215,35 @@ def iter_editor_source_headers() -> list[str]: def iter_public_include_dirs() -> list[str]: - dirs = ["XCEngine"] - dirs.extend( - f"XCEngine/{path.relative_to(PUBLIC_INCLUDE_ROOT).as_posix()}" - for path in sorted(PUBLIC_INCLUDE_ROOT.rglob("*")) - if path.is_dir() - ) + dirs: list[str] = [] + for root in PUBLIC_DOC_ROOTS: + if not root.include_root.exists(): + continue + dirs.append(root.doc_root_name) + dirs.extend( + f"{root.doc_root_name}/{path.relative_to(root.include_root).as_posix()}" + for path in sorted(root.include_root.rglob("*")) + if path.is_dir() + ) return dirs +def find_public_doc_root_by_rel_path(rel_path: str) -> PublicDocRoot | None: + root_name = rel_path.split("/", 1)[0] + for root in PUBLIC_DOC_ROOTS: + if root.doc_root_name == root_name: + return root + return None + + +def header_ref_exists(header: str) -> bool: + root_name = header.split("/", 1)[0] + root_parent = PUBLIC_HEADER_ROOT_MAP.get(root_name) + if root_parent is None: + return False + return (root_parent / header).exists() + + def dir_index_name(relative: str) -> str: return f"{Path(relative).name}.md" @@ -262,22 +316,28 @@ def count_public_method_like_declarations(path: Path) -> int: def is_dir_index_page(page: Path) -> bool: - if not page.is_relative_to(PARALLEL_ROOT): + if not page.is_relative_to(DOC_ROOT): return False if page.stem != page.parent.name: return False - relative_dir = page.parent.relative_to(PARALLEL_ROOT) - source_dir = PUBLIC_INCLUDE_ROOT / relative_dir + rel_page = normalize_rel_path(page.relative_to(DOC_ROOT).as_posix()) + root = find_public_doc_root_by_rel_path(rel_page) + if root is None: + return False + + relative_dir = page.parent.relative_to(root.doc_root) + source_dir = root.include_root / relative_dir return source_dir.exists() and source_dir.is_dir() def is_flat_header_page(page: Path, rel_page: str) -> bool: - if not rel_page.startswith("XCEngine/"): + root = find_public_doc_root_by_rel_path(rel_page) + if root is None: return False if is_dir_index_page(page): return False - return (INCLUDE_ROOT / Path(rel_page).with_suffix(".h")).exists() + return (root.include_root.parent / Path(rel_page).with_suffix(".h")).exists() def build_editor_module_coverages( @@ -474,6 +534,7 @@ def collect_doc_state(report_path: Path) -> dict[str, object]: public_headers = iter_public_headers() editor_headers = iter_editor_source_headers() public_include_dirs = iter_public_include_dirs() + public_root_counts: dict[str, int] = defaultdict(int) declared_header_refs: set[str] = set() valid_header_refs: set[str] = set() @@ -505,7 +566,7 @@ def collect_doc_state(report_path: Path) -> dict[str, object]: continue rel_page = normalize_rel_path(page.relative_to(DOC_ROOT).as_posix()) content = page.read_text(encoding="utf-8") - is_canonical_page = rel_page.startswith("XCEngine/") + is_canonical_page = rel_page.startswith(CANONICAL_PAGE_PREFIXES) if is_canonical_page and NAMESPACE_RE.search(content): metadata_counts["namespace"] += 1 @@ -546,7 +607,7 @@ def collect_doc_state(report_path: Path) -> dict[str, object]: for match in HEADER_RE.finditer(content): header = normalize_rel_path(match.group(1)) declared_header_refs.add(header) - if (INCLUDE_ROOT / header).exists(): + if header_ref_exists(header): valid_header_refs.add(header) if is_canonical_page: canonical_valid_header_refs.add(header) @@ -579,17 +640,24 @@ def collect_doc_state(report_path: Path) -> dict[str, object]: non_md_relative_links.append((rel_page, target)) + for header in public_headers: + public_root_counts[header.split("/", 1)[0]] += 1 + + documented_root_counts: dict[str, int] = defaultdict(int) + for header in canonical_valid_header_refs: + documented_root_counts[header.split("/", 1)[0]] += 1 + public_by_module: dict[str, list[str]] = defaultdict(list) documented_by_module: dict[str, set[str]] = defaultdict(set) for header in public_headers: - module = header.split("/", 2)[1] + module_parts = header.split("/", 2) + module = "/".join(module_parts[:2]) if len(module_parts) >= 2 else module_parts[0] public_by_module[module].append(header) for header in canonical_valid_header_refs: - if not header.startswith("XCEngine/"): - continue - module = header.split("/", 2)[1] + module_parts = header.split("/", 2) + module = "/".join(module_parts[:2]) if len(module_parts) >= 2 else module_parts[0] documented_by_module[module].add(header) module_coverages = [ @@ -628,6 +696,8 @@ def collect_doc_state(report_path: Path) -> dict[str, object]: "markdown_files": markdown_files, "canonical_markdown_files": canonical_markdown_files, "public_headers": public_headers, + "public_root_counts": dict(sorted(public_root_counts.items())), + "documented_root_counts": dict(sorted(documented_root_counts.items())), "public_include_dirs": public_include_dirs, "declared_header_refs": sorted(declared_header_refs), "valid_header_refs": sorted(valid_header_refs), @@ -671,6 +741,8 @@ def build_report(state: dict[str, object]) -> str: markdown_files: list[Path] = state["markdown_files"] # type: ignore[assignment] canonical_markdown_files: list[Path] = state["canonical_markdown_files"] # type: ignore[assignment] public_headers: list[str] = state["public_headers"] # type: ignore[assignment] + public_root_counts: dict[str, int] = state["public_root_counts"] # type: ignore[assignment] + documented_root_counts: dict[str, int] = state["documented_root_counts"] # type: ignore[assignment] editor_headers: list[str] = state["editor_headers"] # type: ignore[assignment] public_include_dirs: list[str] = state["public_include_dirs"] # type: ignore[assignment] valid_header_refs: list[str] = state["valid_header_refs"] # type: ignore[assignment] @@ -707,6 +779,11 @@ def build_report(state: dict[str, object]) -> str: lines.append(f"- Markdown 页面数(全部): `{len(markdown_files)}`") lines.append(f"- Markdown 页面数(canonical): `{len(canonical_markdown_files)}`") lines.append(f"- Public headers 数: `{len(public_headers)}`") + for root_name, count in public_root_counts.items(): + documented_count = documented_root_counts.get(root_name, 0) + lines.append( + f"- `{root_name}` public headers 数: `{count}`(canonical 已覆盖 `{documented_count}`)" + ) lines.append(f"- Editor source headers 数: `{len(editor_headers)}`") lines.append(f"- 有效头文件引用数(全部): `{len(valid_header_refs)}`") lines.append(f"- 有效头文件引用数(canonical): `{len(canonical_valid_header_refs)}`") @@ -725,7 +802,11 @@ def build_report(state: dict[str, object]) -> str: lines.append("") lines.append("## 平行目录") lines.append("") - lines.append(f"- Canonical 根目录: `{PARALLEL_ROOT.relative_to(DOC_ROOT).as_posix()}`") + lines.append( + "- Canonical 根目录: `" + + ", ".join(root.doc_root_name for root in PUBLIC_DOC_ROOTS) + + "`" + ) lines.append(f"- 源码目录节点数: `{len(public_include_dirs)}`") lines.append( f"- 已生成目录总览页节点数: `{len(public_include_dirs) - len(missing_parallel_indexes)}`" diff --git a/docs/api/_tools/generate_xceditor_canonical_pages.py b/docs/api/_tools/generate_xceditor_canonical_pages.py new file mode 100644 index 00000000..22536f72 --- /dev/null +++ b/docs/api/_tools/generate_xceditor_canonical_pages.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import runpy +import sys +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +IMPLEMENTATION = SCRIPT_DIR / "generate_core_resources_canonical_pages.py" +REPO_ROOT = SCRIPT_DIR.parents[2] +XCEDITOR_INCLUDE_ROOT = REPO_ROOT / "new_editor" / "include" / "XCEditor" + + +def main() -> int: + old_argv = sys.argv + sys.argv = [ + str(IMPLEMENTATION), + "--root-name", + "XCEditor", + "--include-root", + str(XCEDITOR_INCLUDE_ROOT), + ] + try: + module_globals = runpy.run_path(str(IMPLEMENTATION)) + return int(module_globals["main"]()) + finally: + sys.argv = old_argv + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/_tools/scaffold_xceditor_layout.py b/docs/api/_tools/scaffold_xceditor_layout.py new file mode 100644 index 00000000..07d0a2b6 --- /dev/null +++ b/docs/api/_tools/scaffold_xceditor_layout.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import runpy +import sys +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +IMPLEMENTATION = SCRIPT_DIR / "scaffold_parallel_layout.py" +REPO_ROOT = SCRIPT_DIR.parents[2] +XCEDITOR_INCLUDE_ROOT = REPO_ROOT / "new_editor" / "include" / "XCEditor" + + +def main() -> int: + old_argv = sys.argv + sys.argv = [ + str(IMPLEMENTATION), + "--root-name", + "XCEditor", + "--include-root", + str(XCEDITOR_INCLUDE_ROOT), + ] + try: + module_globals = runpy.run_path(str(IMPLEMENTATION)) + return int(module_globals["main"]()) + finally: + sys.argv = old_argv + + +if __name__ == "__main__": + raise SystemExit(main())