载入中...
搜索中...
未找到
eve::ui 命名空间参考

命名空间

namespace  controls
 

类

class  Component
 React-style UI component: implement build(), call setState / markDirty, then rebuild(). Mounts onto a named UIHost via mountAs / attach. 更多...
 
class  DatabasePanel
 Reflection-driven database panel (DevTools, MVVM). 更多...
 
class  EditorHost
 Headless MCP editor host (MVVM). 更多...
 
class  EditorShell
 DevTools editor shell (main menu bar + docked panel layout). 更多...
 
struct  FlexItemSpec
 FlexItemSpec public API. 更多...
 
struct  FlexRect
 FlexRect public API. 更多...
 
struct  FlexResult
 FlexResult public API. 更多...
 
struct  GridItemSpec
 GridItemSpec public API. 更多...
 
struct  GridResult
 GridResult public API. 更多...
 
class  ImGuiBackend
 Dear ImGui + SDL input + Vulkan present overlay. 更多...
 
class  Inspector
 Reflection-driven property inspector (DevTools phase C, MVVM). 更多...
 
struct  NinePatchInfo
 Parsed Android-style .9.png stretch and content metadata. 更多...
 
struct  ObjectEntry
 One registered live script instance. 更多...
 
class  ObjectRegistry
 Reflectable script-object registry backing the database panel. 更多...
 
struct  ParentScalerInput
 Current canvas and target-list observation. 更多...
 
struct  ParentScalerOutput
 Height write emitted for every valid target rect. 更多...
 
struct  ParentScalerSettings
 Configuration for Pcg ParentScaler canvas-height behavior. 更多...
 
struct  ParentScalerState
 Caller-owned change detector retained across evaluations. 更多...
 
class  PcgColorPreviewSync
 Caller-owned highlighted-color snapshot ported from Pcg ColorPreviewSync. 更多...
 
class  PcgControllerSelection
 Caller-owned visibility selection ported from Pcg UIControllerSelection. 更多...
 
struct  PcgControllerTypeRow
 One configured controller-description row from Pcg UIControllerType. 更多...
 
class  PcgDraggableWindow
 Caller-owned state for Pcg's draggable photo-mode window. 更多...
 
class  PcgLoadingScreen
 Caller-owned loading-screen state driven by Pcg terrain load-progress events. 更多...
 
struct  PcgMissingTerrainScene
 One missing Pcg terrain scene and the objects retaining its regular or impostor representation. 更多...
 
class  PcgPhotoModeApplyPlan
 Stable, reversible difference between two complete Pcg photo-mode snapshots. 更多...
 
struct  PcgPhotoModeColor
 PcgPhotoModeColor public API. 更多...
 
class  PcgPhotoModeColorPicker
 Caller-owned runtime model of Pcg PhotoModeColorPicker. 更多...
 
struct  PcgPhotoModeField
 PcgPhotoModeField public API. 更多...
 
class  PcgPhotoModePanelButton
 Visual snapshot matching Pcg PhotoModePanelButton. 更多...
 
class  PcgPhotoModePanels
 Seven-panel selection transaction used by Pcg photo mode. 更多...
 
class  PcgPhotoModePhotoAuthority
 Explicit owner for Pcg's Photo domain fields. 更多...
 
struct  PcgPhotoModePhotoState
 PhotoMode-local capture, persistence and composition-overlay state. 更多...
 
struct  PcgPhotoModeRange
 PcgPhotoModeRange public API. 更多...
 
class  PcgPhotoModeRanges
 Complete 57-range contract from Pcg PhotoModeMinAndMaxValues. 更多...
 
class  PcgPhotoModeRuntimeUI
 Backend-neutral state of one Pcg PhotoModeUIHelper prefab instance. 更多...
 
class  PcgPhotoModeSession
 Transactional lifecycle state for Pcg PhotoMode setup, disable and destroy. 更多...
 
class  PcgPhotoModeValues
 Complete typed value set from Pcg PhotoModeProfile with exact defaults. 更多...
 
class  PcgScreenshotSavedNotice
 Caller-owned notification state ported from Pcg ScreenshotSavedManager. 更多...
 
struct  PcgScreenshotSize
 Resolved screenshot dimensions; zero means the current drawable size. 更多...
 
struct  PcgTooltipEntry
 Stored Pcg tooltip profile row. 更多...
 
class  PcgTooltipManager
 Caller-owned runtime model of Pcg Tooltip, TooltipManager, Profile and Trigger. 更多...
 
class  PropertyComponent
 Component wrapper that becomes dirty when its bound model changes. 更多...
 
struct  PropertyViewOptions
 Policy controlling schema-to-widget generation for a UI shell. 更多...
 
class  ScenePanel
 Scene hierarchy panel (DevTools, MVVM). 更多...
 
struct  StyleClass
 Sparse reusable widget style resolved once while a retained tree is built. 更多...
 
struct  Theme
 Unified UI design tokens (colors, geometry, typography). Applied to ImGui each frame via applyThemeToImGui; metrics are design-time units at uiScale=1 and are multiplied by the current UI scale. 更多...
 
struct  ThemeLayout
 Semantic layout tokens shared by editor-oriented widgets. 更多...
 
class  UI
 Declarative UI module (eve.UI). 更多...
 
class  UIBackend
 Platform / renderer backend for declarative UI. Concrete implementations live under ui/<backend>/ (e.g. ui/imgui). 更多...
 
struct  UIChange
 Value/text/toggle change for script: "hostName/nodeId". 更多...
 
struct  UIClick
 One script-facing click: "hostName/nodeId". 更多...
 
struct  UIDrop
 One completed desktop drop with no borrowed node or platform pointers. 更多...
 
struct  UIEvent
 UIEvent public API. 更多...
 
class  UIHost
 ECS mount point for one UI panel/screen. Subclass to attach UI to game entities, e.g. class Hud : public UIHost. UISystem walks ecs::View<UIHost, Meta, Tree> (includes subclasses). 更多...
 
class  UiHostOverlayAlphaSink
 Pushes float samples into a host overlay background alpha. @ownership Does not own the host; resolves host on every write. 更多...
 
class  UiHostPosSink
 Pushes MotionVec2 samples into a host window position (Meta.posX/Y). @ownership Does not own the host; resolves host on every write. 更多...
 
class  UiHostSizeSink
 Pushes MotionVec2 samples into a host explicit size (Meta.sizeX/Y). @ownership Does not own the host; resolves host on every write. 更多...
 
struct  UiHostTween
 One host-level tween slot. 更多...
 
struct  UiItemTween
 One item-level tween slot scoped to a host + node id. 更多...
 
struct  UINode
 Retained UI widget node (arena tree). Conceptual counterpart of eve::scene::SceneNode; built declaratively from WidgetDesc. 更多...
 
class  UiNodeOpacitySink
 Pushes float samples into a retained node's transient opacity. @ownership Does not own the host/node; resolves both on every write. 更多...
 
class  UiNodePosSink
 Pushes MotionVec2 samples into a node's absolute placement offset. @ownership Does not own the host/node; resolves both on every write. 更多...
 
struct  UiObjectHandleTag
 Owner tag for UI database object handles. 更多...
 
struct  UIStats
 UIStats public API. 更多...
 
class  UISystem
 EVENGINE_API_WORLD public API. 更多...
 
class  UiTweenDriver
 Owns pending UI tweens and advances them against an injected clock. @ownership UI owns one driver; handles are generation-checked via UIHost::resolve. 更多...
 
struct  ViewportState
 ViewportState public API. 更多...
 
struct  WidgetDesc
 Declarative widget description (build once / on dirty → flatten into UIHost::Tree). 更多...
 
struct  WorldAnchorLayoutItem
 One projected host participating in deterministic screen-space placement. 更多...
 
struct  WorldAnchorLayoutResult
 Owning placement result corresponding to WorldAnchorLayoutItem::stableIndex. 更多...
 
struct  WorldAnchorProjection
 Immutable result of projecting a UI world anchor into a viewport. 更多...
 

类型定义

using ObjectHandle = eve::RuntimeHandle< UiObjectHandleTag >
 Generation-qualified identity for one live UI database object.
 
using PcgPhotoModeValue = std::variant< bool, int64_t, float, std::string, PcgPhotoModeColor >
 
using UIHostHandle = ecs::EntityHandle
 

枚举

enum class  Icon {
  None , Search , Close , Check ,
  Settings , Home , File , Folder ,
  FolderOpen , Save , Undo , Redo ,
  Refresh , Plus , Minus , ChevronLeft ,
  ChevronRight , ChevronUp , ChevronDown , Menu ,
  Grid , List , Eye , EyeSlash ,
  Lock , Unlock , Play , Pause ,
  Stop , Move , Pointer , Pencil ,
  PaintBrush , Image , Camera , Cube ,
  Cubes , Database , Wrench , Sliders ,
  Info , Question , Warning , Code ,
  Bug , Terminal , Layers , User ,
  Users
}
 Semantic editor icons backed by the bundled Font Awesome 4.7 font. 更多...
 
enum class  PcgScreenshotFormat { Exr = 0 , Jpg = 1 , Png = 2 , Tga = 3 }
 Pcg screenshot output encoding. 更多...
 
enum class  PcgPhotoModeWidgetKind {
  Field = 0 , Slider = 1 , IntSlider = 2 , DisplaySlider = 3 ,
  DisplayIntSlider = 4 , Toggle = 5 , Header = 6 , Dropdown = 7 ,
  Label = 8 , Button = 9 , Color = 10 , BannerImage = 11 ,
  Vector2 = 12 , Vector3 = 13
}
 Widget families created by Pcg PhotoModeUtils. 更多...
 
enum class  PcgPhotoModeInputStatus { Ignored = 0 , Applied = 1 }
 Result of parsing one Pcg photo-mode numeric input field. 更多...
 
enum class  PcgPhotoModeLoadDecision { Current =0 , Saved =1 , SaveCurrent =2 }
 PcgPhotoModeLoadDecision public API. 更多...
 
