DraggenDroppen allows you to drag and drop files from the local file system to Flash. It uses a Javascript bridge to make the communication between the Flash content and the page where it is inserted.
It only works in a capable browser environment.
Sample
public function DraggenDroppenDemo() { dd = new DraggenDroppen(); dd.addEventListener(DraggenDroppenEvent.DRAG_OVER, dragOverHandler); dd.addEventListener(DraggenDroppenEvent.DRAG_LEAVE, dragLeaveHandler); dd.addEventListener(DraggenDroppenEvent.FILE_START, fileStartHandler); dd.addEventListener(DraggenDroppenEvent.FILE_PROGRESS, fileProgressHandler); dd.addEventListener(DraggenDroppenEvent.FILE_COMPLETE, fileCompleteHandler); // dd.isSupported (Boolean) // Whether or not DraggenDroppen is supported by the browser } private function dragOverHandler(event:DraggenDroppenEvent):void { // User is dragging files: // Mouse pointer is over the SWF } private function dragLeaveHandler(event:DraggenDroppenEvent):void { // User is dragging files: // Mouse pointer left the SWF } private function fileStartHandler(event:DraggenDroppenEvent):void { // One of the dropped files starts transferring } private function fileProgressHandler(event:DraggenDroppenEvent):void { // One of the dropped files is transferring } private function fileCompleteHandler(event:DraggenDroppenEvent):void { // One of the dropped files completed transferring }