Skip to content

Commit e63290d

Browse files
New Card props: color, shadow_color, surface_tint_color (#1078)
Close #973
1 parent bfce325 commit e63290d

File tree

2 files changed

+40
-0
lines changed
  • package/lib/src/controls
  • sdk/python/packages/flet-core/src/flet_core

2 files changed

+40
-0
lines changed

package/lib/src/controls/card.dart

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import 'package:flutter/material.dart';
22

33
import '../models/control.dart';
4+
import '../utils/colors.dart';
45
import '../utils/edge_insets.dart';
56
import 'create_control.dart';
67

@@ -31,6 +32,12 @@ class CardControl extends StatelessWidget {
3132
Card(
3233
elevation: control.attrDouble("elevation"),
3334
margin: parseEdgeInsets(control, "margin"),
35+
color: HexColor.fromString(
36+
Theme.of(context), control.attrString("color", "")!),
37+
shadowColor: HexColor.fromString(
38+
Theme.of(context), control.attrString("shadowColor", "")!),
39+
surfaceTintColor: HexColor.fromString(
40+
Theme.of(context), control.attrString("surfaceTintColor", "")!),
3441
child: contentCtrls.isNotEmpty
3542
? createControl(control, contentCtrls.first.id, disabled)
3643
: null),

sdk/python/packages/flet-core/src/flet_core/card.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,9 @@ def __init__(
8989
#
9090
margin: MarginValue = None,
9191
elevation: OptionalNumber = None,
92+
color: Optional[str] = None,
93+
shadow_color: Optional[str] = None,
94+
surface_tint_color: Optional[str] = None,
9295
):
9396
ConstrainedControl.__init__(
9497
self,
@@ -122,6 +125,9 @@ def __init__(
122125
self.content = content
123126
self.margin = margin
124127
self.elevation = elevation
128+
self.color = color
129+
self.shadow_color = shadow_color
130+
self.surface_tint_color = surface_tint_color
125131

126132
def _get_control_name(self):
127133
return "card"
@@ -155,6 +161,33 @@ def elevation(self) -> OptionalNumber:
155161
def elevation(self, value: OptionalNumber):
156162
self._set_attr("elevation", value)
157163

164+
# color
165+
@property
166+
def color(self):
167+
return self._get_attr("color")
168+
169+
@color.setter
170+
def color(self, value):
171+
self._set_attr("color", value)
172+
173+
# shadow_color
174+
@property
175+
def shadow_color(self):
176+
return self._get_attr("shadowColor")
177+
178+
@shadow_color.setter
179+
def shadow_color(self, value):
180+
self._set_attr("shadowColor", value)
181+
182+
# surface_tint_color
183+
@property
184+
def surface_tint_color(self):
185+
return self._get_attr("surfaceTintColor")
186+
187+
@surface_tint_color.setter
188+
def surface_tint_color(self, value):
189+
self._set_attr("surfaceTintColor", value)
190+
158191
# content
159192
@property
160193
def content(self) -> Optional[Control]:

0 commit comments

Comments
 (0)