!7 sclass DevelopFromExamples > DynModule { new L examples; record Example(S question, S answer) { toString { ret question + " -> " + answer; } } JComponent visualize() { ret withCenteredButtons(listPopupMenuThreaded(jLiveValueList(dm_fieldLiveValue('examples)), "Delete Example", voidfunc(S row) { temp enter(); setField(examples := listMinusToString(examples, row)) }), "Add example...", rThread addExampleDialog); } void addExampleDialog { final JTextField tfQuestion = jtextfield(), tfAnswer = jtextfield("?"); showFormTitled("Add example", "Question:", tfQuestion, "Answer (if known):", tfAnswer, r { temp enter(); setField(examples := listPlus(examples, new Example(gtt(tfQuestion), gtt(tfAnswer)))); }); } }