!7 svoid _onLoad { onTranspilerDirty(r dm_mediumRefreshTranspiler); } cmodule2 StefansAssistant > DynPrintLog { transient JTextField tfInput; start { JComponent trayIcon = jimage(#1101420); onLeftClick(trayIcon, rThreadEnter addStdFunctionWithAnimation); componentPopupMenuItems(trayIcon, "Stefan's Assistant", r { dm_showModule(module()) }, "Refresh Transpiler", r dm_refreshTranspiler); dm_setTrayIcon(trayIcon); dm_onSnippetEdited(#1006654, r dm_reloadModule); dm_stefansAssistant_offerSFOnSnippetCreated(); } visual centerAndSouthWithMargins(super, centerAndEastWithSpacing(onEnter(tfInput = jtextfield("sf"), rThread go), jbutton("Go", rThread go))); enhanceFrame { onInternalFrameActivatedAndNow(f/JInternalFrame, rEnter { if (!dm_osLoading()) focus(tfInput); }); } void go enter { print(stefansAssistant_answer(getText(tfInput))); } }