Files
SCam/listentry.py
2023-10-07 20:29:33 +02:00

46 lines
1.0 KiB
Python

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()