enum class  PcgPhotoModeValueType {
  Bool =0 , Int =1 , Float =2 , String =3 ,
  Color =4
}
 PcgPhotoModeValueType public API. 更多...
 
enum class  PcgUiRequestStatus { None , Requested }
 Explicit status returned when consuming a one-shot Pcg UI request. 更多...
 
enum class  StyleClassStatus : uint8_t {
  Applied = 0 , InvalidName , UnknownParent , UnknownClass ,
  UnknownProperty , InheritanceCycle
}
 Explicit result of a style-registry mutation. 更多...
 
enum class  NodeType : uint8_t {
  Window = 0 , Text = 1 , Button = 2 , SameLine = 3 ,
  Group = 4 , Separator = 5 , Checkbox = 6 , Slider = 7 ,
  Progress = 8 , InputText = 9 , CollapsingHeader = 10 , Child = 11 ,
  Flex = 12 , Spacer = 13 , Image = 14 , ImageButton = 15 ,
  Combo = 16 , ScrollList = 17 , Viewport = 18 , SearchField = 19 ,
  Switch = 20 , Badge = 21 , Card = 22 , SectionHeader = 23 ,
  MenuBar = 24 , Menu = 25 , MenuItem = 26 , Toolbar = 27 ,
  Toolbox = 28 , Sidebar = 29 , StatusBar = 30 , SplitPane = 31 ,
  NinePatchPanel = 32 , ColorPalette = 33 , Grid = 34
}
 Widget node kinds understood by the UI renderer. 更多...
 
enum class  FlexDirection : uint8_t { Row = 0 , Column = 1 }
 Main-axis direction for Flex containers. 更多...
 
enum class  FlexWrap : uint8_t { NoWrap = 0 , Wrap = 1 }
 Whether Flex children remain on one line or wrap onto additional lines. 更多...
 
enum class  OverflowMode : uint8_t { Visible = 0 , Clip = 1 , Scroll = 2 }
 Behavior when arranged children exceed the retained layout box. 更多...
 
enum class  FlexAlign : uint8_t { Start = 0 , Center = 1 , End = 2 , Stretch = 3 }
 Cross-axis alignment of Flex children. 更多...
 
enum class  FlexJustify : uint8_t {
  Start = 0 , Center = 1 , End = 2 , SpaceBetween = 3 ,
  SpaceAround = 4
}
 Main-axis distribution of free space in a Flex container. 更多...
 
enum class  FocusMode : uint8_t { None = 0 , Click = 1 , All = 2 }
 Keyboard/gamepad focus policy for an interactive control. 更多...
 
enum class  FocusDirection : uint8_t {
  Next = 0 , Previous , Left , Right ,
  Up , Down
}
 Logical focus movement understood by keyboard, gamepad and automation. 更多...
 
enum class  MouseFilter : uint8_t { Stop = 0 , Pass = 1 , Ignore = 2 }
 Pointer event participation and propagation policy. 更多...
 
enum class  ThemePreset : uint8_t { Inherit = 0 , Dark = 1 , Light = 2 }
 Built-in theme override inherited by a retained UI subtree. 更多...
 
enum class  WorldAnchorState : uint8_t {
  Disabled = 0 , Visible , BehindCamera , OutsideViewport ,
  NoCamera , Crowded
}
 Visibility result of projecting a world-space UI anchor. 更多...
 
enum class  WorldAnchorEdgePolicy : uint8_t { Hide = 0 , Clamp }
 Policy used when a projected world-space anchor leaves the viewport. 更多...
 
enum class  WorldAnchorOverlapPolicy : uint8_t { Allow = 0 , Avoid }
 Deterministic screen-space overlap policy for projected world anchors. 更多...
 
enum class  AccessibilityRole : uint8_t {
  Auto = 0 , Button , Checkbox , Slider ,
  Text , TextInput , List , ListItem ,
  Menu , MenuItem , Progress , Region ,
  Tab , Window
}
 Platform-neutral accessibility role exposed by controls. 更多...
 
enum class  DragDropOrigin : uint8_t { Internal = 0 , OperatingSystemFile }
 Origin of an owning desktop drag-and-drop payload snapshot. 更多...
 
enum class  DragDropSupport : uint8_t { Supported = 0 , UnsupportedPlatform }
 Build-target availability of retained drag-and-drop. 更多...
 
enum class  UiHostTweenTarget : std::uint8_t { Pos = 0 , Size = 1 , OverlayAlpha = 2 }
 Host window property driven by a vec2 or float tween. 更多...
 
enum class  UiItemTweenTarget : std::uint8_t { Opacity = 0 , Pos = 1 }
 Retained-node property driven by a float or vec2 tween. 更多...
 

函数

void registerEditorHostCapabilities ()
 Registers editor host capabilities.
 
void bindUIEventSinkOwner (UI *owner) noexcept
 Bind the live UI module into the platform event sink. @ownership Borrowed; cleared when the UI module is destroyed. @lifetime Valid from UI construction until UI destruction.
 
const char * iconGlyph (Icon icon)
 Returns the UTF-8 glyph for an icon, or an empty string for None.
 
const char * iconName (Icon icon)
 Returns the stable kebab-case semantic name for an icon.
 
bool iconFromName (std::string_view name, Icon *out)
 Resolves a semantic icon name; accepts kebab-case names case-insensitively.
 
std::string iconText (Icon icon, std::string_view label={})
 Composes an icon with an optional visible label.
 
std::unique_ptr< UIBackend > createImGuiBackend ()
 Default backend: Dear ImGui + SDL + Vulkan (see ui/imgui/).
 
FlexResult flexArrangeSingleLine (bool row, float gap, float availMain, float availCross, FlexAlign containerAlign, FlexJustify justify, const std::vector< FlexItemSpec > &items)
 
FlexResult flexArrange (bool row, float gap, float availMain, float availCross, FlexAlign containerAlign, FlexJustify justify, const std::vector< FlexItemSpec > &items, bool wrap=false, float crossGap=-1.f)
 Flex arrange.
 
GridResult gridArrange (int columns, float columnGap, float rowGap, float availWidth, const std::vector< GridItemSpec > &items)
 Places source-ordered items into equal-width fixed columns.
 
void measureFlowChildren (UIHost::Tree &tree, int firstChild, float *outW, float *outH)
 Measure flow children.
 
void measureNode (UIHost::Tree &tree, int index)
 Measure node.
 
void measureTree (UIHost::Tree &tree)
 Measure tree.
 
bool parseNinePatch (const image::ImageData &source, NinePatchInfo &out, std::string *error=nullptr)
 Parse a raw, uncompiled Android .9.png image.
 
std::unique_ptr< image::ImageData > stripNinePatchBorder (const image::ImageData &source)
 Copy the drawable interior of a parsed .9.png without marker pixels.
 
Result< void > evaluateParentScaler (ParentScalerState *state, ParentScalerOutput *output, const ParentScalerSettings *settings, const ParentScalerInput *input)
 Evaluate Pcg ParentScaler when canvas height changes.
 
void exposeParentScalerBindings (ssq::Table &table)
 Register ParentScaler value types and evaluator with the root script table.
 
void exposePcgColorPreviewSyncBindings (ssq::Table &table)
 Register Pcg color-preview bindings.
 
void exposePcgControllerSelectionBindings (ssq::Table &table)
 Register Pcg controller-selection bindings.
 
void exposePcgDraggableWindowBindings (ssq::Table &table)
 Register Pcg draggable-window bindings.
 
void exposePcgLoadingScreenBindings (ssq::Table &table)
 Register Pcg loading-screen bindings.
 
void exposePcgPhotoModeApplyPlanBindings (ssq::Table &table)
 Register Pcg photo-mode application-plan bindings.
 
void exposePcgPhotoModeColorPickerBindings (ssq::Table &table)
 Register Pcg photo-mode color-picker bindings.
 
void exposePcgPhotoModePanelsBindings (ssq::Table &table)
 Register Pcg photo-mode panel bindings.
 
void exposePcgPhotoModeRangesBindings (ssq::Table &table)
 Register Pcg photo-mode range bindings.
 
void exposePcgPhotoModeRuntimeUIBindings (ssq::Table &table)
 Register Pcg photo-mode runtime UI bindings.
 
void exposePcgPhotoModeSessionBindings (ssq::Table &table)
 Register Pcg photo-mode session bindings.
 
void exposePcgPhotoModeValuesBindings (ssq::Table &table)
 Register complete Pcg photo-mode value bindings.
 
void exposePcgScreenshotSavedNoticeBindings (ssq::Table &table)
 Register Pcg screenshot-notice bindings.
 
void exposePcgTooltipBindings (ssq::Table &table)
 Register Pcg tooltip bindings.
 
std::string propertyWidgetId (const PropertyViewOptions &options, const std::string &path)
 Return the stable widget id generated for a property path.
 
WidgetDesc buildPropertyField (property_access::IPropertyAccess &model, const std::string &path, const PropertyViewOptions &options={})
 Generate one field from a model property, or a diagnostic text row.
 
WidgetDesc buildPropertyView (property_access::IPropertyAccess &model, const PropertyViewOptions &options={})
 Generate a declarative, two-way property view from any model schema.
 
void syncPropertyView (UIHost &host, const property_access::IPropertyAccess &model, const PropertyViewOptions &options={})
 Pull current model values into an existing compatible UI tree.
 
StyleClassStatus defineStyleClass (const std::string &name, const std::string &parent="")
 Declares or replaces one sparse style class. @thread UI thread only. @reentrancy Does not invoke callbacks.
 
StyleClassStatus setStyleClassColor (const std::string &name, const std::string &property, float r, float g, float b, float a)
 Sets text/background/border/accent RGBA on an existing style class.
 
StyleClassStatus setStyleClassMetric (const std::string &name, const std::string &property, float x, float y=0.f)
 Sets padding, rounding, or alpha on an existing style class.
 
StyleClassStatus resolveStyleClass (const std::string &name, StyleClass *out)
 Resolves inheritance into a sparse class and reports an explicit lookup status.
 
void clearStyleClasses ()
 Clears user-defined style classes. Intended for runtime/test teardown.
 
