private ProfileExplorerTreeItem(HeliosVisual visual, ProfileExplorerTreeItem parent, ProfileExplorerTreeItemType includeTypes) : this(visual.Name, "", parent, includeTypes) { if (visual.GetType() == typeof(Monitor)) { _itemType = ProfileExplorerTreeItemType.Monitor; } else if (visual.GetType() == typeof(HeliosPanel)) { _itemType = ProfileExplorerTreeItemType.Panel; } else { _itemType = ProfileExplorerTreeItemType.Visual; } _item = visual; AddChild(visual, includeTypes); foreach (HeliosVisual child in visual.Children) { if ((child is HeliosPanel && _includeTypes.HasFlag(ProfileExplorerTreeItemType.Panel)) || (child is HeliosVisual && _includeTypes.HasFlag(ProfileExplorerTreeItemType.Visual))) { Children.Add(new ProfileExplorerTreeItem(child, this, _includeTypes)); } } visual.Children.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(VisualChildren_CollectionChanged); }
private ProfileExplorerTreeItem(HeliosVisual visual, ProfileExplorerTreeItem parent, ProfileExplorerTreeItemType includeTypes) : this(visual.Name, "", parent, includeTypes) { if (visual.GetType() == typeof(Monitor)) { ItemType = ProfileExplorerTreeItemType.Monitor; } else if (visual.GetType() == typeof(HeliosPanel)) { ItemType = ProfileExplorerTreeItemType.Panel; } else { ItemType = ProfileExplorerTreeItemType.Visual; } ContextItem = visual; AddChild(visual, includeTypes); foreach (HeliosVisual child in visual.Children) { if ((child is HeliosPanel && _includeTypes.HasFlag(ProfileExplorerTreeItemType.Panel)) || (child != null && _includeTypes.HasFlag(ProfileExplorerTreeItemType.Visual))) { Children.Add(new ProfileExplorerTreeItem(child, this, _includeTypes)); } } visual.Children.CollectionChanged += VisualChildren_CollectionChanged; }