ecb09c0aad1a5c9335c007e90d5e47011af64207
[mono.git] / mcs / class / referencesource / System.Activities.Presentation / System.Activities.Presentation / System / Activities / Presentation / Model / ModelChangedEventArgsImpl.cs
1 //-----------------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation.  All rights reserved.
3 //-----------------------------------------------------------------------------
4
5 namespace System.Activities.Presentation.Model
6 {
7     using System.Collections.Generic;
8     using System.Activities.Presentation.Services;
9
10     // Implementation of ModelChangedEventArgs used by the ModelServiceImpl
11
12     class ModelChangedEventArgsImpl : ModelChangedEventArgs
13     {
14         List<ModelItem> itemsAdded;
15         List<ModelItem> itemsRemoved;
16         List<ModelProperty> propertiesChanged;
17         ModelChangeInfo modelChangeInfo;
18
19         public ModelChangedEventArgsImpl(List<ModelItem> itemsAdded, List<ModelItem> itemsRemoved, List<ModelProperty> propertiesChanged)
20             : this(itemsAdded, itemsRemoved, propertiesChanged, null)
21         {
22         }
23
24         public ModelChangedEventArgsImpl(List<ModelItem> itemsAdded, List<ModelItem> itemsRemoved, List<ModelProperty> propertiesChanged, ModelChangeInfo modelChangeInfo)
25         {
26             this.itemsAdded = itemsAdded;
27             this.itemsRemoved = itemsRemoved;
28             this.propertiesChanged = propertiesChanged;
29             this.modelChangeInfo = modelChangeInfo;
30         }
31
32         [Obsolete("Don't use this property. Use \"ModelChangeInfo\" instead.")]
33         public override IEnumerable<ModelItem> ItemsAdded
34         {
35             get
36             {
37                 return itemsAdded;
38             }
39         }
40
41         [Obsolete("Don't use this property. Use \"ModelChangeInfo\" instead.")]
42         public override IEnumerable<ModelItem> ItemsRemoved
43         {
44             get
45             {
46                 return itemsRemoved;
47             }
48         }
49
50         [Obsolete("Don't use this property. Use \"ModelChangeInfo\" instead.")]
51         public override IEnumerable<ModelProperty> PropertiesChanged
52         {
53             get
54             {
55                 return propertiesChanged;
56             }
57         }
58
59         public override ModelChangeInfo ModelChangeInfo
60         {
61             get
62             {
63                 return this.modelChangeInfo;
64             }
65         }
66     }
67 }