EasyPageTransition<T> constructor
EasyPageTransition<T> ({
- Key? key,
- required Widget child,
- required EasyTransitionType type,
- Widget? childCurrent,
- BuildContext? ctx,
- bool inheritTheme = false,
- Curve curve = Curves.linear,
- Alignment? alignment = Alignment.center,
- Duration duration = const Duration(milliseconds: 300),
- Duration reverseDuration = const Duration(milliseconds: 300),
- RouteSettings? settings,
Implementation
EasyPageTransition({
Key? key,
required this.child,
required this.type,
this.childCurrent,
this.ctx,
this.inheritTheme = false,
this.curve = Curves.linear,
this.alignment = Alignment.center,
this.duration = const Duration(milliseconds: 300),
this.reverseDuration = const Duration(milliseconds: 300),
RouteSettings? settings,
}) : super(
pageBuilder: (context, animation, secondaryAnimation) {
return inheritTheme
? InheritedTheme.captureAll(
ctx!,
child,
)
: child;
},
transitionDuration: settings != null &&
(settings.arguments is Map) &&
(settings.arguments as Map)['etduration'] != null
? (settings.arguments as Map)['etduration']
: duration,
reverseTransitionDuration: reverseDuration,
settings: settings,
maintainState: true,
transitionsBuilder:
(context, animation, secondaryAnimation, child) =>
PageTransition(
child: child,
childCurrent: childCurrent,
alignment: alignment,
ctx: ctx,
curve: curve,
duration: duration,
inheritTheme: inheritTheme,
key: key,
reverseDuration: reverseDuration,
settings: settings,
type: changeTransitionType(type))
.transitionsBuilder(
context, animation, secondaryAnimation, child));