Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py

changeset 5270
7758f0c7d9f6
parent 5104
0b9420dc1093
child 5276
c8055cb37262
equal deleted inserted replaced
5268:748e4c50523b 5270:7758f0c7d9f6
210 "Pull changes from a remote repository")) 210 "Pull changes from a remote repository"))
211 self.__lfPullAct = self.__actionsMenu.addAction( 211 self.__lfPullAct = self.__actionsMenu.addAction(
212 self.tr("Pull Large Files"), self.__lfPullActTriggered) 212 self.tr("Pull Large Files"), self.__lfPullActTriggered)
213 self.__lfPullAct.setToolTip(self.tr( 213 self.__lfPullAct.setToolTip(self.tr(
214 "Pull large files for selected revisions")) 214 "Pull large files for selected revisions"))
215 self.__fetchAct = self.__actionsMenu.addAction(
216 self.tr("Fetch Changes"), self.__fetchActTriggered)
215 217
216 self.__actionsMenu.addSeparator() 218 self.__actionsMenu.addSeparator()
217 219
218 self.__pushAct = self.__actionsMenu.addAction( 220 self.__pushAct = self.__actionsMenu.addAction(
219 self.tr("Push Selected Changes"), self.__pushActTriggered) 221 self.tr("Push Selected Changes"), self.__pushActTriggered)
222 " to a remote repository")) 224 " to a remote repository"))
223 self.__pushAllAct = self.__actionsMenu.addAction( 225 self.__pushAllAct = self.__actionsMenu.addAction(
224 self.tr("Push All Changes"), self.__pushAllActTriggered) 226 self.tr("Push All Changes"), self.__pushAllActTriggered)
225 self.__pushAllAct.setToolTip(self.tr( 227 self.__pushAllAct.setToolTip(self.tr(
226 "Push all changes to a remote repository")) 228 "Push all changes to a remote repository"))
229
230 self.__actionsMenu.addSeparator()
231
232 self.__stripAct = self.__actionsMenu.addAction(
233 self.tr("Strip Changesets"), self.__stripActTriggered)
227 234
228 self.actionsButton.setIcon( 235 self.actionsButton.setIcon(
229 UI.PixmapCache.getIcon("actionsToolButton.png")) 236 UI.PixmapCache.getIcon("actionsToolButton.png"))
230 self.actionsButton.setMenu(self.__actionsMenu) 237 self.actionsButton.setMenu(self.__actionsMenu)
231 238
1231 self.__graftAct.setEnabled(otherBranches > 0) 1238 self.__graftAct.setEnabled(otherBranches > 0)
1232 1239
1233 self.__tagAct.setEnabled(len(self.logTree.selectedItems()) == 1) 1240 self.__tagAct.setEnabled(len(self.logTree.selectedItems()) == 1)
1234 self.__switchAct.setEnabled(len(self.logTree.selectedItems()) == 1) 1241 self.__switchAct.setEnabled(len(self.logTree.selectedItems()) == 1)
1235 1242
1236 if self.__lfPullAct is not None: 1243 if self.vcs.canPull():
1237 if self.vcs.isExtensionActive("largefiles"): 1244 self.__pullAct.setEnabled(True)
1238 self.__lfPullAct.setEnabled(bool( 1245 self.__lfPullAct.setEnabled(
1239 self.logTree.selectedItems())) 1246 self.vcs.isExtensionActive("largefiles") and
1240 else: 1247 bool(self.logTree.selectedItems()))
1241 self.__lfPullAct.setEnabled(False) 1248 self.__fetchAct.setEnabled(
1242 1249 self.vcs.isExtensionActive("fetch"))
1243 self.__pushAct.setEnabled( 1250 else:
1244 len(self.logTree.selectedItems()) == 1 and 1251 self.__pullAct.setEnabled(False)
1245 self.logTree.selectedItems()[0].text(self.PhaseColumn) == 1252 self.__lfPullAct.setEnabled(False)
1246 self.phases["draft"]) 1253 self.__fetchAct.setEnabled(False)
1254
1255 if self.vcs.canPush():
1256 self.__pushAct.setEnabled(
1257 len(self.logTree.selectedItems()) == 1 and
1258 self.logTree.selectedItems()[0].text(self.PhaseColumn) ==
1259 self.phases["draft"])
1260 self.__pushAllAct.setEnabled(True)
1261 else:
1262 self.__pushAct.setEnabled(False)
1263 self.__pushAllAct.setEnabled(False)
1264
1265 self.__stripAct.setEnabled(
1266 self.vcs.isExtensionActive("strip") and
1267 len(self.logTree.selectedItems()) == 1)
1247 1268
1248 self.actionsButton.setEnabled(True) 1269 self.actionsButton.setEnabled(True)
1249 else: 1270 else:
1250 self.actionsButton.setEnabled(False) 1271 self.actionsButton.setEnabled(False)
1251 1272
1714 if revs: 1735 if revs:
1715 self.vcs.getExtensionObject("largefiles").hgLfPull( 1736 self.vcs.getExtensionObject("largefiles").hgLfPull(
1716 self.repodir, revisions=revs) 1737 self.repodir, revisions=revs)
1717 1738
1718 @pyqtSlot() 1739 @pyqtSlot()
1740 def __fetchActTriggered(self):
1741 """
1742 Private slot to fetch changes from a remote repository.
1743 """
1744 self.vcs.getExtensionObject("fetch").hgFetch(self.repodir)
1745 self.on_refreshButton_clicked()
1746
1747 @pyqtSlot()
1719 def __pullActTriggered(self): 1748 def __pullActTriggered(self):
1720 """ 1749 """
1721 Private slot to pull changes from a remote repository. 1750 Private slot to pull changes from a remote repository.
1722 """ 1751 """
1723 self.vcs.hgPull(self.repodir) 1752 self.vcs.hgPull(self.repodir)
1739 def __pushAllActTriggered(self): 1768 def __pushAllActTriggered(self):
1740 """ 1769 """
1741 Private slot to push all changes to a remote repository. 1770 Private slot to push all changes to a remote repository.
1742 """ 1771 """
1743 self.vcs.hgPush(self.repodir) 1772 self.vcs.hgPush(self.repodir)
1773 self.on_refreshButton_clicked()
1774
1775 @pyqtSlot()
1776 def __stripActTriggered(self):
1777 """
1778 Private slot to strip changesets from the repository.
1779 """
1780 itm = self.logTree.selectedItems()[0]
1781 rev = itm.text(self.RevisionColumn).strip().split(":", 1)[1]
1782 self.vcs.getExtensionObject("strip").hgStrip(self.repodir, rev=rev)
1744 self.on_refreshButton_clicked() 1783 self.on_refreshButton_clicked()
1745 1784
1746 def __actionMode(self): 1785 def __actionMode(self):
1747 """ 1786 """
1748 Private method to get the selected action mode. 1787 Private method to get the selected action mode.

eric ide

mercurial