Components Flex



    
    
    import mx.events.DragEvent;
    import mx.managers.DragManager;
    import mx.core.DragSource;
    import mx.collections.IList;
    import mx.collections.ArrayCollection;
    private function initApp():void {
        firstList.dataProvider = new ArrayCollection([
            {label:"First", data:"1"},
            {label:"Second", data:"2"},
            {label:"Third", data:"3"},
            {label:"Fourth", data:"4"},
        ]);
        secondList.dataProvider = new ArrayCollection([]);
    }
    private function dragDropHandler(event:DragEvent):void {
        if (event.dragSource.hasFormat("items") ==false)
        {
            return;
        }
        event.preventDefault();
        event.currentTarget.hideDropFeedback(event);
        var dropTarget:List=List(event.currentTarget);
        var itemsArray:Array =event.dragSource.dataForFormat("items") as Array;
        var tempItem:Object ={label: itemsArray[0].label, data: itemsArray[0].data};
        var dropLoc:int = dropTarget.calculateDropIndex(event);
        IList(dropTarget.dataProvider).addItemAt(tempItem, dropLoc);
    }