const char * styleClassStatusName (StyleClassStatus status)
 Stable script-facing spelling of a mutation status.
 
Theme & globalTheme ()
 Global theme.
 
const std::string & globalThemeName ()
 Current preset name: "dark", "light", or "custom".
 
void setGlobalTheme (const Theme &theme)
 Sets the global theme.
 
void setGlobalTheme (const Theme &theme, const std::string &name)
 Sets the global theme.
 
bool setThemeByName (const std::string &name)
 Apply a named preset ("dark" / "light"). Case-insensitive. Returns false if unknown.
 
void setThemeUiScale (float scale)
 Logical (point-space) UI scale. Default 1.0.
 
float themeUiScale ()
 Theme ui scale.
 
void setThemeDpiScale (float dpiScale)
 Sets the theme dpi scale.
 
float themeDpiScale ()
 Theme dpi scale.
 
void applyThemeToImGui (const Theme &theme)
 Push tokens into ImGui style. Metrics are multiplied by uiScale (default: themeUiScale()).
 
void applyThemeToImGui (const Theme &theme, float uiScale)
 Applies theme to im gui.
 
 Module_IMPL (UI, new UI())
 
void registerUIAutomationCapabilities ()
 Registers ui automation capabilities.
 
float evaluateUiEase (float t, const char *kind)
 Evaluate a UI tween ease curve in [0,1].
 
double uiTweenWallClockMs ()
 Wall-clock milliseconds from steady_clock (presentation clock).
 
WidgetDesc window (std::string title, std::vector< WidgetDesc > children={}, std::string id="root")
 Top-level window widget with a title bar.
 
WidgetDesc text (std::string content, std::string id="")
 Static text label.
 
WidgetDesc button (std::string label, std::string id="", std::function< void()> onClick={})
 Clickable button; fires onClick.
 
WidgetDesc icon (Icon value, std::string id="")
 Semantic vector icon rendered from the bundled editor icon font.
 
WidgetDesc iconButton (Icon value, std::string label="", std::string id="", std::function< void()> onClick={})
 Button containing a semantic icon and optional visible label.
 
WidgetDesc group (std::vector< WidgetDesc > children={}, std::string id="")
 Plain group container.
 
WidgetDesc sameLine (std::string id="")
 Holds the next widget on the same line as the previous one.
 
WidgetDesc separator (std::string id="")
 Horizontal separator line.
 
WidgetDesc checkbox (std::string label, bool checked=false, std::string id="", std::function< void(bool)> onToggle={})
 Checkbox with a label; fires onToggle.
 
WidgetDesc slider (std::string label, float value, float minV, float maxV, std::string id="", std::function< void(float)> onValue={})
 Horizontal slider; fires onValue.
 
WidgetDesc colorPalette (std::string label, float r, float g, float b, float a=1.f, std::string id="", std::function< void(float)> onValue={})
 Color editor with a swatch grid (调色板). RGBA is stored in tint channels. valueText may list extra swatches as #rrggbb, #rrggbbaa, or r,g,b[,a] lines; empty uses the built-in palette. Changes fire the same value events as sliders (consumeChange / onValue).
 
WidgetDesc progress (float fraction, std::string id="", std::string overlay="")
 Progress bar; fraction is clamped to [0,1].
 
WidgetDesc combo (std::string label, std::vector< std::string > options, int selected, std::string id="", std::function< void(float)> onValue={})
 Combo.
 
WidgetDesc image (std::string id="", float width=0.f, float height=0.f, std::function< void()> onClick={})
 Image.
 
WidgetDesc imageButton (std::string id, float width, float height, std::function< void()> onClick={})
 Image button.
 
WidgetDesc viewport (std::string id="", float width=0.f, float height=0.f)
 Viewport.
 
WidgetDesc inputText (std::string label, std::string value, std::string id="", std::function< void(const std::string &)> onChange={})
 Editable text field; fires onTextChange.
 
WidgetDesc searchField (std::string hint, std::string value={}, std::string id="", std::function< void(const std::string &)> onChange={})
 Compact search field with placeholder text and a bundled search icon.
 
WidgetDesc toggleSwitch (std::string label, bool checked=false, std::string id="", std::function< void(bool)> onToggle={})
 Modern boolean toggle; fires onToggle when changed.
 
WidgetDesc badge (std::string label, std::string id="")
 Compact status/category pill. Tint controls its background color.
 
WidgetDesc card (std::vector< WidgetDesc > children={}, std::string id="")
 Bordered surface container with editor-friendly padding.
 
WidgetDesc ninePatchPanel (std::vector< WidgetDesc > children={}, std::string id="", uint64_t textureId=0)
 Stretchable textured container with asset-defined content padding.
 
WidgetDesc sectionHeader (std::string label, std::string id="")
 Non-collapsible editor section heading with an accent marker.
 
WidgetDesc menuBar (std::vector< WidgetDesc > children={}, std::string id="")
 Window menu bar container. Must be a direct child of a Window.
 
WidgetDesc menu (std::string label, std::vector< WidgetDesc > children={}, std::string id="")
 Popup menu container used inside a MenuBar or another Menu.
 
WidgetDesc menuItem (std::string label, std::string shortcut={}, std::string id="", std::function< void()> onClick={}, bool selected=false)
 Selectable menu command with an optional shortcut hint.
 
WidgetDesc toolbar (std::vector< WidgetDesc > children={}, std::string id="")
 Horizontal editor command strip; Spacer children absorb free width.
 
WidgetDesc toolbox (std::vector< WidgetDesc > children={}, std::string id="", float cellSize=0.f, int columns=0)
 Wrapping grid of editor tools with uniform square cells.
 
WidgetDesc sidebar (std::vector< WidgetDesc > children={}, std::string id="", float width=0.f)
 Vertical editor side panel. Width defaults to 240 logical pixels.
 
WidgetDesc statusBar (std::vector< WidgetDesc > children={}, std::string id="")
 Compact horizontal status strip; Spacer children absorb free width.
 
WidgetDesc splitPane (FlexDirection direction, WidgetDesc first, WidgetDesc second, float ratio=0.25f, std::string id="", std::function< void(float)> onResize={})
 Two resizable panes separated by a drag handle.
 
WidgetDesc collapsingHeader (std::string label, std::vector< WidgetDesc > children={}, std::string id="", bool defaultOpen=true)
 Collapsible header containing child widgets.
 
WidgetDesc child (std::string id, std::vector< WidgetDesc > children={}, float width=0.f, float height=120.f)
 Scrollable child region with an explicit size.
 
WidgetDesc scrollList (std::string id, std::vector< WidgetDesc > children={}, float height=0.f, float itemHeight=0.f)
 Scroll list.
 
WidgetDesc virtualList (std::string listId, const std::vector< std::string > &items, float height=200.f, float itemHeight=0.f)
 Virtual list.
 
WidgetDesc flex (FlexDirection direction, std::vector< WidgetDesc > children={}, std::string id="")
 Elastic layout container (row/column). Prefer row / column shorthands.
 
WidgetDesc row (std::vector< WidgetDesc > children={}, std::string id="")
 Horizontal elastic layout row.
 
WidgetDesc column (std::vector< WidgetDesc > children={}, std::string id="")
 Vertical elastic layout column.
 
WidgetDesc grid (int columns, std::vector< WidgetDesc > children={}, std::string id="")
 Fixed-column grid; children are placed in source order.
 
WidgetDesc spacer (std::string id="", float grow=1.f)
 Flexible empty space; default flexGrow=1 so it absorbs free space in a Flex parent.
 
WidgetDesc when (bool cond, WidgetDesc child)
 Conditional: include child only when cond is true (empty group otherwise).
 
WidgetDesc whenElse (bool cond, WidgetDesc ifTrue, WidgetDesc ifFalse)
 When else.
 
WidgetDesc list (std::string listId, const std::vector< std::string > &items, const std::function< WidgetDesc(const std::string &, int)> &itemFn)
 Expand a string list into a Group of item widgets. itemFn(label, index) builds each row; keys default to id.
 
WidgetDesc listButtons (std::string listId, const std::vector< std::string > &items)
 Default list: one Button per item, id = listId + "/" + index.
 
void applyTree (UIHost *host, WidgetDesc root)
 Full replace flatten.
 
bool applyTreeReconcile (UIHost *host, WidgetDesc root)
 Patch by key/id when structure (type + child keys) matches; otherwise full replace. Returns true if a structural rebuild occurred.
 
WorldAnchorProjection projectWorldAnchor (const UIHost::WorldAnchor &anchor, const glm::mat4 &viewProjection, float cameraX, float cameraY, float cameraZ, float viewportWidth, float viewportHeight)
 Projects one world-space UI anchor using a Vulkan RH-ZO view-projection matrix.
 
std::vector< WorldAnchorLayoutResult > resolveWorldAnchorOverlaps (std::vector< WorldAnchorLayoutItem > items, float viewportWidth, float viewportHeight)
 Resolves projected host overlap with bounded deterministic vertical displacement.
 

类型定义说明

◆ ObjectHandle

Generation-qualified identity for one live UI database object.

This is a process-local registry handle, not a persistent object ID. The handle becomes stale when the object is unregistered, including when its slot is subsequently reused for another object.

在文件 ObjectRegistry.h 第 28 行定义.

◆ PcgPhotoModeValue

using eve::ui::PcgPhotoModeValue = typedef std::variant<bool,int64_t,float,std::string,PcgPhotoModeColor>

在文件 PcgPhotoModeValues.h 第 16 行定义.

◆ UIHostHandle

using eve::ui::UIHostHandle = typedef ecs::EntityHandle

在文件 UIHost.h 第 16 行定义.

枚举类型说明

◆ AccessibilityRole

enum class eve::ui::AccessibilityRole : uint8_t
strong

Platform-neutral accessibility role exposed by controls.

枚举值
Auto 
Button 
Checkbox 
Slider 
Text 
TextInput 
List 
ListItem 
Menu 
MenuItem 
Progress 
Region 
Tab 
Window 

在文件 UIHost.h 第 107 行定义.

◆ DragDropOrigin

