TxWrapFormField<T> constructor

TxWrapFormField<T>({
  1. required WrapWidgetBuilder<T> itemBuilder,
  2. required int itemCount,
  3. T? initialValue,
  4. FormFieldSetter<T>? onSaved,
  5. FormFieldValidator<T>? validator,
  6. AutovalidateMode? autovalidateMode = AutovalidateMode.onUserInteraction,
  7. String? restorationId,
  8. ValueChanged<T?>? onChanged,
  9. InputDecoration? decoration,
  10. FocusNode? focusNode,
  11. bool? enabled,
  12. bool? required,
  13. bool? bordered,
  14. double? spacing,
  15. double? runSpacing,
  16. WrapAlignment? alignment,
  17. WrapAlignment? runAlignment,
  18. WrapCrossAlignment? crossAxisAlignment,
  19. Key? key,
  20. Widget? label,
  21. String? labelText,
  22. TextAlign? labelTextAlign,
  23. TextOverflow? labelOverflow,
  24. EdgeInsetsGeometry? padding,
  25. FieldActionsBuilder<T>? actionsBuilder,
  26. TextStyle? labelStyle,
  27. double? horizontalGap,
  28. Color? tileColor,
  29. Axis? layoutDirection,
  30. TxFormFieldBuilder<T>? trailingBuilder,
  31. Widget? leading,
  32. VisualDensity? visualDensity,
  33. ShapeBorder? shape,
  34. Color? iconColor,
  35. Color? textColor,
  36. TextStyle? leadingAndTrailingTextStyle,
  37. GestureTapCallback? onTap,
  38. double? minLeadingWidth,
  39. double? minLabelWidth,
  40. double? minVerticalPadding,
  41. bool? dense,
  42. bool? colon,
  43. Color? focusColor,
})

Implementation

TxWrapFormField({
  required WrapWidgetBuilder<T> itemBuilder,
  required int itemCount,
  super.initialValue,
  super.onSaved,
  super.validator,
  super.autovalidateMode = AutovalidateMode.onUserInteraction,
  super.restorationId,
  super.onChanged,
  super.decoration,
  super.focusNode,
  super.enabled,
  super.required,
  super.bordered,
  double? spacing,
  double? runSpacing,
  WrapAlignment? alignment,
  WrapAlignment? runAlignment,
  WrapCrossAlignment? crossAxisAlignment,
  super.key,
  super.label,
  super.labelText,
  super.labelTextAlign,
  super.labelOverflow,
  super.padding,
  super.actionsBuilder,
  super.labelStyle,
  super.horizontalGap,
  super.tileColor,
  super.layoutDirection,
  super.trailingBuilder,
  super.leading,
  super.visualDensity,
  super.shape,
  super.iconColor,
  super.textColor,
  super.leadingAndTrailingTextStyle,
  super.onTap,
  super.minLeadingWidth,
  super.minLabelWidth,
  super.minVerticalPadding,
  super.dense,
  super.colon,
  super.focusColor,
}) : super.decorated(
        textAlign: alignment == WrapAlignment.center
            ? TextAlign.center
            : alignment == WrapAlignment.end
                ? TextAlign.right
                : alignment == WrapAlignment.start || alignment == null
                    ? TextAlign.left
                    : TextAlign.justify,
        builder: (field) => Wrap(
          spacing: spacing ?? 0.0,
          runSpacing: spacing ?? 0.0,
          alignment: alignment ?? WrapAlignment.start,
          runAlignment: runAlignment ?? WrapAlignment.start,
          crossAxisAlignment: crossAxisAlignment ?? WrapCrossAlignment.start,
          children: List.generate(
            itemCount,
            (index) => itemBuilder(
              field,
              index,
              field.value,
              field.didChange,
            ),
          ),
        ),
      );