diff options
author | Nicola Steger | 2018-07-17 10:36:03 +0000 |
---|---|---|
committer | Claudio Guglielmo | 2018-07-17 12:37:47 +0000 |
commit | fdaa885aab197c0fc123cebec772d0b8b4a7f125 (patch) | |
tree | 03f1cf381442dd942562524fb8fe6bb006227be9 | |
parent | eb40e7f95529bc3116ebb138f47fb9ba4538a551 (diff) | |
download | org.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.js | 62 | ||||
-rw-r--r-- | org.eclipse.scout.rt.ui.html/src/main/js/scout/form/fields/datefield/DateField.js | 2 |
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(); |