enum class eve::ui::DragDropOrigin : uint8_t
strong

Origin of an owning desktop drag-and-drop payload snapshot.

枚举值
Internal 
OperatingSystemFile 

在文件 UISystem.h 第 50 行定义.

◆ DragDropSupport

enum class eve::ui::DragDropSupport : uint8_t
strong

Build-target availability of retained drag-and-drop.

枚举值
Supported 
UnsupportedPlatform 

在文件 UISystem.h 第 53 行定义.

◆ FlexAlign

enum class eve::ui::FlexAlign : uint8_t
strong

Cross-axis alignment of Flex children.

枚举值
Start 
Center 
End 
Stretch 

在文件 UIHost.h 第 67 行定义.

◆ FlexDirection

enum class eve::ui::FlexDirection : uint8_t
strong

Main-axis direction for Flex containers.

枚举值
Row 
Column 

在文件 UIHost.h 第 58 行定义.

◆ FlexJustify

enum class eve::ui::FlexJustify : uint8_t
strong

Main-axis distribution of free space in a Flex container.

枚举值
Start 
Center 
End 
SpaceBetween 
SpaceAround 

在文件 UIHost.h 第 70 行定义.

◆ FlexWrap

enum class eve::ui::FlexWrap : uint8_t
strong

Whether Flex children remain on one line or wrap onto additional lines.

枚举值
NoWrap 
Wrap 

在文件 UIHost.h 第 61 行定义.

◆ FocusDirection

enum class eve::ui::FocusDirection : uint8_t
strong

Logical focus movement understood by keyboard, gamepad and automation.

枚举值
Next 
Previous 
Left 
Right 
Up 
Down 

在文件 UIHost.h 第 82 行定义.

◆ FocusMode

enum class eve::ui::FocusMode : uint8_t
strong

Keyboard/gamepad focus policy for an interactive control.

枚举值
None 
Click 
All 

在文件 UIHost.h 第 79 行定义.

◆ Icon

enum class eve::ui::Icon
strong

Semantic editor icons backed by the bundled Font Awesome 4.7 font.

枚举值
None 
Search 
Close 
Check 
Settings 
Home 
File 
Folder 
FolderOpen 
Save 
Undo 
Redo 
Refresh 
Plus 
Minus 
ChevronLeft 
ChevronRight 
ChevronUp 
ChevronDown 
Menu 
Grid 
List 
Eye 
EyeSlash 
Lock 
Unlock 
Play 
Pause 
Stop 
Move 
Pointer 
Pencil 
PaintBrush 
Image 
Camera 
Cube 
Cubes 
Database 
Wrench 
Sliders 
Info 
Question 
Warning 
Code 
Bug 
Terminal 
Layers 
User 
Users 

在文件 Icons.h 第 11 行定义.

◆ MouseFilter

enum class eve::ui::MouseFilter : uint8_t
strong

Pointer event participation and propagation policy.

枚举值
Stop 
Pass 
Ignore 

在文件 UIHost.h 第 85 行定义.

◆ NodeType

enum class eve::ui::NodeType : uint8_t
strong

Widget node kinds understood by the UI renderer.

枚举值
Window 
Text 
Button 
SameLine 
Group 
Separator 
Checkbox 
Slider 
Progress 
InputText 
CollapsingHeader 
Child 
Flex 
Spacer 
Image 
ImageButton 
Combo 
ScrollList 
Viewport 
SearchField 
Switch 
Badge 
Card 
SectionHeader 
MenuBar 
Menu 
MenuItem 
Toolbar 
Toolbox 
Sidebar 
StatusBar 
SplitPane 
NinePatchPanel 
ColorPalette 
Grid 

在文件 UIHost.h 第 19 行定义.

◆ OverflowMode

enum class eve::ui::OverflowMode : uint8_t
strong

Behavior when arranged children exceed the retained layout box.

枚举值
Visible 
Clip 
Scroll 

在文件 UIHost.h 第 64 行定义.

◆ PcgPhotoModeInputStatus

Result of parsing one Pcg photo-mode numeric input field.

枚举值
Ignored 
Applied 

在文件 PcgPhotoModeRuntimeUI.h 第 22 行定义.

◆ PcgPhotoModeLoadDecision

PcgPhotoModeLoadDecision public API.

枚举值
Current 
Saved 
SaveCurrent 

在文件 PcgPhotoModeSession.h 第 11 行定义.

◆ PcgPhotoModeValueType

enum class eve::ui::PcgPhotoModeValueType
strong

PcgPhotoModeValueType public API.

枚举值
Bool 
Int 
Float 
String 
Color 

在文件 PcgPhotoModeValues.h 第 15 行定义.

◆ PcgPhotoModeWidgetKind

Widget families created by Pcg PhotoModeUtils.

枚举值
Field 
Slider 
IntSlider 
DisplaySlider 
DisplayIntSlider 
Toggle 
Header 
Dropdown 
Label 
Button 
Color 
BannerImage 
Vector2 
Vector3 

在文件 PcgPhotoModeRuntimeUI.h 第 15 行定义.

◆ PcgScreenshotFormat

enum class eve::ui::PcgScreenshotFormat
strong

Pcg screenshot output encoding.

枚举值
Exr 
Jpg 
Png 
Tga 

在文件 PcgPhotoModePhoto.h 第 12 行定义.

◆ PcgUiRequestStatus

enum class eve::ui::PcgUiRequestStatus
strong

Explicit status returned when consuming a one-shot Pcg UI request.

枚举值
None 
Requested 

在文件 PcgUiStatus.h 第 4 行定义.

◆ StyleClassStatus

enum class eve::ui::StyleClassStatus : uint8_t
strong

Explicit result of a style-registry mutation.

枚举值
Applied 
InvalidName 
UnknownParent 
UnknownClass 
UnknownProperty 
InheritanceCycle 

在文件 Theme.h 第 152 行定义.

◆ ThemePreset

enum class eve::ui::ThemePreset : uint8_t
strong

Built-in theme override inherited by a retained UI subtree.

枚举值
Inherit 
Dark 
Light 

在文件 UIHost.h 第 88 行定义.

◆ UiHostTweenTarget

enum class eve::ui::UiHostTweenTarget : std::uint8_t
strong

Host window property driven by a vec2 or float tween.

枚举值
Pos 

Meta.posX / posY (px)

Size 

Meta.sizeX / sizeY (px)

OverlayAlpha 

Meta.overlayBgAlpha

在文件 UiTween.h 第 33 行定义.

◆ UiItemTweenTarget

enum class eve::ui::UiItemTweenTarget : std::uint8_t
strong

Retained-node property driven by a float or vec2 tween.

枚举值
Opacity 

UINode.opacity (transient)

Pos 

UINode.posX / posY (absolute placement)

在文件 UiTween.h 第 40 行定义.

◆ WorldAnchorEdgePolicy

enum class eve::ui::WorldAnchorEdgePolicy : uint8_t
strong

Policy used when a projected world-space anchor leaves the viewport.

枚举值
Hide 
Clamp 

在文件 UIHost.h 第 101 行定义.

◆ WorldAnchorOverlapPolicy

enum class eve::ui::WorldAnchorOverlapPolicy : uint8_t
strong

Deterministic screen-space overlap policy for projected world anchors.

枚举值
Allow 
Avoid 

在文件 UIHost.h 第 104 行定义.

◆ WorldAnchorState

enum class eve::ui::WorldAnchorState : uint8_t
strong

Visibility result of projecting a world-space UI anchor.

枚举值
Disabled 
Visible 
BehindCamera 
OutsideViewport 
NoCamera 
Crowded 

在文件 UIHost.h 第 91 行定义.

函数说明

◆ applyThemeToImGui() [1/2]

EVENGINE_API_WORLD void eve::ui::applyThemeToImGui ( const Theme &  theme)

Push tokens into ImGui style. Metrics are multiplied by uiScale (default: themeUiScale()).

在文件 Theme.cpp 第 313 行定义.

引用了 applyThemeToImGui() , 以及 theme.

被这些函数引用 applyThemeToImGui(), eve::ui::ImGuiBackend::init() , 以及 eve::ui::UISystem::render().

◆ applyThemeToImGui() [2/2]

EVENGINE_API_WORLD void eve::ui::applyThemeToImGui ( const Theme &  theme,
float  uiScale 
)

Applies theme to im gui.

在文件 Theme.cpp 第 315 行定义.

引用了 s , 以及 theme.

◆ applyTree()

EVENGINE_API_WORLD void eve::ui::applyTree ( UIHost *  host,
WidgetDesc  root 
)

Full replace flatten.

在文件 Widget.cpp 第 735 行定义.

引用了 host, root , 以及 t.

被这些函数引用 applyTreeReconcile() , 以及 eve::ui::UIHost::setTree().

◆ applyTreeReconcile()

bool eve::ui::applyTreeReconcile ( UIHost *  host,
WidgetDesc  root 
)

Patch by key/id when structure (type + child keys) matches; otherwise full replace. Returns true if a structural rebuild occurred.

在文件 Widget.cpp 第 748 行定义.

引用了 applyTree(), host, root , 以及 t.

被这些函数引用 eve::ui::UIHost::setTreeReconcile().

◆ badge()

EVENGINE_API_WORLD WidgetDesc eve::ui::badge ( std::string  label,
std::string  id 
)

Compact status/category pill. Tint controls its background color.

在文件 Widget.cpp 第 489 行定义.

引用了 Badge, d, label , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addBadge() , 以及 eve::ui::EditorShell::build().

◆ bindUIEventSinkOwner()

void eve::ui::bindUIEventSinkOwner ( UI *  owner)
noexcept

Bind the live UI module into the platform event sink. @ownership Borrowed; cleared when the UI module is destroyed. @lifetime Valid from UI construction until UI destruction.

在文件 EventSink.cpp 第 39 行定义.

被这些函数引用 eve::ui::UI::UI() , 以及 eve::ui::UI::~UI().

◆ buildPropertyField()

WidgetDesc eve::ui::buildPropertyField ( property_access::IPropertyAccess &  model,
const std::string &  path,
const PropertyViewOptions &  options 
)

