Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions system/ui/widgets/label.py
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ def __init__(self,
def set_text(self, text: str | Callable[[], str]):
"""Update the text content."""
self._text = text
self._cached_text = None # Invalidate cache
# No need to update cache here, will be done on next render if needed

@property
def text(self) -> str:
Expand All @@ -463,15 +463,17 @@ def set_color(self, color: rl.Color):

def set_font_size(self, size: int):
"""Update the font size."""
self._font_size = size
self._spacing_pixels = size * self._letter_spacing # Recalculate spacing
self._cached_text = None # Invalidate cache
if self._font_size != size:
self._font_size = size
self._spacing_pixels = size * self._letter_spacing # Recalculate spacing
self._cached_text = None # Invalidate cache

def set_letter_spacing(self, letter_spacing: float):
"""Update letter spacing (as percentage, e.g., 0.1 = 10%)."""
self._letter_spacing = letter_spacing
self._spacing_pixels = self._font_size * letter_spacing
self._cached_text = None # Invalidate cache
if self._letter_spacing != letter_spacing:
self._letter_spacing = letter_spacing
self._spacing_pixels = self._font_size * letter_spacing
self._cached_text = None # Invalidate cache

def set_font_weight(self, font_weight: FontWeight):
"""Update the font weight."""
Expand Down