function(grid) {
		var me = this;

		me.grid = grid;
		me.visible = !me.renderHidden;
		me.autoStores = Ext.create('Ext.util.MixedCollection');
		me.autoStoresLoaded = false;
		me.columns = Ext.create('Ext.util.MixedCollection');
		me.containers = Ext.create('Ext.util.MixedCollection');
		me.fields = Ext.create('Ext.util.MixedCollection');
		me.actionColumn = me.grid.down('actioncolumn') || me.grid.down('actioncolumnpro');
		me.extraColumn = null;
		me.clearAllEl = null;
		me.showHideEl = null;
		me.task = Ext.create('Ext.util.DelayedTask');
		me.filterArray = [];

		me.overrideProxy();
		me.parseFiltersConfig(); 	// sets me.columns and me.autoStores
		me.parseInitialFilters();   // sets me.filterArray with the store previous filters if any (adds operator and type if missing)
		me.renderExtraColumn(); 	// sets me.extraColumn if applicable

		// renders the filter's bar
		if (grid.rendered) {
			me.renderFilterBar(grid);
		} else {
			grid.on('afterrender', me.renderFilterBar, me, { single: true });
		}
	}
function(grid) {
		var me = this;

		me.grid = grid;
		me.visible = !me.renderHidden;
		me.autoStores = Ext.create('Ext.util.MixedCollection');
		me.autoStoresLoaded = false;
		me.columns = Ext.create('Ext.util.MixedCollection');
		me.containers = Ext.create('Ext.util.MixedCollection');
		me.fields = Ext.create('Ext.util.MixedCollection');
		me.actionColumn = me.grid.down('actioncolumn') || me.grid.down('actioncolumnpro');
		me.extraColumn = null;
		me.clearAllEl = null;
		me.showHideEl = null;
		me.task = Ext.create('Ext.util.DelayedTask');
		me.filterArray = [];

		me.overrideProxy();
		me.parseFiltersConfig(); 	
		me.parseInitialFilters();   
		me.renderExtraColumn(); 	

		
		if (grid.rendered) {
			me.renderFilterBar(grid);
		} else {
			grid.on('afterrender', me.renderFilterBar, me, { single: true });
		}
	}
function ( grid ) { var me = this ; me . grid = grid ; me . visible = ! me . renderHidden ; me . autoStores = Ext . create ( 'Ext.util.MixedCollection' ) ; me . autoStoresLoaded = false ; me . columns = Ext . create ( 'Ext.util.MixedCollection' ) ; me . containers = Ext . create ( 'Ext.util.MixedCollection' ) ; me . fields = Ext . create ( 'Ext.util.MixedCollection' ) ; me . actionColumn = me . grid . down ( 'actioncolumn' ) || me . grid . down ( 'actioncolumnpro' ) ; me . extraColumn = null ; me . clearAllEl = null ; me . showHideEl = null ; me . task = Ext . create ( 'Ext.util.DelayedTask' ) ; me . filterArray = [ ] ; me . overrideProxy ( ) ; me . parseFiltersConfig ( ) ; // sets me.columns and me.autoStores
 me . parseInitialFilters ( ) ; // sets me.filterArray with the store previous filters if any (adds operator and type if missing)
 me . renderExtraColumn ( ) ; // sets me.extraColumn if applicable
 // renders the filter's bar
 if ( grid . rendered ) { me . renderFilterBar ( grid ) ; } else { grid . on ( 'afterrender' , me . renderFilterBar , me , { single : true } ) ; } }
private
private