Generate one field from a model property, or a diagnostic text row.

在文件 PropertyView.cpp 第 419 行定义.

引用了 buildPropertyField(), model, options, path, propertyWidgetId(), text, value, eve::ui::WidgetDesc::withAccessibility(), eve::ui::WidgetDesc::withFocusMode() , 以及 eve::ui::WidgetDesc::withMouseFilter().

被这些函数引用 buildPropertyField().

◆ buildPropertyView()

EVENGINE_API_WORLD WidgetDesc eve::ui::buildPropertyView ( property_access::IPropertyAccess &  model,
const PropertyViewOptions &  options = {} 
)

Generate a declarative, two-way property view from any model schema.

The returned tree contains no backend-specific state. Widget callbacks call IPropertyAccess::write(), so gameplay models and command-backed editor models use the same UI generation path.

在文件 PropertyView.cpp 第 431 行定义.

引用了 buildPropertyView(), category, children, column, model, options, sectionHeader(), value , 以及 visible.

被这些函数引用 eve::ui::PropertyComponent::build() , 以及 buildPropertyView().

◆ button()

EVENGINE_API_WORLD WidgetDesc eve::ui::button ( std::string  label,
std::string  id,
std::function< void()>  onClick 
)

◆ card()

EVENGINE_API_WORLD WidgetDesc eve::ui::card ( std::vector< WidgetDesc >  children,
std::string  id 
)

Bordered surface container with editor-friendly padding.

在文件 Widget.cpp 第 502 行定义.

引用了 Card, card(), children, d , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginCard() , 以及 card().

◆ checkbox()

EVENGINE_API_WORLD WidgetDesc eve::ui::checkbox ( std::string  label,
bool  checked,
std::string  id,
std::function< void(bool)>  onToggle 
)

Checkbox with a label; fires onToggle.

参数
onToggleVoid.

在文件 Widget.cpp 第 353 行定义.

引用了 Checkbox, d, label , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addCheckbox() , 以及 eve::ui::ScenePanel::build().

◆ child()

EVENGINE_API_WORLD WidgetDesc eve::ui::child ( std::string  id,
std::vector< WidgetDesc >  children,
float  width,
float  height 
)

Scrollable child region with an explicit size.

在文件 Widget.cpp 第 635 行定义.

引用了 Child, children, d, height, eve::ui::WidgetDesc::type , 以及 width.

被这些函数引用 eve::ui::UI::beginChild(), measureNode() , 以及 when().

◆ clearStyleClasses()

EVENGINE_API_WORLD void eve::ui::clearStyleClasses ( )

Clears user-defined style classes. Intended for runtime/test teardown.

在文件 Theme.cpp 第 160 行定义.

被这些函数引用 eve::ui::UI::clearStyleClasses().

◆ collapsingHeader()

EVENGINE_API_WORLD WidgetDesc eve::ui::collapsingHeader ( std::string  label,
std::vector< WidgetDesc >  children,
std::string  id,
bool  defaultOpen 
)

Collapsible header containing child widgets.

在文件 Widget.cpp 第 623 行定义.

引用了 children, CollapsingHeader, d, label , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginCollapsing() , 以及 eve::ui::Inspector::build().

◆ colorPalette()

EVENGINE_API_WORLD WidgetDesc eve::ui::colorPalette ( std::string  label,
float  r,
float  g,
float  b,
float  a,
std::string  id,
std::function< void(float)>  onValue 
)

Color editor with a swatch grid (调色板). RGBA is stored in tint channels. valueText may list extra swatches as #rrggbb, #rrggbbaa, or r,g,b[,a] lines; empty uses the built-in palette. Changes fire the same value events as sliders (consumeChange / onValue).

在文件 Widget.cpp 第 379 行定义.

引用了 a, b, ColorPalette, d, g, label, r, Slider , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addColorPalette().

◆ column()

EVENGINE_API_WORLD WidgetDesc eve::ui::column ( std::vector< WidgetDesc >  children,
std::string  id 
)

Vertical elastic layout column.

在文件 Widget.cpp 第 683 行定义.

引用了 children, Column , 以及 flex().

◆ combo()

EVENGINE_API_WORLD WidgetDesc eve::ui::combo ( std::string  label,
std::vector< std::string >  options,
int  selected,
std::string  id = "",
std::function< void(float)>  onValue = {} 
)

Combo.

Dropdown; options joined by '
', selected index in selected.

在文件 Widget.cpp 第 405 行定义.

引用了 Combo, d, label, options , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addCombo() , 以及 eve::ui::Inspector::build().

◆ createImGuiBackend()

EVENGINE_API_WORLD std::unique_ptr< UIBackend > eve::ui::createImGuiBackend ( )

Default backend: Dear ImGui + SDL + Vulkan (see ui/imgui/).

在文件 ImGuiBackend.cpp 第 167 行定义.

被这些函数引用 eve::ui::UI::initBackend().

◆ defineStyleClass()

EVENGINE_API_WORLD StyleClassStatus eve::ui::defineStyleClass ( const std::string &  name,
const std::string &  parent 
)

Declares or replaces one sparse style class. @thread UI thread only. @reentrancy Does not invoke callbacks.

在文件 Theme.cpp 第 82 行定义.

引用了 Applied, current, InheritanceCycle, InvalidName, name, eve::ui::StyleClass::name, parent, eve::ui::StyleClass::parent , 以及 UnknownParent.

被这些函数引用 eve::ui::UI::defineStyleClass().

◆ evaluateParentScaler()

EVENGINE_API_WORLD Result< void > eve::ui::evaluateParentScaler ( ParentScalerState *  state,
ParentScalerOutput *  output,
const ParentScalerSettings *  settings,
const ParentScalerInput *  input 
)

Evaluate Pcg ParentScaler when canvas height changes.

参数
stateRequired caller-owned previous-height state.
outputRequired caller-owned output replaced atomically on success.
settingsRequired finite settings.
inputCurrent canvas observation and number of target rects.
返回
Success, or InvalidArgument without changing state/output. @ownership All values remain caller-owned and no references are retained. @thread UI owner thread; no callbacks are invoked.

在文件 ParentScaler.cpp 第 8 行定义.

引用了 eve::ui::ParentScalerOutput::applyHeight, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::ui::ParentScalerOutput::height, input, eve::InvalidArgument, output, settings, state , 以及 eve::Result< T >::success().

◆ evaluateUiEase()

EVENGINE_API_WORLD float eve::ui::evaluateUiEase ( float  t,
const char *  kind 
)

Evaluate a UI tween ease curve in [0,1].

参数
tNormalized progress (clamped).
kindEase name; empty / "smoothstep" keeps the historical default.
返回
Eased progress in [0,1] for known kinds; unknown kinds return linear t.
注解
Supported: smoothstep, linear, in/out/inOut + Quad/Cubic/Sine/Expo, and in/out/inOut + Back/Elastic/Bounce (Motion ease parity).

在文件 UiTween.cpp 第 35 行定义.

引用了 kind, M_PI, s, t, u , 以及 x.

◆ exposeParentScalerBindings()

◆ exposePcgColorPreviewSyncBindings()

void eve::ui::exposePcgColorPreviewSyncBindings ( ssq::Table &  table)

◆ exposePcgControllerSelectionBindings()

void eve::ui::exposePcgControllerSelectionBindings ( ssq::Table &  t)

Register Pcg controller-selection bindings.

在文件 PcgControllerSelection.cpp 第 9 行定义.

引用了 c, n, eve::script::projectResult(), s, t, type, v , 以及 vm.

◆ exposePcgDraggableWindowBindings()

◆ exposePcgLoadingScreenBindings()

◆ exposePcgPhotoModeApplyPlanBindings()

void eve::ui::exposePcgPhotoModeApplyPlanBindings ( ssq::Table &  t)

Register Pcg photo-mode application-plan bindings.

在文件 PcgPhotoModeApplyPlan.cpp 第 137 行定义.

引用了 a, b, c, eve::script::projectResult(), s, t, v , 以及 vm.

◆ exposePcgPhotoModeColorPickerBindings()

void eve::ui::exposePcgPhotoModeColorPickerBindings ( ssq::Table &  t)

Register Pcg photo-mode color-picker bindings.

在文件 PcgPhotoModeColorPicker.cpp 第 14 行定义.

引用了 a, b, c, g, h, eve::script::projectResult(), r, Requested, s, eve::ui::PcgPhotoModeColorPicker::setFocusedName(), t, v , 以及 vm.

◆ exposePcgPhotoModePanelsBindings()

void eve::ui::exposePcgPhotoModePanelsBindings ( ssq::Table &  t)

Register Pcg photo-mode panel bindings.

在文件 PcgPhotoModePanels.cpp 第 11 行定义.

引用了 a, b, c, d, f, g, h, n, p, eve::script::projectResult(), Requested, s, t, v , 以及 vm.

◆ exposePcgPhotoModeRangesBindings()

void eve::ui::exposePcgPhotoModeRangesBindings ( ssq::Table &  t)

Register Pcg photo-mode range bindings.

在文件 PcgPhotoModeRanges.cpp 第 73 行定义.

引用了 a, b, c, n, eve::script::projectResult(), s, t, v, vm , 以及 x.

◆ exposePcgPhotoModeRuntimeUIBindings()

void eve::ui::exposePcgPhotoModeRuntimeUIBindings ( ssq::Table &  table)

Register Pcg photo-mode runtime UI bindings.

在文件 PcgPhotoModeRuntimeUI.cpp 第 70 行定义.

引用了 Applied, c, found, n, eve::script::projectResult(), s, t, eve::ui::PcgPhotoModeRuntimeUI::updateWrap(), v , 以及 vm.

◆ exposePcgPhotoModeSessionBindings()

◆ exposePcgPhotoModeValuesBindings()

void eve::ui::exposePcgPhotoModeValuesBindings ( ssq::Table &  t)

Register complete Pcg photo-mode value bindings.

在文件 PcgPhotoModeValues.cpp 第 156 行定义.

