diff --git a/kiauh/components/klipper/menus/klipper_remove_menu.py b/kiauh/components/klipper/menus/klipper_remove_menu.py index 7201a27..c488a8a 100644 --- a/kiauh/components/klipper/menus/klipper_remove_menu.py +++ b/kiauh/components/klipper/menus/klipper_remove_menu.py @@ -35,11 +35,11 @@ class KlipperRemoveMenu(BaseMenu): def set_options(self) -> None: self.options = { - "a": Option(method=self.toggle_all, menu=False), - "1": Option(method=self.toggle_remove_klipper_service, menu=False), - "2": Option(method=self.toggle_remove_klipper_dir, menu=False), - "3": Option(method=self.toggle_remove_klipper_env, menu=False), - "c": Option(method=self.run_removal_process, menu=False), + "a": Option(method=self.toggle_all), + "1": Option(method=self.toggle_remove_klipper_service), + "2": Option(method=self.toggle_remove_klipper_dir), + "3": Option(method=self.toggle_remove_klipper_env), + "c": Option(method=self.run_removal_process), } def print_menu(self) -> None: diff --git a/kiauh/components/klipper_firmware/menus/klipper_build_menu.py b/kiauh/components/klipper_firmware/menus/klipper_build_menu.py index 9f099bf..cd92e4f 100644 --- a/kiauh/components/klipper_firmware/menus/klipper_build_menu.py +++ b/kiauh/components/klipper_firmware/menus/klipper_build_menu.py @@ -47,10 +47,10 @@ class KlipperBuildFirmwareMenu(BaseMenu): def set_options(self) -> None: if len(self.missing_deps) == 0: self.input_label_txt = "Press ENTER to continue" - self.default_option = Option(method=self.start_build_process, menu=False) + self.default_option = Option(method=self.start_build_process) else: self.input_label_txt = "Press ENTER to install dependencies" - self.default_option = Option(method=self.install_missing_deps, menu=False) + self.default_option = Option(method=self.install_missing_deps) def print_menu(self) -> None: header = " [ Build Firmware Menu ] " diff --git a/kiauh/components/klipper_firmware/menus/klipper_flash_menu.py b/kiauh/components/klipper_firmware/menus/klipper_flash_menu.py index c68bc99..c9af790 100644 --- a/kiauh/components/klipper_firmware/menus/klipper_flash_menu.py +++ b/kiauh/components/klipper_firmware/menus/klipper_flash_menu.py @@ -61,8 +61,8 @@ class KlipperFlashMethodMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(self.select_regular, menu=False), - "2": Option(self.select_sdcard, menu=False), + "1": Option(self.select_regular), + "2": Option(self.select_sdcard), } def print_menu(self) -> None: @@ -123,10 +123,10 @@ class KlipperFlashCommandMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(self.select_flash, menu=False), - "2": Option(self.select_serialflash, menu=False), + "1": Option(self.select_flash), + "2": Option(self.select_serialflash), } - self.default_option = Option(self.select_flash, menu=False) + self.default_option = Option(self.select_flash) def print_menu(self) -> None: menu = textwrap.dedent( @@ -174,9 +174,9 @@ class KlipperSelectMcuConnectionMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.select_usb, menu=False), - "2": Option(method=self.select_dfu, menu=False), - "3": Option(method=self.select_usb_dfu, menu=False), + "1": Option(method=self.select_usb), + "2": Option(method=self.select_dfu), + "3": Option(method=self.select_usb_dfu), } def print_menu(self) -> None: @@ -393,11 +393,11 @@ class KlipperFlashOverviewMenu(BaseMenu): def set_options(self) -> None: self.options = { - "Y": Option(self.execute_flash, menu=False), - "N": Option(self.abort_process, menu=False), + "Y": Option(self.execute_flash), + "N": Option(self.abort_process), } - self.default_option = Option(self.execute_flash, menu=False) + self.default_option = Option(self.execute_flash) def print_menu(self) -> None: header = "!!! ATTENTION !!!" diff --git a/kiauh/components/moonraker/menus/moonraker_remove_menu.py b/kiauh/components/moonraker/menus/moonraker_remove_menu.py index 78e0522..2721675 100644 --- a/kiauh/components/moonraker/menus/moonraker_remove_menu.py +++ b/kiauh/components/moonraker/menus/moonraker_remove_menu.py @@ -35,12 +35,12 @@ class MoonrakerRemoveMenu(BaseMenu): def set_options(self) -> None: self.options = { - "a": Option(method=self.toggle_all, menu=False), - "1": Option(method=self.toggle_remove_moonraker_service, menu=False), - "2": Option(method=self.toggle_remove_moonraker_dir, menu=False), - "3": Option(method=self.toggle_remove_moonraker_env, menu=False), - "4": Option(method=self.toggle_remove_moonraker_polkit, menu=False), - "c": Option(method=self.run_removal_process, menu=False), + "a": Option(method=self.toggle_all), + "1": Option(method=self.toggle_remove_moonraker_service), + "2": Option(method=self.toggle_remove_moonraker_dir), + "3": Option(method=self.toggle_remove_moonraker_env), + "4": Option(method=self.toggle_remove_moonraker_polkit), + "c": Option(method=self.run_removal_process), } def print_menu(self) -> None: diff --git a/kiauh/components/webui_client/menus/client_remove_menu.py b/kiauh/components/webui_client/menus/client_remove_menu.py index 0041c0a..cc16049 100644 --- a/kiauh/components/webui_client/menus/client_remove_menu.py +++ b/kiauh/components/webui_client/menus/client_remove_menu.py @@ -38,11 +38,11 @@ class ClientRemoveMenu(BaseMenu): def set_options(self) -> None: self.options = { - "a": Option(method=self.toggle_all, menu=False), - "1": Option(method=self.toggle_rm_client, menu=False), - "2": Option(method=self.toggle_rm_client_config, menu=False), - "3": Option(method=self.toggle_backup_config_json, menu=False), - "c": Option(method=self.run_removal_process, menu=False), + "a": Option(method=self.toggle_all), + "1": Option(method=self.toggle_rm_client), + "2": Option(method=self.toggle_rm_client_config), + "3": Option(method=self.toggle_backup_config_json), + "c": Option(method=self.run_removal_process), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/__init__.py b/kiauh/core/menus/__init__.py index e7a106d..569c7f8 100644 --- a/kiauh/core/menus/__init__.py +++ b/kiauh/core/menus/__init__.py @@ -18,13 +18,11 @@ class Option: """ Represents a menu option. :param method: Method that will be used to call the menu option - :param menu: Flag for singaling that another menu will be opened :param opt_index: Can be used to pass the user input to the menu option :param opt_data: Can be used to pass any additional data to the menu option """ method: Callable | None = None - menu: bool = False opt_index: str = "" opt_data: Any = None diff --git a/kiauh/core/menus/advanced_menu.py b/kiauh/core/menus/advanced_menu.py index 9df5e83..484e1ba 100644 --- a/kiauh/core/menus/advanced_menu.py +++ b/kiauh/core/menus/advanced_menu.py @@ -43,13 +43,13 @@ class AdvancedMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.build, menu=True), - "2": Option(method=self.flash, menu=False), - "3": Option(method=self.build_flash, menu=False), - "4": Option(method=self.get_id, menu=False), - "5": Option(method=self.klipper_rollback, menu=True), - "6": Option(method=self.moonraker_rollback, menu=True), - "7": Option(method=self.change_hostname, menu=True), + "1": Option(method=self.build), + "2": Option(method=self.flash), + "3": Option(method=self.build_flash), + "4": Option(method=self.get_id), + "5": Option(method=self.klipper_rollback), + "6": Option(method=self.moonraker_rollback), + "7": Option(method=self.change_hostname), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/backup_menu.py b/kiauh/core/menus/backup_menu.py index 47deceb..be998b1 100644 --- a/kiauh/core/menus/backup_menu.py +++ b/kiauh/core/menus/backup_menu.py @@ -43,15 +43,15 @@ class BackupMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.backup_klipper, menu=False), - "2": Option(method=self.backup_moonraker, menu=False), - "3": Option(method=self.backup_printer_config, menu=False), - "4": Option(method=self.backup_moonraker_db, menu=False), - "5": Option(method=self.backup_mainsail, menu=False), - "6": Option(method=self.backup_fluidd, menu=False), - "7": Option(method=self.backup_mainsail_config, menu=False), - "8": Option(method=self.backup_fluidd_config, menu=False), - "9": Option(method=self.backup_klipperscreen, menu=False), + "1": Option(method=self.backup_klipper), + "2": Option(method=self.backup_moonraker), + "3": Option(method=self.backup_printer_config), + "4": Option(method=self.backup_moonraker_db), + "5": Option(method=self.backup_mainsail), + "6": Option(method=self.backup_fluidd), + "7": Option(method=self.backup_mainsail_config), + "8": Option(method=self.backup_fluidd_config), + "9": Option(method=self.backup_klipperscreen), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/base_menu.py b/kiauh/core/menus/base_menu.py index e7aea4a..d4eb30e 100644 --- a/kiauh/core/menus/base_menu.py +++ b/kiauh/core/menus/base_menu.py @@ -123,12 +123,12 @@ class BaseMenu(metaclass=PostInitCaller): # conditionally add options based on footer type if self.footer_type is FooterType.QUIT: - self.options["q"] = Option(method=self.__exit, menu=False) + self.options["q"] = Option(method=self.__exit) if self.footer_type is FooterType.BACK: - self.options["b"] = Option(method=self.__go_back, menu=False) + self.options["b"] = Option(method=self.__go_back) if self.footer_type is FooterType.BACK_HELP: - self.options["b"] = Option(method=self.__go_back, menu=False) - self.options["h"] = Option(method=self.__go_to_help, menu=False) + self.options["b"] = Option(method=self.__go_back) + self.options["h"] = Option(method=self.__go_to_help) # if defined, add the default option to the options dict if self.default_option is not None: self.options[""] = self.default_option @@ -184,7 +184,10 @@ class BaseMenu(metaclass=PostInitCaller): :return: Option, str or None """ usr_input = usr_input.lower() - option = self.options.get(usr_input, Option(None, False, "", None)) + option = self.options.get( + usr_input, + Option(method=None, opt_index="", opt_data=None), + ) # if option/usr_input is None/empty string, we execute the menus default option if specified if (option is None or usr_input == "") and self.default_option is not None: diff --git a/kiauh/core/menus/install_menu.py b/kiauh/core/menus/install_menu.py index e74512a..990b8dc 100644 --- a/kiauh/core/menus/install_menu.py +++ b/kiauh/core/menus/install_menu.py @@ -40,16 +40,16 @@ class InstallMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.install_klipper, menu=False), - "2": Option(method=self.install_moonraker, menu=False), - "3": Option(method=self.install_mainsail, menu=False), - "4": Option(method=self.install_fluidd, menu=False), - "5": Option(method=self.install_mainsail_config, menu=False), - "6": Option(method=self.install_fluidd_config, menu=False), - "7": Option(method=self.install_klipperscreen, menu=False), - "8": Option(method=self.install_mobileraker, menu=False), - "9": Option(method=self.install_crowsnest, menu=False), - "10": Option(method=self.install_octoeverywhere, menu=False), + "1": Option(method=self.install_klipper), + "2": Option(method=self.install_moonraker), + "3": Option(method=self.install_mainsail), + "4": Option(method=self.install_fluidd), + "5": Option(method=self.install_mainsail_config), + "6": Option(method=self.install_fluidd_config), + "7": Option(method=self.install_klipperscreen), + "8": Option(method=self.install_mobileraker), + "9": Option(method=self.install_crowsnest), + "10": Option(method=self.install_octoeverywhere), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/main_menu.py b/kiauh/core/menus/main_menu.py index 006203c..53141de 100644 --- a/kiauh/core/menus/main_menu.py +++ b/kiauh/core/menus/main_menu.py @@ -66,14 +66,14 @@ class MainMenu(BaseMenu): def set_options(self) -> None: self.options = { - "0": Option(method=self.log_upload_menu, menu=True), - "1": Option(method=self.install_menu, menu=True), - "2": Option(method=self.update_menu, menu=True), - "3": Option(method=self.remove_menu, menu=True), - "4": Option(method=self.advanced_menu, menu=True), - "5": Option(method=self.backup_menu, menu=True), - "e": Option(method=self.extension_menu, menu=True), - "s": Option(method=self.settings_menu, menu=True), + "0": Option(method=self.log_upload_menu), + "1": Option(method=self.install_menu), + "2": Option(method=self.update_menu), + "3": Option(method=self.remove_menu), + "4": Option(method=self.advanced_menu), + "5": Option(method=self.backup_menu), + "e": Option(method=self.extension_menu), + "s": Option(method=self.settings_menu), } def _init_status(self) -> None: diff --git a/kiauh/core/menus/remove_menu.py b/kiauh/core/menus/remove_menu.py index 3a555a8..2f18455 100644 --- a/kiauh/core/menus/remove_menu.py +++ b/kiauh/core/menus/remove_menu.py @@ -41,14 +41,14 @@ class RemoveMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.remove_klipper, menu=True), - "2": Option(method=self.remove_moonraker, menu=True), - "3": Option(method=self.remove_mainsail, menu=True), - "4": Option(method=self.remove_fluidd, menu=True), - "5": Option(method=self.remove_klipperscreen, menu=True), - "6": Option(method=self.remove_mobileraker, menu=True), - "7": Option(method=self.remove_crowsnest, menu=True), - "8": Option(method=self.remove_octoeverywhere, menu=True), + "1": Option(method=self.remove_klipper), + "2": Option(method=self.remove_moonraker), + "3": Option(method=self.remove_mainsail), + "4": Option(method=self.remove_fluidd), + "5": Option(method=self.remove_klipperscreen), + "6": Option(method=self.remove_mobileraker), + "7": Option(method=self.remove_crowsnest), + "8": Option(method=self.remove_octoeverywhere), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/settings_menu.py b/kiauh/core/menus/settings_menu.py index 20505d8..5989d96 100644 --- a/kiauh/core/menus/settings_menu.py +++ b/kiauh/core/menus/settings_menu.py @@ -48,11 +48,11 @@ class SettingsMenu(BaseMenu): def set_options(self) -> None: self.options = { - "1": Option(method=self.set_klipper_repo, menu=True), - "2": Option(method=self.set_moonraker_repo, menu=True), - "3": Option(method=self.toggle_mainsail_release, menu=True), - "4": Option(method=self.toggle_fluidd_release, menu=False), - "5": Option(method=self.toggle_backup_before_update, menu=False), + "1": Option(method=self.set_klipper_repo), + "2": Option(method=self.set_moonraker_repo), + "3": Option(method=self.toggle_mainsail_release), + "4": Option(method=self.toggle_fluidd_release), + "5": Option(method=self.toggle_backup_before_update), } def print_menu(self) -> None: diff --git a/kiauh/core/menus/update_menu.py b/kiauh/core/menus/update_menu.py index 4715887..39b5d1c 100644 --- a/kiauh/core/menus/update_menu.py +++ b/kiauh/core/menus/update_menu.py @@ -50,13 +50,13 @@ from core.logger import DialogType, Logger from core.menus import Option from core.menus.base_menu import BaseMenu from core.spinner import Spinner +from core.types import ComponentStatus from utils.input_utils import get_confirm from utils.sys_utils import ( get_upgradable_packages, update_system_package_lists, upgrade_system_packages, ) -from core.types import ComponentStatus # noinspection PyUnusedLocal @@ -102,18 +102,18 @@ class UpdateMenu(BaseMenu): def set_options(self) -> None: self.options = { - "a": Option(self.update_all, menu=False), - "1": Option(self.update_klipper, menu=False), - "2": Option(self.update_moonraker, menu=False), - "3": Option(self.update_mainsail, menu=False), - "4": Option(self.update_fluidd, menu=False), - "5": Option(self.update_mainsail_config, menu=False), - "6": Option(self.update_fluidd_config, menu=False), - "7": Option(self.update_klipperscreen, menu=False), - "8": Option(self.update_mobileraker, menu=False), - "9": Option(self.update_crowsnest, menu=False), - "10": Option(self.update_octoeverywhere, menu=False), - "11": Option(self.upgrade_system_packages, menu=False), + "a": Option(self.update_all), + "1": Option(self.update_klipper), + "2": Option(self.update_moonraker), + "3": Option(self.update_mainsail), + "4": Option(self.update_fluidd), + "5": Option(self.update_mainsail_config), + "6": Option(self.update_fluidd_config), + "7": Option(self.update_klipperscreen), + "8": Option(self.update_mobileraker), + "9": Option(self.update_crowsnest), + "10": Option(self.update_octoeverywhere), + "11": Option(self.upgrade_system_packages), } def print_menu(self) -> None: diff --git a/kiauh/extensions/extensions_menu.py b/kiauh/extensions/extensions_menu.py index d925adf..d7594cc 100644 --- a/kiauh/extensions/extensions_menu.py +++ b/kiauh/extensions/extensions_menu.py @@ -119,12 +119,12 @@ class ExtensionSubmenu(BaseMenu): ) def set_options(self) -> None: - self.options["1"] = Option(self.extension.install_extension, menu=False) + self.options["1"] = Option(self.extension.install_extension) if self.extension.metadata.get("updates"): - self.options["2"] = Option(self.extension.update_extension, menu=False) - self.options["3"] = Option(self.extension.remove_extension, menu=False) + self.options["2"] = Option(self.extension.update_extension) + self.options["3"] = Option(self.extension.remove_extension) else: - self.options["2"] = Option(self.extension.remove_extension, menu=False) + self.options["2"] = Option(self.extension.remove_extension) def print_menu(self) -> None: header = f" [ {self.extension.metadata.get('display_name')} ] "