diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2018-09-20 12:40:30 -0400 |
---|---|---|
committer | KevinOConnor <kevin@koconnor.net> | 2018-09-21 16:39:38 -0400 |
commit | c8d9d575a1eaddf536002b3a4330e5e3b4dc9ad1 (patch) | |
tree | 41f94a7c57556d374ee0050dbcb9ab1a104626c4 /klippy/extras/display/st7920.py | |
parent | 2a5778be3a921a59733ee85791d18ae0b8ff4a92 (diff) | |
download | kutter-c8d9d575a1eaddf536002b3a4330e5e3b4dc9ad1.tar.gz kutter-c8d9d575a1eaddf536002b3a4330e5e3b4dc9ad1.tar.xz kutter-c8d9d575a1eaddf536002b3a4330e5e3b4dc9ad1.zip |
display: Support writing single character glyphs using write_glyph()
Add write_glyph() support to hd44780.py. Update uc1701.py and
st7920.py to support writing single character glyphs via
write_glyph().
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/display/st7920.py')
-rw-r--r-- | klippy/extras/display/st7920.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/klippy/extras/display/st7920.py b/klippy/extras/display/st7920.py index b8562322..4d92c8b1 100644 --- a/klippy/extras/display/st7920.py +++ b/klippy/extras/display/st7920.py @@ -12,6 +12,8 @@ BACKGROUND_PRIORITY_CLOCK = 0x7fffffff00000000 ST7920_CMD_DELAY = .000020 ST7920_SYNC_DELAY = .000045 +TextGlyphs = { 'right_arrow': '\x1a' } + class ST7920: char_right_arrow = '\x1a' def __init__(self, config): @@ -132,12 +134,19 @@ class ST7920: if glyph_id is not None and x & 1 == 0: # Render cached icon using character generator self.write_text(x, y, glyph_id) - return + return 2 icon = icons.Icons16x16.get(glyph_name) if icon is not None: # Draw icon in graphics mode for i, bits in enumerate(icon): self.write_graphics(x, y, i, [(bits >> 8) & 0xff, bits & 0xff]) + return 2 + char = TextGlyphs.get(glyph_name) + if char is not None: + # Draw character + self.write_text(x, y, char) + return 1 + return 0 def clear(self): self.text_framebuffer[0][:] = ' '*64 zeros = bytearray(32) |