diff options
author | yvesf <yvesf@d0e8fea9-7529-0410-93fb-d39fd5b9c1dd> | 2009-05-28 20:28:40 +0000 |
---|---|---|
committer | yvesf <yvesf@d0e8fea9-7529-0410-93fb-d39fd5b9c1dd> | 2009-05-28 20:28:40 +0000 |
commit | d75b28f04fe0e112c426a002e749abc6a34fb76c (patch) | |
tree | 234c552c18b41333891810366db5ee9ac897759b /gui.py | |
parent | 805fbe0c535141d293d707bc7d4a88e469f99b02 (diff) | |
download | omegle-d75b28f04fe0e112c426a002e749abc6a34fb76c.tar.gz omegle-d75b28f04fe0e112c426a002e749abc6a34fb76c.zip |
asd
git-svn-id: http://xapek.org/svn/common/omegle@1034 d0e8fea9-7529-0410-93fb-d39fd5b9c1dd
Diffstat (limited to 'gui.py')
-rw-r--r-- | gui.py | 65 |
1 files changed, 65 insertions, 0 deletions
@@ -0,0 +1,65 @@ +import urwid.curses_display +import urwid + +class Conversation(object): + def __init__(self): + self.column1_text = urwid.Text("Test...") + self.column1_text.set_layout('left', 'clip') + self.column1_edit = urwid.Edit(caption="Send: ") + self.column1_check = urwid.CheckBox("Link to other",state=True) + self.column1 = urwid.ListBox([self.column1_text, self.column1_edit, self.column1_check]) + + self.column2_text = urwid.Text("Test...") + self.column2_text.set_layout('left', 'clip') + self.column2_edit = urwid.Edit(caption="Send: ") + self.column2_check = urwid.CheckBox("Link to other",state=True) + self.column2 = urwid.ListBox([self.column2_text, self.column2_edit, self.column2_check]) + + self.columns = urwid.Columns([self.column1, self.column2],box_columns=[0,1]) + self.body = urwid.Frame(self.columns) + + self.widget_header = urwid.Text("F1 ... | ... | F8 - EXIT") + + self.top = urwid.Frame(body=self.body, header=urwid.AttrWrap(self.widget_header,'header')) + + self.focus_ring = [ [(self.columns, self.column1), (self.column1, 1)], + [(self.columns, self.column1), (self.column1, 2)], + [(self.columns, self.column2), (self.column2, 1)], + [(self.columns, self.column2), (self.column2, 2)] + ] + + def main(self): + self.ui = urwid.curses_display.Screen() + self.ui.register_palette([ + ('header', 'black', 'dark cyan', 'standout'), +# ('I say', 'default', 'default', 'bold'), + ]) + self.ui.run_wrapper( self.run ) + + def run(self): + size = self.ui.get_cols_rows() + + while True: + keys = self.ui.get_input() + if "f8" in keys: + break + for k in keys: + if k == "window resize": + size = self.ui.get_cols_rows() + elif k == "tab": + self.focus_ring.reverse() + elem = self.focus_ring.pop() + for pair in elem: + pair[0].set_focus(pair[1]) + self.focus_ring.insert(0,elem) + self.focus_ring.reverse() + else: + self.top.keypress( size, k ) + + self.draw_screen( size ) + + def draw_screen(self, size): + canvas = self.top.render( size, focus=True ) + self.ui.draw_screen( size, canvas ) + +Conversation().main() |