@@ -79,44 +79,45 @@ def init_widget(self):
79
79
80
80
"""
81
81
widget = self .widget
82
+ set_attr = widget .set
82
83
d = self .declaration
83
84
84
- widget . set ("id" , d .id )
85
- if d .text :
86
- widget .text = d . text
87
- if d .tail :
88
- widget .tail = d . tail
89
- if d .alt :
90
- widget . set ("alt" , d . alt )
91
- if d .style :
92
- self .set_style (d . style )
93
- if d .cls :
94
- self .set_cls (d . cls )
85
+ set_attr ("id" , d .id )
86
+ if v := d .text :
87
+ widget .text = v
88
+ if v := d .tail :
89
+ widget .tail = v
90
+ if v := d .alt :
91
+ set_attr ("alt" , v )
92
+ if v := d .style :
93
+ self .set_style (v )
94
+ if v := d .cls :
95
+ self .set_cls (v )
95
96
if d .clickable :
96
- widget . set ("clickable" , "true" )
97
+ set_attr ("clickable" , "true" )
97
98
if d .draggable :
98
- widget . set ("draggable" , "true" )
99
- if d .onclick :
100
- widget . set ("onclick" , d . onclick )
101
- if d .ondragstart :
102
- widget . set ("ondragstart" , d . ondragstart )
103
- if d .ondragover :
104
- widget . set ("ondragover" , d . ondragover )
105
- if d .ondragend :
106
- widget . set ("ondragend" , d . ondragend )
107
- if d .ondragenter :
108
- widget . set ("ondragenter" , d . ondragenter )
109
- if d .ondragleave :
110
- widget . set ("ondragleave" , d . ondragleave )
111
- if d .ondrop :
112
- widget . set ("ondrop" , d . ondrop )
99
+ set_attr ("draggable" , "true" )
100
+ if v := d .onclick :
101
+ set_attr ("onclick" , v )
102
+ if v := d .ondragstart :
103
+ set_attr ("ondragstart" , v )
104
+ if v := d .ondragover :
105
+ set_attr ("ondragover" , v )
106
+ if v := d .ondragend :
107
+ set_attr ("ondragend" , v )
108
+ if v := d .ondragenter :
109
+ set_attr ("ondragenter" , v )
110
+ if v := d .ondragleave :
111
+ set_attr ("ondragleave" , v )
112
+ if v := d .ondrop :
113
+ set_attr ("ondrop" , v )
113
114
114
115
for k , v in d .attrs .items ():
115
- widget . set (k , v )
116
+ set_attr (k , v )
116
117
117
118
for m in get_fields (d .__class__ ):
118
119
name = m .name
119
- value = getattr ( d , name )
120
+ value = m . do_getattr ( d )
120
121
if value is True :
121
122
widget .set (name , name )
122
123
elif value :
@@ -287,8 +288,9 @@ def set_attrs(self, attrs: dict[str, str]):
287
288
"""Set any attributes not explicitly defined"""
288
289
w = self .widget
289
290
assert w is not None
291
+ set_attr = w .set
290
292
for k , v in attrs .items ():
291
- w . set (k , v )
293
+ set_attr (k , v )
292
294
293
295
def set_cls (self , cls : Union [tuple [str ], list [str ], str ]):
294
296
if isinstance (cls , (tuple , list )):
0 commit comments