2010-04-07 Jb Evain <jbevain@novell.com>
[mcs.git] / class / System.XML / System.Xml / XmlNodeChangedEventArgs.cs
blob954001614e38e128850d26abf732bfbfc2fd2d9f
2 //
3 // Permission is hereby granted, free of charge, to any person obtaining
4 // a copy of this software and associated documentation files (the
5 // "Software"), to deal in the Software without restriction, including
6 // without limitation the rights to use, copy, modify, merge, publish,
7 // distribute, sublicense, and/or sell copies of the Software, and to
8 // permit persons to whom the Software is furnished to do so, subject to
9 // the following conditions:
10 //
11 // The above copyright notice and this permission notice shall be
12 // included in all copies or substantial portions of the Software.
13 //
14 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 using System;
24 namespace System.Xml
26 /// <summary>
27 /// Passed to delegates on document tree changes
28 /// </summary>
29 #if NET_2_0
30 public class XmlNodeChangedEventArgs : EventArgs
31 #else
32 public class XmlNodeChangedEventArgs
33 #endif
35 // Private data members
36 XmlNode _oldParent;
37 XmlNode _newParent;
38 XmlNodeChangedAction _action;
39 XmlNode _node;
40 #if NET_2_0
41 string _oldValue;
42 string _newValue;
43 #endif
45 // public properties
46 public XmlNodeChangedAction Action
48 get
50 return _action;
54 public XmlNode Node
56 get
58 return _node;
63 public XmlNode OldParent
65 get
67 return _oldParent;
72 public XmlNode NewParent
74 get
76 return _newParent;
81 #if NET_2_0
82 public string OldValue
84 get
86 return _oldValue != null ? _oldValue : _node.Value;
91 public string NewValue
93 get
95 return _newValue != null ? _newValue : _node.Value;
98 #endif
100 #if NET_2_0
101 public
102 #else
103 internal
104 #endif
105 XmlNodeChangedEventArgs (
106 XmlNode node,
107 XmlNode oldParent,
108 XmlNode newParent,
109 string oldValue,
110 string newValue,
111 XmlNodeChangedAction action)
113 _node = node;
114 _oldParent = oldParent;
115 _newParent = newParent;
116 #if NET_2_0
117 _oldValue = oldValue;
118 _newValue = newValue;
119 #endif
120 _action = action;