Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py

changeset 5514
1aa13333eb9f
parent 5513
2ccfb5077dd6
child 5517
805b36a7ffb7
equal deleted inserted replaced
5513:2ccfb5077dd6 5514:1aa13333eb9f
337 """ revision is selected, it will be interpreted as the base""" 337 """ revision is selected, it will be interpreted as the base"""
338 """ revision. Otherwise the lowest revision will be used as""" 338 """ revision. Otherwise the lowest revision will be used as"""
339 """ the base revision and all other revision will be bundled.""" 339 """ the base revision and all other revision will be bundled."""
340 """ If the dialog is showing outgoing changesets, all""" 340 """ If the dialog is showing outgoing changesets, all"""
341 """ selected changesets will be bundled.</p>""")) 341 """ selected changesets will be bundled.</p>"""))
342 self.__unbundleAct = self.__actionsMenu.addAction(
343 UI.PixmapCache.getIcon("vcsApplyChangegroup.png"),
344 self.tr("Apply Changegroup"), self.__unbundleActTriggered)
345 self.__unbundleAct.setToolTip(self.tr(
346 "Apply the currently viewed changegroup file"))
342 347
343 self.__actionsMenu.addSeparator() 348 self.__actionsMenu.addSeparator()
344 349
345 self.__gpgSignAct = self.__actionsMenu.addAction( 350 self.__gpgSignAct = self.__actionsMenu.addAction(
346 UI.PixmapCache.getIcon("changesetSign.png"), 351 UI.PixmapCache.getIcon("changesetSign.png"),
370 lambda: self.__selectAllActTriggered(False)) 375 lambda: self.__selectAllActTriggered(False))
371 376
372 self.actionsButton.setIcon( 377 self.actionsButton.setIcon(
373 UI.PixmapCache.getIcon("actionsToolButton.png")) 378 UI.PixmapCache.getIcon("actionsToolButton.png"))
374 self.actionsButton.setMenu(self.__actionsMenu) 379 self.actionsButton.setMenu(self.__actionsMenu)
375
376 # TODO: add action to apply viewed bundle file
377 380
378 def __actionsMenuHovered(self, action): 381 def __actionsMenuHovered(self, action):
379 """ 382 """
380 Private slot to show the tooltip for an action menu entry. 383 Private slot to show the tooltip for an action menu entry.
381 384
1517 self.__stripAct.setEnabled( 1520 self.__stripAct.setEnabled(
1518 self.vcs.isExtensionActive("strip") and 1521 self.vcs.isExtensionActive("strip") and
1519 selectedItemsCount == 1) 1522 selectedItemsCount == 1)
1520 1523
1521 self.__bundleAct.setEnabled(self.logTree.topLevelItemCount() > 0) 1524 self.__bundleAct.setEnabled(self.logTree.topLevelItemCount() > 0)
1525 self.__unbundleAct.setEnabled(False)
1522 1526
1523 self.__gpgSignAct.setEnabled( 1527 self.__gpgSignAct.setEnabled(
1524 self.vcs.isExtensionActive("gpg") and 1528 self.vcs.isExtensionActive("gpg") and
1525 selectedItemsCount > 0) 1529 selectedItemsCount > 0)
1526 self.__gpgVerifyAct.setEnabled( 1530 self.__gpgVerifyAct.setEnabled(
1557 else: 1561 else:
1558 self.__pullAct.setEnabled(False) 1562 self.__pullAct.setEnabled(False)
1559 self.__lfPullAct.setEnabled(False) 1563 self.__lfPullAct.setEnabled(False)
1560 self.__fetchAct.setEnabled(False) 1564 self.__fetchAct.setEnabled(False)
1561 1565
1566 self.__unbundleAct.setEnabled(bool(self.__bundle))
1567
1562 self.actionsButton.setEnabled(True) 1568 self.actionsButton.setEnabled(True)
1563 1569
1564 elif self.initialCommandMode == "outgoing" and self.projectMode: 1570 elif self.initialCommandMode == "outgoing" and self.projectMode:
1565 for act in [self.__phaseAct, self.__graftAct, self.__mergeAct, 1571 for act in [self.__phaseAct, self.__graftAct, self.__mergeAct,
1566 self.__tagAct, self.__switchAct, self.__bookmarkAct, 1572 self.__tagAct, self.__switchAct, self.__bookmarkAct,
1567 self.__bookmarkMoveAct, self.__pullAct, 1573 self.__bookmarkMoveAct, self.__pullAct,
1568 self.__lfPullAct, self.__fetchAct, self.__stripAct, 1574 self.__lfPullAct, self.__fetchAct, self.__stripAct,
1569 self.__gpgSignAct, self.__gpgVerifyAct]: 1575 self.__gpgSignAct, self.__gpgVerifyAct,
1576 self.__unbundleAct]:
1570 act.setEnabled(False) 1577 act.setEnabled(False)
1571 1578
1572 selectedItemsCount = len(self.logTree.selectedItems()) 1579 selectedItemsCount = len(self.logTree.selectedItems())
1573 if self.vcs.canPush(): 1580 if self.vcs.canPush():
1574 self.__pushAct.setEnabled( 1581 self.__pushAct.setEnabled(
2349 } 2356 }
2350 2357
2351 self.vcs.hgBundle(self.repodir, bundleData=bundleData) 2358 self.vcs.hgBundle(self.repodir, bundleData=bundleData)
2352 2359
2353 @pyqtSlot() 2360 @pyqtSlot()
2361 def __unbundleActTriggered(self):
2362 """
2363 Private slot to apply the currently previewed bundle file.
2364 """
2365 if self.initialCommandMode == "incoming" and bool(self.__bundle):
2366 shouldReopen = self.vcs.hgUnbundle(self.repodir,
2367 files=[self.__bundle])
2368 if shouldReopen:
2369 res = E5MessageBox.yesNo(
2370 None,
2371 self.tr("Apply Changegroup"),
2372 self.tr("""The project should be reread. Do this now?"""),
2373 yesDefault=True)
2374 if res:
2375 e5App().getObject("Project").reopenProject()
2376 return
2377
2378 self.on_refreshButton_clicked()
2379
2380 @pyqtSlot()
2354 def __gpgSignActTriggered(self): 2381 def __gpgSignActTriggered(self):
2355 """ 2382 """
2356 Private slot to sign the selected revisions. 2383 Private slot to sign the selected revisions.
2357 """ 2384 """
2358 revs = [] 2385 revs = []

eric ide

mercurial