chore: checkpoint current workspace changes

This commit is contained in:
2026-04-11 22:14:02 +08:00
parent 3e55f8c204
commit 8848cfd958
227 changed files with 34027 additions and 6711 deletions

View File

@@ -26,6 +26,7 @@ struct UIEditorTreeViewItem {
std::uint32_t depth = 0u;
bool forceLeaf = false;
float desiredHeight = 0.0f;
::XCEngine::UI::UITextureHandle leadingIcon = {};
};
struct UIEditorTreeViewState {
@@ -40,6 +41,8 @@ struct UIEditorTreeViewMetrics {
float indentWidth = 18.0f;
float disclosureExtent = 12.0f;
float disclosureLabelGap = 6.0f;
float iconExtent = 18.0f;
float iconLabelGap = 2.0f;
float labelInsetY = 6.0f;
float cornerRounding = 6.0f;
float borderThickness = 1.0f;
@@ -70,6 +73,7 @@ struct UIEditorTreeViewLayout {
std::vector<std::size_t> visibleItemIndices = {};
std::vector<::XCEngine::UI::UIRect> rowRects = {};
std::vector<::XCEngine::UI::UIRect> disclosureRects = {};
std::vector<::XCEngine::UI::UIRect> iconRects = {};
std::vector<::XCEngine::UI::UIRect> labelRects = {};
std::vector<bool> itemHasChildren = {};
std::vector<bool> itemExpanded = {};

View File

@@ -35,12 +35,12 @@ struct UIEditorMenuPopupState {
struct UIEditorMenuPopupMetrics {
float contentPaddingX = 2.0f;
float contentPaddingY = 6.0f;
float itemHeight = 28.0f;
float separatorHeight = 9.0f;
float contentPaddingY = 3.0f;
float itemHeight = 24.0f;
float separatorHeight = 7.0f;
float checkColumnWidth = 12.0f;
float shortcutGap = 14.0f;
float submenuIndicatorWidth = 10.0f;
float submenuIndicatorWidth = 12.0f;
float rowCornerRounding = 2.5f;
float popupCornerRounding = 4.0f;
float labelInsetX = 4.0f;
@@ -55,23 +55,23 @@ struct UIEditorMenuPopupMetrics {
struct UIEditorMenuPopupPalette {
::XCEngine::UI::UIColor popupColor =
::XCEngine::UI::UIColor(0.17f, 0.17f, 0.17f, 1.0f);
::XCEngine::UI::UIColor(0.97f, 0.97f, 0.97f, 1.0f);
::XCEngine::UI::UIColor borderColor =
::XCEngine::UI::UIColor(0.31f, 0.31f, 0.31f, 1.0f);
::XCEngine::UI::UIColor(0.62f, 0.62f, 0.62f, 1.0f);
::XCEngine::UI::UIColor itemHoverColor =
::XCEngine::UI::UIColor(0.28f, 0.28f, 0.28f, 1.0f);
::XCEngine::UI::UIColor(0.86f, 0.86f, 0.86f, 1.0f);
::XCEngine::UI::UIColor itemOpenColor =
::XCEngine::UI::UIColor(0.34f, 0.34f, 0.34f, 1.0f);
::XCEngine::UI::UIColor(0.82f, 0.82f, 0.82f, 1.0f);
::XCEngine::UI::UIColor separatorColor =
::XCEngine::UI::UIColor(0.32f, 0.32f, 0.32f, 1.0f);
::XCEngine::UI::UIColor(0.78f, 0.78f, 0.78f, 1.0f);
::XCEngine::UI::UIColor textPrimary =
::XCEngine::UI::UIColor(0.94f, 0.94f, 0.94f, 1.0f);
::XCEngine::UI::UIColor(0.10f, 0.10f, 0.10f, 1.0f);
::XCEngine::UI::UIColor textMuted =
::XCEngine::UI::UIColor(0.76f, 0.76f, 0.76f, 1.0f);
::XCEngine::UI::UIColor(0.34f, 0.34f, 0.34f, 1.0f);
::XCEngine::UI::UIColor textDisabled =
::XCEngine::UI::UIColor(0.50f, 0.50f, 0.50f, 1.0f);
::XCEngine::UI::UIColor(0.58f, 0.58f, 0.58f, 1.0f);
::XCEngine::UI::UIColor glyphColor =
::XCEngine::UI::UIColor(0.90f, 0.90f, 0.90f, 1.0f);
::XCEngine::UI::UIColor(0.12f, 0.12f, 0.12f, 1.0f);
};
struct UIEditorMenuPopupLayout {