引用了 a, b, c, exposePcgPhotoModeValuesBindings(), g, n, eve::script::projectResult(), r, s, t, v , 以及 vm.

被这些函数引用 exposePcgPhotoModeValuesBindings().

◆ exposePcgScreenshotSavedNoticeBindings()

void eve::ui::exposePcgScreenshotSavedNoticeBindings ( ssq::Table &  t)

Register Pcg screenshot-notice bindings.

在文件 PcgScreenshotSavedNotice.cpp 第 10 行定义.

引用了 c, d, n, p, eve::script::projectResult(), s, t , 以及 vm.

◆ exposePcgTooltipBindings()

void eve::ui::exposePcgTooltipBindings ( ssq::Table &  t)

Register Pcg tooltip bindings.

在文件 PcgTooltip.cpp 第 14 行定义.

引用了 b, c, d, h, m, n, eve::script::projectResult(), q, s, t, text, top, v, vm, w, x , 以及 y.

◆ flex()

EVENGINE_API_WORLD WidgetDesc eve::ui::flex ( FlexDirection  direction,
std::vector< WidgetDesc >  children,
std::string  id 
)

Elastic layout container (row/column). Prefer row / column shorthands.

在文件 Widget.cpp 第 669 行定义.

引用了 children, d, direction, Flex , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginFlex(), column() , 以及 row().

◆ flexArrange()

EVENGINE_API_WORLD FlexResult eve::ui::flexArrange ( bool  row,
float  gap,
float  availMain,
float  availCross,
FlexAlign  containerAlign,
FlexJustify  justify,
const std::vector< FlexItemSpec > &  items,
bool  wrap = false,
float  crossGap = -1.f 
)

Flex arrange.

Distribute flex items along main/cross axis. Pure — no ImGui state touched, so it can be unit-tested headlessly.

在文件 Layout.cpp 第 201 行定义.

引用了 eve::ui::WidgetDesc::aspectRatio, eve::ui::FlexResult::contentH, eve::ui::FlexResult::contentW, flexArrangeSingleLine(), gap, index, eve::ui::FlexResult::items, line, main(), eve::ui::FlexResult::overflowMain, row(), s, eve::ui::FlexRect::x , 以及 eve::ui::FlexRect::y.

◆ flexArrangeSingleLine()

◆ globalTheme()

EVENGINE_API_WORLD Theme & eve::ui::globalTheme ( )

◆ globalThemeName()

EVENGINE_API_WORLD const std::string & eve::ui::globalThemeName ( )

Current preset name: "dark", "light", or "custom".

在文件 Theme.cpp 第 279 行定义.

被这些函数引用 eve::ui::UI::getTheme().

◆ grid()

EVENGINE_API_WORLD WidgetDesc eve::ui::grid ( int  columns,
std::vector< WidgetDesc >  children,
std::string  id 
)

Fixed-column grid; children are placed in source order.

在文件 Widget.cpp 第 687 行定义.

引用了 children, columns, d, Grid, grid() , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginGrid() , 以及 grid().

◆ gridArrange()

EVENGINE_API_WORLD GridResult eve::ui::gridArrange ( int  columns,
float  columnGap,
float  rowGap,
float  availWidth,
const std::vector< GridItemSpec > &  items 
)

◆ group()

EVENGINE_API_WORLD WidgetDesc eve::ui::group ( std::vector< WidgetDesc >  children,
std::string  id 
)

Plain group container.

在文件 Widget.cpp 第 328 行定义.

引用了 children, d, Group , 以及 eve::ui::WidgetDesc::type.

◆ icon()

EVENGINE_API_WORLD WidgetDesc eve::ui::icon ( Icon  value,
std::string  id 
)

Semantic vector icon rendered from the bundled editor icon font.

在文件 Widget.cpp 第 321 行定义.

引用了 iconGlyph(), text , 以及 value.

◆ iconButton()

EVENGINE_API_WORLD WidgetDesc eve::ui::iconButton ( Icon  value,
std::string  label,
std::string  id,
std::function< void()>  onClick 
)

Button containing a semantic icon and optional visible label.

参数
onClickVoid.

在文件 Widget.cpp 第 323 行定义.

引用了 button(), iconText(), label , 以及 value.

被这些函数引用 eve::ui::UI::addIconButton() , 以及 eve::ui::EditorShell::build().

◆ iconFromName()

EVENGINE_API_WORLD bool eve::ui::iconFromName ( std::string_view  name,
Icon *  out 
)

Resolves a semantic icon name; accepts kebab-case names case-insensitively.

在文件 Icons.cpp 第 90 行定义.

引用了 key , 以及 name.

被这些函数引用 eve::ui::UI::addIcon() , 以及 eve::ui::UI::addIconButton().

◆ iconGlyph()

EVENGINE_API_WORLD const char * eve::ui::iconGlyph ( Icon  icon)

Returns the UTF-8 glyph for an icon, or an empty string for None.

在文件 Icons.cpp 第 86 行定义.

引用了 icon.

被这些函数引用 icon() , 以及 iconText().

◆ iconName()

EVENGINE_API_WORLD const char * eve::ui::iconName ( Icon  icon)

Returns the stable kebab-case semantic name for an icon.

在文件 Icons.cpp 第 88 行定义.

引用了 icon.

◆ iconText()

EVENGINE_API_WORLD std::string eve::ui::iconText ( Icon  icon,
std::string_view  label 
)

Composes an icon with an optional visible label.

在文件 Icons.cpp 第 101 行定义.

引用了 icon, iconGlyph() , 以及 label.

被这些函数引用 iconButton().

◆ image()

EVENGINE_API_WORLD WidgetDesc eve::ui::image ( std::string  id = "",
float  width = 0.f,
float  height = 0.f,
std::function< void()>  onClick = {} 
)

Image.

Colored / textured image. Size defaults to texture size via layout.

参数
onClickVoid.

在文件 Widget.cpp 第 421 行定义.

引用了 d, height, image, Image, eve::ui::WidgetDesc::type , 以及 width.

◆ imageButton()

EVENGINE_API_WORLD WidgetDesc eve::ui::imageButton ( std::string  id,
float  width,
float  height,
std::function< void()>  onClick = {} 
)

Image button.

Clickable image (renders via ImGui ImageButton).

参数
onClickVoid.

在文件 Widget.cpp 第 432 行定义.

引用了 d, height, ImageButton, eve::ui::WidgetDesc::type , 以及 width.

被这些函数引用 eve::ui::UI::addImageButton().

◆ inputText()

EVENGINE_API_WORLD WidgetDesc eve::ui::inputText ( std::string  label,
std::string  value,
std::string  id,
std::function< void(const std::string &)>  onChange 
)

Editable text field; fires onTextChange.

参数
onChangeVoid.

在文件 Widget.cpp 第 453 行定义.

引用了 d, InputText, label, eve::ui::WidgetDesc::type , 以及 value.

被这些函数引用 eve::ui::UI::addInputText() , 以及 eve::ui::ScenePanel::build().

◆ list()

WidgetDesc eve::ui::list ( std::string  listId,
const std::vector< std::string > &  items,
const std::function< WidgetDesc(const std::string &, int)> &  itemFn 
)

Expand a string list into a Group of item widgets. itemFn(label, index) builds each row; keys default to id.

参数
itemFnWidget desc.

在文件 Widget.cpp 第 715 行定义.

引用了 children, group, eve::ui::WidgetDesc::id, eve::ui::WidgetDesc::key , 以及 row().

被这些函数引用 listButtons() , 以及 virtualList().

◆ listButtons()

EVENGINE_API_WORLD WidgetDesc eve::ui::listButtons ( std::string  listId,
const std::vector< std::string > &  items 
)

Default list: one Button per item, id = listId + "/" + index.

在文件 Widget.cpp 第 728 行定义.

引用了 button(), label, list() , 以及 eve::ui::WidgetDesc::withKey().

被这些函数引用 eve::ui::UI::setListItems().

◆ measureFlowChildren()

void eve::ui::measureFlowChildren ( UIHost::Tree &  tree,
int  firstChild,
float *  outW,
float *  outH 
)

Measure flow children.

Flow measure helpers for non-flex containers (Window/Group/Child/Header).

在文件 Layout.cpp 第 331 行定义.

引用了 h, index, measureNode(), n, eve::ui::UIHost::Tree::nodes, SameLine , 以及 w.

被这些函数引用 measureNode().

◆ measureNode()

void eve::ui::measureNode ( UIHost::Tree &  tree,
int  index 
)

Measure node.

Measure one node (recursively) and fill UINode::measuredW/H.

在文件 Layout.cpp 第 369 行定义.

引用了 eve::ui::WidgetDesc::absolute, eve::ui::GridItemSpec::aspectRatio, eve::ui::WidgetDesc::aspectRatio, Badge, eve::ui::GridItemSpec::basisH, eve::ui::GridItemSpec::basisW, Button, c, Card, cell, Checkbox, Child, child(), CollapsingHeader, ColorPalette, cols, columns, eve::ui::GridItemSpec::columnSpan, Combo, eve::ui::GridResult::contentH, eve::ui::GridResult::contentW, count, end, first, Flex, eve::ui::WidgetDesc::flexDirection, gap, globalTheme(), Grid, gridArrange(), eve::ui::WidgetDesc::gridColumnSpan, Group, h, Image, ImageButton, index, InputText, label, eve::ui::Theme::layout, m, eve::ui::GridItemSpec::marginB, eve::ui::WidgetDesc::marginB, eve::ui::GridItemSpec::marginL, eve::ui::WidgetDesc::marginL, eve::ui::GridItemSpec::marginR, eve::ui::WidgetDesc::marginR, eve::ui::GridItemSpec::marginT, eve::ui::WidgetDesc::marginT, measureFlowChildren(), measureNode(), Menu, MenuBar, MenuItem, n, NinePatchPanel, eve::ui::UIHost::Tree::nodes, eve::ui::WidgetDesc::paddingL, eve::ui::WidgetDesc::paddingT, Progress, Row, row(), rows, SameLine, ScrollList, SearchField, eve::ui::ThemeLayout::searchMinWidth, second, SectionHeader, eve::ui::ThemeLayout::sectionSpacingY, Separator, Sidebar, eve::ui::ThemeLayout::sidebarWidth, Slider, Spacer, SplitPane, eve::ui::ThemeLayout::splitterSize, StatusBar, eve::ui::ThemeLayout::statusBarHeight, Switch, t, Text, themeUiScale(), Toolbar, eve::ui::ThemeLayout::toolbarHeight, Toolbox, eve::ui::ThemeLayout::toolboxCellSize, Viewport, eve::ui::WidgetDesc::visible, w , 以及 Window.

