Skip to content

Commit e048969

Browse files
committed
Added enabled attribute to FormBuilder to allow disabling the whole form
1 parent 9db2c5f commit e048969

26 files changed

+56
-42
lines changed

lib/src/fields/form_builder_checkbox.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ class FormBuilderCheckbox extends FormBuilderField<bool> {
112112
title: title,
113113
subtitle: subtitle,
114114
value: state.value,
115-
onChanged: enabled
115+
onChanged: state.enabled
116116
? (val) {
117117
state.requestFocus();
118118
state.didChange(val);

lib/src/fields/form_builder_checkbox_group.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ class FormBuilderCheckboxGroup<T> extends FormBuilderField<List<T>> {
8484
field.didChange(val);
8585
},
8686
disabled:
87-
enabled ? disabled : options.map((e) => e.value).toList(),
87+
state.enabled ? disabled : options.map((e) => e.value).toList(),
8888
activeColor: activeColor,
8989
focusColor: focusColor,
9090
checkColor: checkColor,

lib/src/fields/form_builder_chips_input.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ class FormBuilderChipsInput<T> extends FormBuilderField<List<T>> {
7272
return ChipsInput<T>(
7373
key: ObjectKey(state.value),
7474
initialValue: field.value,
75-
enabled: enabled,
75+
enabled: state.enabled,
7676
decoration: state.decoration(),
7777
findSuggestions: findSuggestions,
7878
onChanged: (data) {

lib/src/fields/form_builder_choice_chips.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,7 @@ class FormBuilderChoiceChip<T> extends FormBuilderField<T> {
306306
ChoiceChip(
307307
label: option,
308308
selected: field.value == option.value,
309-
onSelected: enabled
309+
onSelected: state.enabled
310310
? (selected) {
311311
final choice = selected ? option.value : null;
312312
state.requestFocus();

lib/src/fields/form_builder_color_picker.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ class FormBuilderColorPickerField extends FormBuilderField<Color> {
145145
},
146146
),
147147
),
148-
enabled: enabled,
148+
enabled: state.enabled,
149149
readOnly: readOnly,
150150
controller: state._effectiveController,
151151
focusNode: state.effectiveFocusNode,
@@ -209,7 +209,7 @@ class _FormBuilderColorPickerFieldState
209209
}
210210

211211
Future<void> _handleFocus() async {
212-
if (effectiveFocusNode.hasFocus && widget.enabled) {
212+
if (effectiveFocusNode.hasFocus && enabled) {
213213
await Future.microtask(
214214
() => FocusScope.of(context).requestFocus(FocusNode()));
215215
final selected = await showDialog<bool>(

lib/src/fields/form_builder_country_picker.dart

Lines changed: 0 additions & 1 deletion
This file was deleted.

lib/src/fields/form_builder_date_range_picker.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,9 +131,9 @@ class FormBuilderDateRangePicker extends FormBuilderField<List<DateTime>> {
131131
final state = field as FormBuilderDateRangePickerState;
132132

133133
return TextField(
134-
enabled: enabled,
134+
enabled: state.enabled,
135135
style: style,
136-
focusNode: enabled
136+
focusNode: state.enabled
137137
? state.effectiveFocusNode
138138
: AlwaysDisabledFocusNode(),
139139
decoration: state.decoration(),

lib/src/fields/form_builder_date_time_picker.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ class FormBuilderDateTimePicker extends FormBuilderField<DateTime> {
248248
autofocus: autofocus,
249249
decoration: state.decoration(),
250250
readOnly: true,
251-
enabled: enabled,
251+
enabled: state.enabled,
252252
autocorrect: autocorrect,
253253
controller: state._textFieldController,
254254
focusNode: state.effectiveFocusNode,

lib/src/fields/form_builder_dropdown.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,7 @@ class FormBuilderDropdown<T> extends FormBuilderField<T> {
266266
iconDisabledColor: iconDisabledColor,
267267
iconEnabledColor: iconEnabledColor,
268268
onChanged:
269-
enabled ? (value) => changeValue(value) : null,
269+
state.enabled ? (value) => changeValue(value) : null,
270270
onTap: onTap,
271271
focusNode: state.effectiveFocusNode,
272272
autofocus: autofocus,
@@ -277,7 +277,7 @@ class FormBuilderDropdown<T> extends FormBuilderField<T> {
277277
),
278278
),
279279
),
280-
if (allowClear && enabled && field.value != null) ...[
280+
if (allowClear && state.enabled && field.value != null) ...[
281281
const VerticalDivider(),
282282
InkWell(
283283
child: clearIcon,

lib/src/fields/form_builder_file_picker.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class FormBuilderFilePicker extends FormBuilderField<List<PlatformFile>> {
9191
Text('${state._files.length} / $maxFiles'),
9292
InkWell(
9393
child: selector,
94-
onTap: enabled &&
94+
onTap: state.enabled &&
9595
(null == state._remainingItemCount ||
9696
state._remainingItemCount > 0)
9797
? () => state.pickFiles(field)
@@ -237,7 +237,7 @@ class _FormBuilderFilePickerState
237237
width: double.infinity,
238238
color: Colors.white.withOpacity(.8),
239239
),
240-
if (widget.enabled)
240+
if (enabled)
241241
Positioned(
242242
top: 0,
243243
right: 0,

0 commit comments

Comments
 (0)