fix: init previous_menu in menus

Signed-off-by: Dominik Willner <th33xitus@gmail.com>
This commit is contained in:
dw-0
2024-04-15 22:12:14 +02:00
parent cd63034b74
commit 336414c43c
15 changed files with 28 additions and 12 deletions

View File

@@ -20,6 +20,7 @@ from utils.constants import RESET_FORMAT, COLOR_RED, COLOR_CYAN
class KlipperRemoveMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.footer_type = FooterType.BACK_HELP
self.remove_klipper_service = False
self.remove_klipper_dir = False

View File

@@ -32,6 +32,7 @@ from utils.system_utils import (
class KlipperBuildFirmwareMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.deps = ["build-essential", "dpkg-dev", "make"]
self.missing_deps = check_package_install(self.deps)

View File

@@ -18,18 +18,16 @@ from utils.constants import COLOR_RED, RESET_FORMAT
# noinspection PyUnusedLocal
# noinspection PyMethodMayBeStatic
class KlipperNoFirmwareErrorMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.set_previous_menu(None)
self.set_options()
self.previous_menu = previous_menu
self.flash_options = FlashOptions()
self.footer_type = FooterType.BLANK
self.input_label_txt = "Press ENTER to go back to [Advanced Menu]"
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
pass
self.previous_menu = previous_menu
def set_options(self) -> None:
self.default_option = Option(self.go_back, False)
@@ -69,13 +67,14 @@ class KlipperNoFirmwareErrorMenu(BaseMenu):
# noinspection PyUnusedLocal
# noinspection PyMethodMayBeStatic
class KlipperNoBoardTypesErrorMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.footer_type = FooterType.BLANK
self.input_label_txt = "Press ENTER to go back to [Main Menu]"
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
pass
self.previous_menu = previous_menu
def set_options(self) -> None:
self.default_option = Option(self.go_back, False)

View File

@@ -15,8 +15,9 @@ from utils.constants import COLOR_CYAN, RESET_FORMAT, COLOR_YELLOW
# noinspection DuplicatedCode
class KlipperFlashMethodHelpMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from components.klipper_firmware.menus.klipper_flash_menu import (
@@ -71,8 +72,9 @@ class KlipperFlashMethodHelpMenu(BaseMenu):
# noinspection DuplicatedCode
class KlipperFlashCommandHelpMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from components.klipper_firmware.menus.klipper_flash_menu import (
@@ -114,8 +116,9 @@ class KlipperFlashCommandHelpMenu(BaseMenu):
# noinspection DuplicatedCode
class KlipperMcuConnectionHelpMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from components.klipper_firmware.menus.klipper_flash_menu import (

View File

@@ -161,6 +161,7 @@ class KlipperSelectMcuConnectionMenu(BaseMenu):
self, previous_menu: Optional[Type[BaseMenu]] = None, standalone: bool = False
):
super().__init__()
self.previous_menu = previous_menu
self.__standalone = standalone
self.help_menu = KlipperMcuConnectionHelpMenu
self.input_label_txt = "Select connection type"

View File

@@ -19,8 +19,9 @@ from utils.constants import RESET_FORMAT, COLOR_YELLOW
# noinspection PyMethodMayBeStatic
class LogUploadMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.logfile_list = get_logfile_list()
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:

View File

@@ -20,6 +20,7 @@ from utils.constants import RESET_FORMAT, COLOR_RED, COLOR_CYAN
class MoonrakerRemoveMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.remove_moonraker_service = False
self.remove_moonraker_dir = False
self.remove_moonraker_env = False

View File

@@ -23,6 +23,7 @@ class ClientRemoveMenu(BaseMenu):
self, client: BaseWebClient, previous_menu: Optional[Type[BaseMenu]] = None
):
super().__init__()
self.previous_menu = previous_menu
self.client = client
self.rm_client = False
self.rm_client_config = False

View File

@@ -26,6 +26,7 @@ from utils.constants import COLOR_YELLOW, RESET_FORMAT
class AdvancedMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from core.menus.main_menu import MainMenu

View File

@@ -32,6 +32,7 @@ from utils.constants import COLOR_CYAN, RESET_FORMAT, COLOR_YELLOW
class BackupMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from core.menus.main_menu import MainMenu

View File

@@ -27,6 +27,7 @@ from utils.constants import COLOR_GREEN, RESET_FORMAT
class InstallMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from core.menus.main_menu import MainMenu

View File

@@ -27,6 +27,7 @@ from utils.constants import COLOR_RED, RESET_FORMAT
class RemoveMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from core.menus.main_menu import MainMenu

View File

@@ -13,8 +13,9 @@ from core.menus.base_menu import BaseMenu
# noinspection PyMethodMayBeStatic
class SettingsMenu(BaseMenu):
def __init__(self):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
from core.menus.main_menu import MainMenu

View File

@@ -43,6 +43,7 @@ from utils.constants import (
class UpdateMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.kl_local = f"{COLOR_WHITE}{RESET_FORMAT}"
self.kl_remote = f"{COLOR_WHITE}{RESET_FORMAT}"

View File

@@ -26,6 +26,7 @@ from utils.constants import RESET_FORMAT, COLOR_CYAN, COLOR_YELLOW
class ExtensionsMenu(BaseMenu):
def __init__(self, previous_menu: Optional[Type[BaseMenu]] = None):
super().__init__()
self.previous_menu = previous_menu
self.extensions: Dict[str, BaseExtension] = self.discover_extensions()
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
@@ -109,6 +110,7 @@ class ExtensionSubmenu(BaseMenu):
):
super().__init__()
self.extension = extension
self.previous_menu = previous_menu
def set_previous_menu(self, previous_menu: Optional[Type[BaseMenu]]) -> None:
self.previous_menu: Type[BaseMenu] = (