Crate zng_view_api

Source
Expand description

The View Process API.

Zng isolates all render and windowing related code to a different process (the view-process), this crate provides the API that must be implemented to create a view-process backend, plus the Controller that can be used from an app-process to spawn and communicate with a view-process.

§VERSION

The VERSION of this crate must match exactly in both App-Process and View-Process, otherwise a runtime panic error is generated.

§Same Process Patch

Dynamically loaded same process implementers must propagate a StaticPatch, otherwise the view will not connect.

§Crate

This crate is part of the zng project.

§Cargo Features

This crate provides 2 feature flags, 1 enabled by default.

§"ipc"

Enables creation of separate or pre-build view.

Only enables in cfg(not(any(target_os = "android", target_arch = "wasm32", target_os = "ios"))) builds.

Enabled by default.

§"var"

Implement IntoVar<T> for API types.

Modules§

access
Accessibility and automation types.
api_extension
API extension types.
clipboard
Clipboard types.
config
System config types.
dialog
Native dialog types.
display_list
Frame builder types.
drag_drop
Drag&drop types.
font
Font types.
image
Image types.
ipc
IPC types.
keyboard
Keyboard types.
mouse
Mouse types.
touch
Touch types.
window
Window, surface and frame types.

Structs§

AxisId
Identifier for a specific analog axis on some device.
BorderSide
Border side line style and color.
Controller
View Process controller, used in the App Process.
DeviceId
Device ID in channel.
DragDropId
Identifier for a drag drop operation.
GradientStop
Offset and color in a gradient.
Inited
View process is online.
ReferenceFrameId
Identifies a reference frame.
Request
Packaged API request.
Response
Packaged API response.
StaticPatch
Dynamic view-process “same process” implementations must patch the static variables used by the view-api. This patch also propagates the tracing and log contexts.
ViewConfig
Configuration for starting a view-process.
ViewProcessGen
View-process generation, starts at one and changes every respawn, it is never zero.
ViewProcessOffline
The View-Process disconnected or has not finished initializing, try again after the inited event.

Enums§

AlphaType
Pixel color alpha type.
BorderStyle
The line style for the sides of a widget’s border.
Event
System and User events sent from the View Process.
ExtendMode
Gradient extend mode.
FocusResult
Result of a focus request.
ImageRendering
Image scaling algorithm in the renderer.
Ime
IME preview or insert event.
LineOrientation
Orientation of a straight line.
LineStyle
Represents a line style.
MixBlendMode
Color mix blend mode.
RepeatMode
Nine-patch border repeat mode.
TransformStyle
Defines if a widget is part of the same 3D space as the parent.

Constants§

VERSION
The App Process and View Process must be build using the same exact version and this is validated during run-time, causing a panic if the versions don’t match.

Traits§

Api
The view-process API.