AwesomeMessage<T extends Object> class

A highly customizable widget so you can notify your user when you fell like he needs a beautiful explanation.

Inheritance

Constructors

AwesomeMessage({Key? key, String? title, String? message, Widget? titleText, Widget? messageText, Widget? icon, bool? shouldIconPulse = true, double? maxWidth, EdgeInsets margin = const EdgeInsets.all(0.0), EdgeInsets padding = const EdgeInsets.all(16), double borderRadius = 0.0, Color? borderColor, double borderWidth = 1.0, Color backgroundColor = const Color(0xFF303030), Color? leftBarIndicatorColor, List<BoxShadow>? boxShadows, Gradient? backgroundGradient, TextButton? mainButton, OnTap? onTap, Duration? duration, bool isDismissible = true, AwesomeMessageDismissDirection dismissDirection = AwesomeMessageDismissDirection.VERTICAL, bool showProgressIndicator = false, AnimationController? progressIndicatorController, Color? progressIndicatorBackgroundColor, Animation<Color>? progressIndicatorValueColor, AwesomeMessagePosition awesomeMessagePosition = AwesomeMessagePosition.BOTTOM, AwesomeMessageStyle awesomeMessageStyle = AwesomeMessageStyle.FLOATING, Curve forwardAnimationCurve = Curves.easeOutCirc, Curve reverseAnimationCurve = Curves.easeOutCirc, Duration animationDuration = const Duration(seconds: 1), AwesomeMessageStatusCallback? onStatusChanged, double barBlur = 0.0, double overlayBlur = 0.0, Color overlayColor = Colors.transparent, Form? userInputForm})

Properties

animationDuration Duration?
Use it to speed up or slow down the animation duration
final
awesomeMessagePosition AwesomeMessagePosition
AwesomeMessage can be based on AwesomeMessagePosition.TOP or on AwesomeMessagePosition.BOTTOM of your screen. AwesomeMessagePosition.BOTTOM is the default.
final
awesomeMessageStyle AwesomeMessageStyle
AwesomeMessage can be floating or be grounded to the edge of the screen. If grounded, I do not recommend using margin or borderRadius. AwesomeMessageStyle.FLOATING is the default If grounded, I do not recommend using a backgroundColor with transparency or barBlur
final
backgroundColor Color?
Will be ignored if backgroundGradient is not null
final
backgroundGradient Gradient?
Makes backgroundColor be ignored.
final
barBlur double?
Default is 0.0. If different than 0.0, blurs only AwesomeMessage's background. To take effect, make sure your backgroundColor has some opacity. The greater the value, the greater the blur.
final
borderColor Color?
Adds a border to every side of AwesomeMessage I do not recommend using it with showProgressIndicator or leftBarIndicatorColor.
final
borderRadius double?
Adds a radius to all corners of AwesomeMessage. Best combined with margin. I do not recommend using it with showProgressIndicator or leftBarIndicatorColor.
final
borderWidth double?
Changes the width of the border if borderColor is specified
final
boxShadows List<BoxShadow>?
boxShadows The shadows generated by AwesomeMessage. Leave it null if you don't want a shadow. You can use more than one if you feel the need. Check (this example)https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/material/shadows.dart
final
dismissDirection AwesomeMessageDismissDirection
AwesomeMessageDismissDirection.VERTICAL by default. Can also be AwesomeMessageDismissDirection.HORIZONTAL in which case both left and right dismiss are allowed.
final
duration Duration?
How long until AwesomeMessage will hide itself (be dismissed). To make it indefinite, leave it null.
final
forwardAnimationCurve Curve?
The Curve animation used when show() is called. Curves.easeOut is default
final
hashCode int
The hash code for this object.
no setterinherited
icon Widget?
You can use any widget here, but I recommend Icon or Image as indication of what kind of message you are displaying. Other widgets may break the layout
final
isDismissible bool?
Determines if the user can swipe or click the overlay (if overlayBlur > 0) to dismiss. It is recommended that you set duration != null if this is false. If the user swipes to dismiss or clicks the overlay, no value will be returned.
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
leftBarIndicatorColor Color?
If not null, shows a left vertical bar to better indicate the humor of the notification. It is not possible to use it with a Form and I do not recommend using it with LinearProgressIndicator
final
mainButton TextButton?
A TextButton widget if you need an action from the user.
final
margin EdgeInsets?
Adds a custom margin to AwesomeMessage
final
maxWidth double?
Used to limit AwesomeMessage width (usually on large screens)
final
message String?
The message displayed to the user.
final
messageText Widget?
Replaces message. Although this accepts a Widget, it is meant to receive Text or RichText
final
onStatusChanged AwesomeMessageStatusCallback?
A callback for you to listen to the different AwesomeMessage status
getter/setter pair
onTap OnTap?
A callback that registers the user's click anywhere. An alternative to mainButton
final
overlayBlur double?
Default is 0.0. If different than 0.0, creates a blurred overlay that prevents the user from interacting with the screen. The greater the value, the greater the blur.
final
overlayColor Color?
Default is Colors.transparent. Only takes effect if overlayBlur > 0.0. Make sure you use a color with transparency here e.g. Colors.grey600.withOpacity(0.2).
final
padding EdgeInsets?
Adds a custom padding to AwesomeMessage The default follows material design guide line
final
progressIndicatorBackgroundColor Color?
A LinearProgressIndicator configuration parameter.
final
progressIndicatorController AnimationController?
An optional AnimationController when you want to control the progress of your LinearProgressIndicator.
final
progressIndicatorValueColor Animation<Color>?
A LinearProgressIndicator configuration parameter.
final
reverseAnimationCurve Curve?
The Curve animation used when dismiss() is called. Curves.fastOutSlowIn is default
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shouldIconPulse bool?
An option to animate the icon (if present). Defaults to true.
final
showProgressIndicator bool
True if you want to show a LinearProgressIndicator.
final
title String?
The title displayed to the user
final
titleText Widget?
Replaces title. Although this accepts a Widget, it is meant to receive Text or RichText
final
userInputForm Form?
A TextFormField in case you want a simple user input. Every other widget is ignored if this is not null.
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<StatefulWidget>
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
dismiss([T? result]) Future<T?>
Dismisses the AwesomeMessage causing is to return a future containing result. When this future finishes, it is guaranteed that AwesomeMessage was dismissed.
isDismissed() bool
Checks if the AwesomeMessage is dismissed
isShowing() bool
Checks if the AwesomeMessage is visible
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}) 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