CLIconButton class

Bottone pieno solo-icona, quadrato. Stesse micro-interazioni di CLButton (press scale/offset, hover blend, haptic, spinner). Pensato per azioni compatte in header/toolbar — es. il pulsante AI in header — dove serve un'icona prominente senza label. Supporta ombra e bordo opzionali.

Inheritance
Available extensions

Constructors

CLIconButton({Key? key, required dynamic onTap(), IconData? iconData, Widget? hugeIcon, Color? backgroundColor, Color? iconColor, double? size, double? iconSize, List<BoxShadow>? boxShadow, BoxBorder? border, double? borderRadius, String? tooltip, bool enabled = true, bool? loading, String? semanticLabel, bool haptic = true})
const

Properties

backgroundColor Color?
Colore di sfondo. Se null usa theme.muted (default neutro: fill grigio, icona nera auto-contrast, tondo). Per un bottone primario passa theme.primary.
final
border BoxBorder?
Bordo opzionale. Se null nessun bordo (focus ring a parte).
final
borderRadius double?
Override del raggio di angolo. Se null default 999 (cerchio/pill): i bottoni icona isolati di chrome sono tondi per design (DS: quadrati→cerchio).
final
boxShadow List<BoxShadow>?
Ombra opzionale. Se null nessuna ombra.
final
enabled bool
Se false, disabilita input e applica opacità ridotta.
final
haptic bool
Se true (default), emette un HapticFeedback.selectionClick() al press (iOS/Android).
final
hashCode int
The hash code for this object.
no setterinherited
hugeIcon Widget?
Widget icona custom (es. HugeIcon). Se presente vince su iconData.
final
iconColor Color?
Colore icona. Se null auto-contrast sul background (nero/bianco).
final
iconData IconData?
Icona Material. Ignorata se hugeIcon è presente.
final
iconSize double?
Dimensione icona. Se null usa size * 0.5.
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
loading bool?
Override esterno dello stato di loading. Se null, usa lo stato interno del mixin async.
final
onTap → dynamic Function()
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
semanticLabel String?
Label semantica per screen reader.
final
size double?
Lato del quadrato. Se null usa theme.buttonHeightDefault (40).
final
tooltip String?
Tooltip mostrato al hover/long-press.
final

Methods

animateOnActionTrigger(AnimationInfo animationInfo, {bool hasBeenTriggered = false}) Widget

Available on Widget, provided by the AnimatedWidgetExtension extension

animateOnPageLoad(AnimationInfo animationInfo) Widget

Available on Widget, provided by the AnimatedWidgetExtension extension

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<CLIconButton>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

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