/** {@inheritDoc} */ @Override public void refresh(final Resource resource) { this.dcdResource = resource; final DeviceConfiguration dcd = ModelUtil.getDeviceConfiguration(this.dcdResource); setEditable(!getPage().getEditingDomain().isReadOnly(this.dcdResource)); for (final Binding binding : this.bindings) { binding.dispose(); } this.bindings.clear(); final SoftPkg model = getSoftPkg(); if (model == null) { return; } final DataBindingContext context = this.getPage().getEditor().getDataBindingContext(); this.bindings.add( context.bindValue( WidgetProperties.text(SWT.Modify) .observeDelayed( SCAFormEditor.getFieldBindingDelay(), this.client.getIdEntry().getText()), EMFEditObservables.observeValue( getEditingDomain(), dcd, DcdPackage.Literals.DEVICE_CONFIGURATION__ID), new EMFEmptyStringToNullUpdateValueStrategy(), null)); this.bindings.add( context.bindValue( WidgetProperties.text(SWT.Modify) .observeDelayed( SCAFormEditor.getFieldBindingDelay(), this.client.getNameEntry().getText()), EMFEditObservables.observeValue( getEditingDomain(), dcd, DcdPackage.Literals.DEVICE_CONFIGURATION__NAME), new EMFEmptyStringToNullUpdateValueStrategy(), null)); this.bindings.add( context.bindValue( WidgetProperties.text(SWT.Modify) .observeDelayed( SCAFormEditor.getFieldBindingDelay(), this.client.getDescriptionEntry().getText()), EMFEditObservables.observeValue( getEditingDomain(), dcd, DcdPackage.Literals.DEVICE_CONFIGURATION__DESCRIPTION), new EMFEmptyStringToNullUpdateValueStrategy(), null)); this.client.setEditable(SCAEditorUtil.isEditableResource(getPage(), this.dcdResource)); }
void dispose() { target.dispose(); model.dispose(); binding.dispose(); }