protected virtual void CollapseChildChange(ChangeType change) { if (!ChangeTypeUtil.IsAddRemove(_changeThisInstance)) { if (((change & ChangeType.Added) != 0) || ((change & ChangeType.RemovedNonBreaking) != 0) || ((change & ChangeType.DeclarationChangedNonBreaking) != 0) || ((change & ChangeType.ValueChangedNonBreaking) != 0)) { _changeThisInstance |= ChangeType.DeclarationChangedNonBreaking; } if (((change & ChangeType.RemovedBreaking) != 0) || ((change & ChangeType.DeclarationChangedBreaking) != 0) || ((change & ChangeType.ValueChangedBreaking) != 0)) { _changeThisInstance |= ChangeType.DeclarationChangedBreaking; } if ((change & ChangeType.VisibilityChangedBreaking) != 0) { _changeThisInstance |= ChangeType.VisibilityChangedBreaking; } if ((change & ChangeType.VisibilityChangedNonBreaking) != 0) { if ((_changeThisInstance & ChangeType.VisibilityChangedBreaking) == 0) { _changeThisInstance |= ChangeType.VisibilityChangedNonBreaking; } } if ((change & ChangeType.ImplementationChanged) != 0) { _changeThisInstance |= ChangeType.ImplementationChanged; } } }
protected virtual void CalcInheritedChanges() { _changeAllChildren = ChangeType.None; if (ChangeTypeUtil.IsAddRemove(_changeThisInstance)) { _changeAllChildren = _changeThisInstance; return; } foreach (var child in _children.Cast <RootDetail>()) { child.CalcInheritedChanges(); if (child.Change != ChangeType.None) { ProcessChildChange(child, child.Change); } } }
protected virtual void CalcInheritedChanges() { _changeAllChildren = ChangeType.None; if (ChangeTypeUtil.IsAddRemove(_changeThisInstance)) { _changeAllChildren = _changeThisInstance; return; } foreach (RootDetail child in _children) { child.CalcInheritedChanges(); } for (int i = 0; i < _children.Count; i++) { ProcessChildChange(_children[i].GetType(), ((ICanCompare)_children[i]).Change); } }
public virtual void WriteHtmlDescription(TextWriter tw, bool appendAllDeclarations, bool appendChildren) { if (!this.ExcludeFromReport) { FilterStatus filterThisInstance; if (appendAllDeclarations) { filterThisInstance = GetStrongestFilterStatus(); if (this.CollapseChildren && filterThisInstance == FilterStatus.ExcludedButIncludeForChildren) { filterThisInstance = FilterStatus.Include; } } else { filterThisInstance = FilterStatus.Include; } if ((!appendChildren) || (filterThisInstance >= FilterStatus.DontCare)) { tw.Write("<p class='hdr'>"); RootDetail namedItem; if (appendAllDeclarations) { namedItem = FindItemWithStatusPresent(); } else { namedItem = this; } if ((namedItem == null) || (namedItem.Status == Status.Missing)) { tw.Write(this.Name); } else { tw.Write(HtmlUtility.HtmlEncode(namedItem.GetTextTitle())); } tw.Write("</p>"); RootDetail eachItem = this; while (eachItem != null) { eachItem.WriteHtmlDeclaration(tw); eachItem.WriteHtmlSummaryForChange(tw); eachItem = appendAllDeclarations ? (RootDetail)eachItem.NavigateForward : null; } } } if (appendChildren && !this.CollapseChildren && !ChangeTypeUtil.IsAddRemove(CombineAllChangesThisInstanceGoingForward())) { foreach (RootDetail child in FilterChildrenInAll <RootDetail>()) { // if ((child.FullNameRoot) || (child.GetStrongestFilterStatus() != FilterStatus.ExcludedButIncludeForChildren)) // Dont include public stuff inside internal classes for -publiconly { child.WriteHtmlDescription(tw, appendAllDeclarations, appendChildren); } } } }