rendered paste body<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="getPlupps();" layout="absolute">
<mx:RemoteObject id="myservice" source="test.Service" destination="amfphp" fault="faultHandler(event)" showBusyCursor="true">
<mx:method name="addComment" result="resultHandler(event)" fault="faultHandler(event)" />
<mx:method name="getComments" result="resultHandler2(event)" fault="faultHandler2(event)" />
<mx:method name="getProjects" result="resultHandler3(event)" fault="faultHandler3(event)" />
</mx:RemoteObject>
<mx:ViewStack width="100%" x="0" height="100%" y="0" id="stack">
<mx:Canvas id="Stage"
label="Item"
width="100%" height="100%"
clipContent="false"
backgroundColor="#887489" x="0" y="0">
<mx:Button label="Visa kommentarer" click="getPlupps();" x="34" bottom="10"/>
<mx:Image source="plupp.png" mouseMove="dragIt(event, myimage);" id="myimage" x="10" y="10"/>
<mx:Image source="jonte.jpg" dragEnter="dropHere(event);" dragDrop="makeNewPlupp(event, myimage);" scaleContent="false" id="mytarget" left="34" right="34" bottom="52" top="88"/>
<mx:Label x="65" y="34" text="Dra ut ny kommentar" fontWeight="bold"/>
</mx:Canvas>
<mx:Canvas label="list">
<mx:List x="5" y="30" dataProvider="{arrProjects}" itemRenderer="projects" initialize="init();"></mx:List>
</mx:Canvas>
</mx:ViewStack>
<mx:ButtonBar x="522" y="10" dataProvider="{stack}">
</mx:ButtonBar>
<mx:Script>
<![CDATA[
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.events.DragEvent;
import flash.events.MouseEvent;
import mx.controls.Image;
import mx.containers.Canvas;
import mx.managers.CursorManager;
import mx.utils.ArrayUtil;
//import tutorials.Person;
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.effects.*;
//import ProjectList;
[Embed(source='plupp.png')]
public var globeImage:Class;
public var arrPlupps:Array = new Array();
[Bindable]
public var arrProjects:Array = new Array();
private function faultHandler(fault:FaultEvent):void
{
CursorManager.removeBusyCursor();
Alert.show("code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail);
//result_text.text = "code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail;
}
private function resultHandler(evt:ResultEvent):void
{
//Alert.show("SENT!");
//result_text.text = evt.message.body.toString(); // same as: evt.result.toString();
}
private function faultHandler2(fault:FaultEvent):void
{
CursorManager.removeBusyCursor();
Alert.show("code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail);
//result_text.text = "code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail;
}
private function resultHandler2(evt:ResultEvent):void
{
arrPlupps = new Array();
for(var i:Number = 0; i < evt.result.length; i++)
{
arrPlupps.push({xpos: evt.result[i].x, ypos: evt.result[i].y});
}
showPlupps();
//result_text.text = evt.message.body.toString(); // same as: evt.result.toString();
}
public function dragIt(event:MouseEvent, img:Image):void
{
trace("IMG: " + img);
var dragInitiator:Image=Image(event.currentTarget);
var ds:DragSource = new DragSource();
var imageProxy:Image = new Image();
imageProxy.source = globeImage;
imageProxy.height=70;
imageProxy.width=70;
DragManager.doDrag(dragInitiator, ds,event,imageProxy,0,0);
}
public function dropHere(event:DragEvent):void
{
trace("NOW U CAN DROP!" + event.target);
DragManager.acceptDragDrop(Image(event.target));
//DragManager.acceptDragDrop(event.target);
}
public function makeNewPlupp(event:DragEvent, img:Image):void
{
trace("ACCEPTED!" + img + "E: " + event.localX);
var newimg:Image = new Image();
newimg.load('plupp.png');
//newimg.addChild('plupp.png');
newimg.x = mytarget.mouseX;
newimg.y = mytarget.mouseY;
newimg.width = 25;
newimg.height = 25;
mytarget.addChild(newimg);
//newimg = event.localX;
//newimg = event.localY;
arrPlupps.push({bild: newimg.source, xpos: mytarget.mouseX, ypos: mytarget.mouseY});
myservice.getOperation('addComment').send(mytarget.mouseX, mytarget.mouseY);
/*var box : Canvas = new Canvas();
box.width = 10;
box.height = 10;
box.setStyle( "backgroundColor", "#f00dbad" );
box.setStyle( "backgroundAlpha", 0.2 );
box.setStyle( "borderThickness", 1 );
box.setStyle( "borderColor", "#f00dbad" );
box.setStyle( "borderStyle", "solid" );
box.x = mytarget.mouseX;
box.y = mytarget.mouseY;
mytarget.addChild(box);*/
for(var i:Number = 0; i < arrPlupps.length; i++)
{
trace("bildjavel: " + arrPlupps[i].bild + " x: " + arrPlupps[i].xpos);
}
}
public function getPlupps():void
{
myservice.getOperation('getComments').send();
}
public function showPlupps():void
{
trace("SKAPA BOX!");
/*var box : Canvas = new Canvas();
box.width = 100;
box.height = 100;
box.setStyle( "backgroundColor", "#f00dbad" );
box.setStyle( "backgroundAlpha", 0.2 );
box.setStyle( "borderThickness", 1 );
box.setStyle( "borderColor", "#f00dbad" );
box.setStyle( "borderStyle", "solid" );
box.x = 10;
box.y = 100;
box.clipContent = false;
Stage.addChild(box);*/
for(var i:Number = 0; i < arrPlupps.length; i++)
{
trace("bildjavel: " + arrPlupps[i].bild + " x: " + arrPlupps[i].xpos);
var newimg:Image = new Image();
newimg.load('plupp.png');
//newimg.addChild('plupp.png');
newimg.x = arrPlupps[i].xpos;
newimg.y = arrPlupps[i].ypos;
newimg.width = 25;
newimg.height = 25;
mytarget.addChild(newimg);
/* var box : Canvas = new Canvas();
box.width = 10;
box.height = 10;
box.setStyle( "backgroundColor", "#f00dbad" );
box.setStyle( "backgroundAlpha", 0.2 );
box.setStyle( "borderThickness", 1 );
box.setStyle( "borderColor", "#f00dbad" );
box.setStyle( "borderStyle", "solid" );
box.x = arrPlupps[i].xpos;
box.y = arrPlupps[i].ypos;
mytarget.addChild(box);*/
//trace("CANVAS: " + box);
/*var plupp:Image = new Image();
plupp = arrPlupps[i].bild;
plupp.width = 25;
plupp.height = 25;
plupp.x = arrPlupps[i].xpos;
plupp.y = arrPlupps[i].ypos;*/
}
}
/****************** LISTAN ***************/
private function init(){
myservice.getOperation('getProjects').send();
}
private function faultHandler3(fault:FaultEvent):void
{
CursorManager.removeBusyCursor();
Alert.show("code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail);
//result_text.text = "code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail;
}
private function resultHandler3(evt:ResultEvent):void
{
arrProjects = [];
for(var i:Number = 0; i < evt.result.length; i++)
{
arrProjects.push({id: evt.result[i].id, name: evt.result[i].name});
}
//heja.text = arrProjects.data.name
}
/***************** END LIST *************/
public function dosomething():void
{
}
]]>
</mx:Script>
</mx:Application>