From 6dc12ed4f7f27b6f4bfe08aff75632a9d181de28 Mon Sep 17 00:00:00 2001 From: Hugo Chiang <31283897+DusKing1@users.noreply.github.com> Date: Tue, 5 Jul 2022 17:21:02 +0800 Subject: [PATCH] add more canvas elements --- src/canvas.py | 62 +++++++++------------------------------------------ src/sha.json | 2 +- 2 files changed, 12 insertions(+), 52 deletions(-) diff --git a/src/canvas.py b/src/canvas.py index a11b499..6865846 100644 --- a/src/canvas.py +++ b/src/canvas.py @@ -120,55 +120,15 @@ def _draw_audio_on_(self): audio_on_fb = framebuf.FrameBuffer(audio_on_bytearray, 128,24, framebuf.MONO_HLSB) self.screen.blit(audio_on_fb, 0, 8) - def _draw_battery_(self): - self.screen.fill(0) + def draw_blackbox(self): + blackbox_bytearray = bytearray(b'\x00\x00\x00\x00\x00?\xff\xf0\x00\x7f\xff\xf0\x00`\x000\x01\xff\xff\xb0\x03\xff\xff\xb0\x03\x00\x01\xb0\x03\x03\xfd\xb0\x03\x00\x01\xb0\x03\x03\xfd\xb0\x00\x00\x01\xb0?\xf3\xfd\xb0\x7f\xfb\xfd\xb0\x7f\xfc\x00\x00\x7f\xff\xff\xfc\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe\x7f\xff\xff\xfe?\xff\xff\xfc\x00\x00\x00\x00') + blackbox_fb = framebuf.FrameBuffer(blackbox_bytearray, 32,32, framebuf.MONO_HLSB) + self.screen.blit(blackbox_fb, 0, 0) - self.screen.rect(0,0,118,32,1)# battery's out border - self.screen.pixel(0,0,0) - self.screen.pixel(0,31,0) - self.screen.pixel(117,31,0) - self.screen.pixel(117,0,0) # four outer corners - - self.screen.rect(1,1,116,30,1) # battery's inner border - self.screen.rect(2,2,114,28,1) - self.screen.pixel(3,3,1) - self.screen.pixel(114,3,1) - self.screen.pixel(114,28,1) - self.screen.pixel(3,28,1) # four inner corners - - self.screen.fill_rect(118,7,10,18,1) # battery's top - self.screen.pixel(127,7,0) - self.screen.pixel(127,24,0) - - self.screen.fill_rect(5,5,20,22,1) # 20% battery - self.screen.pixel(5,5,0) - self.screen.pixel(24,5,0) - self.screen.pixel(24,26,0) - self.screen.pixel(5,26,0) - - self.screen.fill_rect(27,5,20,22,1) # 40% battery - self.screen.pixel(27,5,0) - self.screen.pixel(46,5,0) - self.screen.pixel(46,26,0) - self.screen.pixel(27,26,0) - - self.screen.fill_rect(49,5,20,22,1) # 60% battery - self.screen.pixel(49,5,0) - self.screen.pixel(68,5,0) - self.screen.pixel(68,26,0) - self.screen.pixel(49,26,0) - - self.screen.fill_rect(71,5,20,22,1) # 80% battery - self.screen.pixel(71,5,0) - self.screen.pixel(90,5,0) - self.screen.pixel(90,26,0) - self.screen.pixel(71,26,0) - - self.screen.fill_rect(93,5,20,22,1) # 100% battery - self.screen.pixel(93,5,0) - self.screen.pixel(112,5,0) - self.screen.pixel(112,26,0) - self.screen.pixel(93,26,0) + def _draw_battery_(self): + battery_bytearray = bytearray(b'\x7f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfc\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfc\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00<\x00\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\xe3\xff\xff\x0f\xff\xfc?\xff\xf0\xff\xff\xc3\xff\xff\x1c\x00\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9c\x00\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xfe\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xff\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9f\xfe\xe7\xff\xff\x9f\xff\xfe\x7f\xff\xf9\xff\xff\xe7\xff\xff\x9c\x00\xe3\xff\xff\x0f\xff\xfc?\xff\xf0\xff\xff\xc3\xff\xff\x1c\x00\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00<\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfc\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfc\x00\x7f\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf8\x00') + battery_fb = framebuf.FrameBuffer(battery_bytearray, 128,32, framebuf.MONO_HLSB) + self.screen.blit(battery_fb, 0, 0) def _draw_battery_mask_(self, voltage): @@ -308,7 +268,7 @@ def _display_menu_camera_protocol_(self): self._draw_settings_() self.screen.text('Cam Protocol', 34, 0, 1) self.screen.text("".join(tuple(vram.camera_protocol)), 34, 12, 1) - self.screen.text('Next Device', 34, 24, 1) + self.screen.text('NEXT Device', 34, 24, 1) self.screen.show() def _display_menu_reboot_hint_(self): @@ -324,7 +284,7 @@ def _display_menu_device_mode_(self): self._draw_settings_() self.screen.text('Device Mode', 34, 0, 1) self.screen.text("".join(tuple(vram.device_mode)), 34, 12, 1) - self.screen.text('Next Marker', 34, 24, 1) + self.screen.text('NEXT Marker', 34, 24, 1) self.screen.show() def _display_menu_inject_mode_(self): @@ -338,7 +298,7 @@ def _display_menu_inject_mode_(self): def _display_menu_erase_blackbox_(self): self.screen.fill(0) - # draw blackbox icon here, leave if for blank now + self.draw_blackbox() self.screen.text('Blackbox', 34, 0, 1) if vram.erase_flag == True: self.screen.text('Erasing...', 34, 12, 1) diff --git a/src/sha.json b/src/sha.json index 3202479..c366dc8 100644 --- a/src/sha.json +++ b/src/sha.json @@ -18,7 +18,7 @@ }, { "name": "canvas.py", - "sha1": "ba24c32f58a486a098a9e59ca51fd1e47edb9311" + "sha1": "51c062920841d1d33015899eab6252949e3601c3" }, { "name": "crsf.py",