import javax.swing.border.*; sclass jCenteredLiveValueSection_class extends SingleComponentPanel { IGetterWithNotify liveValue; S getTitle() { ret liveValue!; } *(IGetterWithNotify lv, Component c) { super(c); bindLiveValueListenerToComponent(this, liveValue = lv, r-awt { setBorder(BorderFactory.createTitledBorder( BorderFactory.createBevelBorder(BevelBorder.LOWERED), liveValue!)); centerSection(jCenteredLiveValueSection_class.this); revalidate(); }); } } static JPanel jCenteredLiveValueSection(IGetterWithNotify lv, Component c) swing { ret new jCenteredLiveValueSection_class(lv, c); }