CanvasEditorSurface<TSourceDocument> class

Lower-level editor surface for hosted or custom editor layouts.

One CanvasEditorSurface state owns one uncontrolled editor session: interaction, selection, viewport, inspector/layers composition, history, rendering services, and editor actions.

initialDocument, adapter, initialResolveContext, resources, and extensions are captured when that session is created. Rebuilding with the same key preserves the active session rather than replacing its document or runtime configuration.

Hosts own app chrome, navigation, persistence, analytics, and deliberate reload/discard decisions. Rebuild with a different Key to dispose the current session and create a fresh one from different session inputs.

Inheritance

Constructors

CanvasEditorSurface({Key? key, required TSourceDocument initialDocument, required EditorDocumentAdapter<TSourceDocument> adapter, Object? initialResolveContext, required CanvasRuntimeResources resources, EditorAppBarBuilder? appBarBuilder, ValueChanged<CanvasSceneDocument>? onSceneChanged, EditorShellConfig shell = EditorShellConfig.standalone, List<EditorExtension<TSourceDocument>> extensions = const []})
const

Properties

adapter EditorDocumentAdapter<TSourceDocument>
final
appBarBuilder EditorAppBarBuilder?
final
extensions List<EditorExtension<TSourceDocument>>
Optional feature composition for this editor session.
final
hashCode int
The hash code for this object.
no setterinherited
initialDocument → TSourceDocument
The source document used to create a new editor session.
final
initialResolveContext Object?
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onSceneChanged ValueChanged<CanvasSceneDocument>?
Called when the editable/base CanvasSceneDocument changes.
final
resources CanvasRuntimeResources
Runtime services used by this editor session.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shell EditorShellConfig
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<CanvasEditorSurface<TSourceDocument>>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited