X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/ee06f37b0f6f6d94cd05a6ffae556660f7c4a2bc..c930e9176a5a85509c5b0230e2bff5c22a591432:/examples/image-organizer/imgorg/DirectCombo.js diff --git a/examples/image-organizer/imgorg/DirectCombo.js b/examples/image-organizer/imgorg/DirectCombo.js new file mode 100644 index 00000000..c009fcfb --- /dev/null +++ b/examples/image-organizer/imgorg/DirectCombo.js @@ -0,0 +1,69 @@ +/*! + * Ext JS Library 3.0.0 + * Copyright(c) 2006-2009 Ext JS, LLC + * licensing@extjs.com + * http://www.extjs.com/license + */ +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);