import wx from mathentry import MathEntry class ListEntry(wx.BoxSizer): def __init__(self, parent, id=wx.ID_ANY, value=(), style=wx.TE_RIGHT): super().__init__(wx.HORIZONTAL) self.parent = parent self.style = style self.entries = [] self.SetValue(value) self._enabled = True def SetValue(self, value): self.entries.clear() self.Clear(True) for v in value: new = MathEntry(self.parent, value=v, style=self.style) if not self._enabled: new.Disable() self.entries.append(new) self.Add(new, flag=wx.EXPAND) self.Layout() def GetValue(self): return [e.GetValue() for e in self.entries] def Disable(self): self._enabled = False return [e.Disable() for e in self.entries] def Enable(self): self._enabled = True return [e.Enable() for e in self.entries] def clear(self): for e in self.entries: e.clear()