32 lines
883 B
Python
32 lines
883 B
Python
class Display:
|
|
def __init__(self, driver=None):
|
|
self.driver = driver
|
|
self.commands = []
|
|
|
|
def clear(self):
|
|
self.commands.append(("clear",))
|
|
|
|
def text(self, x, y, value, size=1):
|
|
self.commands.append(("text", x, y, str(value), size))
|
|
|
|
def rect(self, x, y, w, h, filled=False):
|
|
self.commands.append(("rect", x, y, w, h, filled))
|
|
|
|
def flush(self):
|
|
if not self.driver:
|
|
return
|
|
|
|
for command in self.commands:
|
|
name = command[0]
|
|
|
|
if name == "clear":
|
|
self.driver.clear()
|
|
elif name == "text":
|
|
_, x, y, value, size = command
|
|
self.driver.text(x, y, value, size)
|
|
elif name == "rect":
|
|
_, x, y, w, h, filled = command
|
|
self.driver.rect(x, y, w, h, filled)
|
|
|
|
self.commands = []
|