Author: adietish
Date: 2010-12-29 16:52:00 -0500 (Wed, 29 Dec 2010)
New Revision: 27809
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java
Log:
fixed invisible architecture value label
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java 2010-12-29
20:37:49 UTC (rev 27808)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage.java 2010-12-29
21:52:00 UTC (rev 27809)
@@ -21,7 +21,6 @@
import org.eclipse.core.databinding.Binding;
import org.eclipse.core.databinding.DataBindingContext;
import org.eclipse.core.databinding.UpdateListStrategy;
-import org.eclipse.core.databinding.UpdateSetStrategy;
import org.eclipse.core.databinding.UpdateValueStrategy;
import org.eclipse.core.databinding.beans.BeanProperties;
import org.eclipse.core.databinding.conversion.Converter;
@@ -30,6 +29,8 @@
import org.eclipse.core.databinding.observable.IObservable;
import org.eclipse.core.databinding.observable.list.IObservableList;
import org.eclipse.core.databinding.observable.value.IObservableValue;
+import org.eclipse.core.databinding.observable.value.IValueChangeListener;
+import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
import org.eclipse.core.databinding.observable.value.WritableValue;
import org.eclipse.core.databinding.validation.IValidator;
import org.eclipse.core.databinding.validation.ValidationStatus;
@@ -190,7 +191,7 @@
archLabel.setText(WizardMessages.getString(ARCH_LABEL));
GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).applyTo(archLabel);
arch = new Label(container, SWT.NULL);
- GridDataFactory.fillDefaults().span(2, 1).align(SWT.LEFT, SWT.CENTER).applyTo(arch);
+ GridDataFactory.fillDefaults().span(2,1).align(SWT.FILL, SWT.CENTER).applyTo(arch);
Label realmLabel = new Label(container, SWT.NULL);
realmLabel.setText(WizardMessages.getString(REALM_LABEL));
@@ -231,30 +232,27 @@
// name
bindText(nameText, NewInstancePageModel.PROPERTY_NAME,
WizardMessages.getString(MUST_ENTER_A_NAME), dbc);
IObservableValue imageObservable = bindImage(imageText, dbc);
- bindArchLabel(imageObservable, dbc);
+ bindArchLabel(arch, imageObservable, dbc);
bindRealmCombo(realmCombo, dbc);
bindProfileCombo(hardwareCombo, dbc);
bindProfilePages(hardwareCombo, profilePages, dbc);
bindKey(keyText, dbc);
}
- private void bindArchLabel(IObservableValue imageObservable, DataBindingContext dbc) {
- dbc.bindValue(WidgetProperties.text().observe(arch),
- imageObservable,
- new UpdateValueStrategy(UpdateSetStrategy.POLICY_NEVER),
- new UpdateValueStrategy().setConverter(new Converter(DeltaCloudImage.class,
String.class) {
-
- @Override
- public Object convert(Object fromObject) {
- if (fromObject == null) {
- return null;
- }
- Assert.isLegal(fromObject instanceof DeltaCloudImage);
- DeltaCloudImage image = (DeltaCloudImage) fromObject;
- return image.getArchitecture();
-
- }
- }));
+ private void bindArchLabel(final Label architecture, IObservableValue imageObservable,
DataBindingContext dbc) {
+ DataBindingUtils.addValueChangeListener(new IValueChangeListener() {
+
+ @Override
+ public void handleValueChange(ValueChangeEvent event) {
+ Object newValue = event.diff.getNewValue();
+ if (newValue == null
+ || !(newValue instanceof DeltaCloudImage)) {
+ return;
+ }
+ DeltaCloudImage image = (DeltaCloudImage) newValue;
+ architecture.setText(image.getArchitecture());
+ }
+ }, imageObservable, architecture);
}
private void bindRealmCombo(final Combo realmCombo, DataBindingContext dbc) {
Show replies by date