ButtonTheme class abstract

Abstract base class for button theme customization.

ButtonTheme provides optional style property delegates that can override or modify the default button styling. Subclasses implement specific button variants (primary, secondary, outline, etc.) allowing theme-level customization of button appearances throughout an application.

Each property is a ButtonStatePropertyDelegate that receives the context, current states, and the default value, allowing for context-aware and state-dependent style modifications.

Implementations include PrimaryButtonTheme, SecondaryButtonTheme, OutlineButtonTheme, and others for each button variant.

Inheritance
Implementers

Properties

decoration ButtonStatePropertyDelegate<Decoration>?
Optional decoration override (background, border, shadows).
final
hashCode int
The hash code for this object.
no setteroverride
iconTheme ButtonStatePropertyDelegate<IconThemeData>?
Optional icon theme override.
final
margin ButtonStatePropertyDelegate<EdgeInsetsGeometry>?
Optional margin override.
final
mouseCursor ButtonStatePropertyDelegate<MouseCursor>?
Optional mouse cursor override.
final
padding ButtonStatePropertyDelegate<EdgeInsetsGeometry>?
Optional padding override.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
textStyle ButtonStatePropertyDelegate<TextStyle>?
Optional text style override.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

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