被这些函数引用 measureFlowChildren(), measureNode() , 以及 measureTree().

◆ measureTree()

EVENGINE_API_WORLD void eve::ui::measureTree ( UIHost::Tree &  tree)

Measure tree.

Measure the whole tree from its root.

在文件 Layout.cpp 第 667 行定义.

引用了 measureNode() , 以及 eve::ui::UIHost::Tree::root.

被这些函数引用 eve::ui::UISystem::render().

◆ menu()

EVENGINE_API_WORLD WidgetDesc eve::ui::menu ( std::string  label,
std::vector< WidgetDesc >  children,
std::string  id 
)

Popup menu container used inside a MenuBar or another Menu.

在文件 Widget.cpp 第 540 行定义.

引用了 children, d, label, Menu , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginMenu().

◆ menuBar()

EVENGINE_API_WORLD WidgetDesc eve::ui::menuBar ( std::vector< WidgetDesc >  children,
std::string  id 
)

Window menu bar container. Must be a direct child of a Window.

在文件 Widget.cpp 第 531 行定义.

引用了 children, d, MenuBar , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginMenuBar().

◆ menuItem()

EVENGINE_API_WORLD WidgetDesc eve::ui::menuItem ( std::string  label,
std::string  shortcut,
std::string  id,
std::function< void()>  onClick,
bool  selected 
)

Selectable menu command with an optional shortcut hint.

参数
onClickVoid.

在文件 Widget.cpp 第 550 行定义.

引用了 d, label, MenuItem , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addMenuItem().

◆ Module_IMPL()

eve::ui::Module_IMPL ( UI  ,
new   UI() 
)

◆ ninePatchPanel()

WidgetDesc eve::ui::ninePatchPanel ( std::vector< WidgetDesc >  children,
std::string  id,
uint64_t  textureId 
)

Stretchable textured container with asset-defined content padding.

在文件 Widget.cpp 第 511 行定义.

引用了 children, d, NinePatchPanel , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginNinePatch().

◆ parseNinePatch()

EVENGINE_API_WORLD bool eve::ui::parseNinePatch ( const image::ImageData &  source,
NinePatchInfo &  out,
std::string *  error = nullptr 
)

Parse a raw, uncompiled Android .9.png image.

参数
sourceDecoded RGBA8 image including the one-pixel marker frame.
outParsed stretch borders and content padding.
errorOptional diagnostic on failure.
返回
True when the marker frame is valid and has one contiguous stretch run on both the top and left edges.

在文件 NinePatch.cpp 第 55 行定义.

引用了 eve::ui::NinePatchInfo::borderBottom, eve::ui::NinePatchInfo::borderLeft, eve::ui::NinePatchInfo::borderRight, eve::ui::NinePatchInfo::borderTop, error, height, eve::ui::NinePatchInfo::height, eve::ui::NinePatchInfo::paddingBottom, eve::ui::NinePatchInfo::paddingLeft, eve::ui::NinePatchInfo::paddingRight, eve::ui::NinePatchInfo::paddingTop, source, width, eve::ui::NinePatchInfo::width, x , 以及 y.

◆ progress()

EVENGINE_API_WORLD WidgetDesc eve::ui::progress ( float  fraction,
std::string  id,
std::string  overlay 
)

Progress bar; fraction is clamped to [0,1].

在文件 Widget.cpp 第 395 行定义.

引用了 d, Progress , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addProgress(), exposePcgLoadingScreenBindings() , 以及 eve::ui::PcgLoadingScreen::onLoadProgressUpdated().

◆ projectWorldAnchor()

EVENGINE_API_WORLD WorldAnchorProjection eve::ui::projectWorldAnchor ( const UIHost::WorldAnchor &  anchor,
const glm::mat4 &  viewProjection,
float  cameraX,
float  cameraY,
float  cameraZ,
float  viewportWidth,
float  viewportHeight 
)

Projects one world-space UI anchor using a Vulkan RH-ZO view-projection matrix.

参数
anchorAuthoritative anchor settings; derived fields are ignored.
viewProjectionCamera projection multiplied by view.
cameraXCamera world X used only for distance scaling.
cameraYCamera world Y used only for distance scaling.
cameraZCamera world Z used only for distance scaling.
viewportWidthPositive drawable width in pixels.
viewportHeightPositive drawable height in pixels.
返回
Owning, deterministic projection snapshot. Invalid viewports produce NoCamera. @thread Pure and thread-safe; invokes no callbacks and retains no references.

在文件 WorldAnchorProjection.cpp 第 43 行定义.

引用了 anchor, BehindCamera, clip, eve::ui::WorldAnchorProjection::depth, distance, Hide, margin, NoCamera, OutsideViewport, reference, eve::ui::WorldAnchorProjection::render, eve::ui::WorldAnchorProjection::scale, eve::ui::WorldAnchorProjection::screenX, eve::ui::WorldAnchorProjection::screenY, eve::ui::WorldAnchorProjection::state , 以及 Visible.

◆ propertyWidgetId()

std::string eve::ui::propertyWidgetId ( const PropertyViewOptions &  options,
const std::string &  path 
)

Return the stable widget id generated for a property path.

在文件 PropertyView.cpp 第 415 行定义.

引用了 options, path , 以及 propertyWidgetId().

被这些函数引用 buildPropertyField(), propertyWidgetId() , 以及 syncPropertyView().

◆ registerEditorHostCapabilities()

void eve::ui::registerEditorHostCapabilities ( )

Registers editor host capabilities.

在文件 EditorHostCapabilities.cpp 第 79 行定义.

引用了 impl.

被这些函数引用 eve::ui::UI::UI().

◆ registerUIAutomationCapabilities()

EVENGINE_API_WORLD void eve::ui::registerUIAutomationCapabilities ( )

Registers ui automation capabilities.

在文件 UIAutomationCapabilities.cpp 第 316 行定义.

引用了 impl.

被这些函数引用 eve::ui::UI::UI().

◆ resolveStyleClass()

EVENGINE_API_WORLD StyleClassStatus eve::ui::resolveStyleClass ( const std::string &  name,
StyleClass *  out 
)

Resolves inheritance into a sparse class and reports an explicit lookup status.

在文件 Theme.cpp 第 150 行定义.

引用了 Applied, InheritanceCycle, InvalidName, name, UnknownClass , 以及 visiting.

◆ resolveWorldAnchorOverlaps()

EVENGINE_API_WORLD std::vector< WorldAnchorLayoutResult > eve::ui::resolveWorldAnchorOverlaps ( std::vector< WorldAnchorLayoutItem >  items,
float  viewportWidth,
float  viewportHeight 
)

Resolves projected host overlap with bounded deterministic vertical displacement.

参数
itemsOwning snapshots. Higher priority wins, then nearer depth, then stableIndex.
viewportWidthPositive viewport width.
viewportHeightPositive viewport height.
返回
One owning result per input item, sorted by stableIndex. @thread Pure and thread-safe; invokes no callbacks and retains no references.

在文件 WorldAnchorProjection.cpp 第 91 行定义.

引用了 a, b, direction, level, occupied, placed, step, value , 以及 y.

被这些函数引用 eve::ui::UISystem::render().

◆ row()

EVENGINE_API_WORLD WidgetDesc eve::ui::row ( std::vector< WidgetDesc >  children,
std::string  id 
)

Horizontal elastic layout row.

在文件 Widget.cpp 第 679 行定义.

引用了 children, flex() , 以及 Row.

被这些函数引用 eve::ui::DatabasePanel::build(), eve::ui::Inspector::build(), eve::ui::ScenePanel::build(), flexArrange(), flexArrangeSingleLine(), gridArrange(), list() , 以及 measureNode().

◆ sameLine()

EVENGINE_API_WORLD WidgetDesc eve::ui::sameLine ( std::string  id)

Holds the next widget on the same line as the previous one.

在文件 Widget.cpp 第 337 行定义.

引用了 d, SameLine , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addSameLine().

◆ scrollList()

EVENGINE_API_WORLD WidgetDesc eve::ui::scrollList ( std::string  id,
std::vector< WidgetDesc >  children = {},
float  height = 0.f,
float  itemHeight = 0.f 
)

Scroll list.

Virtualized scroll list: only visible rows are drawn each frame. Children are the full item set (rows laid out top-to-bottom at itemHeight px). Set a height for the viewport; 0 = fill available space.

在文件 Widget.cpp 第 646 行定义.

引用了 children, d, height, ScrollList , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginScrollList(), eve::ui::DatabasePanel::build() , 以及 virtualList().

◆ searchField()

EVENGINE_API_WORLD WidgetDesc eve::ui::searchField ( std::string  hint,
std::string  value,
std::string  id,
std::function< void(const std::string &)>  onChange 
)

Compact search field with placeholder text and a bundled search icon.

参数
onChangeVoid.

在文件 Widget.cpp 第 465 行定义.

引用了 d, SearchField, eve::ui::WidgetDesc::type , 以及 value.

被这些函数引用 eve::ui::UI::addSearchField().

◆ sectionHeader()

EVENGINE_API_WORLD WidgetDesc eve::ui::sectionHeader ( std::string  label,
std::string  id 
)

Non-collapsible editor section heading with an accent marker.

在文件 Widget.cpp 第 522 行定义.

引用了 d, label, SectionHeader , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addSectionHeader() , 以及 buildPropertyView().

◆ separator()

EVENGINE_API_WORLD WidgetDesc eve::ui::separator ( std::string  id)

Horizontal separator line.

