build method

  1. @override
Widget build(
  1. BuildContext context
)
override

Builds a dense TextField that writes parsed integers back to all owners.

Implementation

@override
Widget build(BuildContext context) {
  return TextField(
    controller: ted,
    decoration: InputDecoration(
      isDense: true
    ),
    onChanged: (value) {
      if (!readOnlyProperty) {
        int? integerValue = int.tryParse(value);

        if (integerValue != null) {
          for (var owner in widget.owners) {
            var property =
                owner.getProperty(widget.propertyName)
                    as InspectableProperty<int>?;
            if (property != null && property.setValue != null) {
              property.setValue!(owner, integerValue, null);
            }
          }
          if (widget.onUpdateProperty != null) {
            widget.onUpdateProperty!(integerValue);
          }
          if (mounted) {
            setState(() {});
          }
        }
      }
    },
  );
}