package lib { import mx.controls.dataGridClasses.DataGridColumn; import mx.core.ClassFactory; public class RatingColumn extends DataGridColumn { public function RatingColumn(dataFieldParam:String) { dataField = dataFieldParam; var c:ClassFactory = new ClassFactory(); c.properties = {dataField: dataFieldParam}; c.generator = RatingItemRenderer; itemRenderer = c; sortCompareFunction = sortRating; rendererIsEditor = true; } private function sortRating(obj1:Object, obj2:Object):int { var d1:Number = Number(obj1[dataField]); var d2:Number = Number(obj2[dataField]); var result:int; if(d1 < d2) { result = -1; } else if(d1 == d2) { result = 0; } else { result = 1; } return result; } } }