rendered paste body<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:view="view.*" 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="getProject" result="resultHandler3(event)" fault="faultHandler3(event)" />
</mx:RemoteObject>
<mx:ViewStack width="100%" height="100%" id="stack">
<mx:Canvas label="plupp" id="Stage"
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="329" bottom="52" top="88"/>
<mx:Label x="65" y="34" text="Dra ut ny kommentar" fontWeight="bold"/>
</mx:Canvas>
<mx:Script>
<![CDATA[
import mx.events.DynamicEvent;
import view.projects;
[Bindable]
public var arrProjectItems:ArrayCollection;
[Bindable]
public var arrProjectItemsDetails:ArrayCollection;
private function handler(evt):void
{
trace("Visa projekt: " + evt.projectId);
stack2.selectedIndex = 0;
loadProject(evt.projectId);
}
private function loadProject(projId:Number):void
{
trace("Ladda in projektid: " + projId);
myservice.getOperation('getProject').send(projId);
}
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);
}
private function resultHandler3(evt:ResultEvent):void
{
arrProjectItems = new ArrayCollection( ArrayUtil.toArray(evt.result) );
//arrProjectItemsDetails = arrProjectItems.items;
}
]]>
</mx:Script>
<mx:Canvas label="list" width="100%" height="100%">
<mx:ViewStack id="stack2" selectedIndex="1" width="100%" x="0" height="100%" y="60">
<mx:Canvas label="details" width="607" height="345">
<mx:Label text="PROJEKTDETAILS!" x="10" y="66"/>
<mx:DataGrid x="10" y="10" width="100%" id="people_list" dataProvider="{arrProjectItemsDetails.items}" borderColor="0xFFFFFF" borderStyle="none" height="100%">
<mx:columns>
<mx:DataGridColumn id="img" editable="false">
<mx:itemRenderer>
<mx:Component>
<mx:Image width="100" horizontalAlign="center" height="100" source="filename"/>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
<mx:DataGridColumn headerText="Items" dataField="name" id="itemList"/>
</mx:columns>
</mx:DataGrid>
</mx:Canvas>
<mx:Canvas label="itemdetails" width="100%" height="100%">
<view:projects visaprojekt="handler(event);" height="317" y="10" width="587" x="10"/>
</mx:Canvas>
</mx:ViewStack>
</mx:Canvas>
</mx:ViewStack>
<mx:ButtonBar dataProvider="stack" y="0" right="547" left="0"/>
<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;
[Bindable]
public var projectIndex:Number;
public var arrPlupps: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();
init();
//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("FOCUS: " + Stage.getFocus());
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;*/
}
}
]]>
</mx:Script>
</mx:Application>