!7 svoid _onLoad { onTranspilerDirty(r dm_refreshTranspiler); } cmodule StefansAssistant > DynPrintLog { transient JTextField tfInput; start { JComponent trayIcon = jimage(#1101420); onClick(trayIcon, rThread addStdFunctionWithAnimation); componentPopupMenuItem(trayIcon, "Stefan's Assistant", r { dm_showModule(module()) }); dm_setTrayIcon(trayIcon); dm_onSnippetEdited(#1006654, r dm_reloadModule); dm_stefansAssistant_offerSFOnSnippetCreated(); } visualize { ret centerAndSouthWithMargins(super.visualize(), centerAndEastWithSpacing(onEnter(tfInput = jtextfield("sf"), rThread go), jbutton("Go", rThread go))); } enhanceFrame { onInternalFrameActivatedAndNow(f/JInternalFrame, r { focus(tfInput) }); } void go { print(stefansAssistant_answer(getText(tfInput))); } }