Plugins/VcsPlugins/vcsMercurial/ProjectHelper.py

changeset 1074
ed2585464f12
parent 1073
9f0c4b4eccb1
child 1075
75bfe8bd4243
equal deleted inserted replaced
1073:9f0c4b4eccb1 1074:ed2585464f12
48 "mq": QueuesProjectHelper(), 48 "mq": QueuesProjectHelper(),
49 "fetch": FetchProjectHelper(), 49 "fetch": FetchProjectHelper(),
50 "purge": PurgeProjectHelper(), 50 "purge": PurgeProjectHelper(),
51 } 51 }
52 52
53 # TODO: create a dictionary of menu titles to extension key to be used below 53 self.__extensionMenuTitles = {}
54 for extension in self.__extensions:
55 self.__extensionMenuTitles[self.__extensions[extension].menuTitle()] = \
56 extension
54 57
55 def setObjects(self, vcsObject, projectObject): 58 def setObjects(self, vcsObject, projectObject):
56 """ 59 """
57 Public method to set references to the vcs and project objects. 60 Public method to set references to the vcs and project objects.
58 61
835 838
836 @param menu reference to the menu to be populated (QMenu) 839 @param menu reference to the menu to be populated (QMenu)
837 """ 840 """
838 menu.clear() 841 menu.clear()
839 842
840 # TODO: make submenus tearable
841 adminMenu = QMenu(self.trUtf8("Repository Administration"), menu) 843 adminMenu = QMenu(self.trUtf8("Repository Administration"), menu)
842 adminMenu.setTearOffEnabled(True) 844 adminMenu.setTearOffEnabled(True)
843 adminMenu.addAction(self.hgHeadsAct) 845 adminMenu.addAction(self.hgHeadsAct)
844 adminMenu.addAction(self.hgParentsAct) 846 adminMenu.addAction(self.hgParentsAct)
845 adminMenu.addAction(self.hgTipAct) 847 adminMenu.addAction(self.hgTipAct)
881 bisectMenu.addAction(self.hgBisectResetAct) 883 bisectMenu.addAction(self.hgBisectResetAct)
882 884
883 extensionsMenu = QMenu(self.trUtf8("Extensions"), menu) 885 extensionsMenu = QMenu(self.trUtf8("Extensions"), menu)
884 extensionsMenu.aboutToShow.connect(self.__showExtensionMenu) 886 extensionsMenu.aboutToShow.connect(self.__showExtensionMenu)
885 self.extensionMenus = {} 887 self.extensionMenus = {}
886 # TODO: use extension menu titles for sorting 888 for extensionMenuTitle in sorted(self.__extensionMenuTitles):
887 for extensionName in sorted(self.__extensions): 889 extensionName = self.__extensionMenuTitles[extensionMenuTitle]
888 self.extensionMenus[extensionName] = extensionsMenu.addMenu( 890 self.extensionMenus[extensionName] = extensionsMenu.addMenu(
889 self.__extensions[extensionName].initMenu(extensionsMenu)) 891 self.__extensions[extensionName].initMenu(extensionsMenu))
890 892
891 act = menu.addAction( 893 act = menu.addAction(
892 UI.PixmapCache.getIcon( 894 UI.PixmapCache.getIcon(

eric ide

mercurial