Plugins/VcsPlugins/vcsMercurial/HgGraftDialog.py

changeset 6460
af9e529d0fb6
parent 6458
97480c872ea9
child 6645
ad476851d7e0
diff -r 68c13732795b -r af9e529d0fb6 Plugins/VcsPlugins/vcsMercurial/HgGraftDialog.py
--- a/Plugins/VcsPlugins/vcsMercurial/HgGraftDialog.py	Sat Aug 04 13:38:50 2018 +0200
+++ b/Plugins/VcsPlugins/vcsMercurial/HgGraftDialog.py	Sat Aug 04 14:05:07 2018 +0200
@@ -15,7 +15,6 @@
 from .Ui_HgGraftDialog import Ui_HgGraftDialog
 
 
-# TODO: Mercurial 4.7: add support for the --no-commit flag
 class HgGraftDialog(QDialog, Ui_HgGraftDialog):
     """
     Class implementing a dialog to enter the data for a graft session.
@@ -24,10 +23,12 @@
         """
         Constructor
         
-        @param vcs reference to the VCS object (Hg)
-        @param revs list of revisions to show in the revisions pane (list of
-            strings)
-        @param parent reference to the parent widget (QWidget)
+        @param vcs reference to the VCS object
+        @type Hg
+        @param revs list of revisions to show in the revisions pane
+        @type list of str
+        @param parent reference to the parent widget
+        @type QWidget
         """
         super(HgGraftDialog, self).__init__(parent)
         self.setupUi(self)
@@ -36,6 +37,8 @@
         
         if revs:
             self.revisionsEdit.setPlainText("\n".join(sorted(revs)))
+        
+        self.noCommitCheckBox.setEnabled(vcs.version >= (4, 7, 0))
        
         self.__updateOk()
     
@@ -63,16 +66,18 @@
         """
         Private slot to handle changes of the user group state.
         
-        @param checked flag giving the checked state (boolean)
+        @param checked flag giving the checked state
+        @type bool
         """
         self.__updateOk()
     
     @pyqtSlot(bool)
     def on_currentUserCheckBox_toggled(self, checked):
         """
-        Private slot to handle changes of the currentuser state.
+        Private slot to handle changes of the current user state.
         
-        @param checked flag giving the checked state (boolean)
+        @param checked flag giving the checked state
+        @type bool
         """
         self.__updateOk()
     
@@ -94,17 +99,28 @@
             current user and the user name, another tuple giving a flag
             indicating to set the date, a flag indicating to use the
             current date and the date, a flag indicating to append graft info
-            to the log message and a flag indicating a dry-run (list of
-            strings, (boolean, boolean, string), (boolean, boolean, string),
-            boolean, boolean)
+            to the log message, a flag indicating a dry-run and a flag
+            indicating to not commit the copied changesets
+        @rtype tuple of (list of str, (bool, bool, str), (bool, bool, str),
+            bool, bool, bool)
         """
-        userData = (self.userGroup.isChecked(),
-                    self.currentUserCheckBox.isChecked(),
-                    self.userEdit.text())
-        dateData = (self.dateGroup.isChecked(),
-                    self.currentDateCheckBox.isChecked(),
-                    self.dateTimeEdit.dateTime().toString("yyyy-MM-dd hh:mm"))
-        return (self.revisionsEdit.toPlainText().strip().splitlines(),
-                userData, dateData,
-                self.logCheckBox.isChecked(),
-                self.dryRunCheckBox.isChecked())
+        userData = (
+            self.userGroup.isChecked(),
+            self.currentUserCheckBox.isChecked(),
+            self.userEdit.text(),
+        )
+        
+        dateData = (
+            self.dateGroup.isChecked(),
+            self.currentDateCheckBox.isChecked(),
+            self.dateTimeEdit.dateTime().toString("yyyy-MM-dd hh:mm"),
+        )
+        
+        return (
+            self.revisionsEdit.toPlainText().strip().splitlines(),
+            userData,
+            dateData,
+            self.logCheckBox.isChecked(),
+            self.dryRunCheckBox.isChecked(),
+            self.noCommitCheckBox.isChecked(),
+        )

eric ide

mercurial