MathFormField constructor
MathFormField({
- Key? key,
- MathFieldEditingController? controller,
- FocusNode? focusNode,
- InputDecoration decoration = const InputDecoration(),
- MathKeyboardType keyboardType = MathKeyboardType.expression,
- List<
String> variables = const [], - bool autofocus = false,
- ValueChanged<
String> ? onChanged, - ValueChanged<
String> ? onFieldSubmitted, - AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
- FormFieldValidator<
String> ? validator,
Implementation
MathFormField({
Key? key,
this.controller,
FocusNode? focusNode,
InputDecoration decoration = const InputDecoration(),
MathKeyboardType keyboardType = MathKeyboardType.expression,
List<String> variables = const [],
bool autofocus = false,
ValueChanged<String>? onChanged,
ValueChanged<String>? onFieldSubmitted,
AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
FormFieldValidator<String>? validator,
}) : super(
key: key,
initialValue:
controller != null ? controller.currentEditingValue() : '',
validator: validator,
autovalidateMode: autovalidateMode,
builder: (FormFieldState<String> field) {
final state = field as _MathFormFieldState;
void onChangedHandler(String value) {
field.didChange(value);
if (onChanged != null) {
onChanged(value);
}
}
return MathField(
controller: state._controller,
focusNode: focusNode,
decoration: decoration.copyWith(errorText: field.errorText),
keyboardType: keyboardType,
variables: variables,
autofocus: autofocus,
onChanged: onChangedHandler,
onSubmitted: onFieldSubmitted,
);
},
);