Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicola Steger2018-07-17 10:36:03 +0000
committerClaudio Guglielmo2018-07-17 12:37:47 +0000
commitfdaa885aab197c0fc123cebec772d0b8b4a7f125 (patch)
tree03f1cf381442dd942562524fb8fe6bb006227be9
parenteb40e7f95529bc3116ebb138f47fb9ba4538a551 (diff)
downloadorg.eclipse.scout.rt-fdaa885aab197c0fc123cebec772d0b8b4a7f125.tar.gz
org.eclipse.scout.rt-fdaa885aab197c0fc123cebec772d0b8b4a7f125.tar.xz
org.eclipse.scout.rt-fdaa885aab197c0fc123cebec772d0b8b4a7f125.zip
DateField: set enabled property correctly when toggle hasDate/hasTime
When visibility of time or date field is changed dynamically with hasTime or hasDate, the enabled property of the newly added field should be set with respect to "enabledComputed". 229575 Change-Id: I60b9ecbfeacd10d9e22c82460f64756ab30e0962 Signed-off-by: Nicola Steger <nicola.steger@bsi-software.com> Reviewed-on: https://git.eclipse.org/r/126165 Tested-by: CI Bot Reviewed-by: Claudio Guglielmo <claudio.guglielmo@bsiag.com>
-rw-r--r--org.eclipse.scout.rt.ui.html.test/src/test/js/scout/form/fields/datefield/DateFieldSpec.js62
-rw-r--r--org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js2
2 files changed, 64 insertions, 0 deletions
diff --git a/org.eclipse.scout.rt.ui.html.test/src/test/js/scout/form/fields/datefield/DateFieldSpec.js b/org.eclipse.scout.rt.ui.html.test/src/test/js/scout/form/fields/datefield/DateFieldSpec.js
index 9a651e1e3c..639b96295a 100644
--- a/org.eclipse.scout.rt.ui.html.test/src/test/js/scout/form/fields/datefield/DateFieldSpec.js
+++ b/org.eclipse.scout.rt.ui.html.test/src/test/js/scout/form/fields/datefield/DateFieldSpec.js
@@ -1362,6 +1362,37 @@ describe('DateField', function() {
expect(field.displayText).toBe('01.05.2017\n02:30');
});
+ it('sets enabled property correctly if hasDate is toggled', function() {
+ var field = scout.create('DateField', {
+ parent: session.desktop,
+ value: '2017-05-01 05:50:00.000',
+ hasDate: true,
+ hasTime: true
+ });
+ field.render();
+ field.setEnabled(false);
+ expect(field.$dateField.isEnabled()).toBe(false);
+ expect(field.$timeField.isEnabled()).toBe(false);
+
+ field.setHasDate(false);
+ expect(field.$timeField.isEnabled()).toBe(false);
+
+ field.setHasDate(true);
+ expect(field.$dateField.isEnabled()).toBe(false);
+ expect(field.$timeField.isEnabled()).toBe(false);
+
+ field.setEnabled(true);
+ expect(field.$dateField.isEnabled()).toBe(true);
+ expect(field.$timeField.isEnabled()).toBe(true);
+
+ field.setHasDate(false);
+ expect(field.$timeField.isEnabled()).toBe(true);
+
+ field.setHasDate(true);
+ expect(field.$dateField.isEnabled()).toBe(true);
+ expect(field.$timeField.isEnabled()).toBe(true);
+ });
+
});
describe('hasTime', function() {
@@ -1420,6 +1451,37 @@ describe('DateField', function() {
expect(field.displayText).toBe('02.02.2016\n05:50');
});
+ it('sets enabled property correctly if hasTime is toggled', function() {
+ var field = scout.create('DateField', {
+ parent: session.desktop,
+ value: '2017-05-01 05:50:00.000',
+ hasDate: true,
+ hasTime: true
+ });
+ field.render();
+ field.setEnabled(false);
+ expect(field.$dateField.isEnabled()).toBe(false);
+ expect(field.$timeField.isEnabled()).toBe(false);
+
+ field.setHasTime(false);
+ expect(field.$dateField.isEnabled()).toBe(false);
+
+ field.setHasTime(true);
+ expect(field.$dateField.isEnabled()).toBe(false);
+ expect(field.$timeField.isEnabled()).toBe(false);
+
+ field.setEnabled(true);
+ expect(field.$dateField.isEnabled()).toBe(true);
+ expect(field.$timeField.isEnabled()).toBe(true);
+
+ field.setHasTime(false);
+ expect(field.$dateField.isEnabled()).toBe(true);
+
+ field.setHasTime(true);
+ expect(field.$dateField.isEnabled()).toBe(true);
+ expect(field.$timeField.isEnabled()).toBe(true);
+ });
+
});
describe('label', function() {
diff --git a/org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js b/org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js
index c0a547225b..c769752c15 100644
--- a/org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js
+++ b/org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js
@@ -191,6 +191,7 @@ scout.DateField.prototype._renderHasDate = function() {
if (!this.rendering) {
this._renderDisplayText();
this._renderFieldStyle();
+ this._renderEnabled();
this.htmlDateTimeComposite.invalidateLayoutTree();
}
this._renderDateClearable();
@@ -244,6 +245,7 @@ scout.DateField.prototype._renderHasTime = function() {
if (!this.rendering) {
this._renderDisplayText();
this._renderFieldStyle();
+ this._renderEnabled();
this.htmlDateTimeComposite.invalidateLayoutTree();
}
this._renderTimeClearable();

Back to the top