src/eric7/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesNewPatchDialog.py

branch
eric7
changeset 10490
527d47826e97
parent 10475
ee41fab001f2
child 10690
fab36645aa7d
diff -r 1800956305ca -r 527d47826e97 src/eric7/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesNewPatchDialog.py
--- a/src/eric7/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesNewPatchDialog.py	Sun Jan 07 19:54:03 2024 +0100
+++ b/src/eric7/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesNewPatchDialog.py	Mon Jan 08 11:14:48 2024 +0100
@@ -7,6 +7,8 @@
 Module implementing a dialog to get the data for a new patch.
 """
 
+import enum
+
 from PyQt6.QtCore import QDateTime, pyqtSlot
 from PyQt6.QtWidgets import QDialog, QDialogButtonBox
 
@@ -15,22 +17,26 @@
 from .Ui_HgQueuesNewPatchDialog import Ui_HgQueuesNewPatchDialog
 
 
+class HgQueuesNewPatchDialogMode(enum.Enum):
+    """
+    Class defining the dialog modes.
+    """
+
+    NEW = 0
+    REFRESH = 1
+
+
 class HgQueuesNewPatchDialog(QDialog, Ui_HgQueuesNewPatchDialog):
     """
     Class implementing a dialog to get the data for a new patch.
     """
 
-    # TODO: change this to an enum
-    NEW_MODE = 0
-    REFRESH_MODE = 1
-
     def __init__(self, mode, message="", parent=None):
         """
         Constructor
 
-        @param mode mode of the dialog (HgQueuesNewPatchDialog.NEW_MODE,
-            HgQueuesNewPatchDialog.REFRESH_MODE)
-        @type int
+        @param mode mode of the dialog
+        @type HgQueuesNewPatchDialogMode
         @param message text to set as the commit message
         @type str
         @param parent reference to the parent widget
@@ -40,14 +46,11 @@
         super().__init__(parent)
         self.setupUi(self)
 
-        if mode not in (
-            HgQueuesNewPatchDialog.REFRESH_MODE,
-            HgQueuesNewPatchDialog.NEW_MODE,
-        ):
+        if not isinstance(mode, HgQueuesNewPatchDialogMode):
             raise ValueError("invalid value for mode")
 
         self.__mode = mode
-        if self.__mode == HgQueuesNewPatchDialog.REFRESH_MODE:
+        if self.__mode == HgQueuesNewPatchDialogMode.REFRESH:
             self.nameLabel.hide()
             self.nameEdit.hide()
 
@@ -68,7 +71,7 @@
         """
         enable = (
             self.messageEdit.toPlainText() != ""
-            if self.__mode == HgQueuesNewPatchDialog.REFRESH_MODE
+            if self.__mode == HgQueuesNewPatchDialogMode.REFRESH
             else (self.nameEdit.text() != "" and self.messageEdit.toPlainText() != "")
         )
         if self.userGroup.isChecked():

eric ide

mercurial