Skip to content
Snippets Groups Projects
Commit 33cd17ec authored by Mark Tearle's avatar Mark Tearle
Browse files

add support for one shot Idlers

parent 27fe24e4
Branches
Tags
No related merge requests found
#!/usr/bin/env python
import string
import string, time
from random import random
from MessageKeeper import MessageKeeper
......@@ -15,6 +15,9 @@ class Idler:
def reset(self):
pass
def finished(self):
return False
class TrainIdler(Idler):
def __init__(self, v):
......@@ -210,6 +213,13 @@ class StringIdler(Idler):
def next(self):
self.mk.update_display()
def reset(self):
pass
#self.mk.update_display(forced=True)
class ClockIdler(Idler):
def __init__(self, v):
self.v = v
self.last = None
def next(self):
output = time.strftime("%H:%M:%S")
if output != self.last:
self.v.display(" %8.8s " % (output))
self.last = output
......@@ -15,7 +15,7 @@ from VendingMachine import VendingMachine, VendingException
from MessageKeeper import MessageKeeper
from HorizScroll import HorizScroll
from random import random, seed
from Idler import TrainIdler,GrayIdler,StringIdler
from Idler import TrainIdler,GrayIdler,StringIdler,ClockIdler
import socket
from posix import geteuid
......@@ -189,6 +189,7 @@ idler = None
def setup_idlers(v):
global idlers, idler
idlers = [
ClockIdler(v),
StringIdler(v),
StringIdler(v, text=CREDITS),
StringIdler(v, text=str(math.pi) + " "),
......@@ -211,6 +212,8 @@ def choose_idler():
def idle_step():
global idler
if idler.finished():
choose_idler()
idler.next()
def run_forever(rfh, wfh, options, cf):
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment