Author: dmeyer
Date: Sun Feb 25 19:15:51 2007
New Revision: 2525
Modified:
trunk/display/src/lcdproc.py
Log:
add support for screens with a special duration
Modified: trunk/display/src/lcdproc.py
==============================================================================
--- trunk/display/src/lcdproc.py (original)
+++ trunk/display/src/lcdproc.py Sun Feb 25 19:15:51 2007
@@ -62,16 +62,19 @@
"""
LCD Screen with widgets.
"""
- def __init__(self, lcd, name, priority=100):
+ def __init__(self, lcd, name, priority='foreground', duration=0):
self._send = lcd
self.width, self.height, self.size = lcd.width, lcd.height, lcd.size
self.name = name
self._priority = priority
+ self._duration = duration
self._send = lcd._send
self._send('screen_add %s' % name)
self._send('screen_set %s name %s' % (name, name))
self._send('screen_set %s -priority %s -heartbeat off' % \
(name, priority))
+ if duration:
+ self._send('screen_set %s -timeout %s' % (name, duration*8))
self.widgets = []
self.nextid = 0
@@ -183,8 +186,9 @@
Destructor. It will wipe the screen and remove it from
the lcd.
"""
- self.wipe()
- self._send('screen_del %s' % self.name)
+ if not self._duration:
+ self.wipe()
+ self._send('screen_del %s' % self.name)
class LCD(object):
@@ -196,13 +200,17 @@
'connected': kaa.notifier.Signal()
}
self._connect(server, port)
+ self._screenno = 0
- def create_screen(self, name):
+ def create_screen(self, name = None, priority='foreground', duration=0):
"""
Create a new screen with the given name.
"""
- return Screen(self, name)
+ if not name:
+ name = 'lcd%d' % self._screenno
+ self._screenno += 1
+ return Screen(self, name, priority, duration)
def _send(self, line):
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog