The following example crashs and i do not understand what is happen:
class SubModel(Atom):
n = Int(0)
x = List(int)
def update(self):
self.x = [self.n, 2, 3]
self.n += 1
class Model(Atom):
l = List(SubModel)
model = Model(l=[SubModel(x=[1,2,3])])
enamldef SubModelView(Container):
attr sm
Looper:
iterable << sm.x
Label:
text << str(loop.item)
enamldef Main(MainWindow):
attr model = model
attr x = 1
Looper:
iterable << model.l
SubModelView:
sm = loop.item
func update():
for m in model.l:
m.update()
Timer: timer:
interval = 200
single_shot = False
timeout :: deferred_call(update)
activated ::
timer.start()