package {
    import flash.display.Sprite;
    import flash.display.StageScaleMode;
    import flash.display.StageAlign;
    import flash.events.Event;
    
    import com.arpitonline.treemap.TreeMap;
    import com.arpitonline.treemapExamples.TreeData;
    import com.arpitonline.treemapExamples.ColoredHLayoutManager;
    import com.arpitonline.treemapExamples.ColoredVLayoutManager;
    
    public class STreemap extends Sprite{
        
        private var map:TreeMap;
        
        public function STreemap(){
            
            // set stage behavior
            stage.scaleMode = StageScaleMode.NO_SCALE;
            stage.align = StageAlign.TOP_LEFT
            stage.addEventListener(Event.RESIZE, resizeHandler);
            
            // add the treemap child
            map = new TreeMap();
            map.setHLayoutManager(ColoredHLayoutManager);
            map.setVLayoutManager(ColoredVLayoutManager);
            
            this.addChild(map);
            
            map.width = stage.stageWidth;
            map.height = stage.stageHeight;
            
            var values:Array = [
                                new TreeData("Designated Driver Kicked Out of Florida Bar for Not Drinking Alcohol", 61,0xE8E295),
                                new TreeData("Humane Society: 'Fake fur' often DOG HAIR",112, 0xCFA122),
                                new TreeData("Naughty Dog designer leaks name and images of new PS3 adventure game",78, 0xCCB371),
                                new TreeData("Is 17 the 'most random' number?",299, 0x7C5A4F),
                                new TreeData("Remapping the Universe using this 'Minority Report' GUI",499, 0xD3BF2E),
                                ]
        
            map.dataProvider = values;
            
        }
        
        /**
         * Listener to the stage resize event.
         */ 
        private function resizeHandler(e:Event):void{
            map.width = stage.stageWidth;
            map.height = stage.stageHeight;
        }
    }
}