Files
2014-07-03 09:49:41 +08:00

110 lines
2.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%"
label="{contact.id>0?contact.firstName+' '+contact.lastName:'New Contact'}">
<fx:Script>
<![CDATA[
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.controls.Alert;
[Bindable] public var contact:Contact;
private function save():void
{
contact.firstName = firstName.text;
contact.lastName = lastName.text;
contact.email = email.text;
contact.phone = phone.text;
contact.address = address.text;
contact.city = city.text;
contact.state = state.text;
contact.zip = zip.text;
if (contact.id == 0)
{
ro.create(contact);
}
else
{
ro.update(contact);
}
}
private function create_resultHandler(event:ResultEvent):void
{
contact.id = event.result.id;
}
private function update_resultHandler(event:ResultEvent):void
{
// no specific action for now
}
private function deleteItem():void
{
ro.remove(contact);
}
private function remove_resultHandler(event:ResultEvent):void
{
contact = null;
}
private function faultHandler(event:FaultEvent):void
{
Alert.show(event.fault.faultDetail);
}
]]>
</fx:Script>
<fx:Declarations>
<mx:RemoteObject id="ro" destination="contactService" fault="faultHandler(event)" endpoint="http://localhost:8400/spring-flex-testdrive/messagebroker/amf">
<mx:method name="create" result="create_resultHandler(event)"/>
<mx:method name="update" result="update_resultHandler(event)"/>
<mx:method name="remove" result="remove_resultHandler(event)"/>
</mx:RemoteObject>
</fx:Declarations>
<mx:Form>
<mx:FormItem label="Id">
<mx:TextInput text="{contact.id}" enabled="false"/>
</mx:FormItem>
<mx:FormItem label="First Name">
<mx:TextInput id="firstName" text="{contact.firstName}"/>
</mx:FormItem>
<mx:FormItem label="Last Name">
<mx:TextInput id="lastName" text="{contact.lastName}"/>
</mx:FormItem>
<mx:FormItem label="Email">
<mx:TextInput id="email" text="{contact.email}"/>
</mx:FormItem>
<mx:FormItem label="Phone">
<mx:TextInput id="phone" text="{contact.phone}"/>
</mx:FormItem>
<mx:FormItem label="Address">
<mx:TextInput id="address" text="{contact.address}"/>
</mx:FormItem>
<mx:FormItem label="City">
<mx:TextInput id="city" text="{contact.city}"/>
</mx:FormItem>
<mx:FormItem label="State">
<mx:TextInput id="state" text="{contact.state}"/>
</mx:FormItem>
<mx:FormItem label="Zip">
<mx:TextInput id="zip" text="{contact.zip}"/>
</mx:FormItem>
</mx:Form>
<s:HGroup left="8" bottom="8">
<s:Button label="Close" click="parent.removeChild(this)"/>
<s:Button label="Save" click="save()"/>
<s:Button label="Delete" click="deleteItem()"/>
</s:HGroup>
</mx:Canvas>