diff options
Diffstat (limited to 'klippy/extras/display')
-rw-r--r-- | klippy/extras/display/display.py | 38 | ||||
-rw-r--r-- | klippy/extras/display/menu.py | 30 |
2 files changed, 34 insertions, 34 deletions
diff --git a/klippy/extras/display/display.py b/klippy/extras/display/display.py index 8e05cd2d..e83ed1a4 100644 --- a/klippy/extras/display/display.py +++ b/klippy/extras/display/display.py @@ -26,29 +26,29 @@ class PrinterLCD: # printer objects self.gcode = self.toolhead = self.sdcard = None self.fan = self.extruder0 = self.extruder1 = self.heater_bed = None + self.printer.register_event_handler("klippy:ready", self.handle_ready) # screen updating self.screen_update_timer = self.reactor.register_timer( self.screen_update_event) # Initialization - def printer_state(self, state): - if state == 'ready': - self.lcd_chip.init() - # Load printer objects - self.gcode = self.printer.lookup_object('gcode') - self.toolhead = self.printer.lookup_object('toolhead') - self.sdcard = self.printer.lookup_object('virtual_sdcard', None) - self.fan = self.printer.lookup_object('fan', None) - self.extruder0 = self.printer.lookup_object('extruder0', None) - self.extruder1 = self.printer.lookup_object('extruder1', None) - self.heater_bed = self.printer.lookup_object('heater_bed', None) - self.prg_time = .0 - self.progress = None - self.msg_time = None - self.message = None - self.gcode.register_command('M73', self.cmd_M73) - self.gcode.register_command('M117', self.cmd_M117) - # Start screen update timer - self.reactor.update_timer(self.screen_update_timer, self.reactor.NOW) + def handle_ready(self): + self.lcd_chip.init() + # Load printer objects + self.gcode = self.printer.lookup_object('gcode') + self.toolhead = self.printer.lookup_object('toolhead') + self.sdcard = self.printer.lookup_object('virtual_sdcard', None) + self.fan = self.printer.lookup_object('fan', None) + self.extruder0 = self.printer.lookup_object('extruder0', None) + self.extruder1 = self.printer.lookup_object('extruder1', None) + self.heater_bed = self.printer.lookup_object('heater_bed', None) + self.prg_time = .0 + self.progress = None + self.msg_time = None + self.message = None + self.gcode.register_command('M73', self.cmd_M73) + self.gcode.register_command('M117', self.cmd_M117) + # Start screen update timer + self.reactor.update_timer(self.screen_update_timer, self.reactor.NOW) # Get menu instance def get_menu(self): return self.menu diff --git a/klippy/extras/display/menu.py b/klippy/extras/display/menu.py index 1fc41fbf..470a2078 100644 --- a/klippy/extras/display/menu.py +++ b/klippy/extras/display/menu.py @@ -1007,8 +1007,9 @@ class MenuManager: self._last_encoder_ccw_eventtime = 0 # printer objects self.buttons = self.printer.try_load_module(config, "buttons") - # register itself for a printer_state callback - config.get_printer().add_object('menu', self) + # register itself for printer callbacks + self.printer.add_object('menu', self) + self.printer.register_event_handler("klippy:ready", self.handle_ready) # register buttons & encoder if self.buttons: if self.encoder_pins: @@ -1046,19 +1047,18 @@ class MenuManager: # Load menu root self.load_root() - def printer_state(self, state): - if state == 'ready': - # Load all available printer objects - for cfg_name in self.printer.objects: - obj = self.printer.lookup_object(cfg_name, None) - if obj is not None: - name = ".".join(str(cfg_name).split()) - self.objs[name] = obj - logging.debug("Load module '%s' -> %s" % ( - str(name), str(obj.__class__))) - # start timer - reactor = self.printer.get_reactor() - reactor.register_timer(self.timer_event, reactor.NOW) + def handle_ready(self): + # Load all available printer objects + for cfg_name in self.printer.objects: + obj = self.printer.lookup_object(cfg_name, None) + if obj is not None: + name = ".".join(str(cfg_name).split()) + self.objs[name] = obj + logging.debug("Load module '%s' -> %s" % ( + str(name), str(obj.__class__))) + # start timer + reactor = self.printer.get_reactor() + reactor.register_timer(self.timer_event, reactor.NOW) def timer_event(self, eventtime): # take next from sequence |