klippy: Convert printer_state("ready") to an event handler
Convert all users of the printer_state("ready") handler to register a
"klippy:ready" event handler instead.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user