!7 set flag DynModule. // for transpilation cmodule JavaEval extends DynPrintLog { S expression; bool realEval = true; transient bool calculating; transient O value; transient JTextArea taInput; transient Throwable error; visual withMargin(jvsplit( centerAndEastWithMarginInbetween( onCtrlEnter(taInput = jEnableUndoRedo(typeWriterTextArea(expression)), rThread evalIt), withTopMargin(3, vstackWithSpacing(5, withBottomMargin(fontSizePlus(4, makeBold(toolTip("Evaluate the code", jbutton("EVAL", rThread evalIt))))), toolTip("Evaluate with latest standard functions", jbutton("Medium", rThread { mediumRefresh(); evalIt() })), toolTip("Evaluate in latest language version", jbutton("Fresh", rThread { refresh(); evalIt() })), withToolTip("Use the real Java compiler, don't use shortcuts - just leave checked if in doubt", dm_fieldCheckBox("Real", 'realEval))))), super)); void mediumRefresh enter { dm_mediumRefreshTranspiler(); loadFunctions_clearCache(); print("Medium-refreshed translator."); } void refresh enter { dm_refreshTranspiler(); loadFunctions_clearCache(); print("Refreshed translator."); } void evalIt enter { if (calculating) ret; calculating = true; temp afterwards(r { calculating = false }); dm_javaEvalModule_doIt(gtt(taInput), realEval); } }