meta-for JWindow also as JFrame { static IProgressShower tempProgressBar_addToWindowIfPossible(JWindow window, S text, double total default 1) { if (!isVisibleWindow(window)) ret tempProgressBar(text, total); JProgressBar bar = jProgressBarWithText(iround(total), text); var closeable = tempAddToWindow(window, withMargin(jCenteredRaisedSection(text, bar))); ret new IProgressShower { public void setValue(double value) { setProgressBarValue(bar, iround(value)); } public void setTotal(double total) { setProgressBarTotal(bar, iround(total)); } public void setText(S text) { setProgressBarText(bar, print(text)); } public void close { _close(closeable); } }; } }