diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2020-06-08 17:21:42 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2020-06-08 21:40:42 -0400 |
commit | 1a7e4e51b32bb4eead6eab111293ced012871414 (patch) | |
tree | 90fa0c7fb432827396666d125ee65cceabea1c93 /klippy/extras/display/display.py | |
parent | d94dd8e9fdb1bde245216ada4cfd2e16bf51c4e1 (diff) | |
download | kutter-1a7e4e51b32bb4eead6eab111293ced012871414.tar.gz kutter-1a7e4e51b32bb4eead6eab111293ced012871414.tar.xz kutter-1a7e4e51b32bb4eead6eab111293ced012871414.zip |
display: Use '.' and '*' in display_glyph description
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/display/display.py')
-rw-r--r-- | klippy/extras/display/display.py | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/klippy/extras/display/display.py b/klippy/extras/display/display.py index 880e0a32..78d6667c 100644 --- a/klippy/extras/display/display.py +++ b/klippy/extras/display/display.py @@ -147,16 +147,16 @@ class PrinterLCD: glyph_name = dg.get_name()[len(dg_prefix):] glyph_data = [] for line in dg.get('data').split('\n'): - if line: - line_val = int(line, 2) - if line_val > 65535: - raise config.error("Glyph line out of range for " + \ - "glyph %s maximum is 65535" % (glyph_name,)) - glyph_data.append(line_val) - if len(glyph_data) < 16: - raise config.error("Not enough lines for" + \ - "glyph %s, 16 lines are needed" % (glyph_name,)) - icons[dg.get_name()[len(dg_prefix):]] = glyph_data + line = line.strip().replace('.', '0').replace('*', '1') + if not line: + continue + if len(line) != 16 or line.replace('0', '').replace('1', ''): + raise config.error("Invalid glyph line in %s" + % (glyph_name,)) + glyph_data.append(int(line, 2)) + if len(glyph_data) != 16: + raise config.error("Glyph %s must be 16 lines" % (glyph_name,)) + icons[glyph_name] = glyph_data self.lcd_chip.set_glyphs(icons) # Initialization def handle_ready(self): |