Skip to main content

Crate open_gpui_canvas

Crate open_gpui_canvas 

Source
Expand description

Reusable canvas model and interaction primitives for Open GPUI.

The crate keeps the document model separate from rendering. Applications can use nodes, edges, shapes, handles, viewport transforms, hit testing, and tool state transitions without committing to one GPUI element per canvas object.

Structs§

BindingId
CanvasChangeOrigin
CanvasCheckpoint
CanvasClipboardPayload
CanvasCommittedMutation
CanvasConnectedRelease
CanvasConnectionDragState
CanvasDefaultEdgeRouter
CanvasDocument
CanvasDocumentBuilder
CanvasDocumentDiff
CanvasDroppedConnectionRelease
CanvasDroppedReconnectRelease
CanvasEdge
CanvasEdgeKind
CanvasEdgeRoute
CanvasEdgeRouteKind
CanvasEditor
CanvasEditorInputHandler
CanvasEditorInputMapper
CanvasEncodedLogEntry
CanvasEndpoint
CanvasGeometryFacts
CanvasGraph
CanvasGraphEndpointIds
CanvasGraphIndex
CanvasHandle
CanvasHistory
CanvasIndexedGraph
CanvasInputMapper
CanvasJsonPersistenceCodec
CanvasKeyModifiers
CanvasKindLabel
CanvasKindPaint
CanvasKindRegistry
CanvasLogEntry
CanvasNode
CanvasNodeBoundsHitTest
CanvasNodeHitTest
CanvasNodeKind
CanvasNodeResizeProposal
CanvasPaintConnectionPreview
CanvasPaintConnectionTargetFeedback
CanvasPaintEdgeGeometry
CanvasPaintFrame
CanvasPaintInteraction
CanvasPaintInteractionFrame
CanvasPaintLabel
CanvasPaintModel
CanvasPaintOptions
CanvasPaintReconnectHandle
CanvasPaintRecord
CanvasPaintSnapGuide
CanvasPaintTheme
CanvasPaintTransformHandle
CanvasPasteTransaction
CanvasPersistenceAdapterStatus
CanvasPersistenceByteStoreAdapter
CanvasPersistenceCursor
CanvasPersistenceEnvelope
CanvasPreparedMutation
CanvasPreparedPaintFrame
CanvasReconnectedRelease
CanvasRecordBindingRelation
CanvasRecordGeometry
CanvasRecordGroupRelation
CanvasRecordOperation
CanvasRecordOperationBatch
CanvasRecordParentRelation
CanvasRecordRelations
CanvasRecordRelationsBuilder
CanvasRecordScope
CanvasRecordScopeOptions
CanvasRejectedConnectionRelease
CanvasRelationOperation
CanvasRelationOperationBatch
CanvasResolvedEdgeGeometry
CanvasResolvedSelectionScope
CanvasRoutePath
CanvasRouteRequest
CanvasRuntime
CanvasSceneFrame
CanvasSceneLayerItem
CanvasSceneRecordGroup
CanvasSelection
CanvasShape
CanvasShapeBoundsHitTest
CanvasShapeHitTest
CanvasShapeKind
CanvasShapeResizeProposal
CanvasSnapGuide
CanvasSnapResult
CanvasSnapshot
CanvasSnapshotMigration
CanvasStore
CanvasStoreChange
CanvasStoreListenerId
CanvasStyle
CanvasToolContext
CanvasToolId
CanvasToolRegistry
CanvasTransaction
CanvasTransformHandle
CanvasViewport
CanvasWidgetOverlayFrame
CanvasWidgetOverlayOptions
CanvasWidgetOverlayPlacement
EdgeId
HandleId
HitOptions
HitRecord
JsonCanvas
JsonCanvasEdge
JsonCanvasNode
MemoryCanvasPersistenceByteStore
MemoryCanvasPersistenceStore
NodeId
ShapeId

Enums§

