diff --git a/package/lib/src/controls/card.dart b/package/lib/src/controls/card.dart index 521cee97b..1a69667a8 100644 --- a/package/lib/src/controls/card.dart +++ b/package/lib/src/controls/card.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import '../models/control.dart'; +import '../utils/colors.dart'; import '../utils/edge_insets.dart'; import 'create_control.dart'; @@ -31,6 +32,12 @@ class CardControl extends StatelessWidget { Card( elevation: control.attrDouble("elevation"), margin: parseEdgeInsets(control, "margin"), + color: HexColor.fromString( + Theme.of(context), control.attrString("color", "")!), + shadowColor: HexColor.fromString( + Theme.of(context), control.attrString("shadowColor", "")!), + surfaceTintColor: HexColor.fromString( + Theme.of(context), control.attrString("surfaceTintColor", "")!), child: contentCtrls.isNotEmpty ? createControl(control, contentCtrls.first.id, disabled) : null), diff --git a/sdk/python/packages/flet-core/src/flet_core/card.py b/sdk/python/packages/flet-core/src/flet_core/card.py index 540b76047..0b157533c 100644 --- a/sdk/python/packages/flet-core/src/flet_core/card.py +++ b/sdk/python/packages/flet-core/src/flet_core/card.py @@ -89,6 +89,9 @@ def __init__( # margin: MarginValue = None, elevation: OptionalNumber = None, + color: Optional[str] = None, + shadow_color: Optional[str] = None, + surface_tint_color: Optional[str] = None, ): ConstrainedControl.__init__( self, @@ -122,6 +125,9 @@ def __init__( self.content = content self.margin = margin self.elevation = elevation + self.color = color + self.shadow_color = shadow_color + self.surface_tint_color = surface_tint_color def _get_control_name(self): return "card" @@ -155,6 +161,33 @@ def elevation(self) -> OptionalNumber: def elevation(self, value: OptionalNumber): self._set_attr("elevation", value) + # color + @property + def color(self): + return self._get_attr("color") + + @color.setter + def color(self, value): + self._set_attr("color", value) + + # shadow_color + @property + def shadow_color(self): + return self._get_attr("shadowColor") + + @shadow_color.setter + def shadow_color(self, value): + self._set_attr("shadowColor", value) + + # surface_tint_color + @property + def surface_tint_color(self): + return self._get_attr("surfaceTintColor") + + @surface_tint_color.setter + def surface_tint_color(self, value): + self._set_attr("surfaceTintColor", value) + # content @property def content(self) -> Optional[Control]: