File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -434,16 +434,17 @@ def flush_events(self):
434434 global qApp
435435 qApp .processEvents ()
436436
437- def start_event_loop (self , timeout ):
438- FigureCanvasBase .start_event_loop_default (self , timeout )
439-
440- start_event_loop .__doc__ = \
441- FigureCanvasBase .start_event_loop_default .__doc__
442-
443- def stop_event_loop (self ):
444- FigureCanvasBase .stop_event_loop_default (self )
445-
446- stop_event_loop .__doc__ = FigureCanvasBase .stop_event_loop_default .__doc__
437+ def start_event_loop (self , timeout = 0 ):
438+ if hasattr (self , "_event_loop" ) and self ._event_loop .isRunning ():
439+ raise RuntimeError ("Event loop already running" )
440+ self ._event_loop = event_loop = QtCore .QEventLoop ()
441+ if timeout :
442+ timer = QtCore .QTimer .singleShot (timeout * 1000 , event_loop .quit )
443+ event_loop .exec_ ()
444+
445+ def stop_event_loop (self , event = None ):
446+ if hasattr (self , "_event_loop" ):
447+ self ._event_loop .quit ()
447448
448449
449450class MainWindow (QtWidgets .QMainWindow ):
You can’t perform that action at this time.
0 commit comments