CanvasConnectionEndpointRole
CanvasConnectionPreviewRoute
CanvasConnectionRejectReason
CanvasConnectionRelease
CanvasEdgeDirection
CanvasEvent
CanvasKey
CanvasLogEntryKind
CanvasPaintConnectionTargetState
CanvasPaintReconnectEndpoint
CanvasPaintReconnectHandleShape
CanvasPaintWireVisualState
CanvasPersistenceAdapter
CanvasPersistenceByteStoreError
CanvasPersistenceCodecError
CanvasPersistenceError
CanvasPersistenceRecord
CanvasPersistenceRecordKind
CanvasPersistentToolRegistryError
CanvasRecord
CanvasRecordChange
CanvasRecordId
CanvasRecordKind
CanvasRecordRelation
CanvasRecordRelationKey
CanvasRecordRelationKind
CanvasRelationChange
CanvasResizeHandle
CanvasRouteSegment
CanvasSceneLayerPhase
CanvasSchemaError
CanvasSelectionMode
CanvasSnapAxis
CanvasStoreHistoryEffect
CanvasStoreMutationSource
CanvasTool
CanvasToolIntent
CanvasToolRegistryError
CanvasTransformTarget
CanvasWidgetOverlayHitPriority
CanvasZOrderCommand
DocumentCommand
DocumentError
HandleRole
HitTarget
JsonCanvasEndpointShape
JsonCanvasError
JsonCanvasSide
PointerButton
TransformError

Constants§

CANVAS_DOCUMENT_FORMAT_VERSION
CANVAS_DOCUMENT_MIN_SUPPORTED_FORMAT_VERSION
CANVAS_LORO_CRDT_FEATURE
CANVAS_PERSISTENCE_ADAPTERS
CANVAS_PERSISTENCE_CODEC_VERSION
CANVAS_REDB_STORE_FEATURE
CANVAS_RKYV_SNAPSHOT_FEATURE
CANVAS_SNAPSHOT_MIGRATIONS
DEFAULT_SNAP_THRESHOLD

Traits§

CanvasEdgeRenderPolicy
CanvasEdgeRouter
CanvasEdgeSchemaPolicy
CanvasNodeGeometryPolicy
CanvasNodeInteractionPolicy
CanvasNodeRenderPolicy
CanvasNodeSchemaPolicy
CanvasNodeTransformPolicy
CanvasPersistenceByteStore
CanvasPersistenceCodec
CanvasPersistenceStore
CanvasShapeGeometryPolicy
CanvasShapeInteractionPolicy
CanvasShapeRenderPolicy
CanvasShapeSchemaPolicy
CanvasShapeTransformPolicy
CanvasToolReducer

Functions§

apply_persistent_store_transaction
apply_persistent_tool_intent
apply_persistent_tool_intents
apply_persistent_transaction
canvas_editor_scene_view_with_frame
canvas_editor_view
canvas_editor_view_with_frame
canvas_persistence_adapter_statuses
canvas_scene_view
canvas_transform_handles
canvas_view
collect_visible_records
collect_widget_overlay_frame
connection_hit_options
default_document_format_version
document_from_json_canvas_str
document_to_json_canvas_string
handle_persistent_event
handle_persistent_event_with_custom_tool
handle_persistent_event_with_tool_registry
load_canvas_document
load_canvas_persistence_cursor
migrate_canvas_snapshot
normalize_selection
paint_canvas_frame
paint_canvas_scene_phase
prepaint_canvas_frame
prepare_canvas_frame
redo_persistent_store_transaction
redo_persistent_transaction
register_canvas_editor_input
replay_canvas_log
resolve_selection_scope
save_canvas_checkpoint
save_canvas_store_checkpoint
selection_record_scope
snap_delta_for_resize_selection
snap_delta_for_selection
undo_persistent_store_transaction
undo_persistent_transaction
validate_canvas_document_format_version

Type Aliases§

CanvasReplayError
CanvasValue