FloatingRenderBase class abstract
Shared structural base for themed floating renderers.
Floating is the unified tooltip/popover/hovercard component. Every theme
shares the exact same scaffolding: the build() dispatch between a CSS-only
text tooltip and a state-controlled panel, the trigger/anchor wiring, the
surfaceAttrs computation, the role logic, the arrow/content child
assembly, and the three position-math tables (which are byte-for-byte
identical across themes). This base factors all of that, leaving only the
theme-divergent CSS class strings and the four style maps (CSS tooltip,
floating content, arrow) plus the auto-id prefix to abstract members the
subclass supplies.
This base lives in core and depends only on core props and interaction helpers; it must never depend on a theme package.
- Inheritance
-
- Object
- Component
- StatelessComponent
- FloatingRenderBase
Constructors
- FloatingRenderBase(FloatingProps props, {Key? key})
-
const
Properties
- arrowClass → String
-
Class for the floating arrow element.
no setter
- containerClass → String
-
Class for the stateful floating container (e.g.
'arcane-floating-container').no setter - cssTooltipClasses → String
-
Class string for the inner CSS-tooltip surface.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one component replaces another component in the tree.
finalinherited
- props → FloatingProps
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- triggerClass → String
-
Class for the CSS-only tooltip trigger wrapper (e.g.
'arcane-floating-trigger').no setter
Methods
-
arrowStyles(
Map< String, String> arrowPositionStyles) → Map<String, String> -
Full style map for the floating arrow.
arrowPositionStylesare the resolved arrow offsets and must be spread last to match each theme. -
build(
BuildContext context) → Component -
Describes the part of the user interface represented by this component.
override
-
createElement(
) → Element -
Creates a StatelessElement to manage this component's location in the tree.
inherited
-
cssTooltipStyles(
Map< String, String> positionStyles) → Map<String, String> -
Full style map for the inner CSS-tooltip surface.
positionStylesare the resolved position offsets and must be spread last to match each theme. -
decorationStyles(
ArcaneDecoration? decoration) → Map< String, String> - Per-instance decoration overrides. Default: none. A theme overrides this to translate an ArcaneDecoration (elevation intent, theme-specific fields) into its own CSS. Fields a theme does not implement are ignored.
-
floatingContentClasses(
bool hasRichContent) → String - Class string for the floating content surface, given whether it carries rich content (popover) versus plain text (tooltip).
-
floatingContentStyles(
{required String positionProp, required String positionValue, required Map< String, String> alignment, required bool hasRichContent, required double? maxWidth}) → Map<String, String> - Full style map for the floating content surface.
-
generateAutoId(
) → String - Generates a theme-prefixed auto id when no explicit id is supplied. Each subclass owns its static counter so the generated sequence is unchanged.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
shouldRebuild(
covariant Component newComponent) → bool -
Implement this method to determine whether a rebuild can be skipped.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited