All pastes #980467 Raw Edit

Stuff

public text v1 · immutable
·published 2008-04-11 00:56 UTC
rendered paste body
package MyRenderers {
    import mx.collections.*;
    import mx.controls.treeClasses.*;

    public class MyTreeItemRenderer extends TreeItemRenderer {

        // Define the constructor.
        public function MyTreeItemRenderer() {
            super();
        }
        
        // Override the set method for the data property
        // to set the font color and style of each node.
        override public function set data(value:Object):void {
            super.data = value;

            if(super.listData) {
	            if(TreeListData(super.listData).hasChildren) {
					var xml:XMLList = new XMLList(TreeListData(super.listData).item);
					var xml2:XMLList = xml.elements();
					if(xml2) {
	            		for each(var tmp:XML in xml2..*) {
	            			if(tmp.@current) {
		            			if(tmp.@current == 'current') {
		            				trace('current: ' + tmp.@name);
			                		setStyle('color', 0xff0000);
			                		setStyle('fontWeight', 'bold');
			             		}
			             	}
	            		}
	   				}
	        	}
            }
        }
     
        // Override the updateDisplayList() method 
        // to set the text for each tree node.        
       override protected function updateDisplayList(unscaledWidth:Number,unscaledHeight:Number):void {
            super.updateDisplayList(unscaledWidth, unscaledHeight);
            if(super.data) {
                if(TreeListData(super.listData).hasChildren) {
                    var tmp:XMLList = new XMLList(TreeListData(super.listData).item);
                    var myStr:int = tmp[0].children().length();
                    var item:String = 'item';
                    if(myStr != 1) {
                    	item += 's';
                    }
                    super.label.text =  TreeListData(super.listData).label + ' (' + myStr + ' ' + item + ')';
                }
            }
        }
    }
}