From e3a38f85613d53a4a063e835c34c701196010c6e Mon Sep 17 00:00:00 2001 From: zkk <1007518571@qq.com> Date: Mon, 23 Dec 2024 15:48:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=80=E7=82=B9=E6=A0=BC=E5=BC=8F=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- panels/advanced.py | 69 ++++++++++++++++++++++++++++++---------------- 1 file changed, 46 insertions(+), 23 deletions(-) diff --git a/panels/advanced.py b/panels/advanced.py index 79a827a0..d545c256 100644 --- a/panels/advanced.py +++ b/panels/advanced.py @@ -1,4 +1,5 @@ import logging + import gi gi.require_version("Gtk", "3.0") @@ -6,32 +7,54 @@ from gi.repository import Gtk from ks_includes.KlippyGcodes import KlippyGcodes from ks_includes.screen_panel import ScreenPanel + class Panel(ScreenPanel): def __init__(self, screen, title): title = title or _("Advanced") super().__init__(screen, title) self.advanced = {} - self.menu_list ={} + self.menu_list = {} self.advanced_options = [ - {"adaptive_leveling": {"section": "main", "name": _("Adaptive Bed Leveling"), "type": "binary", - "tooltip": _("Leveling Only in the Actual Print Area"), - "value": "False", "callback": self.set_adaptive_leveling}}, - {"power_loss_recovery": {"section": "main", "name": _("Power Loss Recovery"), "type": "binary", - "tooltip": _("Restores your print job after a power outage"), - "value": "True", "callback": self.set_power_loss_recovery}}, - {"auto_change_nozzle": {"section": "main", "name": _("Auto Change Nozzle"), "type": "binary", - "tooltip": _("Auto change nozzle when filament runout"), - "value": "False", "callback": self.set_auto_change_nozzle}}, + { + "adaptive_leveling": { + "section": "main", + "name": _("Adaptive Bed Leveling"), + "type": "binary", + "tooltip": _("Leveling Only in the Actual Print Area"), + "value": "False", + "callback": self.set_adaptive_leveling, + } + }, + { + "power_loss_recovery": { + "section": "main", + "name": _("Power Loss Recovery"), + "type": "binary", + "tooltip": _("Restores your print job after a power outage"), + "value": "True", + "callback": self.set_power_loss_recovery, + } + }, + { + "auto_change_nozzle": { + "section": "main", + "name": _("Auto Change Nozzle"), + "type": "binary", + "tooltip": _("Auto change nozzle when filament runout"), + "value": "False", + "callback": self.set_auto_change_nozzle, + } + }, ] options = self.advanced_options - self.labels['advanced_menu'] = self._gtk.ScrolledWindow() - self.labels['advanced'] = Gtk.Grid() - self.labels['advanced_menu'].add(self.labels['advanced']) + self.labels["advanced_menu"] = self._gtk.ScrolledWindow() + self.labels["advanced"] = Gtk.Grid() + self.labels["advanced_menu"].add(self.labels["advanced"]) for option in options: name = list(option)[0] - res = self.add_option('advanced', self.advanced, name, option[name]) + res = self.add_option("advanced", self.advanced, name, option[name]) self.menu_list.update(res) - self.content.add(self.labels['advanced_menu']) + self.content.add(self.labels["advanced_menu"]) def set_adaptive_leveling(self, *args): self.set_configuration_feature("adaptive_meshing", *args) @@ -52,16 +75,16 @@ class Panel(ScreenPanel): def process_update(self, action, data): if action != "notify_status_update": return - if 'save_variables' in data and 'variables' in data['save_variables']: - variables = data['save_variables']['variables'] - if 'adaptive_meshing' in variables: - self.menu_list['adaptive_leveling'].set_active(variables['adaptive_meshing']) + if "save_variables" in data and "variables" in data["save_variables"]: + variables = data["save_variables"]["variables"] + if "adaptive_meshing" in variables: + self.menu_list["adaptive_leveling"].set_active(variables["adaptive_meshing"]) else: self.menu_list["adaptive_leveling"].set_active(False) - if 'power_loss_recovery' in variables: - self.menu_list['power_loss_recovery'].set_active(variables['power_loss_recovery']) - if 'auto_change_nozzle' in variables: - self.menu_list['auto_change_nozzle'].set_active(variables['auto_change_nozzle']) + if "power_loss_recovery" in variables: + self.menu_list["power_loss_recovery"].set_active(variables["power_loss_recovery"]) + if "auto_change_nozzle" in variables: + self.menu_list["auto_change_nozzle"].set_active(variables["auto_change_nozzle"]) else: self.menu_list["auto_change_nozzle"].set_active(False)