// action = runnable or method name (old) svoid onUpdateAndNow(JComponent c, fO r) { onUpdate(c, r); callF(r); } svoid onUpdateAndNow(JTextComponent c, IVF1 r) swing { if (c == null) ret; onUpdate(c, r); callF(r, c.getText()); } svoid onUpdateAndNow(L l, O r) { for (JComponent c : l) onUpdate(c, r); callF(r); }