Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py

branch
Py2 comp.
changeset 2847
1843ef6e2656
parent 2525
8b507a9a2d40
parent 2845
7e55c6268c35
child 2911
ce77f0b1ee67
diff -r b852fe4d153a -r 1843ef6e2656 Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py
--- a/Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py	Mon Aug 12 19:41:53 2013 +0200
+++ b/Plugins/VcsPlugins/vcsPySvn/SvnLogDialog.py	Mon Aug 12 22:21:53 2013 +0200
@@ -31,11 +31,12 @@
     The dialog is nonmodal. Clicking a link in the upper text pane shows
     a diff of the versions.
     """
-    def __init__(self, vcs, parent=None):
+    def __init__(self, vcs, isFile=False, parent=None):
         """
         Constructor
         
         @param vcs reference to the vcs object
+        @param isFile flag indicating log for a file is to be shown (boolean)
         @param parent parent widget (QWidget)
         """
         super(SvnLogDialog, self).__init__(parent)
@@ -61,6 +62,8 @@
         self.revString = self.trUtf8('revision')
         self.diff = None
         
+        self.sbsCheckBox.setEnabled(isFile)
+        
         self.client = self.vcs.getClient()
         self.client.callback_cancel = \
             self._clientCancelCallback
@@ -228,11 +231,14 @@
             return
         self.contents.scrollToAnchor(ver)
         
-        if self.diff is None:
-            from .SvnDiffDialog import SvnDiffDialog
-            self.diff = SvnDiffDialog(self.vcs)
-        self.diff.show()
-        self.diff.start(filename, [v1, v2], pegRev=self.__pegRev)
+        if self.sbsCheckBox.isEnabled() and self.sbsCheckBox.isChecked():
+            self.vcs.svnSbsDiff(filename, revisions=(v1, v2))
+        else:
+            if self.diff is None:
+                from .SvnDiffDialog import SvnDiffDialog
+                self.diff = SvnDiffDialog(self.vcs)
+            self.diff.show()
+            self.diff.start(filename, [v1, v2], pegRev=self.__pegRev)
         
     def __showError(self, msg):
         """

eric ide

mercurial