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