@@ -68,39 +68,39 @@ def opacity(self, opacity: int):
6868 def alpha (self , alpha : int ):
6969 '''set layer alpha -- 0 to 255'''
7070 self .dd ._sendCommand (self .layer_id , "alpha" , str (alpha ))
71- def border (self , size , color , shape : str = "flat" , extra_size = 0 ):
71+ def border (self , size : float , color : str , shape : str = "flat" , extra_size : float = 0 ):
7272 '''
73- :param size: unit is pixel
73+ :param size: unit depends on the layer type:
7474 - LcdLayer; each character is composed of pixels
7575 - 7SegmentRowLayer; each 7-segment is composed of fixed 220 x 320 pixels
7676 - LedGridLayer; a LED is considered as a pixel
7777 :param shape: can be "flat", "round", "raised" or "sunken"
7878 :param extra_size just added to size; however if shape is "round", it affects the "roundness"
7979 '''
80- if type (extra_size ) == int and extra_size == 0 :
81- self .dd ._sendCommand (self .layer_id , "border" , str (size ), _DD_COLOR_ARG (color ), shape )
80+ if _DD_FLOAT_IS_ZERO ( extra_size ): # was type(extra_size) == int and extra_size == 0
81+ self .dd ._sendCommand (self .layer_id , "border" , _DD_FLOAT_ARG (size ), _DD_COLOR_ARG (color ), shape )
8282 else :
83- self .dd ._sendCommand (self .layer_id , "border" , str (size ), _DD_COLOR_ARG (color ), shape , str (extra_size ))
83+ self .dd ._sendCommand (self .layer_id , "border" , _DD_FLOAT_ARG (size ), _DD_COLOR_ARG (color ), shape , str (extra_size ))
8484 def noBorder (self ):
8585 self .dd ._sendCommand (self .layer_id , "border" )
86- def padding (self , left , top = None , right = None , bottom = None ):
86+ def padding (self , left : float , top : float = None , right : float = None , bottom : float = None ):
8787 '''see border() for size unit'''
8888 if top is None and right is None and bottom is None :
89- self .dd ._sendCommand (self .layer_id , "padding" , str (left ))
89+ self .dd ._sendCommand (self .layer_id , "padding" , _DD_FLOAT_ARG (left ))
9090 else :
9191 if top is None :
9292 top = left
9393 if right is None :
9494 right = left
9595 if bottom is None :
9696 bottom = top
97- self .dd ._sendCommand (self .layer_id , "padding" , str (left ), str (top ), str (right ), str (bottom ))
97+ self .dd ._sendCommand (self .layer_id , "padding" , _DD_FLOAT_ARG (left ), _DD_FLOAT_ARG (top ), _DD_FLOAT_ARG (right ), _DD_FLOAT_ARG (bottom ))
9898 def noPadding (self ):
9999 self .dd ._sendCommand (self .layer_id , "padding" )
100- def margin (self , left , top = None , right = None , bottom = None ):
100+ def margin (self , left : float , top : float = None , right : float = None , bottom : float = None ):
101101 '''see border() for size unit'''
102102 if top is None and right is None and bottom is None :
103- self .dd ._sendCommand (self .layer_id , "margin" , str (left ))
103+ self .dd ._sendCommand (self .layer_id , "margin" , _DD_FLOAT_ARG (left ))
104104 else :
105105 if top is None :
106106 top = left
@@ -131,9 +131,8 @@ def flashArea(self, x, y):
131131 self .dd ._sendCommand (self .layer_id , "flasharea" , str (x ), str (y ))
132132 # def writeComment(self, comment):
133133 # self.dd.writeComment(comment)
134- def enableFeedback (self , auto_feedback_method = "" , feedback_handler = None , allowed_feedback_types = "" ):
134+ def enableFeedback (self , auto_feedback_method : str = "" , feedback_handler = None , allowed_feedback_types : str = "" ):
135135 '''
136- rely on getFeedback() being called */
137136 :param auto_feedback_method:
138137 . "" -- no auto feedback
139138 . "f" -- flash the default way (layer + border)
@@ -146,6 +145,9 @@ def enableFeedback(self, auto_feedback_method = "", feedback_handler = None, all
146145 . type -- "click"
147146 . x, y -- the "area" on the layer where was clicked
148147 '''
148+ # if simple_feedback_handler is not None:
149+ # # simple_feedback_handler deprecated
150+ # feedback_handler = lambda layer, type, x, y, text: simple_feedback_handler(layer, type, x, y)
149151 self ._feedback_handler = feedback_handler
150152 self ._feedbacks = []
151153 self .dd ._sendCommand (self .layer_id , "feedback" , _DD_BOOL_ARG (True ), auto_feedback_method , allowed_feedback_types )
@@ -187,6 +189,8 @@ def reorderLayer(self, how: str):
187189 def _handleFeedback (self , type , x , y ):
188190 #print("RAW FB: " + self.layer_id + '.' + type + ':' + str(x) + ',' + str(y))
189191 if self ._feedback_handler is not None :
192+ # if False: # TODO: text parameters
193+ # print(self._feedback_handler.__code__.co_argcount)
190194 self ._feedback_handler (self , type , x , y )
191195 else :
192196 self ._feedbacks .append ((type , x , y ))
0 commit comments