# HG changeset patch # User souliane # Date 1396378692 -7200 # Node ID 56c02f4731f9f8ad38d5b728e506b1fcc8db27c6 # Parent e1655ba45fae468caca7264afea97c84a36bcfd9 added selectValues for lists widgets that support multi-selection diff -r e1655ba45fae -r 56c02f4731f9 urwid_satext/sat_widgets.py --- a/urwid_satext/sat_widgets.py Fri Mar 21 15:35:10 2014 +0100 +++ b/urwid_satext/sat_widgets.py Tue Apr 01 20:58:12 2014 +0200 @@ -508,6 +508,21 @@ return idx+=1 + def selectValues(self, values): + """Select all the given values""" + if self.single: + if values: + self.selectValue(values[-1]) + return + self.unselectAll() + for value in values: + idx = 0 + for widget in self.content: + if widget.getValue() == value: + widget.setState(True) + self.list_box.focus_position = idx + idx += 1 + class List(urwid.Widget): """FlowWidget list, same arguments as GenericList, with an additional one 'max_height'""" @@ -555,6 +570,9 @@ def selectValue(self, value): return self.genericList.selectValue(value) + def selectValues(self, values): + return self.genericList.selectValues(values) + def render(self, size, focus=False): return self.displayWidget(size, focus).render(size, focus)