TWaver学习笔记1-TWaver入门 联系客服

发布时间 : 星期一 文章TWaver学习笔记1-TWaver入门更新完毕开始阅读b3a18217c5da50e2534d7f04

return node; } ]]>

基础

TWaver设计模式

TWaver Flex采用基本的模型视图分离的设计思想,通过MV的组合嵌套,实现了以twaver.Data为基本数据元素,twaver.DataBox为基本数据容器的客户端数据模型,以及基本图形twaver.network.ui.ElementUI和数据容器组件(twaver.Network, twaver.Tree, twaver.Table...)的视图系统,三者共同构成了TWaver Flex的架构体系。

Twaver数据模型

TWaverFlex的基本数据元素是twaver.IData,基本数据容器定义为twaver.DataBox,基于这两类基本元素,TWaverFlex预定义了一系列业务对象,视图网元和管理容器,例如告警(twaver.IAlarm)和告警容器(twaver.AlarmBox),图层(twaver.ILayer)与图层管理容器(twaver.LayerBox) ,拓扑网元(twaver.IElement)和拓扑管理容器(twaver.ElementBox)......

数据元素结构图

数据管理容器结构图

其中拓扑管理容器(twaver.ElementBox)整合了其他几种容器,提供了丰富的拓扑元素(Dummy, Node, Link, Bus, ShapeNode, ShapeLink, Follower, Rack, Shelf, Slot, Card, Port, Grid, Group, SubNetwork......),为网管界面开发提供了强大的设计模型和业务功能的基础支持。 TWaverFlex以twaver.IData为最基本的数据单元,扩展定义了一系列具有图形和业务意义的数据类型,包括IAlarm, ILayer, IElement...

数据元素

TWaverFlex以twaver.IData为最基本的数据单元,扩展定义了一系列具有图形和业务意义的数据类型,包括IAlarm, ILayer, IElement...

?

twaver.IData

IData是TWaverFlex的数据元素基类接口,twaver.Data是对其实现类,定义了id, name, icon, toolTip, parent, children等基本属性,对事件派发做了封装,并支持xml数据的导入导出,为TWaver各平台间数据的可序列化奠定了基础。

Data继承于flash.events.EventDispatcher,这使他具有事件派发和监听的功能,可以通过调用下面的方法派发事件或者添加实现监听器:

flash.events.EventDispatcher#public dispatchEvent(event:Event):Boolean

flash.events.EventDispatcher#addEventListener(type:String, listener:Function,

useCapture:Boolean=false, priority:int=0, useWeakReference:Boolean=false):void

Data还实现了twaver.IData接口,实现了对属性变化事件的派发和监听

function dispatchPropertyChangeEvent(property:String, oldValue:Object, newValue:Object):Boolean;

function addPropertyChangeListener(listener:Function, priority:int = 0

, useWeakReference:Boolean = false):void;

function

removePropertyChangeListener(listener:Function):void;

此外,Data中还定义了其他功能函数

function get childrenCount():int; function get hasChildren():Boolean;

function isDescendantOf(data:IData):Boolean; function isParentOf(data:IData):Boolean; function isRelatedTo(data:IData):Boolean;

function toXML(context:XMLContext, newInstance:IData):void;

function parseXML(context:XMLContext, xml:XML):void;

function setPropertyValue(property:String, value:Object):void;

function getPropertyValue(property:String):Object;

下面分别介绍各个实现类

?

twaver.ILayer