[Lada-commits] [PATCH 1 of 2] Ein Datefield Widget hinzugefügt
Wald Commits
scm-commit at wald.intevation.org
Tue Mar 17 16:53:19 CET 2015
# HG changeset patch
# User Dustin Demuth <dustin at intevation.de>
# Date 1426608602 -3600
# Node ID 422e71708a0c78c32b328dbece3f066a1fbd4fdf
# Parent 71e8b84d78298e3bd1c347eaed4ffefb600414f6
Ein Datefield Widget hinzugefügt
diff -r 71e8b84d7829 -r 422e71708a0c app/view/widget/base/DateField.js
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/app/view/widget/base/DateField.js Tue Mar 17 17:10:02 2015 +0100
@@ -0,0 +1,105 @@
+/* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
+ * Software engineering by Intevation GmbH
+ *
+ * This file is Free Software under the GNU GPL (v>=3)
+ * and comes with ABSOLUTELY NO WARRANTY! Check out
+ * the documentation coming with IMIS-Labordaten-Application for details.
+ */
+
+Ext.define('Lada.view.widget.base.DateField', {
+ extend: 'Ext.form.Panel',
+ alias: 'widget.datef',
+
+ requires: [
+ 'Ext.form.field.Date'
+ ],
+
+ layout: 'hbox',
+
+ border: 0,
+
+ margin: '0, 0, 5, 0',
+
+ initComponent: function() {
+ this.items = [{
+ xtype: 'datefield',
+ flex: 1,
+ name: this.name,
+ fieldLabel: this.fieldLabel,
+ labelWidth: this.labelWidth,
+ listeners: this.listeners,
+ triggerAction: this.triggerAction,
+ format: this.format,
+ msgTarget: 'none',
+ tpl: this.tpl
+ }, {
+ xtype: 'image',
+ name: 'warnImg',
+ src: 'resources/img/dialog-warning.png',
+ width: 14,
+ height: 14,
+ hidden: true
+ }, {
+ xtype: 'image',
+ name: 'errorImg',
+ src: 'resources/img/emblem-important.png',
+ width: 14,
+ height: 14,
+ hidden: true
+ }];
+ this.callParent(arguments);
+ },
+
+ showWarnings: function(warnings) {
+ var img = this.down('image[name=warnImg]');
+ Ext.create('Ext.tip.ToolTip', {
+ target: img.getEl(),
+ html: warnings
+ });
+ this.down('datefield').invalidCls = 'x-lada-warning';
+ this.down('datefield').markInvalid('');
+ img.show();
+ var fieldset = this.up('fieldset[collapsible=true]');
+ if (fieldset) {
+ var i18n = Lada.getApplication().bundle;
+ var warningText = i18n.getMsg(this.name) + ': ' + warnings;
+ fieldset.showWarningOrError(true, warningText);
+ }
+ },
+
+ showErrors: function(errors) {
+ var img = this.down('image[name=errorImg]');
+ var warnImg = this.down('image[name=warnImg]');
+ warnImg.hide();
+ Ext.create('Ext.tip.ToolTip', {
+ target: img.getEl(),
+ html: errors
+ });
+ this.down('datefield').invalidCls = 'x-lada-error';
+ this.down('datefield').markInvalid('');
+ img.show();
+ var fieldset = this.up('fieldset[collapsible=true]');
+ if (fieldset) {
+ var i18n = Lada.getApplication().bundle;
+ var errorText = i18n.getMsg(this.name) + ': ' + errors;
+ fieldset.showWarningOrError(false, '', true, errorText);
+ }
+ },
+
+ clearWarningOrError: function() {
+ this.down('image[name=errorImg]').hide();
+ this.down('image[name=warnImg]').hide();
+ },
+
+ getValue: function() {
+ return this.down('datefield').getValue();
+ },
+
+ getName: function() {
+ return this.name;
+ },
+
+ setReadOnly: function(value) {
+ this.down('datefield').setReadOnly(value);
+ }
+});
More information about the Lada-commits
mailing list