Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Replace() [6/6]

bool System.ComponentModel.MaskedTextProvider.Replace ( string input,
int startPosition,
int endPosition,
out int testPosition,
out MaskedTextResultHint resultHint )
inline

Definition at line 1189 of file MaskedTextProvider.cs.

1190 {
1191 if (input == null)
1192 {
1193 throw new ArgumentNullException("input");
1194 }
1196 {
1198 resultHint = MaskedTextResultHint.PositionOutOfRange;
1199 return false;
1200 }
1202 {
1204 resultHint = MaskedTextResultHint.PositionOutOfRange;
1205 return false;
1206 }
1207 if (input.Length == 0)
1208 {
1210 }
1212 {
1213 return false;
1214 }
1216 {
1219 {
1221 {
1224 return false;
1225 }
1227 {
1228 resultHint = MaskedTextResultHint.SideEffect;
1229 }
1230 }
1231 else if (testPosition > endPosition)
1232 {
1234 int position = testPosition + 1;
1235 int position2 = endPosition + 1;
1236 while (true)
1237 {
1239 position = FindEditPositionFrom(position, direction: true);
1240 if (position == -1)
1241 {
1243 resultHint = MaskedTextResultHint.UnavailableEditPosition;
1244 return false;
1245 }
1246 if (!TestChar(_testString[position2], position, out resultHint2))
1247 {
1248 testPosition = position;
1250 return false;
1251 }
1253 {
1255 }
1257 {
1258 break;
1259 }
1260 position2++;
1261 position++;
1262 }
1263 while (position > testPosition)
1264 {
1265 SetChar(_testString[position2], position);
1266 position2 = FindEditPositionFrom(position2 - 1, direction: false);
1267 position = FindEditPositionFrom(position - 1, direction: false);
1268 }
1269 }
1270 }
1272 return true;
1273 }
void SetString(string input, int testPosition)
bool RemoveAtInt(int startPosition, int endPosition, out int testPosition, out MaskedTextResultHint resultHint, bool testOnly)
bool TestString(string input, int position, out int testPosition, out MaskedTextResultHint resultHint)
bool TestChar(char input, int position, out MaskedTextResultHint resultHint)
int FindEditPositionFrom(int position, bool direction)

References System.ComponentModel.MaskedTextProvider._testString, System.ComponentModel.MaskedTextProvider.AssignedEditPositionCount, System.ComponentModel.MaskedTextProvider.FindEditPositionFrom(), System.input, System.ComponentModel.MaskedTextProvider.LastAssignedPosition, System.Text.StringBuilder.Length, System.ComponentModel.MaskedTextProvider.RemoveAt(), System.ComponentModel.MaskedTextProvider.RemoveAtInt(), System.ComponentModel.MaskedTextProvider.SetChar(), System.ComponentModel.MaskedTextProvider.SetString(), System.ComponentModel.MaskedTextProvider.TestChar(), and System.ComponentModel.MaskedTextProvider.TestString().