Mercurial > lada > lada-client
view app/view/panel/Ort.js @ 1424:44d28e46cc4b
Use latest server version.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 06 Apr 2017 12:13:45 +0200 |
parents | 48c9c7b0ceef |
children |
line wrap: on
line source
Ext.define('Lada.view.panel.Ort', { extend: 'Ext.panel.Panel', alias: 'widget.ortpanel', requires: [ 'Lada.view.panel.Map', 'Lada.view.grid.Orte' ], width: '100%', //height: 200, layout: { type: 'border' }, toolbarPos: 'top', editableGrid: true, initComponent: function() { var i18n = Lada.getApplication().bundle; // Different Layout of toolbar depending on the bars position. if (this.toolbarPos == 'top') { this.dockedItems = [{ xtype: 'toolbar', dock: 'top', items: [{ xtype: 'tbtext', text: i18n.getMsg('orte.gridTitle') }, '->', { text: i18n.getMsg('map.button.add'), icon: 'resources/img/list-add.png', action: 'addMap', disabled: true // disabled on startup, will be enabled by setStore }, { text: i18n.getMsg('orte.button.add'), icon: 'resources/img/list-add.png', action: 'add', disabled: true // disabled on startup, will be enabled by setStore }, { text: i18n.getMsg('orte.button.delete'), icon: 'resources/img/list-remove.png', action: 'delete', disabled: true // disabled on startup, will be enabled by controller if necessary }] }]; } else { this.dockedItems = [{ xtype: 'toolbar', dock: this.toolbarPos, items: [ '->', { text: i18n.getMsg('map.button.add'), icon: 'resources/img/list-add.png', action: 'addMap', disabled: true // disabled on startup, will be enabled by setStore }, { text: i18n.getMsg('orte.button.add'), icon: 'resources/img/list-add.png', action: 'add', disabled: true // disabled on startup, will be enabled by setStore }] }]; } this.items = [{ xtype: 'ortstammdatengrid', width: '60%', editableGrid: this.editableGrid, region: 'center' }, { xtype: 'map', flex: 1, collapsible: true, region: 'east', layout: 'border', title: i18n.getMsg('map.title'), externalOrteStore: true, listeners: { beforecollapse: function() { var c = this.map.getControlsByClass('OpenLayers.Control.ScaleLine'); this.map.removeControl(c[0]); for (i = 0; i < this.map.layers.length; i++) { this.map.layers[i].setVisibility(false); } }, expand: function() { this.map.addControl(new OpenLayers.Control.ScaleLine()); for (i = 0; i < this.map.layers.length; i++) { this.map.layers[i].setVisibility(true); } } } }]; this.callParent(arguments); }, afterRender: function() { this.superclass.afterRender.apply(this, arguments); this.down('map').map.zoomTo(6); }, setStore: function(store) { var me = this; var osg = this.down('ortstammdatengrid'); var map = this.down('map'); osg.setLoading(true); map.setLoading(true); var ortstore = store; if (!ortstore) { ortstore = Ext.data.StoreManager.get('orte'); } ortstore.clearFilter(true); osg.setStore(ortstore); map.addLocations(ortstore); me.down('toolbar button[action=add]').enable(); me.down('toolbar button[action=addMap]').enable(); me.connectListeners(); }, getStore: function() { return this.down('grid').getStore(); }, connectListeners: function() { var osg = this.down('ortstammdatengrid'); var map = this.down('map'); map.addListener('featureselected', osg.selectOrt, osg); osg.addListener('select', map.selectFeature, map); } });