Revision: 3251
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at June 27, 2007 05:23 by mswallace
Initial Code
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
creationComplete="init()">
<mx:Script>
<![CDATA[
import flash.desktop.DragActions;
import mx.controls.Alert;
import mx.controls.Image;
import flash.filesystem.File;
import flash.desktop.TransferableData;
import flash.desktop.TransferableFormats;
import flash.events.NativeDragEvent;
import flash.desktop.DragManager;
private function init():void{
this.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER,onDragIn);
this.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP,onDrop);
this.addEventListener(NativeDragEvent.NATIVE_DRAG_EXIT,onDragExit);
}
public function onDragIn(event:NativeDragEvent):void{
DragManager.acceptDragDrop(this);
}
public function onDrop(event:NativeDragEvent):void{
DragManager.dropAction = DragActions.COPY;
var dropfiles:Array = event.transferable.dataForFormat(TransferableFormats.FILE_LIST_FORMAT) as Array;
for each (var file:File in dropfiles){
switch (file.extension){
case "png" :
addImage(file.nativePath);
break;
case "jpg" :
addImage(file.nativePath);
break;
case "gif" :
addImage(file.nativePath);
break;
default:
Alert.show("Unmapped Extension");
}
}
}
public function onDragExit(event:NativeDragEvent):void{
trace("Drag exit event.");
}
private function addImage(nativePath:String):void{
var i:Image = new Image();
if(Capabilities.os.search("Mac") >= 0){
i.source = "file://" + nativePath;
} else {
i.source = nativePath;
}
this.addChild(i);
}
]]>
</mx:Script>
</mx:WindowedApplication>
Initial URL
http://blog.everythingflex.com/2007/06/18/simple-drag-and-drop-air/
Initial Description
Initial Title
AIR Drag and Drop Files to the Application
Initial Tags
actionscript, 3, Flex
Initial Language
ActionScript 3