!7 !include once #1017126 // transpileRaw sclass JavaEval extends DynPrintLog { S expression; transient bool calculating; transient O value; transient JTextArea taInput; transient Throwable error; visualize { ret withMargin(jvsplit( centerAndEastWithMarginInbetween( taInput = typeWriterTextArea(expression), vstackWithSpacing( jbutton("Fresh", rThread { refresh(); evalIt() }), jbutton("Eval", rThread evalIt))), super.visualize())); } void refresh { call(dm_transpiler(), 'refresh); print("Refreshed translator."); } void evalIt { if (calculating) ret; calculating = true; temp tempAfterwards(r { calculating = false }); dm_javaEvalModule_doIt(gtt(taInput)); } }