@@ -2022,6 +2022,7 @@ def form_relationship(child, fk, parent, pk) -> None:
2022
2022
# Global variables to set default sizes for the record function below
2023
2023
_default_label_size = (15 , 1 )
2024
2024
_default_element_size = (30 , 1 )
2025
+ _default_Mline_size = (30 , 7 )
2025
2026
2026
2027
def set_label_size (w , h ):
2027
2028
"""
@@ -2041,6 +2042,15 @@ def set_element_size(w, h):
2041
2042
"""
2042
2043
_default_element_size = (w , h )
2043
2044
2045
+ def set_Mline_size (w , h ):
2046
+ """
2047
+ Sets the default multi-line text size when @record is used. The size parameter of @record will override this
2048
+ :param w: the width desired
2049
+ :param h: the height desired
2050
+ :return: None
2051
+ """
2052
+ _default_Mline_size = (w , h )
2053
+
2044
2054
# Define a custom element for quickly adding database rows.
2045
2055
# The automatic functions of PySimpleSQL require the elements to have a properly setup metadata
2046
2056
# todo should I enable elements here for dirty checking?
@@ -2087,7 +2097,10 @@ def record(table, element=sg.I, key=None, size=None, label='', no_label=False, l
2087
2097
else :
2088
2098
first_param = ''
2089
2099
2090
- layout_element = element (first_param , key = key , size = size or _default_element_size , metadata = {'type' : TYPE_RECORD , 'Form' : None , 'filter' : filter }, ** kwargs )
2100
+ if element .__name__ == 'Multiline' :
2101
+ layout_element = element (first_param , key = key , size = size or _default_Mline_size , metadata = {'type' : TYPE_RECORD , 'Form' : None , 'filter' : filter }, ** kwargs )
2102
+ else :
2103
+ layout_element = element (first_param , key = key , size = size or _default_element_size , metadata = {'type' : TYPE_RECORD , 'Form' : None , 'filter' : filter }, ** kwargs )
2091
2104
layout_label = sg .T (label_text if label == '' else label , size = _default_label_size )
2092
2105
if no_label :
2093
2106
layout = [[layout_element ]]
0 commit comments