feat: add KlipperScreen

Signed-off-by: Dominik Willner <th33xitus@gmail.com>
This commit is contained in:
dw-0
2024-05-02 22:54:49 +02:00
parent 074344cf7c
commit c17c3e9bd4
7 changed files with 263 additions and 3 deletions

View File

@@ -11,6 +11,7 @@ import textwrap
from typing import Type, Optional
from components.klipper.klipper_utils import backup_klipper_dir
from components.klipperscreen.klipperscreen import backup_klipperscreen_dir
from components.moonraker.moonraker_utils import (
backup_moonraker_dir,
backup_moonraker_db_dir,
@@ -104,4 +105,4 @@ class BackupMenu(BaseMenu):
backup_client_config_data(FluiddData())
def backup_klipperscreen(self, **kwargs):
pass
backup_klipperscreen_dir()

View File

@@ -12,6 +12,7 @@ from typing import Type, Optional
from components.crowsnest.crowsnest import install_crowsnest
from components.klipper import klipper_setup
from components.klipperscreen.klipperscreen import install_klipperscreen
from components.moonraker import moonraker_setup
from components.webui_client import client_setup
from components.webui_client.client_config import client_config_setup
@@ -45,6 +46,7 @@ class InstallMenu(BaseMenu):
"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),
"9": Option(method=self.install_crowsnest, menu=False),
}
@@ -91,5 +93,8 @@ class InstallMenu(BaseMenu):
def install_fluidd_config(self, **kwargs):
client_config_setup.install_client_config(FluiddData())
def install_klipperscreen(self, **kwargs):
install_klipperscreen()
def install_crowsnest(self, **kwargs):
install_crowsnest()

View File

@@ -12,6 +12,7 @@ from typing import Type, Optional
from components.crowsnest.crowsnest import get_crowsnest_status
from components.klipper.klipper_utils import get_klipper_status
from components.klipperscreen.klipperscreen import get_klipperscreen_status
from components.log_uploads.menus.log_upload_menu import LogUploadMenu
from components.moonraker.moonraker_utils import get_moonraker_status
from components.webui_client.client_utils import (
@@ -91,6 +92,7 @@ class MainMenu(BaseMenu):
self.ms_status = get_client_status(MainsailData())
self.fl_status = get_client_status(FluiddData())
self.cc_status = get_current_client_config([MainsailData(), FluiddData()])
self._update_status("ks", get_klipperscreen_status)
self._update_status("cn", get_crowsnest_status)
def _update_status(self, status_name: str, status_fn: callable) -> None:

View File

@@ -12,6 +12,7 @@ from typing import Type, Optional
from components.crowsnest.crowsnest import remove_crowsnest
from components.klipper.menus.klipper_remove_menu import KlipperRemoveMenu
from components.klipperscreen.klipperscreen import remove_klipperscreen
from components.moonraker.menus.moonraker_remove_menu import (
MoonrakerRemoveMenu,
)
@@ -43,6 +44,7 @@ class RemoveMenu(BaseMenu):
"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_crowsnest, menu=True),
}
@@ -81,5 +83,8 @@ class RemoveMenu(BaseMenu):
def remove_fluidd(self, **kwargs):
ClientRemoveMenu(previous_menu=self.__class__, client=FluiddData()).run()
def remove_klipperscreen(self, **kwargs):
remove_klipperscreen()
def remove_crowsnest(self, **kwargs):
remove_crowsnest()

View File

@@ -15,6 +15,10 @@ from components.klipper.klipper_setup import update_klipper
from components.klipper.klipper_utils import (
get_klipper_status,
)
from components.klipperscreen.klipperscreen import (
update_klipperscreen,
get_klipperscreen_status,
)
from components.moonraker.moonraker_setup import update_moonraker
from components.moonraker.moonraker_utils import get_moonraker_status
from components.webui_client.client_config.client_config_setup import (
@@ -58,6 +62,8 @@ class UpdateMenu(BaseMenu):
self.mc_remote = f"{COLOR_WHITE}{RESET_FORMAT}"
self.fc_local = f"{COLOR_WHITE}{RESET_FORMAT}"
self.fc_remote = f"{COLOR_WHITE}{RESET_FORMAT}"
self.ks_local = f"{COLOR_WHITE}{RESET_FORMAT}"
self.ks_remote = f"{COLOR_WHITE}{RESET_FORMAT}"
self.cn_local = f"{COLOR_WHITE}{RESET_FORMAT}"
self.cn_remote = f"{COLOR_WHITE}{RESET_FORMAT}"
@@ -112,7 +118,7 @@ class UpdateMenu(BaseMenu):
| 6) Fluidd-Config | {self.fc_local:<22} | {self.fc_remote:<22} |
| | | |
| Other: |---------------|---------------|
| 7) KlipperScreen | | |
| 7) KlipperScreen | {self.ks_local:<22} | {self.ks_remote:<22} |
| 8) Mobileraker | | |
| 9) Crowsnest | {self.cn_local:<22} | {self.cn_remote:<22} |
| |-------------------------------|
@@ -142,7 +148,8 @@ class UpdateMenu(BaseMenu):
def update_fluidd_config(self, **kwargs):
update_client_config(self.fluidd_client)
def update_klipperscreen(self, **kwargs): ...
def update_klipperscreen(self, **kwargs):
update_klipperscreen()
def update_mobileraker(self, **kwargs): ...
@@ -193,6 +200,13 @@ class UpdateMenu(BaseMenu):
)
self.fc_remote = f"{COLOR_GREEN}{fc_status.get('remote')}{RESET_FORMAT}"
# klipperscreen
ks_status = get_klipperscreen_status()
self.ks_local = self.format_local_status(
ks_status.get("local"), ks_status.get("remote")
)
self.ks_remote = f"{COLOR_GREEN}{ks_status.get('remote')}{RESET_FORMAT}"
# crowsnest
cn_status = get_crowsnest_status()
self.cn_local = self.format_local_status(