public FinalAnimPoseControl(FinalAnimPoseConstructionParams csParam) : base(csParam) { InitConstruction(); NodeName = csParam.NodeName; IsOnlyReturnValue = true; AddLinkPinInfo("AnimPoseInHandle", mCtrlValueInputHandle, null); }
async System.Threading.Tasks.Task InitializeLinkedNodesContainer() { var param = CSParam as AnimStateControlConstructionParams; var assist = this.HostNodesContainer.HostControl as Macross.NodesControlAssist; if (mLinkedNodesContainer == null) { var data = new SubNodesContainerData() { ID = Id, Title = HostNodesContainer.TitleString + "/" + param.NodeName + ":" + this.Id.ToString(), }; mLinkedNodesContainer = await assist.GetSubNodesContainer(data); if (!data.IsCreated) { return; } } // 读取graph var tempFile = assist.HostControl.GetGraphFileName(assist.LinkedCategoryItemName); var linkXndHolder = await EngineNS.IO.XndHolder.LoadXND(tempFile, EngineNS.Thread.Async.EAsyncTarget.AsyncEditor); bool bLoaded = false; if (linkXndHolder != null) { var linkNode = linkXndHolder.Node.FindNode("SubLinks"); var idStr = Id.ToString(); foreach (var node in linkNode.GetNodes()) { if (node.GetName() == idStr) { await mLinkedNodesContainer.Load(node); bLoaded = true; break; } } } if (bLoaded) { } else { var csParam = new FinalAnimPoseConstructionParams() { CSType = param.CSType, NodeName = "FinalPose", HostNodesContainer = mLinkedNodesContainer, ConstructParam = "", }; var node = mLinkedNodesContainer.AddOrigionNode(typeof(FinalAnimPoseControl), csParam, 300, 0) as FinalAnimPoseControl; node.IsDeleteable = false; //var retCSParam = new CodeDomNode.ReturnCustom.ReturnCustomConstructParam() //{ // CSType = param.CSType, // HostNodesContainer = mLinkedNodesContainer, // ConstructParam = "", //}; //var retNode = mLinkedNodesContainer.AddOrigionNode(typeof(CodeDomNode.ReturnCustom), retCSParam, 300, 0) as CodeDomNode.ReturnCustom; //retNode.IsDeleteable = false; //retNode.ShowProperty = false; } mLinkedNodesContainer.HostNode = this; }