IconEditor/IconEditorWindow.py

changeset 4696
bf4d19a7cade
parent 4647
5c50132b6463
child 5389
9b1c800daff3
diff -r 9dc08852de25 -r bf4d19a7cade IconEditor/IconEditorWindow.py
--- a/IconEditor/IconEditorWindow.py	Sun Jan 24 16:03:00 2016 +0100
+++ b/IconEditor/IconEditorWindow.py	Sun Jan 24 16:15:58 2016 +0100
@@ -285,7 +285,18 @@
         self.closeAllAct.triggered.connect(self.__closeAll)
         self.__actions.append(self.closeAllAct)
         
-        # TODO: add action to close all other windows
+        self.closeOthersAct = E5Action(
+            self.tr('Close Others'),
+            self.tr('Close Others'),
+            0, 0, self, 'iconEditor_file_close_others')
+        self.closeOthersAct.setStatusTip(self.tr(
+            'Close all other icon editor windows'))
+        self.closeOthersAct.setWhatsThis(self.tr(
+            """<b>Close Others</b>"""
+            """<p>Closes all other icon editor windows.</p>"""
+        ))
+        self.closeOthersAct.triggered.connect(self.__closeOthers)
+        self.__actions.append(self.closeOthersAct)
         
         self.exitAct = E5Action(
             self.tr('Quit'),
@@ -816,6 +827,7 @@
         menu.addAction(self.saveAsAct)
         menu.addSeparator()
         menu.addAction(self.closeAct)
+        menu.addAction(self.closeOthersAct)
         if self.fromEric:
             menu.addAction(self.closeAllAct)
         else:
@@ -1107,12 +1119,18 @@
     
     def __closeAll(self):
         """
+        Private slot to close all windows.
+        """
+        self.__closeOthers()
+        self.close()
+    
+    def __closeOthers(self):
+        """
         Private slot to close all other windows.
         """
         for win in self.__class__.windows[:]:
             if win != self:
                 win.close()
-        self.close()
     
     def __loadIconFile(self, fileName):
         """

eric ide

mercurial