diff options
author | bvosburgh | 2010-03-18 15:56:51 +0000 |
---|---|---|
committer | bvosburgh | 2010-03-18 15:56:51 +0000 |
commit | 7eedcde8161c8b43bfaa4604580175e013ff9091 (patch) | |
tree | 5347f16cc4a9e94349ede0ac070030e0653fb103 /jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui | |
parent | 73a21c510df1670c96895e613a44cf2f3c2617ac (diff) | |
download | webtools.dali-7eedcde8161c8b43bfaa4604580175e013ff9091.tar.gz webtools.dali-7eedcde8161c8b43bfaa4604580175e013ff9091.tar.xz webtools.dali-7eedcde8161c8b43bfaa4604580175e013ff9091.zip |
fix text field flakiness; fix some widget enablement behavior
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui')
4 files changed, 48 insertions, 47 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkExpiryComposite.java b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkExpiryComposite.java index de552f8a09..abec6b04d1 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkExpiryComposite.java +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkExpiryComposite.java @@ -11,7 +11,6 @@ package org.eclipse.jpt.eclipselink.ui.internal.details; import org.eclipse.jpt.eclipselink.core.context.EclipseLinkCaching; import org.eclipse.jpt.eclipselink.core.context.EclipseLinkExpiryTimeOfDay; -import org.eclipse.jpt.ui.internal.utility.swt.SWTTools; import org.eclipse.jpt.ui.internal.widgets.IntegerCombo; import org.eclipse.jpt.ui.internal.widgets.Pane; import org.eclipse.jpt.utility.internal.StringConverter; @@ -22,8 +21,6 @@ import org.eclipse.swt.custom.CCombo; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.DateTime; import org.eclipse.swt.widgets.Group; /** @@ -103,43 +100,44 @@ public class EclipseLinkExpiryComposite extends Pane<EclipseLinkCaching> { protected void addTimeToLiveComposite(Composite parent) { Composite container = this.addSubPane(parent, 3, 0, 10, 0, 0); - - Control expireAfterLabel = addUnmanagedLabel( + PropertyValueModel<Boolean> ttlEnabled = buildTimeToLiveExpiryEnabler(); + addLabel( container, - EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeToLiveExpiryExpireAfter + EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeToLiveExpiryExpireAfter, + ttlEnabled ); - IntegerCombo<?> combo = addTimeToLiveExpiryCombo(container); + IntegerCombo<?> combo = addTimeToLiveExpiryCombo(container, ttlEnabled); GridData gridData = new GridData(); gridData.grabExcessHorizontalSpace = false; combo.getControl().setLayoutData(gridData); - Control millisecondsLabel = addUnmanagedLabel( + addLabel( container, - EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeToLiveExpiryMilliseconds + EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeToLiveExpiryMilliseconds, + ttlEnabled ); - - SWTTools.controlEnabledState(buildTimeToLiveExpiryEnabler(), expireAfterLabel, combo.getCombo(), millisecondsLabel); } protected void addTimeOfDayComposite(Composite parent) { Composite container = this.addSubPane(parent, 2, 0, 10, 0, 0); - - Control expireAtLabel = addUnmanagedLabel( + PropertyValueModel<Boolean> todEnabled = this.buildTimeOfDayExpiryEnabler(); + addLabel( container, - EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeOfDayExpiryExpireAt + EclipseLinkUiDetailsMessages.EclipseLinkExpiryComposite_timeOfDayExpiryExpireAt, + todEnabled ); PropertyValueModel<EclipseLinkExpiryTimeOfDay> timeOfDayExpiryHolder = buildTimeOfDayExpiryHolder(); - DateTime dateTime = addUnmanagedDateTime( + addDateTime( container, buildTimeOfDayExpiryHourHolder(timeOfDayExpiryHolder), buildTimeOfDayExpiryMinuteHolder(timeOfDayExpiryHolder), buildTimeOfDayExpirySecondHolder(timeOfDayExpiryHolder), - null); - - SWTTools.controlEnabledState(buildTimeOfDayExpiryEnabler(), expireAtLabel, dateTime); + null, + todEnabled + ); } private WritablePropertyValueModel<Boolean> buildNoExpiryHolder() { @@ -174,7 +172,7 @@ public class EclipseLinkExpiryComposite extends Pane<EclipseLinkCaching> { @Override protected void setValue_(Boolean value) { if (value == Boolean.TRUE) { - this.subject.setExpiry(0); + this.subject.setExpiry(Integer.valueOf(0)); } } }; @@ -198,16 +196,25 @@ public class EclipseLinkExpiryComposite extends Pane<EclipseLinkCaching> { }; } - private IntegerCombo<EclipseLinkCaching> addTimeToLiveExpiryCombo(Composite container) { - return new IntegerCombo<EclipseLinkCaching>(this, container) { + private IntegerCombo<EclipseLinkCaching> addTimeToLiveExpiryCombo(Composite container, PropertyValueModel<Boolean> comboEnabled) { + + class LocalCombo extends IntegerCombo<EclipseLinkCaching> { + private final PropertyValueModel<Boolean> comboEnabled; + + LocalCombo(Pane<EclipseLinkCaching> parentPane, Composite container, PropertyValueModel<Boolean> comboEnabled) { + super(parentPane, container); + this.comboEnabled = comboEnabled; + } @Override - protected CCombo addIntegerCombo(Composite container) { - return this.addUnmanagedEditableCCombo( + protected CCombo addIntegerCombo(@SuppressWarnings("hiding") Composite container) { + return this.addEditableCCombo( container, buildDefaultListHolder(), buildSelectedItemStringHolder(), - StringConverter.Default.<String>instance()); + StringConverter.Default.<String>instance(), + this.comboEnabled + ); } @Override @@ -245,7 +252,9 @@ public class EclipseLinkExpiryComposite extends Pane<EclipseLinkCaching> { } }; } - }; + } + + return new LocalCombo(this, container, comboEnabled); } private PropertyValueModel<Boolean> buildTimeToLiveExpiryEnabler() { diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkObjectTypeConverterComposite.java b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkObjectTypeConverterComposite.java index d598488aab..b3e8ba6554 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkObjectTypeConverterComposite.java +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/EclipseLinkObjectTypeConverterComposite.java @@ -275,7 +275,7 @@ public class EclipseLinkObjectTypeConverterComposite extends Pane<EclipseLinkObj @Override public void optionOnSelection(ObjectListSelectionModel listSelectionModel) { EclipseLinkConversionValue conversionValue = (EclipseLinkConversionValue) listSelectionModel.selectedValue(); - EclipseLinkConversionValueDialog dialog = new EclipseLinkConversionValueDialog(getControl().getShell(), getSubject(), conversionValue); + EclipseLinkConversionValueDialog dialog = new EclipseLinkConversionValueDialog(getShell(), getSubject(), conversionValue); editConversionValueFromDialog(dialog, conversionValue); } @@ -292,7 +292,7 @@ public class EclipseLinkObjectTypeConverterComposite extends Pane<EclipseLinkObj protected EclipseLinkConversionValueDialog buildConversionValueDialogForAdd() { - return new EclipseLinkConversionValueDialog(getControl().getShell(), getSubject()); + return new EclipseLinkConversionValueDialog(getShell(), getSubject()); } protected void addConversionValueFromDialog(EclipseLinkConversionValueDialog dialog, ObjectListSelectionModel listSelectionModel) { diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/orm/OrmEclipseLinkConvertersComposite.java b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/orm/OrmEclipseLinkConvertersComposite.java index b4034b5005..4281b3c27a 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/orm/OrmEclipseLinkConvertersComposite.java +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/details/orm/OrmEclipseLinkConvertersComposite.java @@ -205,7 +205,7 @@ public class OrmEclipseLinkConvertersComposite extends Pane<EclipseLinkConverter } protected EclipseLinkConverterDialog buildEclipseLinkConverterDialog() { - return new EclipseLinkConverterDialog(getControl().getShell()); + return new EclipseLinkConverterDialog(getShell()); } protected void addEclipseLinkConverterFromDialog(EclipseLinkConverterDialog dialog) { diff --git a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/persistence/connection/DataSourcePropertiesComposite.java b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/persistence/connection/DataSourcePropertiesComposite.java index f72867eb89..d65753ae53 100644 --- a/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/persistence/connection/DataSourcePropertiesComposite.java +++ b/jpa/plugins/org.eclipse.jpt.eclipselink.ui/src/org/eclipse/jpt/eclipselink/ui/internal/persistence/connection/DataSourcePropertiesComposite.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2008, 2009 Oracle. All rights reserved. + * Copyright (c) 2008, 2010 Oracle. All rights reserved. * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0, which accompanies this distribution * and is available at http://www.eclipse.org/legal/epl-v10.html. @@ -14,7 +14,6 @@ import org.eclipse.jpt.core.context.persistence.PersistenceUnitTransactionType; import org.eclipse.jpt.eclipselink.core.context.persistence.connection.Connection; import org.eclipse.jpt.eclipselink.ui.internal.EclipseLinkUiMessages; import org.eclipse.jpt.ui.internal.JpaHelpContextIds; -import org.eclipse.jpt.ui.internal.utility.swt.SWTTools; import org.eclipse.jpt.ui.internal.widgets.Pane; import org.eclipse.jpt.utility.internal.model.value.PropertyAspectAdapter; import org.eclipse.jpt.utility.internal.model.value.TransformationPropertyValueModel; @@ -65,6 +64,9 @@ public class DataSourcePropertiesComposite<T extends Connection> return new TransformationPropertyValueModel<PersistenceUnitTransactionType, Boolean>(buildTransactionTypeHolder()) { @Override protected Boolean transform(PersistenceUnitTransactionType value) { + return Boolean.valueOf(this.transform2(value)); + } + private boolean transform2(PersistenceUnitTransactionType value) { return value == null || value == PersistenceUnitTransactionType.JTA; } }; @@ -126,28 +128,18 @@ public class DataSourcePropertiesComposite<T extends Connection> container = addSubPane(container, 0, groupBoxMargin, 0, groupBoxMargin); // JTA Data Source - Label jtaLabel = addUnmanagedLabel(container, EclipseLinkUiMessages.PersistenceXmlConnectionTab_jtaDataSourceLabel); - Text text = addUnmanagedText(container, this.buildJtaDataSourceHolder(), this.getHelpID()); - this.addLabeledComposite(container, jtaLabel, text, this.getHelpID()); - - this.installJTADataSourceControlEnabler(text, jtaLabel); + PropertyValueModel<Boolean> jtaEnabled = this.buildJTADataSourceHolder(); + Label jtaLabel = addLabel(container, EclipseLinkUiMessages.PersistenceXmlConnectionTab_jtaDataSourceLabel, jtaEnabled); + Text jtaText = addText(container, this.buildJtaDataSourceHolder(), this.getHelpID(), jtaEnabled); + this.addLabeledComposite(container, jtaLabel, jtaText, this.getHelpID()); // Non-JTA Data Source - Label nonJtaLabel = addUnmanagedLabel(container, EclipseLinkUiMessages.PersistenceXmlConnectionTab_nonJtaDataSourceLabel); - Text nonJtaText = addUnmanagedText(container, buildNonJtaDataSourceHolder(), this.getHelpID()); + PropertyValueModel<Boolean> nonJtaEnabled = this.buildNonJTADataSourceHolder(); + Label nonJtaLabel = addLabel(container, EclipseLinkUiMessages.PersistenceXmlConnectionTab_nonJtaDataSourceLabel, nonJtaEnabled); + Text nonJtaText = addText(container, buildNonJtaDataSourceHolder(), this.getHelpID(), nonJtaEnabled); this.addLabeledComposite(container, nonJtaLabel, nonJtaText, this.getHelpID()); - - this.installNonJTADataSourceControlEnabler(nonJtaText, nonJtaLabel); } - private void installJTADataSourceControlEnabler(Text text, Label label) { - SWTTools.controlEnabledState(buildJTADataSourceHolder(), text, label); - } - - private void installNonJTADataSourceControlEnabler(Text text, Label label) { - SWTTools.controlEnabledState(buildNonJTADataSourceHolder(), text, label); - } - public String getHelpID() { return JpaHelpContextIds.PERSISTENCE_XML_CONNECTION; } |