9 """ |
9 """ |
10 |
10 |
11 from __future__ import unicode_literals |
11 from __future__ import unicode_literals |
12 |
12 |
13 import os |
13 import os |
14 import sys |
|
15 |
14 |
16 import pysvn |
15 import pysvn |
17 |
16 |
18 from PyQt5.QtCore import QMutexLocker, QFileInfo, QDateTime, Qt, pyqtSlot |
17 from PyQt5.QtCore import QMutexLocker, QFileInfo, QDateTime, Qt, pyqtSlot |
19 from PyQt5.QtGui import QCursor, QTextCursor |
18 from PyQt5.QtGui import QCursor, QTextCursor |
222 url_or_path2=url2, revision2=rev2, |
221 url_or_path2=url2, revision2=rev2, |
223 recurse=recurse) |
222 recurse=recurse) |
224 diff_list = [] |
223 diff_list = [] |
225 for diff_sum in diff_summary: |
224 for diff_sum in diff_summary: |
226 path = diff_sum['path'] |
225 path = diff_sum['path'] |
227 if sys.version_info[0] == 2: |
|
228 path = path.decode('utf-8') |
|
229 diff_list.append("{0} {1}".format( |
226 diff_list.append("{0} {1}".format( |
230 self.__getDiffSummaryKind( |
227 self.__getDiffSummaryKind( |
231 diff_sum['summarize_kind']), |
228 diff_sum['summarize_kind']), |
232 path)) |
229 path)) |
233 diffText = os.linesep.join(diff_list) |
230 diffText = os.linesep.join(diff_list) |
235 diffText = self.client.diff( |
232 diffText = self.client.diff( |
236 tmpdir, |
233 tmpdir, |
237 url1, revision1=rev1, |
234 url1, revision1=rev1, |
238 url_or_path2=url2, revision2=rev2, |
235 url_or_path2=url2, revision2=rev2, |
239 recurse=recurse) |
236 recurse=recurse) |
240 if sys.version_info[0] == 2: |
|
241 diffText = diffText.decode('utf-8') |
|
242 else: |
237 else: |
243 if pegRev is not None: |
238 if pegRev is not None: |
244 diffText = self.client.diff_peg( |
239 diffText = self.client.diff_peg( |
245 tmpdir, name, |
240 tmpdir, name, |
246 peg_revision=self.__getVersionArg(pegRev), |
241 peg_revision=self.__getVersionArg(pegRev), |
248 recurse=recurse) |
243 recurse=recurse) |
249 else: |
244 else: |
250 diffText = self.client.diff( |
245 diffText = self.client.diff( |
251 tmpdir, name, |
246 tmpdir, name, |
252 revision1=rev1, revision2=rev2, recurse=recurse) |
247 revision1=rev1, revision2=rev2, recurse=recurse) |
253 if sys.version_info[0] == 2: |
|
254 diffText = diffText.decode('utf-8') |
|
255 counter = 0 |
248 counter = 0 |
256 for line in diffText.splitlines(): |
249 for line in diffText.splitlines(): |
257 if line.startswith("--- ") or \ |
250 if line.startswith("--- ") or \ |
258 line.startswith("+++ "): |
251 line.startswith("+++ "): |
259 self.__processFileLine(line) |
252 self.__processFileLine(line) |