39 Constructor |
39 Constructor |
40 |
40 |
41 @param vcs reference to the vcs object |
41 @param vcs reference to the vcs object |
42 @param parent parent widget (QWidget) |
42 @param parent parent widget (QWidget) |
43 """ |
43 """ |
44 super(SvnLogBrowserDialog, self).__init__(parent) |
44 super().__init__(parent) |
45 self.setupUi(self) |
45 self.setupUi(self) |
46 SvnDialogMixin.__init__(self) |
46 SvnDialogMixin.__init__(self) |
47 |
47 |
48 self.__position = QPoint() |
48 self.__position = QPoint() |
49 |
49 |
204 rev = "" |
204 rev = "" |
205 self.__lastRev = 0 |
205 self.__lastRev = 0 |
206 else: |
206 else: |
207 rev = revision.number |
207 rev = revision.number |
208 self.__lastRev = revision.number |
208 self.__lastRev = revision.number |
209 if date == "": |
209 dt = formatTime(date) if date else "" |
210 dt = "" |
|
211 else: |
|
212 dt = formatTime(date) |
|
213 |
210 |
214 itm = QTreeWidgetItem(self.logTree) |
211 itm = QTreeWidgetItem(self.logTree) |
215 itm.setData(0, Qt.ItemDataRole.DisplayRole, rev) |
212 itm.setData(0, Qt.ItemDataRole.DisplayRole, rev) |
216 itm.setData(1, Qt.ItemDataRole.DisplayRole, author) |
213 itm.setData(1, Qt.ItemDataRole.DisplayRole, author) |
217 itm.setData(2, Qt.ItemDataRole.DisplayRole, dt) |
214 itm.setData(2, Qt.ItemDataRole.DisplayRole, dt) |
218 itm.setData(3, Qt.ItemDataRole.DisplayRole, |
215 itm.setData(3, Qt.ItemDataRole.DisplayRole, |
219 " ".join(message.splitlines())) |
216 " ".join(message.splitlines())) |
220 |
217 |
221 changes = [] |
218 changes = [] |
222 for changedPath in changedPaths: |
219 for changedPath in changedPaths: |
223 if changedPath["copyfrom_path"] is None: |
220 copyPath = ( |
224 copyPath = "" |
221 "" |
225 else: |
222 if changedPath["copyfrom_path"] is None else |
226 copyPath = changedPath["copyfrom_path"] |
223 changedPath["copyfrom_path"] |
227 if changedPath["copyfrom_revision"] is None: |
224 ) |
228 copyRev = "" |
225 copyRev = ( |
229 else: |
226 "" |
230 copyRev = "{0:7d}".format( |
227 if changedPath["copyfrom_revision"] is None else |
231 changedPath["copyfrom_revision"].number) |
228 "{0:7d}".format(changedPath["copyfrom_revision"].number) |
|
229 ) |
232 change = { |
230 change = { |
233 "action": changedPath["action"], |
231 "action": changedPath["action"], |
234 "path": changedPath["path"], |
232 "path": changedPath["path"], |
235 "copyfrom_path": copyPath, |
233 "copyfrom_path": copyPath, |
236 "copyfrom_revision": copyRev, |
234 "copyfrom_revision": copyRev, |
293 fetched = 0 |
291 fetched = 0 |
294 logs = [] |
292 logs = [] |
295 with E5MutexLocker(self.vcs.vcsExecutionMutex): |
293 with E5MutexLocker(self.vcs.vcsExecutionMutex): |
296 while fetched < limit: |
294 while fetched < limit: |
297 flimit = min(fetchLimit, limit - fetched) |
295 flimit = min(fetchLimit, limit - fetched) |
298 if fetched == 0: |
296 revstart = ( |
299 revstart = start |
297 start |
300 else: |
298 if fetched == 0 else |
301 revstart = pysvn.Revision( |
299 pysvn.Revision(pysvn.opt_revision_kind.number, |
302 pysvn.opt_revision_kind.number, nextRev) |
300 nextRev) |
|
301 ) |
303 allLogs = self.client.log( |
302 allLogs = self.client.log( |
304 self.fname, revision_start=revstart, |
303 self.fname, revision_start=revstart, |
305 discover_changed_paths=True, limit=flimit + 1, |
304 discover_changed_paths=True, limit=flimit + 1, |
306 strict_node_history=self.stopCheckBox.isChecked()) |
305 strict_node_history=self.stopCheckBox.isChecked()) |
307 if ( |
306 if ( |