Move VendServer code up a directory wholesale and rename
[uccvend-vendserver.git] / VendServer / HorizScroll.py
diff --git a/VendServer/HorizScroll.py b/VendServer/HorizScroll.py
new file mode 100644 (file)
index 0000000..d27f7dc
--- /dev/null
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+
+import string
+import sys
+import time
+
+class HorizScroll:
+       def __init__(self, text):
+               self.text = text
+               pass
+
+       def expand(self, padding=None, paddingchar=" ", dir=None, wraparound=False):
+               if len(self.text) <= 10:
+                       return [text]
+
+               if padding == None:
+                       padding = len(self.text) / 2 + 1
+
+               format = "%-" + str(padding) + "." + str(padding) + "s"
+               pad = string.replace(format % " "," ",paddingchar)
+               padtext = self.text + pad
+               if not wraparound:
+                       numiters = len(self.text) - 10
+               else:
+                       numiters = len(padtext)
+
+               expansion = []
+
+               for x in range(0,numiters):
+                         expansion.append("%-10.10s" % (padtext[x:] + padtext[:x]))
+               
+               if dir == -1:
+                       expansion.reverse()
+
+               return expansion
+
+if __name__ == '__main__':
+       h = HorizScroll("hello cruel world")
+       eh = h.expand()
+       while 1:
+               for x in eh:
+                       sys.stdout.write("\r")
+                       print "%-10.10s" % x,
+                       sys.stdout.flush()
+                       time.sleep(0.1)
+

UCC git Repository :: git.ucc.asn.au