execute method
Implementation
@override
Future<bool?> execute(
String caller, String propertyOrFunction, List<dynamic> arguments) async {
/// setter
if (scope == null) return null;
var function = propertyOrFunction.toLowerCase().trim();
switch (function) {
case "pageto":
case "page":
var view = findListenerOfExactType(PagerViewState);
if (view is PagerViewState) {
dynamic page;
String transition = this.transition;
// page
if (arguments.isNotEmpty) {
page = arguments[0];
}
// transition
if (arguments.length > 1) {
transition = toStr(arguments[1]) ?? this.transition;
}
// go to page
view.pageTo(page, transition);
}
break;
case "jumpto":
case "jump":
var view = findListenerOfExactType(PagerViewState);
if (view is PagerViewState) {
dynamic page;
String transition = "jump";
// page
if (arguments.isNotEmpty) {
page = arguments[0];
}
view.pageTo(page, transition);
}
break;
case "slideto":
case "slide":
var view = findListenerOfExactType(PagerViewState);
if (view is PagerViewState) {
dynamic page;
String transition = "slide";
// page
if (arguments.isNotEmpty) {
page = arguments[0];
}
view.pageTo(page, transition);
}
break;
}
return super.execute(caller, propertyOrFunction, arguments);
}