Skip to main content

BlockNodeKindHandler Class

Definition​

Assembly:Avalonia.Controls.Documents
Package:Avalonia.Controls.Documents

Base handler for block-level node kinds. Provides shared capture/apply logic for Avalonia.Controls.Documents.TextModel.Formatting.TextElementFormatting and Avalonia.Controls.Documents.TextModel.Formatting.BlockFormatting. Inherit from this class when implementing Avalonia.Controls.Documents.TextModel.INodeKindHandler for custom block-level Avalonia.Controls.Documents.TextModel.TextDocumentNodeKind registrations.

public class BlockNodeKindHandler

Inheritance: object -> BlockNodeKindHandler

Implements:INodeKindHandler

Methods​

NameDescription
ApplyFormattingApplies formatting from a Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode back to the element.
CaptureSnapshotCaptures an immutable Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode for the given element state.
CreateDocumentNodeCreates the Avalonia.Controls.Documents.Primitives.DocumentNodes.DocumentNode for the given element, or to use the default.
CreateElementCreates the Avalonia.Controls.Documents.RichTextElement for the given node kind.

ApplyFormatting Method​

Applies formatting from a Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode back to the element.

public void ApplyFormatting(Avalonia.Controls.Documents.RichTextElement element, Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode snapshotNode)

Parameters​

element Avalonia.Controls.Documents.RichTextElement

snapshotNode Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode

CaptureSnapshot Method​

Captures an immutable Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode for the given element state.

public Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode CaptureSnapshot(Avalonia.Controls.Documents.TextModel.TextDocumentNodeKind kind, int startOffset, int length, Avalonia.Controls.Documents.RichTextElement element, Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode deferredSnapshot, Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNodeChildren children)

Parameters​

kind Avalonia.Controls.Documents.TextModel.TextDocumentNodeKind

startOffset int

length int

element Avalonia.Controls.Documents.RichTextElement

deferredSnapshot Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode

children Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNodeChildren

Returns​

Avalonia.Controls.Documents.Serialization.Snapshot.SnapshotNode

CreateDocumentNode Method​

Creates the Avalonia.Controls.Documents.Primitives.DocumentNodes.DocumentNode for the given element, or to use the default.

public Avalonia.Controls.Documents.Primitives.DocumentNodes.DocumentNode CreateDocumentNode(Avalonia.Controls.Documents.RichTextElement element)

Parameters​

element Avalonia.Controls.Documents.RichTextElement

Returns​

Avalonia.Controls.Documents.Primitives.DocumentNodes.DocumentNode

CreateElement Method​

Creates the Avalonia.Controls.Documents.RichTextElement for the given node kind.

public Avalonia.Controls.Documents.RichTextElement CreateElement(Avalonia.Controls.Documents.TextModel.TextDocumentNodeKind kind)

Parameters​

kind Avalonia.Controls.Documents.TextModel.TextDocumentNodeKind

Returns​

Avalonia.Controls.Documents.RichTextElement