Mercurial > lada > lada-client
view app/controller/ProbenPlanungSwitcher.js @ 792:d572ee3271ac
some work on a context-sensitive toolbar
author | Dustin Demuth <dustin@intevation.de> |
---|---|
date | Wed, 13 May 2015 13:00:13 +0200 |
parents | 639e82e2089e |
children | bc6bc71efb78 |
line wrap: on
line source
/* 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. */ /** * Controller for the ProbenPlanungSwitcher * This controller handles all logic related to the PPS */ Ext.define('Lada.controller.ProbenPlanungSwitcher', { extend: 'Ext.app.Controller', displayFields: null, requires: [ 'Lada.store.MessprogrammQueries' ], /** * Initialize this Controller * It has 1 Listeners * A checked PPS-Radiofield fired a 'check'-event */ init: function() { this.control({ 'radiofield[name=ppswitch]': { check: this.switchModes } }); this.callParent(arguments); }, /** * Function is called when the user selects a checkbox. * according to the checkboxes inputValue, * the function alters the store which was loaded by the * filterpanels combobox, * If enabled the function also disables / enables the UI-Buttons * in the Filterresult grid. */ switchModes: function(field) { var disableButtons = true; var cbox = field.up('probenplanungswitcher').up().down('combobox'); var resultGrid = field.up('panel[name=main]').down('filterresultgrid'); filters = field.up('panel[name=main]').down('fieldset[name=filtervariables]'); filters.removeAll(); filters.hide(); var sname = 'Lada.store.ProbeQueries'; if (field.inputValue === 'MessprogrammList' && cbox) { sname = 'Lada.store.MessprogrammQueries'; } else if (field.inputValue === 'ProbeList' && cbox) { sname = 'Lada.store.ProbeQueries'; } var store = Ext.StoreManager.lookup(sname); if (!store) { store = Ext.create(sname); } if (store) { store.load(); cbox.reset(); cbox.bindStore(store); } } });