Glad to be of assistance.

--- In [email protected], "superbokbok" <superbok...@...> wrote:
>
> yup it should work...I did this & it worked fine :)
> 
> /***********************************************************************\
> ********
>   * Filter Manager
>  
> ************************************************************************\
> ******/
> package custom {
> 
>      import flash.events.Event;
> 
>      import mx.containers.Form;
>      import mx.containers.FormItem;
>      import mx.controls.Alert;
>      import mx.controls.DataGrid;
>      import mx.controls.dataGridClasses.DataGridColumn;
>      import mx.utils.ObjectUtil;
> 
> 
>     
> /***********************************************************************\
> ****
>      * Class definition for a class to manage the various search filters
>     
> ************************************************************************\
> ***/
>      public class FilterManager extends Form {
> 
>          [Bindable]
>          public var datagrid:DataGrid;
> 
>          private var _test:String;
> 
>          private var filterSettings:Array;
> 
>         
> /***********************************************************************
>          * FilterManager (Constructor)
>          *
>          * Creates an instance of the filter manager class
>         
> ***********************************************************************/
>          public function FilterManager():void
>          {
>              super();
>              datagrid = new DataGrid();
>              datagrid.columns = createDGCols();
>              this.initFilters();
>          }
> 
>          [Bindable]
>          public function set test(value:String):void
>          {
>              _test = value;
>              trace(value);
>          }
> 
>      public function get test():String
>      {
>          return _test;
>      }
> 
>         
> /***********************************************************************
>          * initFilters
>          *
>          * Builds an array to manage the different filters that may be
> set
>         
> ***********************************************************************/
>          private function initFilters():void {
>              this.filterSettings = new Array();
> 
>              for each (var col:* in this.datagrid.columns) {
>                  var d:Object = new Object();
> 
>                  if (col['dataField'] != null) {
>                      d.field   = col['dataField'];
>                      d.enabled = false;
>                      d.filter  = null;
>                      this.filterSettings.push(d);
>                  }
>              }
>          }
> 
> 
>         private function createDGCols():Array
>         {
>          /* DATAGRID Col SETUP */
>          var a:DataGridColumn             = new DataGridColumn('Title');
>          a.dataField                        = 'FileName';
>          a.width                            = 80;
>          a.editable                        = true;
> 
>          var b:DataGridColumn             = new DataGridColumn('Types');
> 
>          b.width                            = 130;
>          b.editable                        = false;
> 
>          var c:DataGridColumn             = new DataGridColumn('Icon');
> 
>          c.width                         = 20;
>          c.editable                        = false;
> 
>          var dgCols:Array                = [a,b,c];
>          return dgCols;
> 
>         }
> 
>         
> /***********************************************************************
>          * component overrides
>         
> ***********************************************************************/
>          override protected function createChildren():void {
>              super.createChildren();
>              for each (var item:Object in this.filterSettings) {
>                  var f:FormItem = new FormItem();
>                  f.label = item.field;
>                  addChild(f);
>              }
>              Alert.show("createChilden()");
>          }
> 
>          override protected function commitProperties():void {
>              super.commitProperties();
>          }
> 
>          override protected function measure():void {
>              super.measure();
>          }
> 
>          override protected function
> updateDisplayList(unscaledWidth:Number,
>                                                 
> unscaledHeight:Number):void {
>              super.updateDisplayList(unscaledWidth,unscaledHeight);
>          }
> 
>      }
> }
> 
> 
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> layout="absolute"
>      xmlns:custom="custom.*">
> 
>      <custom:FilterManager datagrid="{Application.application.dgResults}"
>          test="I'm using FilterManager" width="100%" height="100%"
> id="filManager"/>
> 
>      <mx:TextArea  width="200" height="200" x="200" y="200"
> text="{filManager.test}"/>
> 
> </mx:Application>
> 
> cheers
> erick
>


Reply via email to