svoid inputText(S msg, S defaultText, IVF1 action) { inputText(msg, defaultText, (O) action); } svoid inputText(S msg, IVF1 action) { inputText(msg, (O) action); } // legacy signatures svoid inputText(S msg, O action) { inputText(msg, "", action); } // action: voidfunc(S) svoid inputText(S msg, S defaultText, O action) { fO threadInfo = _threadInfo(); awt { final JTextField tf = jtextfield(defaultText); S title = joinNemptiesWithVBar(msg, programNameOrNull()); JComponent form = showFormTitled(title, unnull(msg), tf, r { vmBus_send('inputtingText_OK, threadInfo, msg, tf); callF_thread(action, getTextTrim(tf)) }); renameSubmitButton(form, "OK"); vmBus_send('inputtingText, threadInfo, msg, tf); } }