PieTheme class

Defines the behavior and the appearance of PieCanvas and PieMenu widgets.

Constructors

PieTheme({Brightness brightness = Brightness.light, Color? overlayColor, Color? pointerColor, Decoration? pointerDecoration, PieButtonTheme buttonTheme = const PieButtonTheme(backgroundColor: Colors.blue, iconColor: Colors.white), PieButtonTheme buttonThemeHovered = const PieButtonTheme(backgroundColor: Colors.green, iconColor: Colors.white), double? iconSize, double radius = 96, double spacing = 6, double? customAngleDiff, double angleOffset = 0, double? customAngle, PieAnchor customAngleAnchor = PieAnchor.center, double buttonSize = 56, double pointerSize = 40, EdgeInsets tooltipPadding = const EdgeInsets.all(32), TextStyle? tooltipTextStyle, TextAlign? tooltipTextAlign, Alignment? tooltipCanvasAlignment, bool tooltipUseFittedBox = false, Duration pieBounceDuration = const Duration(seconds: 1), bool childBounceEnabled = true, bool childTiltEnabled = true, Duration childBounceDuration = const Duration(milliseconds: 150), double childBounceFactor = 0.95, Curve childBounceCurve = Curves.easeOutCubic, Curve? childBounceReverseCurve = Curves.easeInCubic, Duration fadeDuration = const Duration(milliseconds: 250), Duration hoverDuration = const Duration(milliseconds: 250), Duration delayDuration = const Duration(milliseconds: 350), bool leftClickShowsMenu = true, bool rightClickShowsMenu = false, PieOverlayStyle overlayStyle = PieOverlayStyle.behind, double childOpacityOnButtonHover = 0.5})
Creates a PieTheme to configure PieMenus.
const

Properties

angleOffset double
Angle offset in degrees for the actions.
final
brightness Brightness
How the background and tooltip widgets should be displayed if they are not specified explicitly.
final
buttonSize double
Size of PieButton circle.
final
buttonTheme PieButtonTheme
Theme of PieButton.
final
buttonThemeHovered PieButtonTheme
Theme of PieButton when it is hovered.
final
childBounceCurve Curve
Curve for the menu child bounce animation.
final
childBounceDuration Duration
Duration of menu child bounce animation.
final
childBounceEnabled bool
Whether to bounce the PieMenu child on press.
final
childBounceFactor double
Distance of menu child bounce animation.
final
childBounceReverseCurve Curve?
Reverse curve for the menu child bounce animation.
final
childOpacityOnButtonHover double
Opacity of the menu child when a button is hovered.
final
childTiltEnabled bool
Whether to tilt the PieMenu child on press.
final
customAngle double?
Display the menu actions in a specific angle in degrees.
final
customAngleAnchor PieAnchor
Action display alignment for the specified customAngle.
final
customAngleDiff double?
Angle difference between the PieButtons in degrees.
final
delayDuration Duration
Long press duration for PieMenu to display.
final
effectiveOverlayColor Color
no setter
fadeDuration Duration
Duration of PieMenu fade animation.
final
hashCode int
The hash code for this object.
no setterinherited
hoverDisplacement double
Displacement distance of PieButtons when hovered.
no setter
hoverDuration Duration
Duration of PieButton hover animation.
final
iconSize double?
Size of the icon to be displayed on the PieButton.
final
leftClickShowsMenu bool
Whether to display the menu on left mouse click.
final
overlayColor Color?
Preferably a translucent color for PieCanvas to display under the menu child, and on top of the other widgets.
final
overlayStyle PieOverlayStyle
Decides how to display the translucent canvas overlay.
final
pieBounceDuration Duration
Duration of PieButton bounce animation.
final
pointerColor Color?
Custom color for the widget displayed in the center of PieMenu.
final
pointerDecoration Decoration?
Decoration for the widget displayed in the center of PieMenu.
final
pointerSize double
Size of the widget displayed in the center of PieMenu.
final
radius double
Distance between the PieButton and the center of PieMenu.
final
rightClickShowsMenu bool
Whether to display the menu on right mouse click.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
spacing double
Spacing between the PieButtons.
final
tooltipCanvasAlignment Alignment?
Alignment of the tooltip in the PieCanvas.
final
tooltipPadding EdgeInsets
Padding value of the tooltip at the edges of PieCanvas.
final
tooltipTextAlign TextAlign?
Text alignment of the tooltip widget.
final
tooltipTextStyle TextStyle?
Default text style for the tooltip widget.
final
tooltipUseFittedBox bool
Whether to wrap the tooltip with FittedBox widget.
final

Methods

copyWith({Brightness? brightness, Color? overlayColor, Color? pointerColor, Decoration? pointerDecoration, PieButtonTheme? buttonTheme, PieButtonTheme? buttonThemeHovered, double? iconSize, double? radius, double? spacing, double? customAngleDiff, double? angleOffset, double? customAngle, PieAnchor? customAngleAnchor, double? buttonSize, double? pointerSize, EdgeInsets? tooltipPadding, TextStyle? tooltipTextStyle, TextAlign? tooltipTextAlign, Alignment? tooltipCanvasAlignment, bool? tooltipUseFittedBox, Duration? pieBounceDuration, bool? childBounceEnabled, bool? childTiltEnabled, Duration? childBounceDuration, double? childBounceDistance, Curve? childBounceCurve, Curve? childBounceReverseCurve, Duration? fadeDuration, Duration? hoverDuration, Duration? delayDuration, bool? leftClickShowsMenu, bool? rightClickShowsMenu, PieOverlayStyle? overlayStyle, double? childOpacityOnButtonHover}) PieTheme
Creates a copy of this theme but with the given fields replaced with the new values.
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

Static Methods

of(BuildContext context) PieTheme
Returns the PieTheme defined in the closest PieCanvas instance that encloses the given context.