在文件 Widget.cpp 第 345 行定义.

引用了 d, Separator , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addSeparator(), eve::ui::DatabasePanel::build(), eve::ui::Inspector::build() , 以及 eve::ui::ScenePanel::build().

◆ setGlobalTheme() [1/2]

EVENGINE_API_WORLD void eve::ui::setGlobalTheme ( const Theme &  theme)

Sets the global theme.

在文件 Theme.cpp 第 281 行定义.

引用了 setGlobalTheme() , 以及 theme.

被这些函数引用 eve::ui_editing::UiThemeRuntimePublisher::publish(), setGlobalTheme() , 以及 setThemeByName().

◆ setGlobalTheme() [2/2]

EVENGINE_API_WORLD void eve::ui::setGlobalTheme ( const Theme &  theme,
const std::string &  name 
)

Sets the global theme.

在文件 Theme.cpp 第 283 行定义.

引用了 name , 以及 theme.

◆ setStyleClassColor()

EVENGINE_API_WORLD StyleClassStatus eve::ui::setStyleClassColor ( const std::string &  name,
const std::string &  property,
float  r,
float  g,
float  b,
float  a 
)

◆ setStyleClassMetric()

EVENGINE_API_WORLD StyleClassStatus eve::ui::setStyleClassMetric ( const std::string &  name,
const std::string &  property,
float  x,
float  y 
)

◆ setThemeByName()

bool eve::ui::setThemeByName ( const std::string &  name)

Apply a named preset ("dark" / "light"). Case-insensitive. Returns false if unknown.

在文件 Theme.cpp 第 288 行定义.

引用了 eve::ui::Theme::dark(), key, eve::ui::Theme::light(), name , 以及 setGlobalTheme().

被这些函数引用 eve::ui::UI::setTheme(), eve::ui::UI::setThemeDark() , 以及 eve::ui::UI::setThemeLight().

◆ setThemeDpiScale()

void eve::ui::setThemeDpiScale ( float  dpiScale)

Sets the theme dpi scale.

Display DPI ratio (e.g. 1.5 on Windows at 150%, 2.0 on Retina). The font atlas is rasterized at this resolution so glyphs stay crisp; UI scale and FontGlobalScale then preserve the intended logical size per platform.

在文件 Theme.cpp 第 307 行定义.

被这些函数引用 eve::ui::ImGuiBackend::init().

◆ setThemeUiScale()

EVENGINE_API_WORLD void eve::ui::setThemeUiScale ( float  scale)

Logical (point-space) UI scale. Default 1.0.

在文件 Theme.cpp 第 301 行定义.

引用了 scale.

被这些函数引用 eve::ui::ImGuiBackend::init() , 以及 eve::ui::UI::setScale().

◆ sidebar()

EVENGINE_API_WORLD WidgetDesc eve::ui::sidebar ( std::vector< WidgetDesc >  children,
std::string  id,
float  width 
)

Vertical editor side panel. Width defaults to 240 logical pixels.

在文件 Widget.cpp 第 586 行定义.

引用了 children, d, Sidebar, eve::ui::WidgetDesc::type , 以及 width.

被这些函数引用 eve::ui::UI::beginSidebar().

◆ slider()

EVENGINE_API_WORLD WidgetDesc eve::ui::slider ( std::string  label,
float  value,
float  minV,
float  maxV,
std::string  id,
std::function< void(float)>  onValue 
)

Horizontal slider; fires onValue.

参数
onValueVoid.

在文件 Widget.cpp 第 365 行定义.

引用了 d, label, Slider, eve::ui::WidgetDesc::type , 以及 value.

被这些函数引用 eve::ui::UI::addSlider().

◆ spacer()

EVENGINE_API_WORLD WidgetDesc eve::ui::spacer ( std::string  id,
float  grow 
)

Flexible empty space; default flexGrow=1 so it absorbs free space in a Flex parent.

在文件 Widget.cpp 第 697 行定义.

引用了 d, Spacer , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addSpacer(), eve::ui::DatabasePanel::build(), eve::ui::EditorShell::build(), eve::ui::Inspector::build() , 以及 eve::ui::ScenePanel::build().

◆ splitPane()

EVENGINE_API_WORLD WidgetDesc eve::ui::splitPane ( FlexDirection  direction,
WidgetDesc  first,
WidgetDesc  second,
float  ratio = 0.25f,
std::string  id = "",
std::function< void(float)>  onResize = {} 
)

Two resizable panes separated by a drag handle.

参数
directionRow creates left/right panes; Column creates top/bottom panes.
ratioFraction assigned to the first pane, clamped to [0.1, 0.9].
参数
onResizeVoid.

在文件 Widget.cpp 第 607 行定义.

引用了 d, direction, first, second, SplitPane , 以及 eve::ui::WidgetDesc::type.

◆ statusBar()

EVENGINE_API_WORLD WidgetDesc eve::ui::statusBar ( std::vector< WidgetDesc >  children,
std::string  id 
)

Compact horizontal status strip; Spacer children absorb free width.

在文件 Widget.cpp 第 596 行定义.

引用了 Center, children, d, Row, StatusBar , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginStatusBar().

◆ stripNinePatchBorder()

EVENGINE_API_WORLD std::unique_ptr< image::ImageData > eve::ui::stripNinePatchBorder ( const image::ImageData &  source)

Copy the drawable interior of a parsed .9.png without marker pixels.

返回
Caller-owned cropped image, or nullptr if dimensions are invalid.

在文件 NinePatch.cpp 第 109 行定义.

引用了 eve::image::ImageData::getWidth() , 以及 source.

◆ styleClassStatusName()

const char * eve::ui::styleClassStatusName ( StyleClassStatus  status)

Stable script-facing spelling of a mutation status.

在文件 Theme.cpp 第 162 行定义.

引用了 Applied, InheritanceCycle, InvalidName, status, UnknownClass, UnknownParent , 以及 UnknownProperty.

被这些函数引用 eve::ui::UI::defineStyleClass(), eve::ui::UI::setStyleClassColor() , 以及 eve::ui::UI::setStyleClassMetric().

◆ syncPropertyView()

EVENGINE_API_WORLD void eve::ui::syncPropertyView ( UIHost &  host,
const property_access::IPropertyAccess &  model,
const PropertyViewOptions &  options 
)

Pull current model values into an existing compatible UI tree.

在文件 PropertyView.cpp 第 449 行定义.

引用了 fields, found, host, index, key, model, options, propertyWidgetId(), syncPropertyView() , 以及 value.

被这些函数引用 eve::ui::Inspector::sync() , 以及 syncPropertyView().

◆ text()

EVENGINE_API_WORLD WidgetDesc eve::ui::text ( std::string  content,
std::string  id 
)

Static text label.

在文件 Widget.cpp 第 302 行定义.

引用了 d, Text , 以及 eve::ui::WidgetDesc::type.

◆ themeDpiScale()

float eve::ui::themeDpiScale ( )

Theme dpi scale.

在文件 Theme.cpp 第 311 行定义.

◆ themeUiScale()

EVENGINE_API_WORLD float eve::ui::themeUiScale ( )

Theme ui scale.

在文件 Theme.cpp 第 305 行定义.

被这些函数引用 measureNode().

◆ toggleSwitch()

EVENGINE_API_WORLD WidgetDesc eve::ui::toggleSwitch ( std::string  label,
bool  checked,
std::string  id,
std::function< void(bool)>  onToggle 
)

Modern boolean toggle; fires onToggle when changed.

参数
onToggleVoid.

在文件 Widget.cpp 第 477 行定义.

引用了 d, label, Switch , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::addSwitch().

◆ toolbar()

EVENGINE_API_WORLD WidgetDesc eve::ui::toolbar ( std::vector< WidgetDesc >  children,
std::string  id 
)

Horizontal editor command strip; Spacer children absorb free width.

在文件 Widget.cpp 第 563 行定义.

引用了 Center, children, d, Row, Toolbar , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginToolbar(), eve::ui::EditorShell::build() , 以及 eve::ui::Inspector::build().

◆ toolbox()

EVENGINE_API_WORLD WidgetDesc eve::ui::toolbox ( std::vector< WidgetDesc >  children,
std::string  id,
float  cellSize,
int  columns 
)

Wrapping grid of editor tools with uniform square cells.

在文件 Widget.cpp 第 574 行定义.

引用了 children, columns, d, Toolbox , 以及 eve::ui::WidgetDesc::type.

被这些函数引用 eve::ui::UI::beginToolbox().

◆ uiTweenWallClockMs()

EVENGINE_API_WORLD double eve::ui::uiTweenWallClockMs ( )

◆ viewport()

EVENGINE_API_WORLD WidgetDesc eve::ui::viewport ( std::string  id = "",
float  width = 0.f,
float  height = 0.f 
)

Viewport.

Embedded render target widget: shows an offscreen Canvas, routes input.

在文件 Widget.cpp 第 443 行定义.

引用了 d, height, eve::ui::WidgetDesc::type, Viewport , 以及 width.

被这些函数引用 eve::ui::UI::addViewport().

◆ virtualList()

EVENGINE_API_WORLD WidgetDesc eve::ui::virtualList ( std::string  listId,
const std::vector< std::string > &  items,
float  height = 200.f,
float  itemHeight = 0.f 
)

Virtual list.

One-line convenience: virtualized list of buttons from string items.

在文件 Widget.cpp 第 658 行定义.

引用了 button(), eve::ui::WidgetDesc::children, height, label, list(), scrollList() , 以及 eve::ui::WidgetDesc::withKey().

◆ when()

EVENGINE_API_WORLD WidgetDesc eve::ui::when ( bool  cond,
WidgetDesc  child 
)

Conditional: include child only when cond is true (empty group otherwise).

在文件 Widget.cpp 第 706 行定义.

引用了 child() , 以及 group.

◆ whenElse()

WidgetDesc eve::ui::whenElse ( bool  cond,
WidgetDesc  ifTrue,
WidgetDesc  ifFalse 
)

When else.

在文件 Widget.cpp 第 711 行定义.

◆ window()