eric6/Plugins/VcsPlugins/vcsMercurial/HgSummaryDialog.py

Sat, 21 Sep 2019 22:03:03 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 21 Sep 2019 22:03:03 +0200
changeset 7257
c4d0cac9b5c9
parent 7229
53054eb5b15a
child 7360
9190402e4505
permissions
-rw-r--r--

Continued to resolve code style issue M841.

2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
6645
ad476851d7e0 Updated copyright for 2019.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
3 # Copyright (c) 2013 - 2019 Detlev Offenbach <detlev@die-offenbachs.de>
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to show some summary information of the working
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 directory state.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10
2847
1843ef6e2656 Merge with default branch.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2827
diff changeset
11
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import os
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
3656
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3591
diff changeset
14 from PyQt5.QtCore import pyqtSlot, QProcess, QTimer
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3591
diff changeset
15 from PyQt5.QtWidgets import QDialog, QDialogButtonBox
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 from E5Gui import E5MessageBox
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18
2816
05aab5164d64 A little optimization for the Mercurial interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2813
diff changeset
19 from .HgUtilities import prepareProcess
05aab5164d64 A little optimization for the Mercurial interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2813
diff changeset
20
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 from .Ui_HgSummaryDialog import Ui_HgSummaryDialog
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 class HgSummaryDialog(QDialog, Ui_HgSummaryDialog):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 Class implementing a dialog to show some summary information of the working
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 directory state.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 def __init__(self, vcs, parent=None):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 Constructor
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 @param vcs reference to the vcs object
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 @param parent parent widget (QWidget)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 """
2847
1843ef6e2656 Merge with default branch.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2827
diff changeset
36 super(HgSummaryDialog, self).__init__(parent)
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.setupUi(self)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
39 self.refreshButton = self.buttonBox.addButton(
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
40 self.tr("Refresh"), QDialogButtonBox.ActionRole)
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
41 self.refreshButton.setToolTip(
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
42 self.tr("Press to refresh the summary display"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 self.refreshButton.setEnabled(False)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.vcs = vcs
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 self.vcs.committed.connect(self.__committed)
4126
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
47
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
48 self.process = QProcess()
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
49 prepareProcess(self.process, language="C")
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
50 self.process.finished.connect(self.__procFinished)
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
51 self.process.readyReadStandardOutput.connect(self.__readStdout)
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
52 self.process.readyReadStandardError.connect(self.__readStderr)
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 def closeEvent(self, e):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 """
3591
2f2a4a76dd22 Corrected a bunch of source docu issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
56 Protected slot implementing a close event handler.
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 @param e close event (QCloseEvent)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 """
7257
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
60 if (
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
61 self.process is not None and
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
62 self.process.state() != QProcess.NotRunning
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
63 ):
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 self.process.terminate()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 QTimer.singleShot(2000, self.process.kill)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 self.process.waitForFinished(3000)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 e.accept()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
70 def start(self, path, mq=False, largefiles=False):
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 Public slot to start the hg summary command.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 @param path path name of the working directory (string)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 @param mq flag indicating to show the queue status as well (boolean)
3359
6b6c224d67d6 Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3315
diff changeset
76 @param largefiles flag indicating to show the largefiles status as
6b6c224d67d6 Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3315
diff changeset
77 well (boolean)
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 self.errorGroup.hide()
4126
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
80 self.refreshButton.setEnabled(False)
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
81 self.summary.clear()
c28d0cf3b639 Some changes to the various VCS interfaces to use one dialog instead of creating a new one each time.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4021
diff changeset
82
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 self.__path = path
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 self.__mq = mq
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
85 self.__largefiles = largefiles
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86
3302
e92f0dd51979 Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3218
diff changeset
87 args = self.vcs.initCommand("summary")
3396
5320ecd70fdb Added support for Mercurial queues summary.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3359
diff changeset
88 if self.vcs.canPull():
5320ecd70fdb Added support for Mercurial queues summary.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3359
diff changeset
89 args.append("--remote")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 if self.__mq:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 args.append("--mq")
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
92 if self.__largefiles:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
93 args.append("--large")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 # find the root of the repo
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 repodir = self.__path
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 while not os.path.isdir(os.path.join(repodir, self.vcs.adminDir)):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 repodir = os.path.dirname(repodir)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 if os.path.splitdrive(repodir)[1] == os.sep:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 return
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 if self.process:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 self.process.kill()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 self.process.setWorkingDirectory(repodir)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 self.__buffer = []
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 self.process.start('hg', args)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 procStarted = self.process.waitForStarted(5000)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 if not procStarted:
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3008
diff changeset
112 E5MessageBox.critical(
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3008
diff changeset
113 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
114 self.tr('Process Generation Error'),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
115 self.tr(
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 'The process {0} could not be started. '
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 'Ensure, that it is in the search path.'
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 ).format('hg'))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 def __finish(self):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 """
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
122 Private slot called when the process finished or the user pressed
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
123 the button.
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 """
7257
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
125 if (
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
126 self.process is not None and
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
127 self.process.state() != QProcess.NotRunning
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
128 ):
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 self.process.terminate()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
130 QTimer.singleShot(2000, self.process.kill)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
131 self.process.waitForFinished(3000)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 self.refreshButton.setEnabled(True)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 def on_buttonBox_clicked(self, button):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 Private slot called by a button of the button box clicked.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 @param button button that was clicked (QAbstractButton)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141 if button == self.buttonBox.button(QDialogButtonBox.Close):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 self.close()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 elif button == self.refreshButton:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 self.on_refreshButton_clicked()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 def __procFinished(self, exitCode, exitStatus):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 Private slot connected to the finished signal.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 @param exitCode exit code of the process (integer)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 @param exitStatus exit status of the process (QProcess.ExitStatus)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 self.__processOutput(self.__buffer)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 self.__finish()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 def __readStdout(self):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 Private slot to handle the readyReadStandardOutput signal.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 It reads the output of the process, formats it and inserts it into
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161 the contents pane.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163 if self.process is not None:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
164 self.process.setReadChannel(QProcess.StandardOutput)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 while self.process.canReadLine():
3302
e92f0dd51979 Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3218
diff changeset
167 line = str(self.process.readLine(), self.vcs.getEncoding(),
e92f0dd51979 Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3218
diff changeset
168 'replace')
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
169 self.__buffer.append(line)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
170
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
171 def __readStderr(self):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
172 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173 Private slot to handle the readyReadStandardError signal.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
174
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
175 It reads the error output of the process and inserts it into the
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
176 error pane.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
177 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
178 if self.process is not None:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
179 s = str(self.process.readAllStandardError(),
3302
e92f0dd51979 Removed the Mercurial support for a command options dialog and added useable global options to the Mercurial config page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3218
diff changeset
180 self.vcs.getEncoding(), 'replace')
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
181 self.__showError(s)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
182
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
183 def __showError(self, out):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
184 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
185 Private slot to show some error.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
186
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 @param out error to be shown (string)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
189 self.errorGroup.show()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
190 self.errors.insertPlainText(out)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
191 self.errors.ensureCursorVisible()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
192
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
193 @pyqtSlot()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
194 def on_refreshButton_clicked(self):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196 Private slot to refresh the status display.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
197 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
198 self.start(self.__path, mq=self.__mq)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
200 def __committed(self):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
201 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
202 Private slot called after the commit has finished.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
203 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
204 if self.isVisible():
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
205 self.on_refreshButton_clicked()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
206
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
207 def __processOutput(self, output):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
208 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
209 Private method to process the output into nice readable text.
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
210
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
211 @param output output from the summary command (string)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
212 """
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
213 infoDict = {}
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
214
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
215 # step 1: parse the output
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
216 while output:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
217 line = output.pop(0)
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
218 if ':' not in line:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
219 continue
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
220 name, value = line.split(": ", 1)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
221 value = value.strip()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
222
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
223 if name == "parent":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
224 if " " in value:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
225 parent, tags = value.split(" ", 1)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
226 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
227 parent = value
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
228 tags = ""
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
229 rev, node = parent.split(":")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
230
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
231 remarks = []
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
232 if tags:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
233 if " (empty repository)" in tags:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
234 remarks.append("@EMPTY@")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
235 tags = tags.replace(" (empty repository)", "")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
236 if " (no revision checked out)" in tags:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
237 remarks.append("@NO_REVISION@")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
238 tags = tags.replace(" (no revision checked out)", "")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
239 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
240 tags = None
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
241
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
242 value = infoDict.get(name, [])
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
243
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
244 if rev == "-1":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
245 value.append((int(rev), node, tags, None, remarks))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
246 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
247 message = output.pop(0).strip()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
248 value.append((int(rev), node, tags, message, remarks))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
249 elif name == "branch":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
250 pass
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
251 elif name == "bookmarks":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
252 pass
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
253 elif name == "commit":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
254 stateDict = {}
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
255 if "(" in value:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
256 if value.startswith("("):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
257 states = ""
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
258 remark = value[1:-1]
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
259 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
260 states, remark = value.rsplit(" (", 1)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
261 remark = remark[:-1]
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
262 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
263 states = value
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
264 remark = ""
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
265 states = states.split(", ")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
266 for state in states:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
267 if state:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
268 count, category = state.split(" ")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
269 stateDict[category] = count
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
270 value = (stateDict, remark)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
271 elif name == "update":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
272 if value.endswith("(current)"):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
273 value = ("@CURRENT@", 0, 0)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
274 elif value.endswith("(update)"):
3218
c33689d92b14 Fixed an issue in the Mercurial summary dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
275 value = ("@UPDATE@", int(value.split(" ", 1)[0]), 0)
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
276 elif value.endswith("(merge)"):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
277 parts = value.split(", ")
3218
c33689d92b14 Fixed an issue in the Mercurial summary dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
278 value = ("@MERGE@", int(parts[0].split(" ", 1)[0]),
c33689d92b14 Fixed an issue in the Mercurial summary dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
279 int(parts[1].split(" ", 1)[0]))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
280 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
281 value = ("@UNKNOWN@", 0, 0)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
282 elif name == "remote":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
283 if value == "(synced)":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
284 value = (0, 0, 0, 0)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
285 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
286 inc = incb = outg = outgb = 0
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
287 for val in value.split(", "):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
288 count, category = val.split(" ", 1)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
289 if category == "outgoing":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
290 outg = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
291 elif category.endswith("incoming"):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
292 inc = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
293 elif category == "incoming bookmarks":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
294 incb = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
295 elif category == "outgoing bookmarks":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
296 outgb = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
297 value = (inc, outg, incb, outgb)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
298 elif name == "mq":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
299 if value == "(empty queue)":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
300 value = (0, 0)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
301 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
302 applied = unapplied = 0
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
303 for val in value.split(", "):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 count, category = val.split(" ", 1)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
305 if category == "applied":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
306 applied = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
307 elif category == "unapplied":
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
308 unapplied = int(count)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
309 value = (applied, unapplied)
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
310 elif name == "largefiles":
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
311 if not value[0].isdigit():
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
312 value = 0
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
313 else:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
314 value = int(value.split(None, 1)[0])
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
315 else:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
316 # ignore unknown entries
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
317 continue
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
318
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
319 infoDict[name] = value
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
320
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
321 # step 2: build the output
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
322 if infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
323 info = ["<table>"]
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
324 pindex = 0
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
325 for rev, node, tags, message, remarks in infoDict["parent"]:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
326 pindex += 1
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
327 changeset = "{0}:{1}".format(rev, node)
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
328 if len(infoDict["parent"]) > 1:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
329 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
330 "<tr><td><b>Parent #{0}</b></td><td>{1}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
331 .format(pindex, changeset))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
332 else:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
333 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
334 "<tr><td><b>Parent</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335 .format(changeset))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
336 if tags:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
337 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
338 "<tr><td><b>Tags</b></td><td>{0}</td></tr>")
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
339 .format('<br/>'.join(tags.split())))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
340 if message:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
341 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
342 "<tr><td><b>Commit Message</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
343 .format(message))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
344 if remarks:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
345 rem = []
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
346 if "@EMPTY@" in remarks:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
347 rem.append(self.tr("empty repository"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
348 if "@NO_REVISION@" in remarks:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
349 rem.append(self.tr("no revision checked out"))
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
350 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
351 "<tr><td><b>Remarks</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
352 .format(", ".join(rem)))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
353 if "branch" in infoDict:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
354 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
355 "<tr><td><b>Branch</b></td><td>{0}</td></tr>")
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
356 .format(infoDict["branch"]))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
357 if "bookmarks" in infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
358 bookmarks = infoDict["bookmarks"].split()
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
359 for i in range(len(bookmarks)):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
360 if bookmarks[i].startswith("*"):
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
361 bookmarks[i] = "<b>{0}</b>".format(bookmarks[i])
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
362 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
363 "<tr><td><b>Bookmarks</b></td><td>{0}</td></tr>")
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
364 .format('<br/>'.join(bookmarks)))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
365 if "commit" in infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
366 cinfo = []
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
367 for category, count in infoDict["commit"][0].items():
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
368 if category == "modified":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
369 cinfo.append(self.tr("{0} modified").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
370 elif category == "added":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
371 cinfo.append(self.tr("{0} added").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
372 elif category == "removed":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
373 cinfo.append(self.tr("{0} removed").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
374 elif category == "renamed":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
375 cinfo.append(self.tr("{0} renamed").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
376 elif category == "copied":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
377 cinfo.append(self.tr("{0} copied").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
378 elif category == "deleted":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
379 cinfo.append(self.tr("{0} deleted").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
380 elif category == "unknown":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
381 cinfo.append(self.tr("{0} unknown").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
382 elif category == "ignored":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
383 cinfo.append(self.tr("{0} ignored").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
384 elif category == "unresolved":
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
385 cinfo.append(
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
386 self.tr("{0} unresolved").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
387 elif category == "subrepos":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
388 cinfo.append(self.tr("{0} subrepos").format(count))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
389 remark = infoDict["commit"][1]
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
390 if remark == "merge":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
391 cinfo.append(self.tr("Merge needed"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
392 elif remark == "new branch":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
393 cinfo.append(self.tr("New Branch"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
394 elif remark == "head closed":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
395 cinfo.append(self.tr("Head is closed"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
396 elif remark == "clean":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
397 cinfo.append(self.tr("No commit required"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
398 elif remark == "new branch head":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
399 cinfo.append(self.tr("New Branch Head"))
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
400 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
401 "<tr><td><b>Commit Status</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
402 .format("<br/>".join(cinfo)))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
403 if "update" in infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
404 if infoDict["update"][0] == "@CURRENT@":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
405 uinfo = self.tr("current")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
406 elif infoDict["update"][0] == "@UPDATE@":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
407 uinfo = self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
408 "%n new changeset(s)<br/>Update required", "",
2827
9a7928798cfe Updated translations and corrected some display strings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2816
diff changeset
409 infoDict["update"][1])
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
410 elif infoDict["update"][0] == "@MERGE@":
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
411 uinfo1 = self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
412 "%n new changeset(s)", "", infoDict["update"][1])
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
413 uinfo2 = self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
414 "%n branch head(s)", "", infoDict["update"][2])
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
415 uinfo = self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
416 "{0}<br/>{1}<br/>Merge required",
7257
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
417 "0 is changesets, 1 is branch heads"
c4d0cac9b5c9 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
418 ).format(uinfo1, uinfo2)
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
419 else:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
420 uinfo = self.tr("unknown status")
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
421 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
422 "<tr><td><b>Update Status</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
423 .format(uinfo))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
424 if "remote" in infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
425 if infoDict["remote"] == (0, 0, 0, 0):
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
426 rinfo = self.tr("synched")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
427 else:
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
428 li = []
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
429 if infoDict["remote"][0]:
5579
2afb925a84e6 Recompiled all resources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
430 li.append(self.tr("1 or more incoming changesets"))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
431 if infoDict["remote"][1]:
5579
2afb925a84e6 Recompiled all resources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
432 li.append(self.tr("%n outgoing changeset(s)", "",
2afb925a84e6 Recompiled all resources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
433 infoDict["remote"][1]))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
434 if infoDict["remote"][2]:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
435 li.append(self.tr("%n incoming bookmark(s)", "",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
436 infoDict["remote"][2]))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 if infoDict["remote"][3]:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
438 li.append(self.tr("%n outgoing bookmark(s)", "",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
439 infoDict["remote"][3]))
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
440 rinfo = "<br/>".join(li)
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
441 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
442 "<tr><td><b>Remote Status</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
443 .format(rinfo))
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
444 if "mq" in infoDict:
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
445 if infoDict["mq"] == (0, 0):
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
446 qinfo = self.tr("empty queue")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
447 else:
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
448 li = []
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
449 if infoDict["mq"][0]:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
450 li.append(self.tr("{0} applied")
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
451 .format(infoDict["mq"][0]))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
452 if infoDict["mq"][1]:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
453 li.append(self.tr("{0} unapplied")
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
454 .format(infoDict["mq"][1]))
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3023
diff changeset
455 qinfo = "<br/>".join(li)
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
456 info.append(self.tr(
3008
7848489bcb92 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2827
diff changeset
457 "<tr><td><b>Queues Status</b></td><td>{0}</td></tr>")
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
458 .format(qinfo))
3315
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
459 if "largefiles" in infoDict:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
460 if infoDict["largefiles"] == 0:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
461 lfInfo = self.tr("No files to upload")
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
462 else:
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
463 lfInfo = self.tr("%n file(s) to upload", "",
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
464 infoDict["largefiles"])
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
465 info.append(self.tr(
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
466 "<tr><td><b>Large Files</b></td><td>{0}</td></tr>")
bd1a25ead18d Continued implementing support for Mercurial largefiles.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3302
diff changeset
467 .format(lfInfo))
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
468 info.append("</table>")
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
469 else:
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
470 info = [self.tr("<p>No status information available.</p>")]
2812
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
471
35c3302da595 Added forgotten files for the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
472 self.summary.insertHtml("\n".join(info))

eric ide

mercurial