<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FDF9F9, #FDF9F9]"> <mx:Script> <!--[CDATA[ import com.huaxin.workflow.components.OpenAll; import com.huaxin.workflow.components.HelpWindow; import com.huaxin.workflow.components.LookProcess; import com.huaxin.workflow.components.AboutMeWindow; import com.huaxin.workflow.components.CreateProcess; import mx.controls.menuClasses.MenuItemRenderer; import mx.events.MenuEvent; import mx.controls.Alert; import mx.managers.PopUpManager; //初始化流程文件的名称 [Bindable] public static var title:String = ""; //初始状态的流程文件的内容 [Bindable] public static var content:XML = new XML(""); //选择菜单 private function menuHandler(event:MenuEvent):void { var label:String=event.item.@label; switch(label){ case "新建" : this.callLater(createProcess);break; case "打开" : this.callLater(openAll);break; case "保存" : this.callLater(saveWorkflow);break; case "属性" : this.callLater(lookWorkflow);break; case "退出" : this.callLater(closeWindow);break; case "选择" : this.callLater(chooseNode);break; case "连线" : this.callLater(linkNode);break; case "拖动" : this.callLater(moveNode);break; case "撤消" : this.callLater(undo);break; case "重做" : this.callLater(redo);break; case "剪切" : this.callLater(cut);break; case "复制" : this.callLater(copy);break; case "粘贴" : this.callLater(paste);break; case "删除" : this.callLater(del);break; case "全选" : this.callLater(all);break; case "查找" : this.callLater(find);break; case "组合" : this.callLater(merge);break; case "分解" : this.callLater(fork);break; case "图元属性" : this.callLater(attribute);break; case "帮助主题" : this.callLater(help);break; case "关于" : this.callLater(about);break; } } //新建流程 private function createProcess():void{ var process:CreateProcess=CreateProcess(PopUpManager.createPopUp(this, CreateProcess,true)); PopUpManager.centerPopUp(process); } //打开操作 private function openAll():void{ var openAll :OpenAll = OpenAll(PopUpManager.createPopUp(this,OpenAll,true)); PopUpManager.centerPopUp(openAll); } //保存操作 private function saveWorkflow():void{ content = new XML(_textArea.text); service.saveWorkFlow(title,content.toXMLString()); } //属性操作 private function lookWorkflow():void{ var lookProcess:LookProcess = LookProcess(PopUpManager.createPopUp(this,LookProcess,true)); lookProcess.setContent = content.toXMLString(); PopUpManager.centerPopUp(lookProcess); } //关闭操作 private function closeWindow():void{ var request:URLRequest = new URLRequest("javascript:window.close()"); navigateToURL(request,"_self"); } //选择操作 private function chooseNode():void{ Alert.show('选择'); } //连线操作 private function linkNode():void{ Alert.show('连线'); } //撤消操作 private function undo():void{ Alert.show('撤消'); } //重做操作 private function redo():void{ Alert.show('重做'); } //剪切操作 private function cut():void{ Alert.show('剪切'); } //复制操作 private function copy():void{ Alert.show('复制'); } //粘贴操作 private function paste():void{ Alert.show('粘贴'); } //删除操作 private function del():void{ Alert.show('删除'); } //全选操作 private function all():void{ Alert.show('全选'); } //操作 private function find():void{ Alert.show('查找'); } //组合操作 private function merge():void{ Alert.show('组合'); } //分解操作 private function fork():void{ Alert.show('分解'); } //图元属性操作 private function attribute():void{ Alert.show('图元属性'); } //拖动操作 private function moveNode():void{ Alert.show('拖动'); } //帮助主题操作 private function help():void{ var help:HelpWindow = HelpWindow(PopUpManager.createPopUp(this,HelpWindow)); PopUpManager.centerPopUp(help); } //关于操作 private function about():void{ var about:AboutMeWindow = AboutMeWindow(PopUpManager.createPopUp(this,AboutMeWindow)); PopUpManager.centerPopUp(about); } ]]--> </mx:Script> <mx:RemoteObject id="service" concurrency="single" fault="{Alert.show('操作失败');}" destination="process"> <mx:method name="saveWorkFlow"/> </mx:RemoteObject> <mx:MenuBar id="menuBar" labelField="@label" width="100%" height="3%" itemClick="{menuHandler(event);}"> <mx:XMLList> <menuitem label="文件"> <menuitem label="新建"/> <menuitem label="打开"/> <menuitem label="保存"/> <menuitem label="属性"/> <menuitem label="退出"/> </menuitem> <menuitem label="编辑"> <menuitem label="撤消"/> <menuitem label="重做"/> <menuitem label="剪切"/> <menuitem label="复制"/> <menuitem label="粘贴"/> <menuitem label="删除"/> <menuitem label="全选"/> <menuitem label="查找"/> <menuitem label="组合"/> <menuitem label="分解"/> <menuitem label="图元属性"/> </menuitem> <menuitem label="工具"> <menuitem label="选择"/> <menuitem label="连线"/> <menuitem label="拖动"/> </menuitem> <menuitem label="帮助"> <menuitem label="帮助主题"/> <menuitem label="关于"/> </menuitem> </mx:XMLList> </mx:MenuBar> <mx:TextArea x="10" y="41" width="100%" height="100%" text="{content}" editable="true" id="_textArea"/> </mx:Application>