def __init__(self, data, field_labels, btn_label, callbacks):
self.app = data["app"]
self.error = False
self.fields, self.callbacks = [], callbacks
for label in field_labels:
self.fields.append(InputField(label, next_callback=self.next))
input_fields = urwid.Pile(self.fields)
self.message_field = urwid.Text('')
error_row = urwid.Columns([(17, urwid.Text('')), self.message_field])
buttons = [TextButton(btn_label, on_press=self.next)]
if callbacks['back']:
buttons.insert(0, TextButton('< Back', align='left', on_press=callbacks['back']))
footer = urwid.AttrMap(urwid.Columns(buttons), 'button')
card = Card(urwid.Pile(
[data["content"], input_fields, error_row]), footer=footer)
urwid.WidgetWrap.__init__(self, card)
评论列表
文章目录