From d09bd946be9c73d96fb8e1697b15e733d04ddeb6 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Thu, 24 Jan 2008 21:56:23 +0000 Subject: write text support in eCanvas --- lib/python/Components/Renderer/Canvas.py | 8 +++++++- lib/python/Components/Sources/CanvasSource.py | 9 +++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'lib/python') diff --git a/lib/python/Components/Renderer/Canvas.py b/lib/python/Components/Renderer/Canvas.py index 53757235..bd7ffb5e 100644 --- a/lib/python/Components/Renderer/Canvas.py +++ b/lib/python/Components/Renderer/Canvas.py @@ -29,7 +29,13 @@ class Canvas(Renderer): def draw(self, list): for l in list: - self.instance.fillRect(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5])) + if l[0] == 1: + self.instance.fillRect(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5])) + elif l[0] == 2: + self.instance.writeText(eRect(l[1], l[2], l[3], l[4]), gRGB(l[5]), gRGB(l[6]), l[7], l[8], l[9]) + else: + print "drawlist entry:", l + raise "invalid drawlist entry" def changed(self, what): self.pull_updates() diff --git a/lib/python/Components/Sources/CanvasSource.py b/lib/python/Components/Sources/CanvasSource.py index 4fd0e02a..2f3aaecc 100644 --- a/lib/python/Components/Sources/CanvasSource.py +++ b/lib/python/Components/Sources/CanvasSource.py @@ -16,5 +16,10 @@ class CanvasSource(Source): drawlist = property(get_drawlist) def fill(self, x, y, width, height, color): - self.drawlist[1].append( (1, x, y, width, height, color) ) - self.changed() + self.drawlist[1].append((1, x, y, width, height, color)) + + def writeText(self, x, y, width, height, fg, bg, font, text, flags = 0): + self.drawlist[1].append((2, x, y, width, height, fg, bg, font, text, flags)) + + def flush(self): + self.changed((self.CHANGED_DEFAULT,)) -- cgit v1.2.3