Forum /
Sencha Touch 2.x Forums /
Sencha Touch 2.x: Discussion /
Dynamic lists with filtering
Dynamic lists with filtering
Hi,
My code of the stores and lists are defined with Ext.define like this:
Ext.define('Florence.store.Complex_verdieping', {
extend: 'Ext.data.Store',
So I don't use Ext.create.
Now I want to filter a store based on the selected row in a list. With record.get I can reach the filter item.
But now the trouble starts how can I use this item to filter the store of the new list. I tried several things and read a lot of posts on the forum but thus far without results.
See also my other post on the forum here .
Thanks,
John
Issue solved
Issue solved
Ext.define('Florence.store.Complex_verdieping', {
extend: 'Ext.data.Store',
config: {
model: 'Florence.model.Complex_verdieping',
data: [
{complex_prefix: 'GHS', verdieping_nr:'-2', omschrijving: 'Kelder -2', tekening_ID: 'FLO-GHS B1K2', bestandsnaam: 'BST-01.pdf', totaal_m2: '193.4'},
{complex_prefix: 'GHS', verdieping_nr:'-1', omschrijving: 'Kelder -1', tekening_ID: 'FLO-GHS B1K1', bestandsnaam: 'BST-02.pdf', totaal_m2: '1093.9'},
{complex_prefix: 'GHS', verdieping_nr:'0', omschrijving: 'Begane grond', tekening_ID: 'FLO-GHS B100', bestandsnaam: 'BST-03.pdf', totaal_m2: '2351.3'},
{complex_prefix: 'GHS', verdieping_nr:'1', omschrijving: '1e verdieping', tekening_ID: 'FLO-GHS B101', bestandsnaam: 'BST-04.pdf', totaal_m2: '1865.9'},
{complex_prefix: 'GHS', verdieping_nr:'1.5', omschrijving: 'verdieping tussen 1e en 2e verdieping', tekening_ID: 'FLO-GHS B1T1', bestandsnaam: 'BST-05.pdf', totaal_m2: '1865.9'},
{complex_prefix: 'GHS', verdieping_nr:'2', omschrijving: '2e verdieping', tekening_ID: 'FLO-GHS B102', bestandsnaam: 'BST-06.pdf', totaal_m2: '1267.9'},
{complex_prefix: 'GHS', verdieping_nr:'3', omschrijving: '3e verdieping', tekening_ID: 'FLO-GHS B103', bestandsnaam: 'BST-07.pdf', totaal_m2: '1261.4'},
{complex_prefix: 'GHS', verdieping_nr:'4', omschrijving: '4e verdieping', tekening_ID: 'FLO-GHS B104', bestandsnaam: 'BST-08.pdf', totaal_m2: '1275.4'},
{complex_prefix: 'GHS', verdieping_nr:'5', omschrijving: '5e verdieping', tekening_ID: 'FLO-GHS B105', bestandsnaam: 'BST-09.pdf', totaal_m2: '1276.8'},
{complex_prefix: 'GHS', verdieping_nr:'6', omschrijving: '6e verdieping', tekening_ID: 'FLO-GHS B106', bestandsnaam: 'BST-10.pdf', totaal_m2: '1275.4'},
{complex_prefix: 'GHS', verdieping_nr:'7', omschrijving: '7e verdieping', tekening_ID: 'FLO-GHS B107', bestandsnaam: 'BST-11.pdf', totaal_m2: '1277.6'},
{complex_prefix: 'GHS', verdieping_nr:'8', omschrijving: '8e verdieping', tekening_ID: 'FLO-GHS B108', bestandsnaam: 'BST-12.pdf', totaal_m2: '559.2'},
{complex_prefix: 'STV', verdieping_nr:'-1', omschrijving: 'Kelder -1', tekening_ID: 'FLO-STV B1K1', bestandsnaam: 'BST-01.pdf', totaal_m2: '1374.6'},
{complex_prefix: 'STV', verdieping_nr:'0', omschrijving: 'Begane grond', tekening_ID: 'FLO-STV B100', bestandsnaam: 'BST-02.pdf', totaal_m2: '4471.6'},
{complex_prefix: 'STV', verdieping_nr:'1', omschrijving: '1e verdieping', tekening_ID: 'FLO-STV B101', bestandsnaam: 'BST-03.pdf', totaal_m2: '3268.1'},
{complex_prefix: 'STV', verdieping_nr:'2', omschrijving: '2e verdieping', tekening_ID: 'FLO-STV B102', bestandsnaam: 'BST-04.pdf', totaal_m2: '1249.8'},
{complex_prefix: 'STV', verdieping_nr:'3', omschrijving: '3e verdieping', tekening_ID: 'FLO-STV B103', bestandsnaam: 'BST-05.pdf', totaal_m2: '1232.3'},
{complex_prefix: 'STV', verdieping_nr:'4', omschrijving: '4e verdieping', tekening_ID: 'FLO-STV B104', bestandsnaam: 'BST-06.pdf', totaal_m2: '1155.5'},
{complex_prefix: 'STV', verdieping_nr:'5', omschrijving: '5e verdieping', tekening_ID: 'FLO-STV B105', bestandsnaam: 'BST-07.pdf', totaal_m2: '1189.7'},
{complex_prefix: 'STV', verdieping_nr:'6', omschrijving: '6e verdieping', tekening_ID: 'FLO-STV B106', bestandsnaam: 'BST-08.pdf', totaal_m2: '737.7'},
{complex_prefix: 'STV', verdieping_nr:'7', omschrijving: '7e verdieping', tekening_ID: 'FLO-STV B107', bestandsnaam: 'BST-09.pdf', totaal_m2: '353.2'},
{complex_prefix: 'STV', verdieping_nr:'8', omschrijving: '8e verdieping', tekening_ID: 'FLO-STV B108', bestandsnaam: 'BST-10.pdf', totaal_m2: '352.7'},
{complex_prefix: 'STV', verdieping_nr:'9', omschrijving: '9e verdieping', tekening_ID: 'FLO-STV B109', bestandsnaam: 'BST-11.pdf', totaal_m2: '350.8'},
{complex_prefix: 'STV', verdieping_nr:'10', omschrijving: '10e verdieping', tekening_ID: 'FLO-STV B110', bestandsnaam: 'BST-12.pdf', totaal_m2: '349.8'},
{complex_prefix: 'STV', verdieping_nr:'-1', omschrijving: '11e verdieping', tekening_ID: 'FLO-STV B111', bestandsnaam: 'BST-13.pdf', totaal_m2: '22.9'}
]
}
});
var verdiepingstore = Ext.create ("Florence.store.Complex_verdieping"); // we can filter on this item
Verdiepingstore is loaded in the list like this:
Ext.define('Florence.view.ComplexVerdiepingList', {
extend: 'Ext.List',
xtype: 'complexverdiepinglist',
requires: ['Florence.store.Complex_verdieping'],
config: {
title: 'Verdiepingen',
styleHtmlContent: true,
scrollable: 'vertical',
store: verdiepingstore, // we can filter on this one
onItemDisclosure: true,
itemTpl: [
'{omschrijving}'
]
}
});
In the controller we filter like this:
Ext.define('Florence.controller.Main', {
extend: 'Ext.app.Controller',
config: {
refs: {
main: 'mainpanel'
},
control: {
'complexlist': {
disclose: 'showDetail'
}
}
},
showDetail: function(list, record) {
cprefix = record.get('complex_prefix');
verdiepingstore.filter ('complex_prefix', cprefix); // filter
this.getMain().push({
xtype: 'complexverdiepinglist',
title: 'Verdiepingen'
})
}
});
John
Sencha is used by over two million developers. Join the community, wherever you’d like that community to be
or Join Us