ProjectPyramid/Project.py

changeset 64
3b2da211e126
parent 63
f249a66da0d5
child 66
c8f88c9e4453
--- a/ProjectPyramid/Project.py	Wed Jan 01 14:47:56 2014 +0100
+++ b/ProjectPyramid/Project.py	Sat Jan 25 17:43:06 2014 +0100
@@ -96,7 +96,7 @@
         self.__e5project = e5App().getObject("Project")
         self.__hooksInstalled = False
         
-        self.__mainMenu = None
+        self.__menus = {}   # dictionary with references to menus
         
         self.__serverProc = None
         
@@ -356,6 +356,8 @@
         
         @return the menu generated (QMenu)
         """
+        self.__menus = {}   # clear menus references
+        
         menu = QMenu(self.trUtf8('P&yramid'), self.__ui)
         menu.setTearOffEnabled(True)
         
@@ -383,9 +385,31 @@
         menu.addSeparator()
         menu.addAction(self.aboutPyramidAct)
         
-        self.__mainMenu = menu
+        self.__menus["main"] = menu
+        
         return menu
     
+    def getMenu(self, name):
+        """
+        Public method to get a reference to the requested menu.
+        
+        @param name name of the menu (string)
+        @return reference to the menu (QMenu) or None, if no
+            menu with the given name exists
+        """
+        if name in self.__menus:
+            return self.__menus[name]
+        else:
+            return None
+    
+    def getMenuNames(self):
+        """
+        Public method to get the names of all menus.
+        
+        @return menu names (list of string)
+        """
+        return list(self.__menus.keys())
+    
     def registerOpenHook(self):
         """
         Public method to register the open hook to open a translations file

eric ide

mercurial