Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
XmlCharacterData.cs
Go to the documentation of this file.
2using System.Text;
4
5namespace System.Xml;
6
7public abstract class XmlCharacterData : XmlLinkedNode
8{
9 private string _data;
10
11 public override string? Value
12 {
13 get
14 {
15 return Data;
16 }
17 set
18 {
19 Data = value;
20 }
21 }
22
23 public override string InnerText
24 {
25 get
26 {
27 return Value;
28 }
29 set
30 {
31 Value = value;
32 }
33 }
34
35 public virtual string Data
36 {
37 get
38 {
39 if (_data != null)
40 {
41 return _data;
42 }
43 return string.Empty;
44 }
46 set
47 {
50 if (eventArgs != null)
51 {
53 }
54 _data = value;
55 if (eventArgs != null)
56 {
58 }
59 }
60 }
61
62 public virtual int Length
63 {
64 get
65 {
66 if (_data != null)
67 {
68 return _data.Length;
69 }
70 return 0;
71 }
72 }
73
74 protected internal XmlCharacterData(string? data, XmlDocument doc)
75 : base(doc)
76 {
77 _data = data;
78 }
79
80 public virtual string Substring(int offset, int count)
81 {
82 int num = ((_data != null) ? _data.Length : 0);
83 if (num > 0)
84 {
85 if (num < offset + count)
86 {
87 count = num - offset;
88 }
89 return _data.Substring(offset, count);
90 }
91 return string.Empty;
92 }
93
94 public virtual void AppendData(string? strData)
95 {
97 int num = ((_data != null) ? _data.Length : 0);
98 if (strData != null)
99 {
100 num += strData.Length;
101 }
102 string text = new StringBuilder(num).Append(_data).Append(strData).ToString();
104 if (eventArgs != null)
105 {
107 }
108 _data = text;
109 if (eventArgs != null)
110 {
112 }
113 }
114
115 public virtual void InsertData(int offset, string? strData)
116 {
118 int num = ((_data != null) ? _data.Length : 0);
119 if (strData != null)
120 {
121 num += strData.Length;
122 }
125 if (eventArgs != null)
126 {
128 }
129 _data = text;
130 if (eventArgs != null)
131 {
133 }
134 }
135
136 public virtual void DeleteData(int offset, int count)
137 {
138 int num = ((_data != null) ? _data.Length : 0);
139 if (num > 0 && num < offset + count)
140 {
141 count = Math.Max(num - offset, 0);
142 }
146 if (eventArgs != null)
147 {
149 }
150 _data = text;
151 if (eventArgs != null)
152 {
154 }
155 }
156
157 public virtual void ReplaceData(int offset, int count, string? strData)
158 {
159 int num = ((_data != null) ? _data.Length : 0);
160 if (num > 0 && num < offset + count)
161 {
162 count = Math.Max(num - offset, 0);
163 }
168 if (eventArgs != null)
169 {
171 }
172 _data = text;
173 if (eventArgs != null)
174 {
176 }
177 }
178
179 internal bool CheckOnData(string data)
180 {
181 return XmlCharType.IsOnlyWhitespace(data);
182 }
183
185 {
187 {
188 switch (xmlNode.NodeType)
189 {
190 case XmlNodeType.SignificantWhitespace:
191 xnt = XPathNodeType.SignificantWhitespace;
192 break;
193 case XmlNodeType.Text:
194 case XmlNodeType.CDATA:
195 xnt = XPathNodeType.Text;
196 return false;
197 case XmlNodeType.EntityReference:
199 {
200 return false;
201 }
202 break;
203 default:
204 return false;
205 case XmlNodeType.Whitespace:
206 break;
207 }
208 }
209 return true;
210 }
211}
static byte Max(byte val1, byte val2)
Definition Math.cs:738
unsafe StringBuilder Insert(int index, string? value, int count)
StringBuilder Remove(int startIndex, int length)
override string ToString()
StringBuilder Append(char value, int repeatCount)
static bool IsOnlyWhitespace(string str)
virtual void InsertData(int offset, string? strData)
virtual string Substring(int offset, int count)
virtual void DeleteData(int offset, int count)
virtual void AppendData(string? strData)
bool DecideXPNodeTypeForTextNodes(XmlNode node, ref XPathNodeType xnt)
XmlCharacterData(string? data, XmlDocument doc)
virtual void ReplaceData(int offset, int count, string? strData)
virtual XmlNodeChangedEventArgs GetEventArgs(XmlNode node, XmlNode oldParent, XmlNode newParent, string oldValue, string newValue, XmlNodeChangedAction action)
Definition XmlNode.cs:1239
virtual ? XmlNode ParentNode
Definition XmlNode.cs:76
virtual void AfterEvent(XmlNodeChangedEventArgs args)
Definition XmlNode.cs:1261
virtual void BeforeEvent(XmlNodeChangedEventArgs args)
Definition XmlNode.cs:1253
virtual ? XmlNode NextSibling
Definition XmlNode.cs:104