Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py

branch
Py2 comp.
changeset 2847
1843ef6e2656
parent 2791
a9577f248f04
parent 2841
1f79e88f18b7
child 2911
ce77f0b1ee67
--- a/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Mon Aug 12 19:41:53 2013 +0200
+++ b/Plugins/VcsPlugins/vcsMercurial/HgLogBrowserDialog.py	Mon Aug 12 22:21:53 2013 +0200
@@ -47,13 +47,14 @@
     MessageColumn = 6
     TagsColumn = 7
     
-    def __init__(self, vcs, mode="log", bundle=None, parent=None):
+    def __init__(self, vcs, mode="log", bundle=None, isFile=False, parent=None):
         """
         Constructor
         
         @param vcs reference to the vcs object
         @param mode mode of the dialog (string; one of log, incoming, outgoing)
         @param bundle name of a bundle file (string)
+        @param isFile flag indicating log for a file is to be shown (boolean)
         @param parent parent widget (QWidget)
         """
         super(HgLogBrowserDialog, self).__init__(parent)
@@ -78,6 +79,8 @@
             self.trUtf8("Press to refresh the list of changesets"))
         self.refreshButton.setEnabled(False)
         
+        self.sbsCheckBox.setEnabled(isFile)
+        
         self.vcs = vcs
         if mode in ("log", "incoming", "outgoing"):
             self.commandMode = mode
@@ -959,12 +962,15 @@
         @param rev1 first revision number (integer)
         @param rev2 second revision number (integer)
         """
-        if self.diff is None:
-            from .HgDiffDialog import HgDiffDialog
-            self.diff = HgDiffDialog(self.vcs)
-        self.diff.show()
-        self.diff.raise_()
-        self.diff.start(self.filename, [rev1, rev2], self.bundle)
+        if self.sbsCheckBox.isEnabled() and self.sbsCheckBox.isChecked():
+            self.vcs.hgSbsDiff(self.filename, revisions=(str(rev1), str(rev2)))
+        else:
+            if self.diff is None:
+                from .HgDiffDialog import HgDiffDialog
+                self.diff = HgDiffDialog(self.vcs)
+            self.diff.show()
+            self.diff.raise_()
+            self.diff.start(self.filename, [rev1, rev2], self.bundle)
     
     def on_buttonBox_clicked(self, button):
         """

eric ide

mercurial