]> git.ipfire.org Git - people/ms/bricklayer.git/commitdiff
steps: Add convenience wrapper to disable steps in unattended mode
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 5 May 2021 21:43:48 +0000 (21:43 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 5 May 2021 21:45:03 +0000 (21:45 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/python/disk.py
src/python/lang.py
src/python/step.py

index 7f9fd7958827a6d74bd0edc3449336eaf048016a..5e9293ff3d0739d5b0fcd56be735dba8b30852e1 100644 (file)
@@ -128,15 +128,10 @@ class Disk(object):
                return self.device.model
 
 
-class SelectDisk(step.Step):
+class SelectDisk(step.InteractiveStep):
        """
                Ask the user which disk(s) to use for the installation process
        """
-       @property
-       def enabled(self):
-               # Disable in unattended mode
-               return not self.bricklayer.unattended
-
        def initialize(self):
                self.disks = self.bricklayer.disks
 
index 74abc5b050bd5997ad7f24788f6a48159f38cc2a..baf38a4fefdf4a593f938ac42984aceee5914d7b 100644 (file)
@@ -36,15 +36,10 @@ default_language = "en_US.UTF-8"
 
 assert default_language in supported_languages
 
-class SelectLanguage(step.Step):
+class SelectLanguage(step.InteractiveStep):
        """
                Ask the user which language to use for the installation process
        """
-       @property
-       def enabled(self):
-               # Disable in unattended mode
-               return not self.bricklayer.unattended
-
        def initialize(self):
                self.current_language = self.bricklayer.settings.get("language")
 
index 833fb98c4c65d56a7531a6d2cfde549097a56278..7368c1563d62d7ffa8a47d734e0a8cb60ceae36b 100644 (file)
@@ -57,15 +57,20 @@ class Step(object):
                pass
 
 
-class Welcome(Step):
+class InteractiveStep(Step):
        """
-               Shows a very warm welcome message to the user
+               A convenience handler that is disabled in unattended mode
        """
        @property
        def enabled(self):
                # Disable in unattended mode
                return not self.bricklayer.unattended
 
+
+class Welcome(InteractiveStep):
+       """
+               Shows a very warm welcome message to the user
+       """
        def run(self, tui):
                tui.message(
                        title=_("Welcome"),
@@ -74,6 +79,7 @@ class Welcome(Step):
                        buttons=(_("Start Installation"), _("Cancel"))
                )
 
+
 class UnattendedWarning(Step):
        @property
        def enabled(self):