From 7225f1920fb5949f49e52014cf199f0f65d00128 Mon Sep 17 00:00:00 2001 From: Douglas Clowes Date: Mon, 19 Aug 2013 09:24:16 +1000 Subject: [PATCH] Attempt a focus change callback --- site_ansto/instrument/util/config_edit.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/site_ansto/instrument/util/config_edit.py b/site_ansto/instrument/util/config_edit.py index 3e58e28c..705ab555 100644 --- a/site_ansto/instrument/util/config_edit.py +++ b/site_ansto/instrument/util/config_edit.py @@ -42,8 +42,14 @@ def main(): frame.footer = urwid.AttrWrap(urwid.Text( [u"Pressed: ", button.get_label()]), 'header') - radio_button_group = [] + def fcc(focus): + frame.footer = urwid.AttrWrap(urwid.Text( + [u"Focus: " + str(focus)]), 'header') + radio_button_group = [] + pile = urwid.Pile(cb_list) + edit = urwid.Edit() + cols = urwid.Columns([pile, edit]) blank = urwid.Divider() listbox_content = [ # urwid.Padding(urwid.GridFlow( @@ -52,9 +58,7 @@ def main(): # 13, 3, 1, 'left'), # left=4, right=3, min_width=13), blank, - urwid.Padding(urwid.GridFlow( - cb_list, - 20, 3, 1, 'left') , + urwid.Padding(cols, left=4, right=3, min_width=10), blank, # urwid.Padding(urwid.GridFlow( @@ -66,7 +70,10 @@ def main(): # blank, ] header = urwid.AttrWrap(urwid.Text(text_header), 'header') - listbox = urwid.ListBox(urwid.SimpleListWalker(listbox_content)) +# TODO: Make this operate on the cb_list + sflw = urwid.SimpleFocusListWalker(listbox_content) + sflw.set_focus_changed_callback(fcc) + listbox = urwid.ListBox(sflw) frame = urwid.Frame(urwid.AttrWrap(listbox, 'body'), header=header) palette = [