private void CheckValueSequenceRedirect(out int fieldsAffectedFromIndex) { fieldsAffectedFromIndex = -1; if (SequenceRedirectList.Count > 0 && !Sidelined) { bool redirected = false; for (int i = 0; i < SequenceRedirectList.Count; i++) { FtSequenceRedirect redirect = SequenceRedirectList[i]; if (redirect.Type != FtStandardSequenceRedirectType.Null) { if (redirect.CheckTriggered(this)) { OnSequenceRedirect(redirect.Sequence, redirect.InvokationDelay, out fieldsAffectedFromIndex); redirected = true; break; } } } if (!redirected) { // in case was previously redirected OnSequenceRedirect(null, IgnoredSequenceInvokationDelay, out fieldsAffectedFromIndex); } } }
internal FtSequenceRedirect New(int type) { FtSequenceRedirect redirect = SequenceRedirectFactory.CreateSequenceRedirect(Count, type); list.Add(redirect); return(redirect); }
internal protected void LoadMetaSequenceRedirects(FtMetaSequenceItem metaSequenceItem, FtMetaSequenceList metaSequenceList, FtSequenceList sequenceList) { for (int i = 0; i < metaSequenceItem.RedirectList.Count; i++) { int redirectType = metaSequenceItem.RedirectList[i].Type; FtSequenceRedirect redirect = redirectList.New(redirectType); redirect.LoadMeta(metaSequenceItem.RedirectList[i], metaSequenceList, sequenceList); } }