// f: voidfunc(float) static JSpinner liveValueSpinner(final LiveValue lv, int min, int max) { final JSpinner spinner = jSpinner(lv!, min, max); onChange(spinner, r { lv.setValue(intFromSpinner(spinner)) }); lv.onChange(r { setSpinnerValue(spinner, lv!) }); ret spinner; }