Fixed an issue handling QMdiArea. 5_0_x

Sun, 29 Aug 2010 22:28:54 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 29 Aug 2010 22:28:54 +0200
branch
5_0_x
changeset 528
0a48fc67c451
parent 522
da309f4795ce
child 530
ff77c9153c47

Fixed an issue handling QMdiArea.

Plugins/ViewManagerPlugins/MdiArea/MdiArea.py file | annotate | diff | comparison | revisions
Tools/TRPreviewer.py file | annotate | diff | comparison | revisions
--- a/Plugins/ViewManagerPlugins/MdiArea/MdiArea.py	Sun Aug 29 20:43:02 2010 +0200
+++ b/Plugins/ViewManagerPlugins/MdiArea/MdiArea.py	Sun Aug 29 22:28:54 2010 +0200
@@ -202,6 +202,12 @@
                     self.tileAct, self.cascadeAct, 
                     self.restoreAllAct, self.iconizeAllAct, 
                     None])
+        for act in [self.restoreAllAct, self.iconizeAllAct]:
+            act.setEnabled(len(self.editors) != 0)
+        for act in [self.nextChildAct, self.prevChildAct, self.tileAct, 
+                    self.cascadeAct]:
+            act.setEnabled(len(self.editors) > 1)
+        
         act = windowMenu.addMenu(self.windowsMenu)
         if len(self.editors) == 0:
             act.setEnabled(False)
@@ -351,7 +357,7 @@
             watched.close()
             return True
         
-        return False
+        return QMdiArea.eventFilter(self, watched, event)
         
     def __restoreAllWindows(self):
         """
--- a/Tools/TRPreviewer.py	Sun Aug 29 20:43:02 2010 +0200
+++ b/Tools/TRPreviewer.py	Sun Aug 29 22:28:54 2010 +0200
@@ -767,13 +767,7 @@
         @param event the event, that was generated by object (QEvent)
         @return flag indicating if event was filtered out
         """
-        if not isinstance(obj, QWidget):
-            return False
-        
-        if not obj in self.widgets:
-            return False
-            
-        if ev.type() == QEvent.Close:
+        if obj in self.widgets and ev.type() == QEvent.Close:
             try:
                 self.widgets.remove(obj)
                 if len(self.widgets) == 0:
@@ -781,7 +775,7 @@
             except ValueError:
                 pass
         
-        return False
+        return QWorkspace.eventFilter(self, obj, ev)
     
     def __findWidget(self, uiFileName):
         """

eric ide

mercurial