src/it/ht/rcs/console/dashboard/view/renderer/TargetRenderer.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:renderer="it.ht.rcs.console.dashboard.view.renderer.*"
autoDrawBackground="false" buttonMode="true" click="onClick(event)">
<s:layout>
<s:VerticalLayout gap="12" horizontalAlign="center" paddingBottom="10" paddingLeft="10"
paddingRight="10" paddingTop="10" verticalAlign="top"/>
</s:layout>
<fx:Script>
<![CDATA[
import it.ht.rcs.console.events.SectionEvent;
import it.ht.rcs.console.search.controller.SearchManager;
import mx.core.FlexGlobals;
[Embed(source='/img/NEW/device/compass.png')]
private static const compassIcon:Class;
[Embed(source='/img/NEW/device/soldier.png')]
private static const soldierIcon:Class;
override public function set data(value:Object):void
{
super.data = value;
}
private function onClick(e:MouseEvent):void
{
var event:SectionEvent = new SectionEvent(SectionEvent.CHANGE_SECTION);
event.section = SectionEvent.OPERATIONS;
event.item = SearchManager.instance.getItem(data._id);
FlexGlobals.topLevelApplication.dispatchEvent(event);
}
private function onRoll(event:MouseEvent):void
{
container.setStyle('backgroundColor', event.type == MouseEvent.ROLL_OVER ? 0xa8c6ee : 0xffffff);
}
]]>
</fx:Script>
<s:BorderContainer id="container" width="50" height="50" borderColor="#dddddd" cornerRadius="10" rollOver="onRoll(event)" rollOut="onRoll(event)">
<s:Group width="100%" x="-6" y="-6" >
<s:Image id="icon" width="36" height="36" horizontalCenter="0" smooth="true"
source="@Embed('/img/NEW/target_36.png')" verticalCenter="0"/>
<s:Image source="{compassIcon}" x="30" y="30" visible="{data && data.hasOwnProperty('level') && data.level=='scout' && data._kind=='agent'}"/>
<s:Image source="{soldierIcon}" x="30" y="30" visible="{data && data.hasOwnProperty('level') && data.level=='soldier'}"/>
</s:Group>
<renderer:CounterBaloon right="-6" top="-8" style="blue"
value="{data.sync}" visible="{data.sync != 0}"/>
<renderer:CounterBaloon right="-6" bottom="-3" style="white"
value="{data.tot}" visible="{data.tot != 0}"/>
</s:BorderContainer>
<s:Label maxWidth="100" maxDisplayedLines="1" text="{data.name}"/>
</s:ItemRenderer>