hello Ian
I am reading a yml form file and getting its contents as columns in urwid.
I have to display these columns onto the console.
If I use a plain listbox and listwalker then i am able to get the columns
displayed on the screen.
However I need to group some of the columns as a block and show it in a
linebox widget.
How can I do so ?

Each column widget has two columns, the first one being text widget and
second one being edit widget.
This is what I tried :

1. tried to created a pile of columns by appending to a pile named as
blockPile (declared as blockPile = urwid.Pile([ ]) )  as in below :
   blockPile.contents.append(column, options='pack')

    but got this error

   *TypeError: append() got an unexpected keyword argument 'options'*

2. then removed the options and used this :

    blockPile.contents.append(listBoxCell)

    *urwid.container.PileError: added content invalid: <Columns selectable
box/flow widget>*

3. Next I used listbox
    blockContent = urwid.SimpleListWalker([])
    blockListbox =  urwid.ListBox(blockContent)

    and used append to fit my columns inside it
    blockContent.append(listBoxCell)

    Finally to put the listbox in a box adapter

     box = urwid.BoxAdapter(blockContent, height = 20)

    and then to return it in a linebox
    return urwid.LineBox(box, title='|** Block **|')

    but now I get this error
    *AttributeError: 'SimpleListWalker' object has no attribute 'selectable'
*


Everything works fine if I use only a listbox and a listwalker and don't
fit the listbox inside anything else.
But I want the list box of columns to be put in a linebox. How can I do so ?

-- 
Kind Regards
Tauseef Hussain
tauseef at nitc dot ac dot in
_______________________________________________
Urwid mailing list
[email protected]
http://lists.excess.org/mailman/listinfo/urwid

Reply via email to