Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py

changeset 5513
2ccfb5077dd6
parent 5512
f148796813d4
child 5514
1aa13333eb9f
equal deleted inserted replaced
5512:f148796813d4 5513:2ccfb5077dd6
370 lambda: self.__selectAllActTriggered(False)) 370 lambda: self.__selectAllActTriggered(False))
371 371
372 self.actionsButton.setIcon( 372 self.actionsButton.setIcon(
373 UI.PixmapCache.getIcon("actionsToolButton.png")) 373 UI.PixmapCache.getIcon("actionsToolButton.png"))
374 self.actionsButton.setMenu(self.__actionsMenu) 374 self.actionsButton.setMenu(self.__actionsMenu)
375
376 # TODO: add action to apply viewed bundle file
375 377
376 def __actionsMenuHovered(self, action): 378 def __actionsMenuHovered(self, action):
377 """ 379 """
378 Private slot to show the tooltip for an action menu entry. 380 Private slot to show the tooltip for an action menu entry.
379 381
1524 self.__gpgVerifyAct.setEnabled( 1526 self.__gpgVerifyAct.setEnabled(
1525 self.vcs.isExtensionActive("gpg") and 1527 self.vcs.isExtensionActive("gpg") and
1526 selectedItemsCount == 1) 1528 selectedItemsCount == 1)
1527 1529
1528 self.actionsButton.setEnabled(True) 1530 self.actionsButton.setEnabled(True)
1531
1529 elif self.initialCommandMode == "incoming" and self.projectMode: 1532 elif self.initialCommandMode == "incoming" and self.projectMode:
1530 for act in [self.__phaseAct, self.__graftAct, self.__mergeAct, 1533 for act in [self.__phaseAct, self.__graftAct, self.__mergeAct,
1531 self.__tagAct, self.__switchAct, self.__bookmarkAct, 1534 self.__tagAct, self.__switchAct, self.__bookmarkAct,
1532 self.__bookmarkMoveAct, self.__pushAct, 1535 self.__bookmarkMoveAct, self.__pushAct,
1533 self.__pushAllAct, self.__stripAct, self.__bundleAct, 1536 self.__pushAllAct, self.__stripAct, self.__bundleAct,
1555 self.__pullAct.setEnabled(False) 1558 self.__pullAct.setEnabled(False)
1556 self.__lfPullAct.setEnabled(False) 1559 self.__lfPullAct.setEnabled(False)
1557 self.__fetchAct.setEnabled(False) 1560 self.__fetchAct.setEnabled(False)
1558 1561
1559 self.actionsButton.setEnabled(True) 1562 self.actionsButton.setEnabled(True)
1563
1564 elif self.initialCommandMode == "outgoing" and self.projectMode:
1565 for act in [self.__phaseAct, self.__graftAct, self.__mergeAct,
1566 self.__tagAct, self.__switchAct, self.__bookmarkAct,
1567 self.__bookmarkMoveAct, self.__pullAct,
1568 self.__lfPullAct, self.__fetchAct, self.__stripAct,
1569 self.__gpgSignAct, self.__gpgVerifyAct]:
1570 act.setEnabled(False)
1571
1572 selectedItemsCount = len(self.logTree.selectedItems())
1573 if self.vcs.canPush():
1574 self.__pushAct.setEnabled(
1575 selectedItemsCount == 1 and
1576 self.logTree.selectedItems()[0].text(self.PhaseColumn) ==
1577 self.phases["draft"])
1578 self.__pushAllAct.setEnabled(True)
1579 else:
1580 self.__pushAct.setEnabled(False)
1581 self.__pushAllAct.setEnabled(False)
1582
1583 self.__bundleAct.setEnabled(selectedItemsCount > 0)
1584
1560 else: 1585 else:
1561 self.actionsButton.setEnabled(False) 1586 self.actionsButton.setEnabled(False)
1562 # TODO: add code to enable menu in incoming / outgoing mode as well
1563 1587
1564 def __updateDetailsAndFiles(self): 1588 def __updateDetailsAndFiles(self):
1565 """ 1589 """
1566 Private slot to update the details and file changes panes. 1590 Private slot to update the details and file changes panes.
1567 """ 1591 """
2309 "revs": [str(rev) for rev in revs], 2333 "revs": [str(rev) for rev in revs],
2310 "base": str(baseRev), 2334 "base": str(baseRev),
2311 "all": False, 2335 "all": False,
2312 } 2336 }
2313 elif self.initialCommandMode == "outgoing": 2337 elif self.initialCommandMode == "outgoing":
2314 # TODO: implement bundle for outgoing mode 2338 selectedItems = self.logTree.selectedItems()
2315 pass 2339 if len(selectedItems) > 0:
2340 revs = []
2341 for itm in selectedItems:
2342 rev = itm.text(self.RevisionColumn).split(":", 1)[0]
2343 revs.append(rev.strip())
2344
2345 bundleData = {
2346 "revs": revs,
2347 "base": "",
2348 "all": False,
2349 }
2316 2350
2317 self.vcs.hgBundle(self.repodir, bundleData=bundleData) 2351 self.vcs.hgBundle(self.repodir, bundleData=bundleData)
2318 2352
2319 @pyqtSlot() 2353 @pyqtSlot()
2320 def __gpgSignActTriggered(self): 2354 def __gpgSignActTriggered(self):

eric ide

mercurial