public void AttachBack(ViValueInherit kNode) { if (!kNode.IsAttach()) { _list.PushBack(kNode); } }
public void DetachAll(bool bUpdate) { _list.EndIterator(); _list.BeginIterator(); while (!_list.IsEnd()) { ViValueInherit pkInherit = _list.CurrentNode as ViValueInherit; _list.Next(); ViDebuger.AssertError(pkInherit); pkInherit.Detach(bUpdate); } }
public void OnUpdate(Int32 kOld, Int32 kNew) { _list.EndIterator(); _list.BeginIterator(); while (!_list.IsEnd()) { ViValueInherit pkInherit = _list.CurrentNode as ViValueInherit; _list.Next(); ViDebuger.AssertError(pkInherit); pkInherit.Update(kOld, kNew); } }
#pragma warning disable 0219 static void Test() { Int32 srcValue = 100; ViValueInheritList kList = new ViValueInheritList(); ViValueInherit kValueInherit = new ViValueInherit(); kValueInherit.Init(1.0f, srcValue, true); kList.AttachBack(kValueInherit); kList.OnUpdate(200, srcValue); srcValue = 200; kList.OnUpdate(300, srcValue); srcValue = 300; kValueInherit.Detach(true); }