24 |
24 |
25 from VCS.VersionControl import VersionControl |
25 from VCS.VersionControl import VersionControl |
26 from VCS.RepositoryInfoDialog import VcsRepositoryInfoDialog |
26 from VCS.RepositoryInfoDialog import VcsRepositoryInfoDialog |
27 |
27 |
28 from .HgDialog import HgDialog |
28 from .HgDialog import HgDialog |
29 from .HgCommitDialog import HgCommitDialog |
|
30 from .HgOptionsDialog import HgOptionsDialog |
|
31 from .HgNewProjectOptionsDialog import HgNewProjectOptionsDialog |
|
32 from .HgCopyDialog import HgCopyDialog |
|
33 from .HgLogDialog import HgLogDialog |
|
34 from .HgLogBrowserDialog import HgLogBrowserDialog |
|
35 from .HgDiffDialog import HgDiffDialog |
|
36 from .HgRevisionsSelectionDialog import HgRevisionsSelectionDialog |
|
37 from .HgRevisionSelectionDialog import HgRevisionSelectionDialog |
|
38 from .HgMultiRevisionSelectionDialog import HgMultiRevisionSelectionDialog |
|
39 from .HgMergeDialog import HgMergeDialog |
|
40 from .HgStatusMonitorThread import HgStatusMonitorThread |
|
41 from .HgStatusDialog import HgStatusDialog |
|
42 from .HgAnnotateDialog import HgAnnotateDialog |
|
43 from .HgTagDialog import HgTagDialog |
|
44 from .HgTagBranchListDialog import HgTagBranchListDialog |
|
45 from .HgCommandDialog import HgCommandDialog |
|
46 from .HgBundleDialog import HgBundleDialog |
|
47 from .HgBackoutDialog import HgBackoutDialog |
|
48 from .HgServeDialog import HgServeDialog |
|
49 from .HgUtilities import getConfigPath |
|
50 from .HgClient import HgClient |
|
51 from .HgImportDialog import HgImportDialog |
|
52 from .HgExportDialog import HgExportDialog |
|
53 from .HgPhaseDialog import HgPhaseDialog |
|
54 from .HgGraftDialog import HgGraftDialog |
|
55 from .HgAddSubrepositoryDialog import HgAddSubrepositoryDialog |
|
56 from .HgRemoveSubrepositoriesDialog import HgRemoveSubrepositoriesDialog |
|
57 |
|
58 from .BookmarksExtension.bookmarks import Bookmarks |
|
59 from .QueuesExtension.queues import Queues |
|
60 from .FetchExtension.fetch import Fetch |
|
61 from .PurgeExtension.purge import Purge |
|
62 from .GpgExtension.gpg import Gpg |
|
63 from .TransplantExtension.transplant import Transplant |
|
64 from .RebaseExtension.rebase import Rebase |
|
65 |
|
66 from .ProjectBrowserHelper import HgProjectBrowserHelper |
|
67 |
|
68 from UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog |
|
69 |
29 |
70 import Preferences |
30 import Preferences |
71 import Utilities |
31 import Utilities |
72 |
32 |
73 |
33 |
149 |
109 |
150 self.__forgotNames = [] |
110 self.__forgotNames = [] |
151 |
111 |
152 self.__activeExtensions = [] |
112 self.__activeExtensions = [] |
153 |
113 |
|
114 from .HgUtilities import getConfigPath |
154 self.__iniWatcher = QFileSystemWatcher(self) |
115 self.__iniWatcher = QFileSystemWatcher(self) |
155 self.__iniWatcher.fileChanged.connect(self.__iniFileChanged) |
116 self.__iniWatcher.fileChanged.connect(self.__iniFileChanged) |
156 cfgFile = getConfigPath() |
117 cfgFile = getConfigPath() |
157 if os.path.exists(cfgFile): |
118 if os.path.exists(cfgFile): |
158 self.__iniWatcher.addPath(cfgFile) |
119 self.__iniWatcher.addPath(cfgFile) |
159 |
120 |
160 self.__client = None |
121 self.__client = None |
161 |
122 |
162 # instantiate the extensions |
123 # instantiate the extensions |
|
124 from .BookmarksExtension.bookmarks import Bookmarks |
|
125 from .QueuesExtension.queues import Queues |
|
126 from .FetchExtension.fetch import Fetch |
|
127 from .PurgeExtension.purge import Purge |
|
128 from .GpgExtension.gpg import Gpg |
|
129 from .TransplantExtension.transplant import Transplant |
|
130 from .RebaseExtension.rebase import Rebase |
163 self.__extensions = { |
131 self.__extensions = { |
164 "bookmarks": Bookmarks(self), |
132 "bookmarks": Bookmarks(self), |
165 "mq": Queues(self), |
133 "mq": Queues(self), |
166 "fetch": Fetch(self), |
134 "fetch": Fetch(self), |
167 "purge": Purge(self), |
135 "purge": Purge(self), |
408 msg = message |
376 msg = message |
409 |
377 |
410 if not noDialog and not msg: |
378 if not noDialog and not msg: |
411 # call CommitDialog and get message from there |
379 # call CommitDialog and get message from there |
412 if self.__commitDialog is None: |
380 if self.__commitDialog is None: |
|
381 from .HgCommitDialog import HgCommitDialog |
413 self.__commitDialog = HgCommitDialog(self, self.__ui) |
382 self.__commitDialog = HgCommitDialog(self, self.__ui) |
414 self.__commitDialog.accepted.connect(self.__vcsCommit_Step2) |
383 self.__commitDialog.accepted.connect(self.__vcsCommit_Step2) |
415 self.__commitDialog.show() |
384 self.__commitDialog.show() |
416 self.__commitDialog.raise_() |
385 self.__commitDialog.raise_() |
417 self.__commitDialog.activateWindow() |
386 self.__commitDialog.activateWindow() |
719 if target is None: |
688 if target is None: |
720 return False |
689 return False |
721 force = True |
690 force = True |
722 accepted = True |
691 accepted = True |
723 else: |
692 else: |
|
693 from .HgCopyDialog import HgCopyDialog |
724 dlg = HgCopyDialog(name, None, True, force) |
694 dlg = HgCopyDialog(name, None, True, force) |
725 accepted = dlg.exec_() == QDialog.Accepted |
695 accepted = dlg.exec_() == QDialog.Accepted |
726 if accepted: |
696 if accepted: |
727 target, force = dlg.getData() |
697 target, force = dlg.getData() |
728 |
698 |
790 bookmarksList = \ |
760 bookmarksList = \ |
791 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
761 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
792 else: |
762 else: |
793 bookmarksList = None |
763 bookmarksList = None |
794 |
764 |
|
765 from .HgMultiRevisionSelectionDialog import HgMultiRevisionSelectionDialog |
795 dlg = HgMultiRevisionSelectionDialog( |
766 dlg = HgMultiRevisionSelectionDialog( |
796 self.hgGetTagsList(repodir), |
767 self.hgGetTagsList(repodir), |
797 self.hgGetBranchesList(repodir), |
768 self.hgGetBranchesList(repodir), |
798 bookmarksList, |
769 bookmarksList, |
799 emptyRevsOk=True, |
770 emptyRevsOk=True, |
800 showLimit=True, |
771 showLimit=True, |
801 limitDefault=self.getPlugin().getPreferences("LogLimit")) |
772 limitDefault=self.getPlugin().getPreferences("LogLimit")) |
802 if dlg.exec_() == QDialog.Accepted: |
773 if dlg.exec_() == QDialog.Accepted: |
803 revs, noEntries = dlg.getRevisions() |
774 revs, noEntries = dlg.getRevisions() |
|
775 from .HgLogDialog import HgLogDialog |
804 self.log = HgLogDialog(self) |
776 self.log = HgLogDialog(self) |
805 self.log.show() |
777 self.log.show() |
806 self.log.start(name, noEntries=noEntries, revisions=revs) |
778 self.log.start(name, noEntries=noEntries, revisions=revs) |
807 |
779 |
808 def vcsDiff(self, name): |
780 def vcsDiff(self, name): |
827 return |
799 return |
828 else: |
800 else: |
829 project = e5App().getObject("Project") |
801 project = e5App().getObject("Project") |
830 if nam == project.ppath and not project.saveAllScripts(): |
802 if nam == project.ppath and not project.saveAllScripts(): |
831 return |
803 return |
|
804 from .HgDiffDialog import HgDiffDialog |
832 self.diff = HgDiffDialog(self) |
805 self.diff = HgDiffDialog(self) |
833 self.diff.show() |
806 self.diff.show() |
834 QApplication.processEvents() |
807 QApplication.processEvents() |
835 self.diff.start(name) |
808 self.diff.start(name) |
836 |
809 |
840 Mercurial repository. |
813 Mercurial repository. |
841 |
814 |
842 @param name file/directory name(s) to show the status of |
815 @param name file/directory name(s) to show the status of |
843 (string or list of strings) |
816 (string or list of strings) |
844 """ |
817 """ |
|
818 from .HgStatusDialog import HgStatusDialog |
845 self.status = HgStatusDialog(self) |
819 self.status = HgStatusDialog(self) |
846 self.status.show() |
820 self.status.show() |
847 self.status.start(name) |
821 self.status.start(name) |
848 |
822 |
849 def vcsTag(self, name): |
823 def vcsTag(self, name): |
859 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
833 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
860 repodir = os.path.dirname(repodir) |
834 repodir = os.path.dirname(repodir) |
861 if os.path.splitdrive(repodir)[1] == os.sep: |
835 if os.path.splitdrive(repodir)[1] == os.sep: |
862 return |
836 return |
863 |
837 |
|
838 from .HgTagDialog import HgTagDialog |
864 dlg = HgTagDialog(self.hgGetTagsList(repodir)) |
839 dlg = HgTagDialog(self.hgGetTagsList(repodir)) |
865 if dlg.exec_() == QDialog.Accepted: |
840 if dlg.exec_() == QDialog.Accepted: |
866 tag, tagOp = dlg.getParameters() |
841 tag, tagOp = dlg.getParameters() |
867 else: |
842 else: |
868 return |
843 return |
917 return False |
892 return False |
918 |
893 |
919 project = e5App().getObject("Project") |
894 project = e5App().getObject("Project") |
920 names = [project.getRelativePath(nam) for nam in names] |
895 names = [project.getRelativePath(nam) for nam in names] |
921 if names[0]: |
896 if names[0]: |
|
897 from UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog |
922 dlg = DeleteFilesConfirmationDialog(self.parent(), |
898 dlg = DeleteFilesConfirmationDialog(self.parent(), |
923 self.trUtf8("Revert changes"), |
899 self.trUtf8("Revert changes"), |
924 self.trUtf8("Do you really want to revert all changes to these files" |
900 self.trUtf8("Do you really want to revert all changes to these files" |
925 " or directories?"), |
901 " or directories?"), |
926 names) |
902 names) |
965 if self.isExtensionActive("bookmarks"): |
941 if self.isExtensionActive("bookmarks"): |
966 bookmarksList = \ |
942 bookmarksList = \ |
967 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
943 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
968 else: |
944 else: |
969 bookmarksList = None |
945 bookmarksList = None |
|
946 from .HgMergeDialog import HgMergeDialog |
970 dlg = HgMergeDialog(force, self.hgGetTagsList(repodir), |
947 dlg = HgMergeDialog(force, self.hgGetTagsList(repodir), |
971 self.hgGetBranchesList(repodir), |
948 self.hgGetBranchesList(repodir), |
972 bookmarksList) |
949 bookmarksList) |
973 if dlg.exec_() == QDialog.Accepted: |
950 if dlg.exec_() == QDialog.Accepted: |
974 rev, force = dlg.getParameters() |
951 rev, force = dlg.getParameters() |
1010 if self.isExtensionActive("bookmarks"): |
987 if self.isExtensionActive("bookmarks"): |
1011 bookmarksList = \ |
988 bookmarksList = \ |
1012 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
989 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
1013 else: |
990 else: |
1014 bookmarksList = None |
991 bookmarksList = None |
|
992 from .HgRevisionSelectionDialog import HgRevisionSelectionDialog |
1015 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
993 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
1016 self.hgGetBranchesList(repodir), |
994 self.hgGetBranchesList(repodir), |
1017 bookmarksList) |
995 bookmarksList) |
1018 if dlg.exec_() == QDialog.Accepted: |
996 if dlg.exec_() == QDialog.Accepted: |
1019 rev = dlg.getRevision() |
997 rev = dlg.getRevision() |
1214 """ |
1192 """ |
1215 Public method used to execute arbitrary mercurial commands. |
1193 Public method used to execute arbitrary mercurial commands. |
1216 |
1194 |
1217 @param name directory name of the working directory (string) |
1195 @param name directory name of the working directory (string) |
1218 """ |
1196 """ |
|
1197 from .HgCommandDialog import HgCommandDialog |
1219 dlg = HgCommandDialog(self.commandHistory, name) |
1198 dlg = HgCommandDialog(self.commandHistory, name) |
1220 if dlg.exec_() == QDialog.Accepted: |
1199 if dlg.exec_() == QDialog.Accepted: |
1221 command = dlg.getData() |
1200 command = dlg.getData() |
1222 commandList = Utilities.parseOptionString(command) |
1201 commandList = Utilities.parseOptionString(command) |
1223 |
1202 |
1249 @param project reference to the project object |
1228 @param project reference to the project object |
1250 @param archive name of the project in the repository (string) |
1229 @param archive name of the project in the repository (string) |
1251 @param editable flag indicating that the project name is editable (boolean) |
1230 @param editable flag indicating that the project name is editable (boolean) |
1252 @param parent parent widget (QWidget) |
1231 @param parent parent widget (QWidget) |
1253 """ |
1232 """ |
|
1233 from .HgOptionsDialog import HgOptionsDialog |
1254 return HgOptionsDialog(self, project, parent) |
1234 return HgOptionsDialog(self, project, parent) |
1255 |
1235 |
1256 def vcsNewProjectOptionsDialog(self, parent=None): |
1236 def vcsNewProjectOptionsDialog(self, parent=None): |
1257 """ |
1237 """ |
1258 Public method to get a dialog to enter repository info for getting a new project. |
1238 Public method to get a dialog to enter repository info for getting a new project. |
1259 |
1239 |
1260 @param parent parent widget (QWidget) |
1240 @param parent parent widget (QWidget) |
1261 """ |
1241 """ |
|
1242 from .HgNewProjectOptionsDialog import HgNewProjectOptionsDialog |
1262 return HgNewProjectOptionsDialog(self, parent) |
1243 return HgNewProjectOptionsDialog(self, parent) |
1263 |
1244 |
1264 def vcsRepositoryInfos(self, ppath): |
1245 def vcsRepositoryInfos(self, ppath): |
1265 """ |
1246 """ |
1266 Public method to retrieve information about the repository. |
1247 Public method to retrieve information about the repository. |
1405 |
1386 |
1406 @param name file/directory name to be copied (string) |
1387 @param name file/directory name to be copied (string) |
1407 @param project reference to the project object |
1388 @param project reference to the project object |
1408 @return flag indicating successful operation (boolean) |
1389 @return flag indicating successful operation (boolean) |
1409 """ |
1390 """ |
|
1391 from .HgCopyDialog import HgCopyDialog |
1410 dlg = HgCopyDialog(name) |
1392 dlg = HgCopyDialog(name) |
1411 res = False |
1393 res = False |
1412 if dlg.exec_() == QDialog.Accepted: |
1394 if dlg.exec_() == QDialog.Accepted: |
1413 target, force = dlg.getData() |
1395 target, force = dlg.getData() |
1414 |
1396 |
1531 |
1513 |
1532 @param path directory name of the project (string) |
1514 @param path directory name of the project (string) |
1533 @param tags flag indicating listing of branches or tags |
1515 @param tags flag indicating listing of branches or tags |
1534 (False = branches, True = tags) |
1516 (False = branches, True = tags) |
1535 """ |
1517 """ |
|
1518 from .HgTagBranchListDialog import HgTagBranchListDialog |
1536 self.tagbranchList = HgTagBranchListDialog(self) |
1519 self.tagbranchList = HgTagBranchListDialog(self) |
1537 self.tagbranchList.show() |
1520 self.tagbranchList.show() |
1538 if tags: |
1521 if tags: |
1539 if not self.showedTags: |
1522 if not self.showedTags: |
1540 self.showedTags = True |
1523 self.showedTags = True |
1558 """ |
1541 """ |
1559 Public method to show the output of the hg annotate command. |
1542 Public method to show the output of the hg annotate command. |
1560 |
1543 |
1561 @param name file name to show the annotations for (string) |
1544 @param name file name to show the annotations for (string) |
1562 """ |
1545 """ |
|
1546 from .HgAnnotateDialog import HgAnnotateDialog |
1563 self.annotate = HgAnnotateDialog(self) |
1547 self.annotate = HgAnnotateDialog(self) |
1564 self.annotate.show() |
1548 self.annotate.show() |
1565 self.annotate.start(name) |
1549 self.annotate.start(name) |
1566 |
1550 |
1567 def hgExtendedDiff(self, name): |
1551 def hgExtendedDiff(self, name): |
1603 if self.isExtensionActive("bookmarks"): |
1587 if self.isExtensionActive("bookmarks"): |
1604 bookmarksList = \ |
1588 bookmarksList = \ |
1605 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
1589 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
1606 else: |
1590 else: |
1607 bookmarksList = None |
1591 bookmarksList = None |
|
1592 from .HgRevisionsSelectionDialog import HgRevisionsSelectionDialog |
1608 dlg = HgRevisionsSelectionDialog(self.hgGetTagsList(repodir), |
1593 dlg = HgRevisionsSelectionDialog(self.hgGetTagsList(repodir), |
1609 self.hgGetBranchesList(repodir), |
1594 self.hgGetBranchesList(repodir), |
1610 bookmarksList) |
1595 bookmarksList) |
1611 if dlg.exec_() == QDialog.Accepted: |
1596 if dlg.exec_() == QDialog.Accepted: |
1612 revisions = dlg.getRevisions() |
1597 revisions = dlg.getRevisions() |
|
1598 from .HgDiffDialog import HgDiffDialog |
1613 self.diff = HgDiffDialog(self) |
1599 self.diff = HgDiffDialog(self) |
1614 self.diff.show() |
1600 self.diff.show() |
1615 self.diff.start(name, revisions) |
1601 self.diff.start(name, revisions) |
1616 |
1602 |
1617 def hgLogBrowser(self, path): |
1603 def hgLogBrowser(self, path): |
1619 Public method used to browse the log of a file/directory from the |
1605 Public method used to browse the log of a file/directory from the |
1620 Mercurial repository. |
1606 Mercurial repository. |
1621 |
1607 |
1622 @param path file/directory name to show the log of (string) |
1608 @param path file/directory name to show the log of (string) |
1623 """ |
1609 """ |
|
1610 from .HgLogBrowserDialog import HgLogBrowserDialog |
1624 self.logBrowser = HgLogBrowserDialog(self) |
1611 self.logBrowser = HgLogBrowserDialog(self) |
1625 self.logBrowser.show() |
1612 self.logBrowser.show() |
1626 self.logBrowser.start(path) |
1613 self.logBrowser.start(path) |
1627 |
1614 |
1628 def hgIncoming(self, name): |
1615 def hgIncoming(self, name): |
1631 Mercurial repository. |
1618 Mercurial repository. |
1632 |
1619 |
1633 @param name file/directory name to show the log of (string) |
1620 @param name file/directory name to show the log of (string) |
1634 """ |
1621 """ |
1635 if self.getPlugin().getPreferences("UseLogBrowser"): |
1622 if self.getPlugin().getPreferences("UseLogBrowser"): |
|
1623 from .HgLogBrowserDialog import HgLogBrowserDialog |
1636 self.logBrowser = HgLogBrowserDialog(self, mode="incoming") |
1624 self.logBrowser = HgLogBrowserDialog(self, mode="incoming") |
1637 self.logBrowser.show() |
1625 self.logBrowser.show() |
1638 self.logBrowser.start(name) |
1626 self.logBrowser.start(name) |
1639 else: |
1627 else: |
|
1628 from .HgLogDialog import HgLogDialog |
1640 self.log = HgLogDialog(self, mode="incoming") |
1629 self.log = HgLogDialog(self, mode="incoming") |
1641 self.log.show() |
1630 self.log.show() |
1642 self.log.start(name) |
1631 self.log.start(name) |
1643 |
1632 |
1644 def hgOutgoing(self, name): |
1633 def hgOutgoing(self, name): |
1647 Mercurial repository. |
1636 Mercurial repository. |
1648 |
1637 |
1649 @param name file/directory name to show the log of (string) |
1638 @param name file/directory name to show the log of (string) |
1650 """ |
1639 """ |
1651 if self.getPlugin().getPreferences("UseLogBrowser"): |
1640 if self.getPlugin().getPreferences("UseLogBrowser"): |
|
1641 from .HgLogBrowserDialog import HgLogBrowserDialog |
1652 self.logBrowser = HgLogBrowserDialog(self, mode="outgoing") |
1642 self.logBrowser = HgLogBrowserDialog(self, mode="outgoing") |
1653 self.logBrowser.show() |
1643 self.logBrowser.show() |
1654 self.logBrowser.start(name) |
1644 self.logBrowser.start(name) |
1655 else: |
1645 else: |
|
1646 from .HgLogDialog import HgLogDialog |
1656 self.log = HgLogDialog(self, mode="outgoing") |
1647 self.log = HgLogDialog(self, mode="outgoing") |
1657 self.log.show() |
1648 self.log.show() |
1658 self.log.start(name) |
1649 self.log.start(name) |
1659 |
1650 |
1660 def hgPull(self, name): |
1651 def hgPull(self, name): |
1907 |
1898 |
1908 def hgEditUserConfig(self): |
1899 def hgEditUserConfig(self): |
1909 """ |
1900 """ |
1910 Public method used to edit the user configuration file. |
1901 Public method used to edit the user configuration file. |
1911 """ |
1902 """ |
|
1903 from .HgUtilities import getConfigPath |
1912 cfgFile = getConfigPath() |
1904 cfgFile = getConfigPath() |
1913 if not os.path.exists(cfgFile): |
1905 if not os.path.exists(cfgFile): |
1914 try: |
1906 try: |
1915 f = open(cfgFile, "w") |
1907 f = open(cfgFile, "w") |
1916 f.close() |
1908 f.close() |
2137 if self.isExtensionActive("bookmarks"): |
2129 if self.isExtensionActive("bookmarks"): |
2138 bookmarksList = \ |
2130 bookmarksList = \ |
2139 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2131 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2140 else: |
2132 else: |
2141 bookmarksList = None |
2133 bookmarksList = None |
|
2134 from .HgBundleDialog import HgBundleDialog |
2142 dlg = HgBundleDialog(self.hgGetTagsList(repodir), |
2135 dlg = HgBundleDialog(self.hgGetTagsList(repodir), |
2143 self.hgGetBranchesList(repodir), |
2136 self.hgGetBranchesList(repodir), |
2144 bookmarksList) |
2137 bookmarksList) |
2145 if dlg.exec_() == QDialog.Accepted: |
2138 if dlg.exec_() == QDialog.Accepted: |
2146 revs, baseRevs, compression, all = dlg.getParameters() |
2139 revs, baseRevs, compression, all = dlg.getParameters() |
2213 self.trUtf8("Preview changegroup"), |
2206 self.trUtf8("Preview changegroup"), |
2214 repodir, |
2207 repodir, |
2215 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2208 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2216 if file: |
2209 if file: |
2217 if self.getPlugin().getPreferences("UseLogBrowser"): |
2210 if self.getPlugin().getPreferences("UseLogBrowser"): |
|
2211 from .HgLogBrowserDialog import HgLogBrowserDialog |
2218 self.logBrowser = \ |
2212 self.logBrowser = \ |
2219 HgLogBrowserDialog(self, mode="incoming", bundle=file) |
2213 HgLogBrowserDialog(self, mode="incoming", bundle=file) |
2220 self.logBrowser.show() |
2214 self.logBrowser.show() |
2221 self.logBrowser.start(name) |
2215 self.logBrowser.start(name) |
2222 else: |
2216 else: |
|
2217 from .HgLogDialog import HgLogDialog |
2223 self.log = HgLogDialog(self, mode="incoming", bundle=file) |
2218 self.log = HgLogDialog(self, mode="incoming", bundle=file) |
2224 self.log.show() |
2219 self.log.show() |
2225 self.log.start(name) |
2220 self.log.start(name) |
2226 |
2221 |
2227 def hgIdentifyBundle(self, name): |
2222 def hgIdentifyBundle(self, name): |
2324 if self.isExtensionActive("bookmarks"): |
2319 if self.isExtensionActive("bookmarks"): |
2325 bookmarksList = \ |
2320 bookmarksList = \ |
2326 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2321 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2327 else: |
2322 else: |
2328 bookmarksList = None |
2323 bookmarksList = None |
|
2324 from .HgRevisionSelectionDialog import HgRevisionSelectionDialog |
2329 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
2325 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
2330 self.hgGetBranchesList(repodir), |
2326 self.hgGetBranchesList(repodir), |
2331 bookmarksList, |
2327 bookmarksList, |
2332 showNone=True) |
2328 showNone=True) |
2333 if dlg.exec_() == QDialog.Accepted: |
2329 if dlg.exec_() == QDialog.Accepted: |
2401 if self.isExtensionActive("bookmarks"): |
2397 if self.isExtensionActive("bookmarks"): |
2402 bookmarksList = \ |
2398 bookmarksList = \ |
2403 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2399 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
2404 else: |
2400 else: |
2405 bookmarksList = None |
2401 bookmarksList = None |
|
2402 from .HgBackoutDialog import HgBackoutDialog |
2406 dlg = HgBackoutDialog(self.hgGetTagsList(repodir), |
2403 dlg = HgBackoutDialog(self.hgGetTagsList(repodir), |
2407 self.hgGetBranchesList(repodir), |
2404 self.hgGetBranchesList(repodir), |
2408 bookmarksList) |
2405 bookmarksList) |
2409 if dlg.exec_() == QDialog.Accepted: |
2406 if dlg.exec_() == QDialog.Accepted: |
2410 rev, merge, date, user, message = dlg.getParameters() |
2407 rev, merge, date, user, message = dlg.getParameters() |
2472 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2469 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2473 repodir = os.path.dirname(repodir) |
2470 repodir = os.path.dirname(repodir) |
2474 if os.path.splitdrive(repodir)[1] == os.sep: |
2471 if os.path.splitdrive(repodir)[1] == os.sep: |
2475 return |
2472 return |
2476 |
2473 |
|
2474 from .HgServeDialog import HgServeDialog |
2477 self.serveDlg = HgServeDialog(self, repodir) |
2475 self.serveDlg = HgServeDialog(self, repodir) |
2478 self.serveDlg.show() |
2476 self.serveDlg.show() |
2479 |
2477 |
2480 def hgImport(self, name): |
2478 def hgImport(self, name): |
2481 """ |
2479 """ |
2492 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2490 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2493 repodir = os.path.dirname(repodir) |
2491 repodir = os.path.dirname(repodir) |
2494 if os.path.splitdrive(repodir)[1] == os.sep: |
2492 if os.path.splitdrive(repodir)[1] == os.sep: |
2495 return |
2493 return |
2496 |
2494 |
|
2495 from .HgImportDialog import HgImportDialog |
2497 dlg = HgImportDialog() |
2496 dlg = HgImportDialog() |
2498 if dlg.exec_() == QDialog.Accepted: |
2497 if dlg.exec_() == QDialog.Accepted: |
2499 patchFile, noCommit, message, date, user, stripCount, force = \ |
2498 patchFile, noCommit, message, date, user, stripCount, force = \ |
2500 dlg.getParameters() |
2499 dlg.getParameters() |
2501 |
2500 |
2545 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2544 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2546 repodir = os.path.dirname(repodir) |
2545 repodir = os.path.dirname(repodir) |
2547 if os.path.splitdrive(repodir)[1] == os.sep: |
2546 if os.path.splitdrive(repodir)[1] == os.sep: |
2548 return |
2547 return |
2549 |
2548 |
|
2549 from .HgExportDialog import HgExportDialog |
2550 dlg = HgExportDialog() |
2550 dlg = HgExportDialog() |
2551 if dlg.exec_() == QDialog.Accepted: |
2551 if dlg.exec_() == QDialog.Accepted: |
2552 filePattern, revisions, switchParent, allText, noDates, git = \ |
2552 filePattern, revisions, switchParent, allText, noDates, git = \ |
2553 dlg.getParameters() |
2553 dlg.getParameters() |
2554 |
2554 |
2590 repodir = os.path.dirname(repodir) |
2590 repodir = os.path.dirname(repodir) |
2591 if os.path.splitdrive(repodir)[1] == os.sep: |
2591 if os.path.splitdrive(repodir)[1] == os.sep: |
2592 return False |
2592 return False |
2593 |
2593 |
2594 if data is None: |
2594 if data is None: |
|
2595 from .HgPhaseDialog import HgPhaseDialog |
2595 dlg = HgPhaseDialog() |
2596 dlg = HgPhaseDialog() |
2596 if dlg.exec_() == QDialog.Accepted: |
2597 if dlg.exec_() == QDialog.Accepted: |
2597 data = dlg.getData() |
2598 data = dlg.getData() |
2598 |
2599 |
2599 if data: |
2600 if data: |
2636 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2637 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2637 repodir = os.path.dirname(repodir) |
2638 repodir = os.path.dirname(repodir) |
2638 if os.path.splitdrive(repodir)[1] == os.sep: |
2639 if os.path.splitdrive(repodir)[1] == os.sep: |
2639 return False |
2640 return False |
2640 |
2641 |
|
2642 from .HgGraftDialog import HgGraftDialog |
2641 res = False |
2643 res = False |
2642 dlg = HgGraftDialog(self) |
2644 dlg = HgGraftDialog(self) |
2643 if dlg.exec_() == QDialog.Accepted: |
2645 if dlg.exec_() == QDialog.Accepted: |
2644 revs, (userData, currentUser, userName), \ |
2646 revs, (userData, currentUser, userName), \ |
2645 (dateData, currentDate, dateStr), log, dryrun = dlg.getData() |
2647 (dateData, currentDate, dateStr), log, dryrun = dlg.getData() |
2725 |
2727 |
2726 def hgAddSubrepository(self): |
2728 def hgAddSubrepository(self): |
2727 """ |
2729 """ |
2728 Public method to add a sub-repository. |
2730 Public method to add a sub-repository. |
2729 """ |
2731 """ |
|
2732 from .HgAddSubrepositoryDialog import HgAddSubrepositoryDialog |
2730 ppath = self.__projectHelper.getProject().getProjectPath() |
2733 ppath = self.__projectHelper.getProject().getProjectPath() |
2731 hgsub = self.getHgSubPath() |
2734 hgsub = self.getHgSubPath() |
2732 dlg = HgAddSubrepositoryDialog(ppath) |
2735 dlg = HgAddSubrepositoryDialog(ppath) |
2733 if dlg.exec_() == QDialog.Accepted: |
2736 if dlg.exec_() == QDialog.Accepted: |
2734 relPath, subrepoType, subrepoUrl = dlg.getData() |
2737 relPath, subrepoType, subrepoUrl = dlg.getData() |
2807 self.trUtf8("""<p>The sub-repositories file .hgsub could not""" |
2810 self.trUtf8("""<p>The sub-repositories file .hgsub could not""" |
2808 """ be read.</p><p>Reason: {0}</p>""") |
2811 """ be read.</p><p>Reason: {0}</p>""") |
2809 .format(str(err))) |
2812 .format(str(err))) |
2810 return |
2813 return |
2811 |
2814 |
|
2815 from .HgRemoveSubrepositoriesDialog import HgRemoveSubrepositoriesDialog |
2812 dlg = HgRemoveSubrepositoriesDialog(subrepositories) |
2816 dlg = HgRemoveSubrepositoriesDialog(subrepositories) |
2813 if dlg.exec_() == QDialog.Accepted: |
2817 if dlg.exec_() == QDialog.Accepted: |
2814 subrepositories, removedSubrepos, deleteSubrepos = dlg.getData() |
2818 subrepositories, removedSubrepos, deleteSubrepos = dlg.getData() |
2815 contents = "\n".join(subrepositories) + "\n" |
2819 contents = "\n".join(subrepositories) + "\n" |
2816 try: |
2820 try: |
2945 @param project reference to the project object |
2949 @param project reference to the project object |
2946 @param isTranslationsBrowser flag indicating, the helper is requested for the |
2950 @param isTranslationsBrowser flag indicating, the helper is requested for the |
2947 translations browser (this needs some special treatment) |
2951 translations browser (this needs some special treatment) |
2948 @return the project browser helper object |
2952 @return the project browser helper object |
2949 """ |
2953 """ |
|
2954 from .ProjectBrowserHelper import HgProjectBrowserHelper |
2950 return HgProjectBrowserHelper(self, browser, project, isTranslationsBrowser) |
2955 return HgProjectBrowserHelper(self, browser, project, isTranslationsBrowser) |
2951 |
2956 |
2952 def vcsGetProjectHelper(self, project): |
2957 def vcsGetProjectHelper(self, project): |
2953 """ |
2958 """ |
2954 Public method to instantiate a helper object for the project. |
2959 Public method to instantiate a helper object for the project. |
2967 repodir = os.path.dirname(repodir) |
2972 repodir = os.path.dirname(repodir) |
2968 if not repodir or os.path.splitdrive(repodir)[1] == os.sep: |
2973 if not repodir or os.path.splitdrive(repodir)[1] == os.sep: |
2969 repodir = "" |
2974 repodir = "" |
2970 break |
2975 break |
2971 if repodir: |
2976 if repodir: |
|
2977 from .HgClient import HgClient |
2972 client = HgClient(repodir, "utf-8", self) |
2978 client = HgClient(repodir, "utf-8", self) |
2973 ok, err = client.startServer() |
2979 ok, err = client.startServer() |
2974 if ok: |
2980 if ok: |
2975 self.__client = client |
2981 self.__client = client |
2976 else: |
2982 else: |
2991 |
2997 |
2992 @param project reference to the project object (Project) |
2998 @param project reference to the project object (Project) |
2993 @param interval check interval for the monitor thread in seconds (integer) |
2999 @param interval check interval for the monitor thread in seconds (integer) |
2994 @return reference to the monitor thread (QThread) |
3000 @return reference to the monitor thread (QThread) |
2995 """ |
3001 """ |
|
3002 from .HgStatusMonitorThread import HgStatusMonitorThread |
2996 return HgStatusMonitorThread(interval, project, self) |
3003 return HgStatusMonitorThread(interval, project, self) |