公開 API リファレンス
ある機能を ui のトップレベルから取るのか、サブ名前空間から取るのかをひと目で判断できます。
約 6 分で読めます
src/ui/ui.zig が公開 API のすべてです。アプリが使うのは ui.* と ui.<group>.* だけで、どちらかの名前を壊すことは API break とみなされます。
const ui = @import("ui");
const zenit_app = @import("zenit_app");
// Tier 1: straight off ui
const title = try ui.text(cx, "Hello", .{});
// Tier 2: through the group
const theme = &ui.theme.dark;
const Router = ui.fx.Router;Tier 1 · ui.X
どのアプリでも使うトップレベルの名前を用途別にまとめています。最初の 5 グループでほとんどの UI ファイルをカバーでき、最後のグループはカスタム描画とフレームワークのホスト向けです。
Runtime
コンテキスト、ノード、ライフタイム
コンテキスト、ノード、ライフタイム
Cx · Node · Scope · Style · BoxStyle · HandlerRefBuilders
ノードの構築
ノードの構築
box · hstack · vstack · text · textFmt · image · imageTint · svg · svgTint · icon · iconTint · spacer · clickable · grid · animateNodeStyled
テーマ安全な構築とスタイルシステム
テーマ安全な構築とスタイルシステム
boxStyled · hstackStyled · vstackStyled · textStyled · iconStyled · iconTintStyled · recipe · ConditionalStyle · arb · ThemeTokens · ColorSchemeLayout
レイアウトの値型
レイアウトの値型
Sizing · Size · Point · Padding · Margin · Border · Outline · Direction · FlexWrap · AlignItems · JustifyContent · ComputedRect · GridStylePaint
色と描画エフェクト
色と描画エフェクト
Color · BlendMode · CornerRadius · CornerRadii · Shadow · InsetShadow · Gradient · GradientStop · MultiGradient · GradientDirection · GlassParams · GlassSurfaceText
テキスト属性と折り返し結果
テキスト属性と折り返し結果
TextProps · TextStyle · TextWrap · TextAlign · TextLayout · LineInfo · textAlignLineOffset · TextInputClient · TextInputSelectionMedia & cursor
画像、アイコン、カーソル
画像、アイコン、カーソル
ImageProps · IconProps · SvgAsset · CursorShape · CursorRegion · CursorToken · CustomCursorDescReactive
リアクティブの基本(全体は ui.reactive)
リアクティブの基本(全体は ui.reactive)
Signal · Memo · createEffect · createMemoControl flow
条件分岐とリスト(ui.control_flow にもあり)
条件分岐とリスト(ui.control_flow にもあり)
Show · For · MatchA11y
アクセシビリティ属性
アクセシビリティ属性
A11yRole · A11yProps · A11yOrientation · A11ySortDirection · A11yRect · A11yValueRangeComponents
制御 / 非制御 prop
制御 / 非制御 prop
ControlledPropAdvanced
カスタム描画、レイアウトコールバック、分割タスク
カスタム描画、レイアウトコールバック、分割タスク
DisplayItem · DrawContext · BulkQuad · AfterLayoutFn · AfterLayoutResult · max_after_layout_rounds · PointerDownFocus · Task · WorkKey · frameTier 2 · ui.<group>.X
関心事ごとに分類しています。基本機能以上が必要になったときに使ってください。
名前空間内容
ui.widgetsコンポーネントライブラリ全体:Button、Input、Modal、Tabs、VirtualList、Calendar、Notifier、FormOf…ui.fxアニメーション(Tween、Spring、Timeline)、物理、Transition / SnapshotTransition、Routerui.events完全な Event と EventResult、およびキー・マウス・スクロール・ドラッグ・IME(ImePreeditEvent / ImeCommitEvent)の payloadui.hooksuseHover、useFocusRing、useHoverHighlight、useAnimatedBackground、onMount / onCleanupui.reactiveリアクティブシステム全体:Scope、Context、StoreOf、SignalOwner、eqlValueui.control_flowShow / For / Match とそのオプション型ui.focusFocusManager、FocusScopeConfig、タブ順序ui.actionsAction、KeyBinding、CommandBinding、ActionDispatcherui.themeThemeTokens、ColorTokens と組み込みの light / dark / high_contrastui.icons選択した provider の完全なアイコンカタログ(get、all)ui.system_iconsprovider に依存しないセマンティックアイコンロールui.assetsSVG Asset 型と旧互換の common アイコンui.interactionRangeHoverRegistry や drag などのインタラクションプリミティブui.select_headlessSelect の headless ステートマシン(step、commitSelection)ui.gestureジェスチャー認識と調停(Recognizer、GestureArena)ui.hit / ui.pathヒットテスト(HitQuery、HitBehavior…)とパスジオメトリ(PathCommand、Transform2D…)ui.platform_servicesクリップボードとファイルダイアログ(引数は cx.system_sdk)ui.text_shapingフォント解決と計測のフック(setShapeFontResolver…)ui.consoleCx ごとのログ:Console、ScopedConsole、Level、Config、Snapshotui.devtoolsoverlay(ウィンドウ内インスペクター)、mountPanel(独立パネル)、trace、source_linkコンポーネントの props と結果型はコンポーネントサイトに、アイコン一覧は Icon Gallery にあります。ui.a11y はプラットフォームランタイムの接続専用で、アプリ作者には不要です。コンポーネントのアクセシビリティ情報はノードの A11yProps に書きます。
zenit_app
zenit_app.App は単一ウィンドウ用のランタイムヘルパーで、プラットフォーム / GPU / フォントの初期化とイベントループを担います。zenit_app.MultiWindowApp は複数の独立したネイティブウィンドウを管理します(上限 16 個、超えると error.TooManyWindows を返します)。同じモジュールは WindowConfig、MultiWindowConfig、FontConfig、ResourcePath もエクスポートします。高度なホストはより低レベルのインターフェースを使えますが、通常のアプリはここから始めてください。
境界
WARNING