Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/ProjectHelper.py

branch
Py2 comp.
changeset 3484
645c12de6b0c
parent 3178
f25fc1364c88
parent 3345
071afe8be2a1
diff -r 96232974dcdb -r 645c12de6b0c Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/ProjectHelper.py
--- a/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/ProjectHelper.py	Sun Mar 30 22:00:14 2014 +0200
+++ b/Plugins/VcsPlugins/vcsMercurial/BookmarksExtension/ProjectHelper.py	Thu Apr 03 23:05:31 2014 +0200
@@ -33,145 +33,145 @@
         Public method to generate the action objects.
         """
         self.hgBookmarksListAct = E5Action(
-            self.trUtf8('List bookmarks'),
+            self.tr('List bookmarks'),
             UI.PixmapCache.getIcon("listBookmarks.png"),
-            self.trUtf8('List bookmarks...'),
+            self.tr('List bookmarks...'),
             0, 0, self, 'mercurial_list_bookmarks')
-        self.hgBookmarksListAct.setStatusTip(self.trUtf8(
+        self.hgBookmarksListAct.setStatusTip(self.tr(
             'List bookmarks of the project'
         ))
-        self.hgBookmarksListAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarksListAct.setWhatsThis(self.tr(
             """<b>List bookmarks</b>"""
             """<p>This lists the bookmarks of the project.</p>"""
         ))
-        self.hgBookmarksListAct.triggered[()].connect(self.__hgBookmarksList)
+        self.hgBookmarksListAct.triggered.connect(self.__hgBookmarksList)
         self.actions.append(self.hgBookmarksListAct)
     
         self.hgBookmarkDefineAct = E5Action(
-            self.trUtf8('Define bookmark'),
+            self.tr('Define bookmark'),
             UI.PixmapCache.getIcon("addBookmark.png"),
-            self.trUtf8('Define bookmark...'),
+            self.tr('Define bookmark...'),
             0, 0, self, 'mercurial_define_bookmark')
-        self.hgBookmarkDefineAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkDefineAct.setStatusTip(self.tr(
             'Define a bookmark for the project'
         ))
-        self.hgBookmarkDefineAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkDefineAct.setWhatsThis(self.tr(
             """<b>Define bookmark</b>"""
             """<p>This defines a bookmark for the project.</p>"""
         ))
-        self.hgBookmarkDefineAct.triggered[()].connect(self.__hgBookmarkDefine)
+        self.hgBookmarkDefineAct.triggered.connect(self.__hgBookmarkDefine)
         self.actions.append(self.hgBookmarkDefineAct)
     
         self.hgBookmarkDeleteAct = E5Action(
-            self.trUtf8('Delete bookmark'),
+            self.tr('Delete bookmark'),
             UI.PixmapCache.getIcon("deleteBookmark.png"),
-            self.trUtf8('Delete bookmark...'),
+            self.tr('Delete bookmark...'),
             0, 0, self, 'mercurial_delete_bookmark')
-        self.hgBookmarkDeleteAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkDeleteAct.setStatusTip(self.tr(
             'Delete a bookmark of the project'
         ))
-        self.hgBookmarkDeleteAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkDeleteAct.setWhatsThis(self.tr(
             """<b>Delete bookmark</b>"""
             """<p>This deletes a bookmark of the project.</p>"""
         ))
-        self.hgBookmarkDeleteAct.triggered[()].connect(self.__hgBookmarkDelete)
+        self.hgBookmarkDeleteAct.triggered.connect(self.__hgBookmarkDelete)
         self.actions.append(self.hgBookmarkDeleteAct)
     
         self.hgBookmarkRenameAct = E5Action(
-            self.trUtf8('Rename bookmark'),
+            self.tr('Rename bookmark'),
             UI.PixmapCache.getIcon("renameBookmark.png"),
-            self.trUtf8('Rename bookmark...'),
+            self.tr('Rename bookmark...'),
             0, 0, self, 'mercurial_rename_bookmark')
-        self.hgBookmarkRenameAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkRenameAct.setStatusTip(self.tr(
             'Rename a bookmark of the project'
         ))
-        self.hgBookmarkRenameAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkRenameAct.setWhatsThis(self.tr(
             """<b>Rename bookmark</b>"""
             """<p>This renames a bookmark of the project.</p>"""
         ))
-        self.hgBookmarkRenameAct.triggered[()].connect(self.__hgBookmarkRename)
+        self.hgBookmarkRenameAct.triggered.connect(self.__hgBookmarkRename)
         self.actions.append(self.hgBookmarkRenameAct)
     
         self.hgBookmarkMoveAct = E5Action(
-            self.trUtf8('Move bookmark'),
+            self.tr('Move bookmark'),
             UI.PixmapCache.getIcon("moveBookmark.png"),
-            self.trUtf8('Move bookmark...'),
+            self.tr('Move bookmark...'),
             0, 0, self, 'mercurial_move_bookmark')
-        self.hgBookmarkMoveAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkMoveAct.setStatusTip(self.tr(
             'Move a bookmark of the project'
         ))
-        self.hgBookmarkMoveAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkMoveAct.setWhatsThis(self.tr(
             """<b>Move bookmark</b>"""
             """<p>This moves a bookmark of the project to another"""
             """ changeset.</p>"""
         ))
-        self.hgBookmarkMoveAct.triggered[()].connect(self.__hgBookmarkMove)
+        self.hgBookmarkMoveAct.triggered.connect(self.__hgBookmarkMove)
         self.actions.append(self.hgBookmarkMoveAct)
         
         self.hgBookmarkIncomingAct = E5Action(
-            self.trUtf8('Show incoming bookmarks'),
+            self.tr('Show incoming bookmarks'),
             UI.PixmapCache.getIcon("incomingBookmark.png"),
-            self.trUtf8('Show incoming bookmarks'),
+            self.tr('Show incoming bookmarks'),
             0, 0, self, 'mercurial_incoming_bookmarks')
-        self.hgBookmarkIncomingAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkIncomingAct.setStatusTip(self.tr(
             'Show a list of incoming bookmarks'
         ))
-        self.hgBookmarkIncomingAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkIncomingAct.setWhatsThis(self.tr(
             """<b>Show incoming bookmarks</b>"""
             """<p>This shows a list of new bookmarks available at the remote"""
             """ repository.</p>"""
         ))
-        self.hgBookmarkIncomingAct.triggered[()].connect(
+        self.hgBookmarkIncomingAct.triggered.connect(
             self.__hgBookmarkIncoming)
         self.actions.append(self.hgBookmarkIncomingAct)
         
         self.hgBookmarkPullAct = E5Action(
-            self.trUtf8('Pull bookmark'),
+            self.tr('Pull bookmark'),
             UI.PixmapCache.getIcon("pullBookmark.png"),
-            self.trUtf8('Pull bookmark'),
+            self.tr('Pull bookmark'),
             0, 0, self, 'mercurial_pull_bookmark')
-        self.hgBookmarkPullAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkPullAct.setStatusTip(self.tr(
             'Pull a bookmark from a remote repository'
         ))
-        self.hgBookmarkPullAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkPullAct.setWhatsThis(self.tr(
             """<b>Pull bookmark</b>"""
             """<p>This pulls a bookmark from a remote repository into the """
             """local repository.</p>"""
         ))
-        self.hgBookmarkPullAct.triggered[()].connect(self.__hgBookmarkPull)
+        self.hgBookmarkPullAct.triggered.connect(self.__hgBookmarkPull)
         self.actions.append(self.hgBookmarkPullAct)
         
         self.hgBookmarkOutgoingAct = E5Action(
-            self.trUtf8('Show outgoing bookmarks'),
+            self.tr('Show outgoing bookmarks'),
             UI.PixmapCache.getIcon("outgoingBookmark.png"),
-            self.trUtf8('Show outgoing bookmarks'),
+            self.tr('Show outgoing bookmarks'),
             0, 0, self, 'mercurial_outgoing_bookmarks')
-        self.hgBookmarkOutgoingAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkOutgoingAct.setStatusTip(self.tr(
             'Show a list of outgoing bookmarks'
         ))
-        self.hgBookmarkOutgoingAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkOutgoingAct.setWhatsThis(self.tr(
             """<b>Show outgoing bookmarks</b>"""
             """<p>This shows a list of new bookmarks available at the local"""
             """ repository.</p>"""
         ))
-        self.hgBookmarkOutgoingAct.triggered[()].connect(
+        self.hgBookmarkOutgoingAct.triggered.connect(
             self.__hgBookmarkOutgoing)
         self.actions.append(self.hgBookmarkOutgoingAct)
         
         self.hgBookmarkPushAct = E5Action(
-            self.trUtf8('Push bookmark'),
+            self.tr('Push bookmark'),
             UI.PixmapCache.getIcon("pushBookmark.png"),
-            self.trUtf8('Push bookmark'),
+            self.tr('Push bookmark'),
             0, 0, self, 'mercurial_push_bookmark')
-        self.hgBookmarkPushAct.setStatusTip(self.trUtf8(
+        self.hgBookmarkPushAct.setStatusTip(self.tr(
             'Push a bookmark to a remote repository'
         ))
-        self.hgBookmarkPushAct.setWhatsThis(self.trUtf8(
+        self.hgBookmarkPushAct.setWhatsThis(self.tr(
             """<b>Push bookmark</b>"""
             """<p>This pushes a bookmark from the local repository to a """
             """remote repository.</p>"""
         ))
-        self.hgBookmarkPushAct.triggered[()].connect(self.__hgBookmarkPush)
+        self.hgBookmarkPushAct.triggered.connect(self.__hgBookmarkPush)
         self.actions.append(self.hgBookmarkPushAct)
     
     def initMenu(self, mainMenu):
@@ -198,15 +198,27 @@
         menu.addAction(self.hgBookmarkOutgoingAct)
         menu.addAction(self.hgBookmarkPushAct)
         
+        menu.aboutToShow.connect(self.__aboutToShowMenu)
+        
         return menu
     
+    def __aboutToShowMenu(self):
+        """
+        Private slot to handle the aboutToShow signal of the background menu.
+        """
+        self.hgBookmarkPullAct.setEnabled(self.vcs.canPull())
+        self.hgBookmarkIncomingAct.setEnabled(self.vcs.canPull())
+        
+        self.hgBookmarkPushAct.setEnabled(self.vcs.canPush())
+        self.hgBookmarkOutgoingAct.setEnabled(self.vcs.canPush())
+    
     def menuTitle(self):
         """
         Public method to get the menu title.
         
         @return title of the menu (string)
         """
-        return self.trUtf8("Bookmarks")
+        return self.tr("Bookmarks")
     
     def __hgBookmarksList(self):
         """

eric ide

mercurial