Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py

branch
Py2 comp.
changeset 3057
10516539f238
parent 2911
ce77f0b1ee67
parent 3009
bf5ae5d7477d
child 3141
72f3bde98c58
equal deleted inserted replaced
3056:9986ec0e559a 3057:10516539f238
12 import os 12 import os
13 13
14 import pysvn 14 import pysvn
15 15
16 from PyQt4.QtCore import QMutexLocker, QByteArray, QUrl, Qt 16 from PyQt4.QtCore import QMutexLocker, QByteArray, QUrl, Qt
17 from PyQt4.QtGui import QWidget, QCursor, QApplication, QTextCursor, QDialogButtonBox 17 from PyQt4.QtGui import QWidget, QCursor, QApplication, QTextCursor, \
18 QDialogButtonBox
18 19
19 from .SvnUtilities import formatTime 20 from .SvnUtilities import formatTime
20 21
21 from .SvnDialogMixin import SvnDialogMixin 22 from .SvnDialogMixin import SvnDialogMixin
22 from .Ui_SvnLogDialog import Ui_SvnLogDialog 23 from .Ui_SvnLogDialog import Ui_SvnLogDialog
131 ver = "{0:d}".format(log["revision"].number) 132 ver = "{0:d}".format(log["revision"].number)
132 dstr = '<b>{0} {1}</b>'.format(self.revString, ver) 133 dstr = '<b>{0} {1}</b>'.format(self.revString, ver)
133 if self.__pegRev is None: 134 if self.__pegRev is None:
134 self.__pegRev = int(ver) 135 self.__pegRev = int(ver)
135 try: 136 try:
136 lv = "{0:d}".format(logs[logs.index(log) + 1]["revision"].number) 137 lv = "{0:d}".format(
138 logs[logs.index(log) + 1]["revision"].number)
137 url = QUrl() 139 url = QUrl()
138 url.setScheme("file") 140 url.setScheme("file")
139 url.setPath(self.filename) 141 url.setPath(self.filename)
140 query = QByteArray() 142 query = QByteArray()
141 query.append(lv).append('_').append(ver) 143 query.append(lv).append('_').append(ver)
142 url.setEncodedQuery(query) 144 url.setEncodedQuery(query)
143 dstr += ' [<a href="{0}" name="{1}">{2}</a>]'.format( 145 dstr += ' [<a href="{0}" name="{1}">{2}</a>]'.format(
144 url.toString(), query, self.trUtf8('diff to {0}').format(lv) 146 url.toString(), query,
147 self.trUtf8('diff to {0}').format(lv)
145 ) 148 )
146 except IndexError: 149 except IndexError:
147 pass 150 pass
148 dstr += '<br />\n' 151 dstr += '<br />\n'
149 self.contents.insertHtml(dstr) 152 self.contents.insertHtml(dstr)
150 153
151 dstr = self.trUtf8('<i>author: {0}</i><br />\n').format(log["author"]) 154 dstr = self.trUtf8('<i>author: {0}</i><br />\n')\
155 .format(log["author"])
152 self.contents.insertHtml(dstr) 156 self.contents.insertHtml(dstr)
153 157
154 dstr = self.trUtf8('<i>date: {0}</i><br />\n')\ 158 dstr = self.trUtf8('<i>date: {0}</i><br />\n')\
155 .format(formatTime(log["date"])) 159 .format(formatTime(log["date"]))
156 self.contents.insertHtml(dstr) 160 self.contents.insertHtml(dstr)
166 for changeInfo in log['changed_paths']: 170 for changeInfo in log['changed_paths']:
167 dstr = '{0} {1}'\ 171 dstr = '{0} {1}'\
168 .format(self.flags[changeInfo["action"]], 172 .format(self.flags[changeInfo["action"]],
169 changeInfo["path"]) 173 changeInfo["path"])
170 if changeInfo["copyfrom_path"] is not None: 174 if changeInfo["copyfrom_path"] is not None:
171 dstr += self.trUtf8(" (copied from {0}, revision {1})")\ 175 dstr += self.trUtf8(
172 .format(changeInfo["copyfrom_path"], 176 " (copied from {0}, revision {1})")\
173 changeInfo["copyfrom_revision"].number) 177 .format(changeInfo["copyfrom_path"],
178 changeInfo["copyfrom_revision"].number)
174 dstr += '<br />\n' 179 dstr += '<br />\n'
175 self.contents.insertHtml(dstr) 180 self.contents.insertHtml(dstr)
176 181
177 self.contents.insertHtml('<hr /><br />\n') 182 self.contents.insertHtml('<hr /><br />\n')
178 except pysvn.ClientError as e: 183 except pysvn.ClientError as e:

eric ide

mercurial