2025-12-01

This commit is contained in:
2026-03-17 14:58:51 -06:00
parent 183e865f8b
commit 4b82b57113
6846 changed files with 954887 additions and 162606 deletions
@@ -99,6 +99,9 @@ def safe_size_apply(cTB,
If we try to apply a size which is not recognized as local, it will fail
and disrupt further drawing. This function mitigates this problem.
"""
if size_value is None:
return
try:
op_ref.size = size_value
except TypeError as e:
@@ -157,16 +160,18 @@ def wrapped_label(cTB,
add_padding: bool = False,
add_padding_top: bool = False,
add_padding_bottom: bool = False,
alignment: str = 'LEFT'
) -> None:
"""Text wrap a label based on indicated width."""
cTB.logger_ui.debug(f"wrapped_label width={width}, text={text}, "
f"icon={icon}, add_padding={add_padding}")
f"icon={icon}, add_padding={add_padding}, alignment={alignment}")
list_words = [_word.replace("!@#", " ") for _word in text.split(" ")]
row = container.row()
parent = row.column(align=True)
parent.alignment = alignment # Set alignment on the parent column
parent.scale_y = 0.8 # To make vertical height more natural for text.
if add_padding or add_padding_top:
@@ -183,16 +188,36 @@ def wrapped_label(cTB,
if width_line > width:
if first:
if icon is None:
parent.label(text=line)
if alignment == 'LEFT':
parent.label(text=line)
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line)
else:
parent.label(text=line, icon=icon)
if alignment == 'LEFT':
parent.label(text=line, icon=icon)
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line, icon=icon)
first = False
else:
if icon is None:
parent.label(text=line)
if alignment == 'LEFT':
parent.label(text=line)
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line)
else:
parent.label(text=line, icon="BLANK1")
if alignment == 'LEFT':
parent.label(text=line, icon="BLANK1")
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line, icon="BLANK1")
line = _word + " "
@@ -201,15 +226,32 @@ def wrapped_label(cTB,
if line != "":
if icon is None:
parent.label(text=line)
if alignment == 'LEFT':
parent.label(text=line)
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line)
else:
if first:
parent.label(text=line, icon=icon)
if alignment == 'LEFT':
parent.label(text=line, icon=icon)
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line, icon=icon)
else:
parent.label(text=line, icon="BLANK1")
if alignment == 'LEFT':
parent.label(text=line, icon="BLANK1")
else:
label_row = parent.row()
label_row.alignment = alignment
label_row.label(text=line, icon="BLANK1")
if add_padding or add_padding_bottom:
parent.label(text="")
spacer = parent.row()
spacer.scale_y = 0.3
spacer.label(text="")
def separator_p4b(