From 6ace7ced7bb0629f77c46c2dd0ec00a586c7b4c4 Mon Sep 17 00:00:00 2001 From: Gaurav Kumar Date: Sat, 20 Sep 2025 11:18:30 +0530 Subject: [PATCH] switch --- .../lib/BuilderField/shared/fields/checkbox_field.dart | 4 ++++ .../BuilderField/shared/fields/dependent_dropdown_field.dart | 2 ++ .../lib/BuilderField/shared/fields/switch_field.dart | 5 +++++ base_project/lib/BuilderField/shared/ui/entity_form.dart | 1 + .../lib/shared/widgets/inputs/modern_text_field.dart | 4 +++- 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/base_project/lib/BuilderField/shared/fields/checkbox_field.dart b/base_project/lib/BuilderField/shared/fields/checkbox_field.dart index 410698e..1cface4 100644 --- a/base_project/lib/BuilderField/shared/fields/checkbox_field.dart +++ b/base_project/lib/BuilderField/shared/fields/checkbox_field.dart @@ -28,6 +28,10 @@ class CheckboxField extends BaseField { required ColorScheme colorScheme, VoidCallback? onChanged, }) { + // Set default value to false if controller is empty + if (controller.text.isEmpty) { + controller.text = 'false'; + } final bool checked = controller.text.toLowerCase() == 'true'; return Row( children: [ diff --git a/base_project/lib/BuilderField/shared/fields/dependent_dropdown_field.dart b/base_project/lib/BuilderField/shared/fields/dependent_dropdown_field.dart index 944f680..0c7a69b 100644 --- a/base_project/lib/BuilderField/shared/fields/dependent_dropdown_field.dart +++ b/base_project/lib/BuilderField/shared/fields/dependent_dropdown_field.dart @@ -1,3 +1,5 @@ +// working code + import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'base_field.dart'; diff --git a/base_project/lib/BuilderField/shared/fields/switch_field.dart b/base_project/lib/BuilderField/shared/fields/switch_field.dart index 86f40bf..7f4ffd1 100644 --- a/base_project/lib/BuilderField/shared/fields/switch_field.dart +++ b/base_project/lib/BuilderField/shared/fields/switch_field.dart @@ -24,6 +24,11 @@ class SwitchField extends BaseField { required ColorScheme colorScheme, VoidCallback? onChanged, }) { + // Set default value to true if controller is empty + if (controller.text.isEmpty) { + controller.text = 'true'; + } + final bool current = (controller.text.toLowerCase() == 'true'); return Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, diff --git a/base_project/lib/BuilderField/shared/ui/entity_form.dart b/base_project/lib/BuilderField/shared/ui/entity_form.dart index 3c34427..cde25e6 100644 --- a/base_project/lib/BuilderField/shared/ui/entity_form.dart +++ b/base_project/lib/BuilderField/shared/ui/entity_form.dart @@ -383,6 +383,7 @@ // } // } // } + import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../../../core/providers/dynamic_theme_provider.dart'; diff --git a/base_project/lib/shared/widgets/inputs/modern_text_field.dart b/base_project/lib/shared/widgets/inputs/modern_text_field.dart index 006856d..a568e8e 100644 --- a/base_project/lib/shared/widgets/inputs/modern_text_field.dart +++ b/base_project/lib/shared/widgets/inputs/modern_text_field.dart @@ -185,7 +185,9 @@ class _ModernTextFieldState extends State controller: widget.controller, focusNode: widget.focusNode, keyboardType: widget.keyboardType, - obscureText: _obscureText, + obscureText: widget.suffixIcon != null + ? widget.obscureText + : _obscureText, enabled: widget.enabled, readOnly: widget.readOnly, maxLines: widget.maxLines,