toolbar library

The declarative toolbar layer: the QuillKitToolbar widget, the built-in item types and factory lists, and the localizable toolbar strings.

Items are data, not booleans: pass an explicit items: list (compose from QuillKitToolbarItems) or let the toolbar collect the items the controller's extensions contribute.

Re-exports document.dart in full and the controller: every item takes a QuillKitController, and the item types are parameterized over Attribute/Style, so this entrypoint is usable on its own.

Classes

ActionItem
A toolbar button that runs a controller action rather than toggling an attribute — undo, redo, or any custom command.
Attribute<T>
A single formatting property identified by key, carrying a value and a rendering scope.
AttributeKeys
The canonical attribute keys used by Quill Delta documents.
AttributeRegistry
A per-instance lookup table from attribute keys to AttributeSpecs.
Attributes
The built-in attribute set, with keys and values wire-compatible with Quill and flutter_quill.
AttributeSpec
Describes one attribute kind: its JSON key, its scope, and how raw JSON values are normalized when a document is loaded.
Block
A group of consecutive Lines that share the same grouping block format: list membership, code block or block quote.
BlockEmbed
An embed that occupies an entire line by convention (image, video, formula), with a string payload — matching the built-in embed types of Quill and flutter_quill.
CatchAllDeleteRule
Fallback delete rule: removes the requested range as-is, except that a deletion reaching the end of the document is shortened by one position so the final newline — the Quill document invariant — survives.
CatchAllInsertRule
Fallback insert rule: retains up to the insertion point and inserts the data as-is, with no special handling.
ChildQuery
Result of ContainerNode.queryChild: the child at a requested offset and the offset translated into that child's local coordinates.
ColorItem
The text-color / background-color toolbar buttons.
ColorPickerDialog
A small, dependency-free color picker: a Material swatch grid (black/white/greys plus every primary swatch in three shades), a recent-colors row, a "No color" entry, and a hex field with live preview and validation (same #rrggbb/#aarrggbb grammar the document model uses).
ColorPickerResult
What ColorPickerDialog resolves with.
ContainerNode<T extends Node>
A Node that holds an ordered list of child nodes of type T.
CustomEmbed
An application-defined embed whose payload is arbitrary JSON.
Delta
Delta represents a document or a modification of a document as a sequence of insert, delete and retain operations.
Document
A rich text document: the mutable heart of the model layer.
DocumentChange
One change applied to a Document: the document state before it, the change delta composed into it, and its source.
A popup-menu toolbar item bound to a valued attribute — used for the header level and line height.
One selectable value of a DropdownAttributeItem.
EditRule
A pure transformation from a document state plus an edit intent to the change Delta that should actually be composed into the document.
Embeddable
A non-text object embedded in a document, such as an image or video.
EmbedLeaf
A single embedded object within a line.
FormatEmbedRule
Applies an embed-scope attribute to the embed positions within the range, retaining text positions unchanged.
History
Undo/redo stacks for a Document, implemented with inverted deltas.
HistoryOptions
Tuning knobs for History.
IndentItem
The increase/decrease indent buttons.
InsertEmbedRule
Places a block embed on its own line, splitting the current line around it when it is inserted mid-line.
Leaf
The smallest unit of document content: a run of identically formatted text (TextLeaf) or a single embedded object (EmbedLeaf).
Line
A single line of rich text: a sequence of Leaf children terminated by an implicit '\n'.
LinkDialog
The add/edit-link dialog: display-text and URL fields, live scheme validation (http/https/mailto/tel), and Apply/Cancel plus Remove when editing an existing link. Pops a LinkDialogResult, or null on cancel.
LinkDialogResult
What LinkDialog resolves with.
LinkItem
The link toolbar button: opens LinkDialog to add, edit or remove the link attribute on the current selection.
Node
A node in the document tree.
Operation
Operation performed on a rich-text document.
PreserveInlineStylesRule
Makes typed text adopt the inline formatting around the caret, the way Quill (and every word processor) behaves: type after bold text and the new text is bold.
PreserveLineStyleOnMergeRule
Preserves the first line's style when a deletion starts by removing a newline, merging that line with the one that ends up following it.
QuillKitController
The editing brain of a QuillKit editor: a Document plus a TextSelection, with commands that funnel every edit through the document's rules and history.
QuillKitStrings
Every user-facing string of QuillKit — toolbar tooltips and dialogs plus the accessibility labels of the editor surface — with English defaults.
QuillKitStringsScope
Provides a QuillKitStrings to descendant toolbar widgets.
QuillKitThemeData
The visual configuration of a QuillKit editor or viewer.
QuillKitToolbar
The declarative QuillKit toolbar.
QuillKitToolbarButton
The base styled button every toolbar item renders through: a fixed 40x40 Material ink well with an icon (or arbitrary child), a tooltip, an optional toggled-on visual state, and a disabled state.
QuillKitToolbarItems
Factory lists of the built-in toolbar items.
ResolveInlineFormatRule
Applies an inline-scope attribute to every character in the range except newlines.
ResolveLineFormatRule
Applies a block-scope attribute strictly to newline positions.
Root
The root of a document tree: an ordered sequence of Lines and Blocks.
RuleSet
An ordered collection of EditRules consulted for every edit.
SegmentLeaf
The line and leaf found at a document offset; see Document.querySegmentLeaf.
Style
An immutable set of Attributes keyed by attribute key.
TextLeaf
A run of text within a line sharing a single Style.
ToggleAttributeItem
A toolbar toggle bound to one Attribute: bold, blockquote, list: 'ordered', direction: 'rtl', ...
ToolbarColors
The color tokens toolbar buttons paint with, derived from the ambient Material ColorScheme so the toolbar matches the app automatically.
ToolbarDivider
A thin vertical rule rendered between toolbar groups.
ToolbarItem
One declarative toolbar entry contributed by an EditorExtension.
ToolbarItemContext
Everything a ToolbarItem.build implementation needs to render one toolbar entry.
ToolbarItemResources
Everything a toolbar item needs beyond the ToolbarItemContext it is handed: resolved strings, theme data, and the icon color tokens.

Enums

AlignStyle
Line alignment, serialized as the value of the align attribute.
AttributeScope
Where in a document an attribute may be applied and how it participates in rendering.
ChangeSource
Where a document change originated.
DirectionStyle
Base text direction of a line, serialized as the value of the direction attribute.
ListStyle
The list styles a line can belong to, serialized as the value of the list attribute.
RuleType
The kind of edit intent a rule responds to.
ScriptStyle
Vertical position of an inline run, serialized as the value of the script attribute.
ToolbarLayout
How a QuillKitToolbar lays out its items.

Typedefs

AttributeValueDecoder = Object? Function(Object? raw)
Normalizes a raw JSON attribute value into its canonical Dart type.