Imgorg.DirectCombo = Ext.extend(Ext.form.ComboBox, {
displayField: 'text',
valueField: 'id',
triggerAction: 'all',
queryAction: 'name',
forceSelection: true,
mode: 'remote',
initComponent: function() {
this.store = new Ext.data.DirectStore(Ext.apply({
api: this.api,
root: '',
fields: this.fields || ['text', 'id']
}, this.storeConfig));
Imgorg.DirectCombo.superclass.initComponent.call(this);
}
});
Imgorg.TagCombo = Ext.extend(Imgorg.DirectCombo,{
forceSelection: false,
storeConfig: {
id: 'tag-store'
},
initComponent: function() {
Ext.apply(this.storeConfig, {
directFn: Imgorg.ss.Tags.load
});
Imgorg.TagCombo.superclass.initComponent.call(this);
}
});
Ext.reg('img-tagcombo', Imgorg.TagCombo);
Imgorg.TagMultiCombo = Ext.extend(Ext.ux.MultiCombo,{
listClass: 'label-combo',
displayField: 'text',
valueField: 'id',
initComponent: function() {
this.store = new Ext.data.DirectStore(Ext.apply({
directFn: Imgorg.ss.Tags.load,
root: '',
autoLoad: true,
fields: this.fields || ['text', 'id']
}, this.storeConfig));
this.plugins =new Ext.ux.MultiCombo.Checkable({});
Imgorg.DirectCombo.superclass.initComponent.call(this);
}
});
Ext.reg('img-tagmulticombo', Imgorg.TagMultiCombo);
Imgorg.AlbumCombo = Ext.extend(Imgorg.DirectCombo, {
storeConfig: {
id: 'album-store'
},
initComponent: function() {
Ext.apply(this.storeConfig, {
directFn: Imgorg.ss.Albums.getAllInfo
});
Imgorg.AlbumCombo.superclass.initComponent.call(this);
}
});
Ext.reg('img-albumcombo', Imgorg.AlbumCombo);