dustin@975: /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz dustin@975: * Software engineering by Intevation GmbH dustin@975: * dustin@975: * This file is Free Software under the GNU GPL (v>=3) dustin@975: * and comes with ABSOLUTELY NO WARRANTY! Check out dustin@975: * the documentation coming with IMIS-Labordaten-Application for details. dustin@975: */ dustin@975: dustin@975: /** dustin@975: * Grid to list Probenehmer Stammdaten dustin@975: */ dustin@975: Ext.define('Lada.view.grid.Probenehmer', { dustin@975: extend: 'Ext.grid.Panel', dustin@975: alias: 'widget.probenehmergrid', dustin@975: dustin@975: // minHeight and deferEmptyText are needed to be able to show the dustin@975: // emptyText message. dustin@975: minHeight: 110, dustin@975: viewConfig: { dustin@975: deferEmptyText: false dustin@975: }, dustin@975: dustin@975: warnings: null, dustin@975: errors: null, dustin@975: readOnly: true, dustin@975: allowDeselect: true, dustin@981: border: false, dustin@975: dustin@975: initComponent: function() { dustin@975: var i18n = Lada.getApplication().bundle; dustin@975: this.emptyText = i18n.getMsg('pn.emptyGrid'); dustin@975: dustin@982: this.rowEditing = Ext.create('Ext.grid.plugin.RowEditing', { dustin@982: clicksToMoveEditor: 1, dustin@982: autoCancel: false, dustin@982: disabled: false, dustin@982: pluginId: 'rowedit' dustin@982: }); dustin@982: this.plugins = [this.rowEditing]; dustin@982: dustin@975: // TODO: Which docked Items are required? dustin@975: this.dockedItems = [{ dustin@975: xtype: 'toolbar', dustin@975: dock: 'top', dustin@975: items: [{ dustin@975: xtype: 'tbtext', dustin@975: id: 'tbtitle', dustin@975: text: i18n.getMsg('pn.gridTitle') dustin@975: }] dustin@975: }]; dustin@975: this.columns = [{ dustin@975: header: i18n.getMsg('netzbetreiberId'), dustin@975: dataIndex: 'netzbetreiberId', dustin@975: renderer: function(value) { dustin@975: var r = ''; dustin@975: if (!value || value === '') { dustin@975: r = 'Error'; dustin@975: } dustin@975: var store = Ext.data.StoreManager.get('netzbetreiber'); dustin@975: var record = store.getById(value); dustin@975: if (record) { dustin@975: r = record.get('netzbetreiber'); dustin@975: } dustin@975: return r; dustin@975: }, dustin@975: editor: { dustin@975: xtype: 'combobox', dustin@975: store: Ext.data.StoreManager.get('netzbetreiber'), dustin@975: displayField: 'netzbetreiber', dustin@975: valueField: 'id', dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('bearbeiter'), dustin@975: dataIndex: 'bearbeiter', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('prnId'), dustin@975: dataIndex: 'prnId', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('bemerkung'), dustin@975: dataIndex: 'bemerkung', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('kurzBezeichnung'), dustin@975: dataIndex: 'kurzBezeichnung', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('ort'), dustin@975: dataIndex: 'ort', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('plz'), dustin@975: dataIndex: 'plz', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('strasse'), dustin@975: dataIndex: 'strasse', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('telefon'), dustin@975: dataIndex: 'telefon', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('tp'), dustin@975: dataIndex: 'tp', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('typ'), dustin@975: dataIndex: 'typ', dustin@975: editor: { dustin@975: allowBlank: false dustin@975: } dustin@975: }, { dustin@975: header: i18n.getMsg('letzteAenderung'), dustin@975: dataIndex: 'letzteAenderung' dustin@975: }]; dustin@975: this.listeners = { dustin@975: select: { dustin@975: fn: this.activateRemoveButton, dustin@975: scope: this dustin@975: }, dustin@975: deselect: { dustin@975: fn: this.deactivateRemoveButton, dustin@975: scope: this dustin@975: } dustin@975: }; dustin@975: this.callParent(arguments); dustin@975: }, dustin@975: dustin@975: /** dustin@981: * This sets the Store of this Grid dustin@975: */ dustin@981: setStore: function(store){ dustin@981: var i18n = Lada.getApplication().bundle; dustin@981: dustin@981: this.removeDocked(Ext.getCmp('ptbar'), true); dustin@981: this.reconfigure(store); dustin@981: this.addDocked([{ dustin@981: xtype: 'pagingtoolbar', dustin@981: id: 'ptbar', dustin@981: dock: 'bottom', dustin@981: store: store, dustin@981: displayInfo: true dustin@981: }]); dustin@975: } dustin@975: }); dustin@975: