@@ -2,17 +2,17 @@ import 'package:flutter/material.dart';
2
2
import 'package:flutter/widgets.dart' ;
3
3
import 'package:flutter_form_builder/flutter_form_builder.dart' ;
4
4
5
- class FormBuilderDropdown extends StatefulWidget {
5
+ class FormBuilderDropdown < T > extends StatefulWidget {
6
6
final String attribute;
7
- final List <FormFieldValidator > validators;
8
- final dynamic initialValue;
7
+ final List <FormFieldValidator < T > > validators;
8
+ final T initialValue;
9
9
final bool readOnly;
10
10
final InputDecoration decoration;
11
11
final ValueChanged onChanged;
12
12
final ValueTransformer valueTransformer;
13
13
14
14
final Widget hint;
15
- final List <DropdownMenuItem > items;
15
+ final List <DropdownMenuItem < T > > items;
16
16
final bool isExpanded;
17
17
final TextStyle style;
18
18
final bool isDense;
@@ -25,7 +25,7 @@ class FormBuilderDropdown extends StatefulWidget {
25
25
final Color iconEnabledColor;
26
26
final bool allowClear;
27
27
final Widget clearIcon;
28
- final FormFieldSetter onSaved;
28
+ final FormFieldSetter < T > onSaved;
29
29
final double itemHeight;
30
30
final Color focusColor;
31
31
final Color dropdownColor;
@@ -68,14 +68,14 @@ class FormBuilderDropdown extends StatefulWidget {
68
68
}) : super (key: key) /*: assert(allowClear == true || clearIcon != null)*/ ;
69
69
70
70
@override
71
- _FormBuilderDropdownState createState () => _FormBuilderDropdownState ();
71
+ _FormBuilderDropdownState < T > createState () => _FormBuilderDropdownState ();
72
72
}
73
73
74
- class _FormBuilderDropdownState extends State <FormBuilderDropdown > {
74
+ class _FormBuilderDropdownState < T > extends State <FormBuilderDropdown < T > > {
75
75
bool _readOnly = false ;
76
76
final GlobalKey <FormFieldState > _fieldKey = GlobalKey <FormFieldState >();
77
77
FormBuilderState _formState;
78
- dynamic _initialValue;
78
+ T _initialValue;
79
79
80
80
@override
81
81
void initState () {
@@ -116,7 +116,7 @@ class _FormBuilderDropdownState extends State<FormBuilderDropdown> {
116
116
widget.onSaved (transformed ?? val);
117
117
}
118
118
},
119
- builder: (FormFieldState <dynamic > field) {
119
+ builder: (FormFieldState <T > field) {
120
120
return InputDecorator (
121
121
decoration: widget.decoration.copyWith (
122
122
errorText: field.errorText,
@@ -127,7 +127,7 @@ class _FormBuilderDropdownState extends State<FormBuilderDropdown> {
127
127
mainAxisAlignment: MainAxisAlignment .start,
128
128
children: < Widget > [
129
129
Expanded (
130
- child: DropdownButton (
130
+ child: DropdownButton < T > (
131
131
isExpanded: widget.isExpanded,
132
132
hint: widget.hint,
133
133
items: widget.items,
0 commit comments