Development Flex


    
        
            import mx.core.DragSource;
            import mx.core.IUIComponent;
            import mx.events.DragEvent;
            import mx.managers.DragManager;
            private function mouseDownHandler( evt:MouseEvent ):void
            {
                var initiator:IUIComponent = evt.currentTarget as IUIComponent;
                var dragSource:DragSource = new DragSource();
                dragSource.addData( initiator, "box");
                DragManager.doDrag( initiator, dragSource, evt );
            }
            private function dragEnterHandler( evt:DragEvent ):void
            {
                if( evt.dragSource.hasFormat( "box") )
                {
                    DragManager.acceptDragDrop( Canvas( evt.currentTarget ) );
                }
            }
            private function dropHandler( evt:DragEvent ):void
            {
                var box:Box = Box( evt.dragInitiator );
                box.x = evt.localX;
                box.y = evt.localY;
            }