diff options
| author | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2005-12-07 15:11:02 +0000 |
|---|---|---|
| committer | Stefan Pluecken <stefan.pluecken@multimedia-labs.de> | 2005-12-07 15:11:02 +0000 |
| commit | a94f85f169ef00d552d3fa4e2706fd8ccbf4c708 (patch) | |
| tree | 7d0818b69577480eee1374be94d91f7321017543 /lib | |
| parent | 6bc9f7451c182bc2044e90cf317231d1d3927ee4 (diff) | |
| download | enigma2-a94f85f169ef00d552d3fa4e2706fd8ccbf4c708.tar.gz enigma2-a94f85f169ef00d552d3fa4e2706fd8ccbf4c708.zip | |
introduce the movingPixmap and use it to position the arrow in the start-wizard (but with some redrawing-problems :))
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/python/Components/Pixmap.py | 33 | ||||
| -rw-r--r-- | lib/python/Screens/Wizard.py | 13 |
2 files changed, 41 insertions, 5 deletions
diff --git a/lib/python/Components/Pixmap.py b/lib/python/Components/Pixmap.py index 5f4b9691..fc7bfe27 100644 --- a/lib/python/Components/Pixmap.py +++ b/lib/python/Components/Pixmap.py @@ -25,3 +25,36 @@ class PixmapConditional(ConditionalWidget, Pixmap): ConditionalWidget.__init__(self) Pixmap.__init__(self) +class MovingPixmap(Pixmap): + def __init__(self): + Pixmap.__init__(self) + + self.moving = False + + # TODO: get real values + self.x = 0.0 + self.y = 0.0 + + self.moveTimer = eTimer() + self.moveTimer.timeout.get().append(self.doMove) + + def moveTo(self, x, y, time = 20): + self.time = time + self.destX = x + self.destY = y + self.stepX = (self.destX - self.x) / float(time) + self.stepY = (self.destY - self.y) / float(time) + + def startMoving(self): + if not self.moving: + self.moving = True + self.moveTimer.start(10) + + def doMove(self): + self.x += self.stepX + self.y += self.stepY + self.time -= 1 + self.move(int(self.x), int(self.y)) + if (self.time == 0): + self.moveTimer.stop() + self.moving = False
\ No newline at end of file diff --git a/lib/python/Screens/Wizard.py b/lib/python/Screens/Wizard.py index b199634d..7c223b50 100644 --- a/lib/python/Screens/Wizard.py +++ b/lib/python/Screens/Wizard.py @@ -5,19 +5,19 @@ from Components.Label import Label from Components.Slider import Slider from Components.ActionMap import HelpableActionMap from Components.config import config, configElementBoolean -from Components.Pixmap import Pixmap +from Components.Pixmap import * config.misc.firstrun = configElementBoolean("config.misc.firstrun", 1); class WelcomeWizard(Screen, HelpableScreen): skin = """ - <screen position="0,0" size="720,560" title="Welcome..." flags="wfNoBorder"> + <screen position="0,0" size="720,560" title="Welcome..." flags="wfNoBorder" > <widget name="text" position="50,100" size="440,300" font="Arial;23" /> <widget name="step" position="50,50" size="440,25" font="Arial;23" /> <widget name="stepslider" position="50,500" zPosition="1" size="440,20" backgroundColor="dark" /> - <widget name="rc" pixmap="/usr/share/enigma2/rc.png" position="500,50" size="154,475" alphatest="on" /> - <widget name="arrowdown" pixmap="/usr/share/enigma2/arrowdown.png" position="557,232" zPosition="1" size="37,70" alphatest="on" /> + <widget name="rc" pixmap="/usr/share/enigma2/rc.png" position="500,50" size="154,475" transparent="1" alphatest="on"/> + <widget name="arrowdown" pixmap="/usr/share/enigma2/arrowdown.png" position="0,0" zPosition="1" size="37,70" transparent="1" alphatest="on"/> </screen>""" text = [_("Hello User.\n\nThis start-wizard will guide you through the basic setup of your Dreambox."), @@ -35,7 +35,10 @@ class WelcomeWizard(Screen, HelpableScreen): self["text"] = Label() self["rc"] = Pixmap() - self["arrowdown"] = Pixmap() + self["arrowdown"] = MovingPixmap() + self["arrowdown"].moveTo(557, 232, 100) + + self.onShown.append(self["arrowdown"].startMoving) self["step"] = Label() |
