Merge commit 'public/master' into ceod
[public/pyceo-broken.git] / ceo / urwid / widgets.py
index cddac0f..cf1f31c 100644 (file)
@@ -2,13 +2,14 @@ import urwid, ldap
 from ceo.urwid.window import raise_back, push_window
 import ceo.ldapi as ldapi
 
-uwldap_uri = "ldap://uwldap.uwaterloo.ca/"
-uwldap_base = "dc=uwaterloo,dc=ca"
+#Todo: kill ButtonText because no one uses it except one place and we can probably do that better anyway
+
 csclub_uri = "ldap://ldap1.csclub.uwaterloo.ca/ ldap://ldap2.csclub.uwaterloo.ca"
 csclub_base = "dc=csclub,dc=uwaterloo,dc=ca"
 
-def menu_items(items):
-    return [ urwid.AttrWrap( ButtonText( cb, data, txt ), 'menu', 'selected') for (txt, cb, data) in items ]
+def make_menu(items):
+    items = [ urwid.AttrWrap( ButtonText( cb, data, txt ), 'menu', 'selected') for (txt, cb, data) in items ]
+    return urwid.ListBox( items )
 
 def push_wizard(name, pages, dimensions=(50, 10)):
     state = {}
@@ -34,6 +35,15 @@ class ButtonText(urwid.Text):
         else:
             return key
 
+#DONTUSE
+class CaptionedText(urwid.Text):
+    def __init__(self, caption, *args, **kwargs):
+        self.caption = caption
+        urwid.Text.__init__(self, *args, **kwargs)
+    def render(self, *args, **kwargs):
+        self.set_text(self.caption + self.get_text()[0])
+        urwid.Text.render(*args, **kwargs)
+
 class SingleEdit(urwid.Edit):
     def keypress(self, size, key):
         if key == 'enter':