Skip to content

Commit 9de53ea

Browse files
authored
Text.style type Deprecation warning (#2286)
* initial commit * remove DeprecationWarning
1 parent 43676d1 commit 9de53ea

File tree

1 file changed

+10
-4
lines changed
  • sdk/python/packages/flet-core/src/flet_core

1 file changed

+10
-4
lines changed

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

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import dataclasses
22
from enum import Enum
33
from typing import Any, List, Optional, Union
4+
from warnings import warn
45

56
from flet_core.constrained_control import ConstrainedControl
67
from flet_core.control import OptionalNumber
@@ -120,7 +121,7 @@ def __init__(
120121
size: OptionalNumber = None,
121122
weight: Optional[FontWeight] = None,
122123
italic: Optional[bool] = None,
123-
style: Optional[Union[TextThemeStyle, TextStyle]] = None,
124+
style: Union[TextThemeStyle, TextStyle, None] = None,
124125
theme_style: Optional[TextThemeStyle] = None,
125126
max_lines: Optional[int] = None,
126127
overflow: TextOverflow = TextOverflow.NONE,
@@ -260,16 +261,21 @@ def __set_weight(self, value: FontWeightString):
260261

261262
# style
262263
@property
263-
def style(self) -> Optional[Union[TextThemeStyle, TextStyle]]:
264+
def style(self) -> Union[TextThemeStyle, TextStyle, None]:
264265
return self.__style
265266

266267
@style.setter
267-
def style(self, value: Optional[Union[TextThemeStyle, TextStyle]]):
268+
def style(self, value: Union[TextThemeStyle, TextStyle, None]):
268269
self.__style = value
269270
if isinstance(value, (TextThemeStyle, str)) or value is None:
270271
self._set_attr(
271272
"style", value.value if isinstance(value, TextThemeStyle) else value
272273
)
274+
warn(
275+
"If you wish to set the TextThemeStyle, use `Text.theme_style` instead. "
276+
"The `Text.style` property should be used to set the TextStyle only.",
277+
stacklevel=2,
278+
)
273279

274280
# theme_style
275281
@property
@@ -278,7 +284,7 @@ def theme_style(self):
278284

279285
@theme_style.setter
280286
def theme_style(self, value: Optional[TextThemeStyle]):
281-
self._set_attr("theme_style", value.value if value is not None else None)
287+
self._set_attr("theme_style", value.value if isinstance(value, TextThemeStyle) else value)
282288

283289
# italic
284290
@property

0 commit comments

Comments
 (0)