diff options
author | tle | 2008-04-20 21:20:27 +0000 |
---|---|---|
committer | tle | 2008-04-20 21:20:27 +0000 |
commit | 05d8d18db81d2d49650133e7c685b08d943fe4d4 (patch) | |
tree | f70c6a0588aed81d4dc3d215d49dbf39b88153f6 /jpa | |
parent | 4846cc94d429f458b3e928177c2dacd635048dce (diff) | |
download | webtools.dali-05d8d18db81d2d49650133e7c685b08d943fe4d4.tar.gz webtools.dali-05d8d18db81d2d49650133e7c685b08d943fe4d4.tar.xz webtools.dali-05d8d18db81d2d49650133e7c685b08d943fe4d4.zip |
Updated name property - patch from Pascal
Diffstat (limited to 'jpa')
-rw-r--r-- | jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/orm/details/OrmJavaAttributeChooser.java | 84 |
1 files changed, 14 insertions, 70 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/orm/details/OrmJavaAttributeChooser.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/orm/details/OrmJavaAttributeChooser.java index 4a6652f2c0..929a0c4426 100644 --- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/orm/details/OrmJavaAttributeChooser.java +++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/orm/details/OrmJavaAttributeChooser.java @@ -9,13 +9,12 @@ ******************************************************************************/ package org.eclipse.jpt.ui.internal.orm.details; -import java.util.Collection; import org.eclipse.jpt.core.context.orm.OrmAttributeMapping; import org.eclipse.jpt.ui.internal.orm.JptUiOrmMessages; import org.eclipse.jpt.ui.internal.widgets.AbstractFormPane; +import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter; import org.eclipse.jpt.utility.model.value.PropertyValueModel; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; +import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Text; @@ -25,7 +24,6 @@ import org.eclipse.swt.widgets.Text; * @version 2.0 * @since 1.0 */ -@SuppressWarnings("nls") public class OrmJavaAttributeChooser extends AbstractFormPane<OrmAttributeMapping> { private Text text; @@ -44,22 +42,19 @@ public class OrmJavaAttributeChooser extends AbstractFormPane<OrmAttributeMappin super(parentPane, subjectHolder, parent); } - /* - * (non-Javadoc) - */ - @Override - protected void addPropertyNames(Collection<String> propertyNames) { - super.addPropertyNames(propertyNames); - propertyNames.add(OrmAttributeMapping.NAME_PROPERTY); - } + private WritablePropertyValueModel<String> buildNameHolder() { + return new PropertyAspectAdapter<OrmAttributeMapping, String>(getSubjectHolder(), OrmAttributeMapping.NAME_PROPERTY) { + @Override + protected String buildValue_() { + return subject.getName(); + } - private ModifyListener buildNameModifyListener() { - return new ModifyListener() { - public void modifyText(ModifyEvent e) { - if (!isPopulating()) { - Text text = (Text) e.widget; - textChanged(text.getText()); + @Override + protected void setValue_(String value) { + if (value.length() == 0) { + value = null; } + subject.setName(value); } }; } @@ -68,15 +63,6 @@ public class OrmJavaAttributeChooser extends AbstractFormPane<OrmAttributeMappin * (non-Javadoc) */ @Override - public void doPopulate() { - super.doPopulate(); - populateText(); - } - - /* - * (non-Javadoc) - */ - @Override public void enableWidgets(boolean enabled) { super.enableWidgets(enabled); @@ -94,49 +80,7 @@ public class OrmJavaAttributeChooser extends AbstractFormPane<OrmAttributeMappin text = buildLabeledText( container, JptUiOrmMessages.OrmJavaAttributeChooser_javaAttribute, - buildNameModifyListener() + buildNameHolder() ); } - - private void populateText() { - - OrmAttributeMapping subject = subject(); - text.setText(""); - - if (subject == null) { - return; - } - - String name = subject.getName(); - - if (name == null) { - name = ""; - } - - text.setText(name); - } - - /* - * (non-Javadoc) - */ - @Override - protected void propertyChanged(String propertyName) { - super.propertyChanged(propertyName); - - if (propertyName == OrmAttributeMapping.NAME_PROPERTY) { - populateText(); - } - } - - private void textChanged(String text) { - - setPopulating(true); - - try { - subject().setName(text); - } - finally { - setPopulating(false); - } - } }
\ No newline at end of file |