SuperEditorPlugin class abstract

A SuperEditor plugin.

A SuperEditorPlugin can be thought of as a combination of two plugins.

First, there's the part that extends the behavior of an Editor. Those extensions are added in attach.

Second, there's the part that extends the behavior of a SuperEditor widget, directly. Those behaviors are collected through various properties, such as keyboardActions and componentBuilders.

An Editor is a logical pipeline of requests, commands, and reactions. It has no direct connection to a user interface.

A SuperEditor widget is a complete editor user interface. When a plugin is given to a SuperEditor widget, the SuperEditor widget attachs the plugin to its Editor, and then the SuperEditor widget pulls out UI related behaviors from the plugin for things like keyboard handlers and component builders.

Editor extensions are applied differently than the SuperEditor UI extensions, because an Editor is mutable, meaning it can be altered. But a SuperEditor widget, like all other widgets, is immutable, and must be rebuilt when properties change. As a result, each plugin is instructed to alter an Editor as desired, but SuperEditor UI extensions are queried from the plugin, so that the SuperEditor widget can pass those extensions as properties during a widget build.

Implementers

Constructors

SuperEditorPlugin()

Properties

appendedStylePhases List<SingleColumnLayoutStylePhase>
Custom style phases that are added to the very end of the SuperEditor style phases.
no setter
componentBuilders List<ComponentBuilder>
Additional ComponentBuilders that will be added to a given SuperEditor widget.
no setter
contentTapHandlers List<ContentTapDelegate>
Optional handlers that respond to taps on content, e.g., opening a link when the user taps on text with a link attribution.
no setter
documentOverlayBuilders List<SuperEditorLayerBuilder>
Additional overlay SuperEditorLayerBuilders that will be added to a given SuperEditor.
no setter
documentUnderlayBuilders List<SuperEditorLayerBuilder>
Additional underlay SuperEditorLayerBuilders that will be added to a given SuperEditor.
no setter
hashCode int
The hash code for this object.
no setterinherited
keyboardActions List<SuperEditorKeyboardAction>
Additional SuperEditorKeyboardActions that will be added to a given SuperEditor widget.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

attach(Editor editor) → void
Adds desired behaviors to the given editor.
detach(Editor editor) → void
Removes behaviors from the given editor, which were added in attach.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

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