]> granicus.if.org Git - python/commitdiff
Hide the ProgressBar before raising KeyboardInterrupt. Not doing so resulted in a...
authorJack Jansen <jack.jansen@cwi.nl>
Fri, 23 Feb 2001 22:18:27 +0000 (22:18 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Fri, 23 Feb 2001 22:18:27 +0000 (22:18 +0000)
Mac/Lib/EasyDialogs.py

index 3f88fb549b154eeecd3d3f5e67ab34fe794176c6..a4862041f9b5e50d876b01c6ea133083c4b69031 100644 (file)
@@ -217,6 +217,8 @@ screenbounds = screenbounds[0]+4, screenbounds[1]+4, \
                                
 class ProgressBar:
        def __init__(self, title="Working...", maxval=100, label="", id=263):
+               self.w = None
+               self.d = None
                self.maxval = maxval
                self.curval = -1
                self.d = GetNewDialog(id, -1)
@@ -229,8 +231,9 @@ class ProgressBar:
                self.d.DrawDialog()
 
        def __del__( self ):
-               self.w.BringToFront()
-               self.w.HideWindow()
+               if self.w:
+                       self.w.BringToFront()
+                       self.w.HideWindow()
                del self.w
                del self.d
                
@@ -268,6 +271,9 @@ class ProgressBar:
                        if Dlg.IsDialogEvent(ev):
                                ds = Dlg.DialogSelect(ev)
                                if ds[0] and ds[1] == self.d and ds[-1] == 1:
+                                       self.w.HideWindow()
+                                       self.w = None
+                                       self.d = None
                                        raise KeyboardInterrupt, ev
                        else:
                                if part == 4:   # inDrag