call method
Implementation
@override
Object? call(Interpreter interpreter, List<Object?> arguments,
Map<Symbol, Object?> namedArguments) {
var child = namedArguments[const Symbol('child')];
if (child == null) {
throw "child required in TextButton";
}
void Function()? onPressed;
var onPressedParsed = namedArguments[const Symbol('onPressed')];
if (onPressedParsed != null) {
onPressed = () {
(onPressedParsed as LoxFunction).call(interpreter, [], {});
};
}
Function()? onLongPress;
var onLongPressParsed = namedArguments[const Symbol('onLongPress')];
if (onLongPressParsed != null) {
onLongPress = () {
(onLongPressParsed as LoxFunction).call(interpreter, [], {});
};
}
ButtonStyle? style;
var styleParsed = namedArguments[const Symbol('style')];
if (styleParsed != null) {
style = styleParsed as ButtonStyle;
}
bool autofocus = false;
var autofocusParsed = namedArguments[const Symbol('autofocus')];
if (autofocusParsed != null) {
autofocus = autofocusParsed as bool;
}
return TextButton(
style: style,
autofocus: autofocus,
onLongPress: onLongPress,
onPressed: onPressed,
child: child as Widget,
);
}