klippy: Convert printer_state("shutdown") to an event handler

Convert all users of the printer_state("shutdown") handler to register
a "klippy:shutdown" event handler instead.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2019-01-08 09:15:40 -05:00
parent b2d5a8e65b
commit fb7fe282c8
6 changed files with 31 additions and 27 deletions

View file

@ -8,6 +8,7 @@ import os, logging
class VirtualSD:
def __init__(self, config):
printer = config.get_printer()
printer.register_event_handler("klippy:shutdown", self.handle_shutdown)
# sdcard state
sd = config.get('path')
self.sdcard_dirname = os.path.normpath(os.path.expanduser(sd))
@ -24,8 +25,8 @@ class VirtualSD:
self.gcode.register_command(cmd, getattr(self, 'cmd_' + cmd))
for cmd in ['M28', 'M29', 'M30']:
self.gcode.register_command(cmd, self.cmd_error)
def printer_state(self, state):
if state == 'shutdown' and self.work_timer is not None:
def handle_shutdown(self):
if self.work_timer is not None:
self.must_pause_work = True
try:
readpos = max(self.file_position - 1024, 0)