void observableCollection_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
        {
            switch (e.Action)
            {
            case System.Collections.Specialized.NotifyCollectionChangedAction.Add:
            {
                TraceLabSDK.PackageSystem.IPackageReference newItem = e.NewItems[0] as TraceLabSDK.PackageSystem.IPackageReference;
                AddChild(new CLVReferenceNode(newItem));
            }
            break;

            case System.Collections.Specialized.NotifyCollectionChangedAction.Move:
                break;

            case System.Collections.Specialized.NotifyCollectionChangedAction.Remove:
            {
                TraceLabSDK.PackageSystem.IPackageReference oldItem = e.OldItems[0] as TraceLabSDK.PackageSystem.IPackageReference;

                foreach (CLVReferenceNode node in this.AllChildren)
                {
                    if (node.ID == oldItem.ID)
                    {
                        RemoveChild(node);
                        break;
                    }
                }
            }
            break;

            case System.Collections.Specialized.NotifyCollectionChangedAction.Replace:
            {
                TraceLabSDK.PackageSystem.IPackageReference oldItem = e.OldItems[0] as TraceLabSDK.PackageSystem.IPackageReference;

                foreach (CLVReferenceNode node in this.AllChildren)
                {
                    if (node.ID == oldItem.ID)
                    {
                        RemoveChild(node);
                        break;
                    }
                }

                TraceLabSDK.PackageSystem.IPackageReference newItem = e.NewItems[0] as TraceLabSDK.PackageSystem.IPackageReference;
                AddChild(new CLVReferenceNode(newItem));
            }
            break;

            case System.Collections.Specialized.NotifyCollectionChangedAction.Reset:
                break;

            default:
                break;
            }
        }
 public CLVReferenceNode(TraceLabSDK.PackageSystem.IPackageReference reference)
 {
     m_reference = reference;
     Exists = TraceLab.Core.PackageSystem.PackageManager.Instance.Contains(reference);
 }
Example #3
0
 public CLVReferenceNode(TraceLabSDK.PackageSystem.IPackageReference reference)
 {
     m_reference = reference;
     Exists      = TraceLab.Core.PackageSystem.PackageManager.Instance.Contains(reference);
 }