public CaseTypeDetailView( @Service ApplicationContext context, @Uses final CaseTypeDetailModel model, @Structure Module module) { this.model = model; valueBinder = module.objectBuilderFactory().newObject(ValueBinder.class); FormLayout layout = new FormLayout("150dlu, 2dlu, 350", "pref, pref, pref, pref, pref, pref"); setLayout(layout); setMaximumSize(new Dimension(Short.MAX_VALUE, 50)); DefaultFormBuilder builder = new DefaultFormBuilder(layout, this); ownerName = new StreamflowSelectableLabel(); builder.append(new JLabel(" ")); builder.nextLine(); builder.appendSeparator(i18n.text(AdministrationResources.casetype_separator)); builder.nextLine(); builder.append( i18n.text(AdministrationResources.owner_name_label), valueBinder.bind("ownerName", ownerName)); builder.nextLine(); ownerId = new StreamflowSelectableLabel(); builder.append( i18n.text(AdministrationResources.owner_id_label), valueBinder.bind("ownerId", ownerId)); builder.nextLine(); builder.append(new JLabel(" ")); builder.nextLine(); builder.appendSeparator(i18n.text(AdministrationResources.casetype_id_separator)); builder.nextLine(); caseTypeId = new StreamflowSelectableLabel(); builder.append(i18n.text(AdministrationResources.id_label), valueBinder.bind("id", caseTypeId)); new RefreshWhenShowing(this, this); }
@Override public void refresh() { model.refresh(); valueBinder.update(model.getResourceValue().index().get()); }