!7 sclass NamedList { S name; L lines; } module SomeObjects > DynObjectTable { L lists = synchroList(); transient SingleComponentPanel scp; start { itemToMap = func(NamedList l) -> Map { litorderedmap("Name" := l.name, lines := l(l.lines)) }; defaultAction = voidfunc(final NamedList l) { final SimpleLiveValue lvText = stringLiveValue(lines(l.lines)); lvText.onChange(dm_rstWithPostDelay(module(), 1000, r { l.lines = lines(lvText!); blubberblub; })); setSCPComponent(scp, jSection(name, jLiveValueWordWrapTypeWriterTextArea_bothWays(lvText))); }; blubberblub; } void blubberblub { setData(lists); } visualize { ret jhsplit(withCenteredButtonsOnTop(super.visualize(), "Add" := rThread { inputText("Name of new list", voidfunc(S name) { lists.add(nu(NamedList, +name)); blubberblub; }); } ), scp = singleComponentPanel(jSection("Content"))); } }