static abstract class DynSingleFunction extends DynModule { transient S buttonText; *() {} *(S *buttonText) {} JComponent visualize() { ret jbutton(or2(buttonText, dm_moduleName()), rThread doItWithEnter); } abstract void doIt(); void doItWithEnter() { temp enter(); doIt(); } }