public override async System.Threading.Tasks.Task Load(XndNode xndNode) { await base.Load(xndNode); var att = xndNode.FindAttrib("DefaultParamValue"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { att.ReadMetaObject(mTemplateClassInstance); } break; case 1: { CodeGenerateSystem.Base.PropertyClassGenerator.LoadClassInstanceProperties(mTemplateClassInstance, att); } break; } att.EndRead(); } var classType = mTemplateClassInstance.GetType(); var property = classType.GetProperty("Color"); EngineNS.Color color = (EngineNS.Color)property.GetValue(mTemplateClassInstance); ColorBrush = new SolidColorBrush(Color.FromArgb(color.A, color.R, color.G, color.B)); }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { await base.Load(xndNode); var att = xndNode.FindAttrib("DefaultParamValue"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { int count = 0; att.Read(out count); for (int i = 0; i < count; i++) { GradientData obj = new GradientData();; att.ReadMetaObject(obj); GradientDatas.Add(obj); } SetGradientDatas(GradientDatas); } break; } att.EndRead(); } }
protected override void LoadLink(XndNode xndNode) { mIsLoadingLinks = true; mLinkPairs.Clear(); var att = xndNode.FindAttrib("TransitionLinks"); att.BeginRead(); switch (att.Version) { case 0: { int count = 0; att.Read(out count); for (int i = 0; i < count; i++) { var pair = new LinkPair(); att.Read(out pair.LoadedLinkFrom); att.Read(out pair.LoadedLinkTo); mLinkPairs.Add(pair); } } break; } att.EndRead(); mIsLoadingLinks = false; }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { try { await base.Load(xndNode); var att = xndNode.FindAttrib("defaultParam"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { att.ReadMetaObject(mTemplateClassInstance_All); var allType = mTemplateClassInstance_All.GetType(); foreach (var pro in mTemplateClassInstance_Show.GetType().GetProperties()) { var allPro = allType.GetProperty(pro.Name); pro.SetValue(mTemplateClassInstance_Show, allPro.GetValue(mTemplateClassInstance_All)); } } break; case 1: { CodeGenerateSystem.Base.PropertyClassGenerator.LoadClassInstanceProperties(mTemplateClassInstance_All, att); var allType = mTemplateClassInstance_All.GetType(); foreach (var pro in mTemplateClassInstance_Show.GetType().GetProperties()) { var allPro = allType.GetProperty(pro.Name); pro.SetValue(mTemplateClassInstance_Show, allPro.GetValue(mTemplateClassInstance_All)); } } break; } att.EndRead(); } foreach (var child in mChildNodes) { var childParam = child.CSParam as ExpandNodeChild.ExpandNodeChildConstructionParams; foreach (var cb in StackPanel_Members.Children) { var cbTemp = cb as CheckBox; if (((string)cbTemp.Content) == childParam.ParamName) { cbTemp.Tag = child; } } } } catch (System.Exception e) { HasError = true; ErrorDescription = "节点读取失败!"; System.Diagnostics.Debug.WriteLine($"节点读取失败!:Name=展开 {NodeName}\r\n{e.ToString()}"); } }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { await base.Load(xndNode); var att = xndNode.FindAttrib("loopData"); att.BeginRead(); att.Read(out mCountDefaultValue); att.EndRead(); }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { var att = xndNode.FindAttrib("Data"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { att.ReadMetaObject(mTemplateClassInstance); Int32 count; att.Read(out count); for (int i = 0; i < count; i++) { var bPt = att.ReadMetaObject() as EngineNS.BezierPointBase; var pt = new EditorCommon.Controls.LineXBezierControl.BezierPoint(LineXBezierCtrl); pt.Position = bPt.Position; pt.ControlPoint = bPt.ControlPoint; mBezierPoints.Add(pt); } att.Read(out mBezierWidth); att.Read(out mBezierHeight); } break; case 1: { CodeGenerateSystem.Base.PropertyClassGenerator.LoadClassInstanceProperties(mTemplateClassInstance, att); Int32 count; att.Read(out count); for (int i = 0; i < count; i++) { var bPt = att.ReadMetaObject() as EngineNS.BezierPointBase; var pt = new EditorCommon.Controls.LineXBezierControl.BezierPoint(LineXBezierCtrl); pt.Position = bPt.Position; pt.ControlPoint = bPt.ControlPoint; mBezierPoints.Add(pt); } att.Read(out mBezierWidth); att.Read(out mBezierHeight); } break; } att.EndRead(); } await base.Load(xndNode); SetBezierPointsToCtrl(); foreach (var pt in mBezierPoints) { ((EditorCommon.Controls.LineXBezierControl.BezierPoint)pt).CalculateOpposite(); } }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { try { await base.Load(xndNode); var att = xndNode.FindAttrib("defaultParam"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { Byte result; att.Read(out result); if (result == 1) { att.ReadMetaObject(mTemplateClassInstance); } } break; case 1: { Byte result; att.Read(out result); if (result == 1) { CodeGenerateSystem.Base.PropertyClassGenerator.LoadClassInstanceProperties(mTemplateClassInstance, att); } } break; } att.EndRead(); } foreach (var child in mChildNodes) { var childParameterCtrl = child as MethodInvokeParameterControl; if (childParameterCtrl != null) { childParameterCtrl.OnUpdateParamTypeAction = OnUpdateChildParamType; } } } catch (System.Exception e) { HasError = true; ErrorDescription = e.ToString(); } InitTemplateClass_WPF(null); }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { var att = xndNode.FindAttrib("MtlMacros"); if (att != null) { att.BeginRead(); att.ReadMetaObject(mMtlMacros); att.EndRead(); this.IsDirty = false; } await base.Load(xndNode); }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { var att = xndNode.FindAttrib("_shaderVar"); if (att != null) { switch (att.Version) { case 0: { att.BeginRead(); att.ReadMetaObject(ShaderVarInfo); att.EndRead(); } break; } } await base.Load(xndNode); }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { await base.Load(xndNode); var att = xndNode.FindAttrib("Data"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: { att.Read(out mTargetTypeName); } break; } att.EndRead(); } }
public override async System.Threading.Tasks.Task Load(XndNode xndNode) { var att = xndNode.FindAttrib("coData"); if (att != null) { att.BeginRead(); switch (att.Version) { case 0: if (mTemplateClassInstance != null) { att.ReadMetaObject(mTemplateClassInstance); } break; case 1: CodeGenerateSystem.Base.PropertyClassGenerator.LoadClassInstanceProperties(mTemplateClassInstance, att); break; } att.EndRead(); } await base.Load(xndNode); }
public static async System.Threading.Tasks.Task <bool> LoadData(string name, XndNode xndNode, StructNodeControlConstructionParams csparam, IParticleNode pnode, CodeGenerateSystem.Controls.NodesContainerControl mLinkedNodesContainer) { if (mLinkedNodesContainer != null) { var att = xndNode.FindAttrib(name); if (att != null) { List <string> keys = new List <string>(); switch (att.Version) { case 0: { att.BeginRead(); int count = 0; att.Read(out count); if (count != 0) { Macross.NodesControlAssist NodesControlAssist; MacrossPanelBase MacrossOpPanel; IMacrossOperationContainer NodesControlAssist_HostControl; NodesControlAssist = mLinkedNodesContainer.HostControl as Macross.NodesControlAssist; MacrossOpPanel = NodesControlAssist.HostControl.MacrossOpPanel; NodesControlAssist_HostControl = NodesControlAssist.HostControl; csparam.CategoryDic = new Dictionary <string, Category>(); for (int i = 0; i < count; i++) { string key; int itemcount; att.Read(out key); keys.Add(key); att.Read(out itemcount); csparam.CategoryDic[key] = new Category(MacrossOpPanel); //var category = csparam.CategoryDic[key]; //for (int j = 0; j < itemcount; j++) //{ // category.Items.Add(new CategoryItem(null, category)); // //category.Items[j].Load(xndNode, NodesControlAssist_HostControl); //} } //此刻已经读完 att.EndRead(); for (int i = 0; i < keys.Count; i++) { var Node = xndNode.FindNode(keys[i]); var category = csparam.CategoryDic[keys[i]]; var childNodes = Node.GetNodes(); foreach (var childNode in childNodes) { var item = new CategoryItem(null, category); item.Load(childNode, NodesControlAssist_HostControl); category.Items.Add(item); } } } } break; } //att.EndRead(); } } if (pnode.GetCreateObject() != null) { var childenode = xndNode.FindNode("CreateObjectNode"); await pnode.GetCreateObject().Load(childenode); } return(false); }
//EngineNS.Thread.Async.TaskLoader.WaitContext WaitContext = new EngineNS.Thread.Async.TaskLoader.WaitContext(); //async System.Threading.Tasks.Task<EngineNS.Thread.Async.TaskLoader.WaitContext> AwaitLoad() //{ // return await EngineNS.Thread.Async.TaskLoader.Awaitload(WaitContext); //} public override async System.Threading.Tasks.Task Load(XndNode xndNode) { //await AwaitLoad(); await ParticleDataSaveLoad.LoadData("ParticleMaterialInstanceNode", xndNode, CSParam as ParticleMaterialInstanceControlConstructionParams, this, mLinkedNodesContainer); await base.Load(xndNode); InitValueDatas = new List <MaterialInstanceEditProperty>(); var attr = xndNode.FindAttrib("MaterialInstance_control"); attr.BeginRead(); if (attr.Version == 0) { int count; attr.Read(out count); for (int i = 0; i < count; i++) { var showvalue = new MaterialInstanceEditProperty(); RName materialname; attr.Read(out materialname); showvalue.MaterialInstanceName = materialname; int varcount; attr.Read(out varcount); //foreach (var varvalue in showvalue.VarRNameValues) for (int varn = 0; varn < varcount; varn++) { int key; string typefullname; attr.Read(out key); attr.Read(out typefullname); { if (typefullname.Equals(typeof(float).FullName)) { float value; attr.Read(out value); //elem.VarObject.mMaterialInstance.SetVarValue(elem.VarObject.Index, 0, ref value); showvalue.VarRNameValues.Add(key, value); } else if (typefullname.Equals(typeof(Vector2).FullName)) { Vector2 value; attr.Read(out value); showvalue.VarRNameValues.Add(key, value); } else if (typefullname.Equals(typeof(Vector3).FullName)) { Vector3 value; attr.Read(out value); showvalue.VarRNameValues.Add(key, value); } else if (typefullname.Equals(typeof(Vector4).FullName)) { Vector4 value; attr.Read(out value); showvalue.VarRNameValues.Add(key, value); } else if (typefullname.Equals(typeof(EngineNS.Color).FullName)) { Vector4 value; attr.Read(out value); showvalue.VarRNameValues.Add(key, value); } } } int srvcount; attr.Read(out srvcount); //foreach (var srvvalue in showvalue.SRVRNameValues) for (int srvn = 0; srvn < srvcount; srvn++) { string key; RName rname; attr.Read(out key); attr.Read(out rname); showvalue.SRVRNameValues.Add(key, rname); } InitValueDatas.Add(showvalue); } attr.EndRead(); } if (InitValueDatas.Count > 0) { ShowValues = InitValueDatas; } }