Max, that was a big help. Thanks all for helping me out, this group rocks.
timgerr --- In [email protected], "max.nachlinger" <max.nachlin...@...> wrote: > > > > > > > Here's a bit of code that might help. > > Silly test app: ----------------------------------------------------- > > <?xml version="1.0" encoding="utf-8"?> > <Application xmlns="http://www.adobe.com/2006/mxml" layout="absolute" > creationComplete="_onLoad()" xmlns:local="*"> > <Script> > <![CDATA[ > import mx.events.*; > import mx.collections.ArrayCollection; > [Bindable] private var _data:ArrayCollection; > > private function _onLoad():void > { > var a:Array = []; > var o:Object = {}; > var o1:Object = {}; > var o2:Object = {}; > var o3:Object = {}; > > var c:int, d:int, e:int; > for( var i:int = 0; i < 100; i++ ) > { > c = _randIntRange(2,20); > o = {name:'Great Grand-Parent '+(i+1), children:[]}; > > for( var j:int = 0; j < c; j++ ) > { > o1 = {name:'Grand Parent '+(j+1), children:[]}; > > d = _randIntRange(1,5); > for( var k:int = 0; k < d; k++ ) > { > o2 = {name:'Parent '+(k+1), children:[]}; > > e = _randIntRange(1,2); > for( var l:int = 0; l < e; l++ ) > { > o3 = {name:'Child '+(l+1)}; > o2.children.push(o3); > } > > o1.children.push(o2); > } > > o.children.push(o1); > } > > a.push(o); > } > _data = new ArrayCollection(a); > } > private function _randIntRange( start:Number, end:Number ):int > { > return int(Math.floor(start +(Math.random() * (end - start)))); > } > ]]> > </Script> > <local:TestTree id="tr" width="250" height="100%" dataProvider="{_data}" > labelField="name" > dragEnabled="true" dropEnabled="true" dragMoveEnabled="true"/> > </Application> > > Silly test tree: ----------------------------------------------------- > > <?xml version="1.0" encoding="utf-8"?> > <Tree xmlns="http://www.adobe.com/2006/mxml"> > <Script> > <![CDATA[ > import mx.events.*; > import mx.controls.listClasses.*; > > private var _currentRenderer:IListItemRenderer; > private var _draggedItem:Object; > > override protected function mouseOverHandler(event:MouseEvent):void > { > super.mouseOverHandler(event); > var item:IListItemRenderer = mouseEventToItemRenderer(event); > if ( item != null && _currentRenderer != item ) > { > _currentRenderer = item; > trace(className + '::mouseMoveHandler(): ' + > _currentRenderer.data['name'] ); > } > } > > override protected function dragOverHandler(event:DragEvent):void > { > _draggedItem = event.dragSource.dataForFormat('treeItems')[0]; > trace(className + '::dragOverHandler(): dragging (' + > _draggedItem['name'] + ') over (' + _currentRenderer.data['name'] + ')' ); > } > ]]> > </Script> > </Tree> > > Hope that helps a bit. > > --Max >

