예제 #1
0
 // ============================================================
 // <T>存储数据信息到配置节点中。</T>
 //
 // @param xconfig 配置信息
 // ============================================================
 @Override
 public void saveConfig(FXmlNode xconfig) {
   super.saveConfig(xconfig);
   // 处理所有节点
   if (hasRenderable()) {
     FXmlNode xrenderables = xconfig.createNode("RenderableCollection");
     for (FResRenderable renderable : _renderables) {
       renderable.saveConfig(xrenderables.createNode("Renderable"));
     }
   }
 }
예제 #2
0
 // ============================================================
 // <T>从配置节点中合并数据信息。</T>
 //
 // @param xconfig 配置信息
 // ============================================================
 @Override
 public void mergeConfig(FXmlNode xconfig) {
   super.mergeConfig(xconfig);
   // 处理所有节点
   FXmlNode xrenderables = xconfig.findNode("RenderableCollection");
   if (xrenderables != null) {
     for (FXmlNode xrenderable : xrenderables) {
       String guid = xrenderable.get("guid");
       FResRenderable renderable = findRenderableByGuid(guid);
       renderable.mergeConfig(xrenderable);
     }
   }
 }
예제 #3
0
 // ============================================================
 // <T>从配置节点中加载数据信息。</T>
 //
 // @param xconfig 配置信息
 // ============================================================
 @Override
 public void loadConfig(FXmlNode xconfig) {
   super.loadConfig(xconfig);
   // 处理所有节点
   FXmlNode xrenderables = xconfig.findNode("RenderableCollection");
   if (xrenderables != null) {
     for (FXmlNode xrenderable : xrenderables) {
       FResRenderable renderable = (FResRenderable) createChild(xrenderable);
       renderable.loadConfig(xrenderable);
       pushRenderable(renderable);
     }
   }
 }
예제 #4
0
 // ============================================================
 // <T>序列化数据到输出流。</T>
 //
 // @param output 输出流
 // ============================================================
 @Override
 public void serialize(IDataOutput output) {
   super.serialize(output);
   // 输出渲染集合
   if (hasRenderable()) {
     int count = _renderables.count();
     output.writeUint16(count);
     for (FResRenderable renderable : _renderables) {
       renderable.serialize(output);
     }
   } else {
     output.writeUint16(0);
   }
 }