8 """ |
8 """ |
9 |
9 |
10 import os |
10 import os |
11 |
11 |
12 from PyQt4.QtCore import QTimer, QByteArray, QProcess, QRegExp, QUrl, pyqtSlot |
12 from PyQt4.QtCore import QTimer, QByteArray, QProcess, QRegExp, QUrl, pyqtSlot |
13 from PyQt4.QtGui import QWidget, QLineEdit, QApplication, QTextCursor, QDialogButtonBox |
13 from PyQt4.QtGui import QWidget, QLineEdit, QApplication, QTextCursor, \ |
|
14 QDialogButtonBox |
14 |
15 |
15 from E5Gui import E5MessageBox |
16 from E5Gui import E5MessageBox |
16 |
17 |
17 from .Ui_SvnLogDialog import Ui_SvnLogDialog |
18 from .Ui_SvnLogDialog import Ui_SvnLogDialog |
18 |
19 |
20 import Preferences |
21 import Preferences |
21 |
22 |
22 |
23 |
23 class SvnLogDialog(QWidget, Ui_SvnLogDialog): |
24 class SvnLogDialog(QWidget, Ui_SvnLogDialog): |
24 """ |
25 """ |
25 Class implementing a dialog to show the output of the svn log command process. |
26 Class implementing a dialog to show the output of the svn log command |
|
27 process. |
26 |
28 |
27 The dialog is nonmodal. Clicking a link in the upper text pane shows |
29 The dialog is nonmodal. Clicking a link in the upper text pane shows |
28 a diff of the versions. |
30 a diff of the versions. |
29 """ |
31 """ |
30 def __init__(self, vcs, isFile=False, parent=None): |
32 def __init__(self, vcs, isFile=False, parent=None): |
52 |
54 |
53 self.contents.anchorClicked.connect(self.__sourceChanged) |
55 self.contents.anchorClicked.connect(self.__sourceChanged) |
54 |
56 |
55 self.rx_sep = QRegExp('\\-+\\s*') |
57 self.rx_sep = QRegExp('\\-+\\s*') |
56 self.rx_sep2 = QRegExp('=+\\s*') |
58 self.rx_sep2 = QRegExp('=+\\s*') |
57 self.rx_rev = QRegExp('rev ([0-9]+): ([^|]*) \| ([^|]*) \| ([0-9]+) .*') |
59 self.rx_rev = QRegExp( |
|
60 'rev ([0-9]+): ([^|]*) \| ([^|]*) \| ([0-9]+) .*') |
58 # "rev" followed by one or more decimals followed by a colon followed |
61 # "rev" followed by one or more decimals followed by a colon followed |
59 # anything up to " | " (twice) followed by one or more decimals followed |
62 # anything up to " | " (twice) followed by one or more decimals |
60 # by anything |
63 # followed by anything |
61 self.rx_rev2 = QRegExp('r([0-9]+) \| ([^|]*) \| ([^|]*) \| ([0-9]+) .*') |
64 self.rx_rev2 = QRegExp( |
|
65 'r([0-9]+) \| ([^|]*) \| ([^|]*) \| ([0-9]+) .*') |
62 # "r" followed by one or more decimals followed by " | " followed |
66 # "r" followed by one or more decimals followed by " | " followed |
63 # anything up to " | " (twice) followed by one or more decimals followed |
67 # anything up to " | " (twice) followed by one or more decimals |
64 # by anything |
68 # followed by anything |
65 self.rx_flags = QRegExp(' ([ADM])( .*)\\s*') |
69 self.rx_flags = QRegExp(' ([ADM])( .*)\\s*') |
66 # three blanks followed by A or D or M |
70 # three blanks followed by A or D or M |
67 self.rx_changed = QRegExp('Changed .*\\s*') |
71 self.rx_changed = QRegExp('Changed .*\\s*') |
68 |
72 |
69 self.flags = { |
73 self.flags = { |