42 lines
1.2 KiB
C
42 lines
1.2 KiB
C
|
|
#pragma once
|
||
|
|
|
||
|
|
#include <XCEngine/UI/Style/Theme.h>
|
||
|
|
|
||
|
|
#include <cstdint>
|
||
|
|
#include <string_view>
|
||
|
|
|
||
|
|
namespace XCEngine {
|
||
|
|
namespace UI {
|
||
|
|
namespace Widgets {
|
||
|
|
|
||
|
|
enum class UIEditorCollectionPrimitiveKind : std::uint8_t {
|
||
|
|
None = 0,
|
||
|
|
ScrollView,
|
||
|
|
TreeView,
|
||
|
|
TreeItem,
|
||
|
|
ListView,
|
||
|
|
ListItem,
|
||
|
|
PropertySection,
|
||
|
|
FieldRow
|
||
|
|
};
|
||
|
|
|
||
|
|
UIEditorCollectionPrimitiveKind ClassifyUIEditorCollectionPrimitive(std::string_view tagName);
|
||
|
|
bool IsUIEditorCollectionPrimitiveContainer(UIEditorCollectionPrimitiveKind kind);
|
||
|
|
bool UsesUIEditorCollectionPrimitiveColumnLayout(UIEditorCollectionPrimitiveKind kind);
|
||
|
|
bool IsUIEditorCollectionPrimitiveHoverable(UIEditorCollectionPrimitiveKind kind);
|
||
|
|
bool DoesUIEditorCollectionPrimitiveClipChildren(UIEditorCollectionPrimitiveKind kind);
|
||
|
|
float ResolveUIEditorCollectionPrimitivePadding(
|
||
|
|
UIEditorCollectionPrimitiveKind kind,
|
||
|
|
const Style::UITheme& theme);
|
||
|
|
float ResolveUIEditorCollectionPrimitiveDefaultHeight(
|
||
|
|
UIEditorCollectionPrimitiveKind kind,
|
||
|
|
const Style::UITheme& theme);
|
||
|
|
float ResolveUIEditorCollectionPrimitiveIndent(
|
||
|
|
UIEditorCollectionPrimitiveKind kind,
|
||
|
|
const Style::UITheme& theme,
|
||
|
|
float indentLevel);
|
||
|
|
|
||
|
|
} // namespace Widgets
|
||
|
|
} // namespace UI
|
||
|
|
} // namespace XCEngine
|