2025-12-01
This commit is contained in:
@@ -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(
|
||||
|
||||
Reference in New Issue
Block a user