show static method
void
show(})
Implementation
static void show(
BuildContext context,
String message, {
String? title,
IconData? icon,
Duration? duration,
Alignment? alignment,
Color? color,
TVariant? type,
}) {
final theme = context.theme;
final mColor = color ?? theme.primary;
final wTheme = context.getWidgetTheme(type ?? theme.toastType, mColor);
final isMobile = context.isMobile;
toastification.showCustom(
context: context,
autoCloseDuration: duration ?? const Duration(seconds: 3),
alignment: alignment ?? (isMobile ? Alignment.topCenter : Alignment.topRight),
direction: TextDirection.ltr,
animationDuration: const Duration(milliseconds: 300),
animationBuilder: (context, animation, alignment, child) {
return FadeTransition(opacity: animation, child: child);
},
builder: (context, holder) {
return Container(
margin: isMobile ? null : const EdgeInsets.fromLTRB(5, 5, 35, 2),
padding: EdgeInsets.symmetric(horizontal: 12, vertical: title != null ? 6 : 10),
decoration: BoxDecoration(
color: wTheme.container, borderRadius: BorderRadius.circular(8), border: wTheme.boxBorder, boxShadow: wTheme.boxShadow),
child: MouseRegion(
onEnter: (_) => holder.pause(),
onExit: (_) => holder.start(),
child: Row(
children: [
if (icon != null) Icon(icon, color: wTheme.onContainer, size: 20),
const SizedBox(width: 10),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
if (title != null)
Text(title, style: TextStyle(color: wTheme.onContainer, fontWeight: FontWeight.w400, fontSize: 14)),
Text(message, style: TextStyle(color: wTheme.onContainer, fontWeight: FontWeight.w300, fontSize: 13)),
],
),
),
TButton(
type: TButtonType.text,
size: TButtonSize.xxs,
icon: Icons.close_rounded,
color: color,
onPressed: (_) {
toastification.dismissById(holder.id);
},
),
],
),
),
);
},
);
}