public class EnvironmentDataDescriptor extends DefaultDataDescriptor
{
private var logger:org.as3commons.logging.ILogger=LoggerFactory.getClassLogger(EnvironmentDataDescriptor);
public function EnvironmentDataDescriptor()
{
super();
}
override public function getChildren(node:Object, model:Object=null):ICollectionView{
if(node==null)
return null;
//logger.debug("getChildren:"+node.toString());
if(!(node is IEnvTreeBase))
throw new Error("EnvironmentDataDescriptor:getChildren error");
if(node is EnvironmentGroupVO){
return (node as EnvironmentGroupVO).envSet;
}else if(node is EnvironmentVO){
return (node as EnvironmentVO).portfolioSet;
}else if(node is PortfolioVO){
return (node as PortfolioVO).tradeSet;
}else{
return null;
}
}
override public function hasChildren(node:Object, model:Object=null):Boolean{
if(node==null)
return false;
if(!(node is IEnvTreeBase))
throw new Error("EnvironmentDataDescriptor:hasChildren error");
if(node is EnvironmentGroupVO){
return (node as EnvironmentGroupVO).envSet != null;
}else if(node is EnvironmentVO){
return (node as EnvironmentVO).portfolioSet!=null&&(node as EnvironmentVO).portfolioSet.length>0;
}else if(node is PortfolioVO){
return (node as PortfolioVO).tradeSet!=null&&(node as PortfolioVO).tradeSet.length>0;
}else{
return false;
}
}
override public function isBranch(node:Object, model:Object=null):Boolean{
return hasChildren(node,model);
}
override public function getData(node:Object, model:Object=null):Object{
if(node==null)
return null;
//logger.debug("getData:"+node.toString());
if(!(node is IEnvTreeBase))
throw new Error("EnvironmentDataDescriptor:getData error");
if(node is EnvironmentGroupVO){
return node;
}else if(node is EnvironmentVO){
return node;
}else if(node is PortfolioVO){
return node;
}else if(node is Trade4TreeVO){
return node;
}else{
return null;
}
}
}
}
自定义flex tree的DataDescriptor
最新推荐文章于 2024-01-29 11:49:29 发布
本文介绍了一个名为EnvironmentDataDescriptor的类,该类继承自DefaultDataDescriptor,并实现了获取节点的子项、判断节点是否有子项、判断节点是否为分支节点及获取节点数据的方法。通过这些方法可以实现对不同类型的节点进行数据操作。

1345

被折叠的 条评论
为什么被折叠?



