add disabled state to ButtonContentWidget, When disabled, the entire button becomes opaque

This commit is contained in:
hannathkadher
2025-02-04 13:29:09 +04:00
parent 5dee6c2842
commit 09e2564183

View File

@ -6,16 +6,23 @@ class ButtonContentWidget extends StatelessWidget {
final IconData? icon; final IconData? icon;
final String label; final String label;
final String? svgAssets; final String? svgAssets;
final bool disabled;
const ButtonContentWidget( const ButtonContentWidget({
{Key? key, this.icon, required this.label, this.svgAssets}) Key? key,
: super(key: key); this.icon,
required this.label,
this.svgAssets,
this.disabled = false,
}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final screenWidth = MediaQuery.of(context).size.width; final screenWidth = MediaQuery.of(context).size.width;
return SizedBox( return Opacity(
opacity: disabled ? 0.5 : 1.0,
child: SizedBox(
width: screenWidth * 0.25, width: screenWidth * 0.25,
child: Container( child: Container(
decoration: BoxDecoration( decoration: BoxDecoration(
@ -27,7 +34,8 @@ class ButtonContentWidget extends StatelessWidget {
borderRadius: BorderRadius.circular(20), borderRadius: BorderRadius.circular(20),
), ),
child: Padding( child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0, horizontal: 16.0), padding:
const EdgeInsets.symmetric(vertical: 10.0, horizontal: 16.0),
child: Row( child: Row(
children: [ children: [
if (icon != null) if (icon != null)
@ -58,6 +66,7 @@ class ButtonContentWidget extends StatelessWidget {
), ),
), ),
), ),
),
); );
} }
} }