lib-ui · crate

kinogaki-properties

Libraryenvironment

Property schemas: what an inspector shows, as data.

Repository
lib-ui (kinogaki/lib-ui)
Folder
libs/lib-ui/crates/properties
Source
12 files, 2,836 lines
Tests
2 files, 265 lines
depends onused by tests alonedependencies for tests alone are listed below, not drawn

What it is

Property schemas: what an inspector shows, as data.

A node, tool, object or settings page describes its properties as a current Value, whether it is enabled (and why not), and whether it can be connected. A renderer (kinogaki-ui's widgets::properties::draw) draws any schema, lets the user edit the values in place and reports which fields changed and which actions were taken; the owner of the data applies them. Schemas hold no host state and no callbacks: they are rebuilt from the data each frame.

K is the host's key for a field (an enum naming its slots).

The numeric module reads typed numbers: arithmetic and units; tone_curve holds tone curves, their maths and their encoding, and ramp float and color ramps; code is what a code field knows of its language, and Diagnostic a problem with where it points; sdk (feature studio-sdk) converts diagnostics to and from the Studio SDK's.

Depends on

CrateRepositoryAsWhat it is
kinogaki-studio-apiSDKnormalKinogaki Studio's headless plugin API.

Third-party

None.

Used by

CrateRepositoryAsWhat it is
kinogaki-editorCore and the appnormalKinogaki Studio's editor: the document and everything the window shows of it, as parts one frame borrows one by one.
kinogaki-sdk-uiCore and the appnormalThe plugin SDK's UI layer over lib-ui: the SDK's Ui and Painter, its sheets and the host's services, implemented over lib-ui.
kinogaki-uilib-uinormalKinogaki UI: the immediate-mode UI framework Kinogaki applications are built on.

Modules

Public types and traits

At the crate root

Structs ChipCurveChannelDiagnosticEditsFieldNumberPathChoiceSchemaSectionSocketSpan

Enums ActionAnimationItemKindNumberStyleSeveritySocketKindTrailingValue

Type aliases Text

By module: 34 public types and traits in 7 modules

code CodeLanguageCompletionCompletionsPlainTextTokenTokenClass

diagnostic DiagnosticSeveritySpan

number NumberNumberStyle

numeric::units Unit

ramp InterpolationKeyKeysRamp

schema ActionAnimationChipCurveChannelEditsFieldItemKindPathChoiceSchemaSectionSocketSocketKindTextTrailingValue

tone_curve InterpolationToneCurve

Besides these, 13 public functions at module level.