static JSpinner looselyBindLiveValueToSpinner (IVarWithNotify lv, JSpinner spinner) { onChange(spinner, -> lv.set(intFromSpinner(spinner))); bindToComponent(spinner, -> { Int value = lv!; if (value != null) setSpinnerValue(spinner, value); else lv.set(intFromSpinner(spinner)); }); ret spinner; }