@@ -144,12 +144,11 @@ def do_about(self, id, item, window, event):
144144 # event type.
145145 # Normally, however, you'd just define handlers for individual
146146 # events.
147- # (XXX I'm not sure if using default parameter values is the right
148- # way to define the mask and wait time passed to WaitNextEvent.)
149147
150148 schedparams = (0 , 0 ) # By default disable Python's event handling
149+ default_wait = None # By default we wait GetCaretTime in WaitNextEvent
151150
152- def mainloop (self , mask = everyEvent , wait = 0 ):
151+ def mainloop (self , mask = everyEvent , wait = None ):
153152 self .quitting = 0
154153 saveparams = apply (MacOS .SchedParams , self .schedparams )
155154 try :
@@ -169,7 +168,7 @@ def dopendingevents(self, mask = everyEvent):
169168 while self .do1event (mask , wait = 0 ):
170169 pass
171170
172- def do1event (self , mask = everyEvent , wait = 0 ):
171+ def do1event (self , mask = everyEvent , wait = None ):
173172 ok , event = self .getevent (mask , wait )
174173 if IsDialogEvent (event ):
175174 if self .do_dialogevent (event ):
@@ -182,10 +181,14 @@ def do1event(self, mask = everyEvent, wait = 0):
182181 def idle (self , event ):
183182 pass
184183
185- def getevent (self , mask = everyEvent , wait = 0 ):
184+ def getevent (self , mask = everyEvent , wait = None ):
186185 if self .needmenubarredraw :
187186 DrawMenuBar ()
188187 self .needmenubarredraw = 0
188+ if wait is None :
189+ wait = self .default_wait
190+ if wait is None :
191+ wait = GetCaretTime ()
189192 ok , event = WaitNextEvent (mask , wait )
190193 return ok , event
191194
0 commit comments