3 using System.Reflection;
4 using System.Globalization;
8 namespace Tizen.NUI.Binding
10 internal class Vector2TypeConverter : TypeConverter
12 public override object ConvertFromInvariantString(string value)
16 string[] parts = value.Split(',');
17 if (parts.Length == 2 )
19 return new Vector2(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
20 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture));
24 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(Vector2)}");
28 internal class Vector3TypeConverter : TypeConverter
30 public override object ConvertFromInvariantString(string value)
34 string[] parts = value.Split(',');
35 if (parts.Length == 3 )
37 return new Vector3(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
38 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture),
39 Single.Parse(parts[2].Trim(), CultureInfo.InvariantCulture));
43 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(Vector3)}");
47 internal class Vector4TypeConverter : TypeConverter
49 public override object ConvertFromInvariantString(string value)
53 string[] parts = value.Split(',');
54 if (parts.Length == 4 )
56 return new Vector4(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
57 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture),
58 Single.Parse(parts[2].Trim(), CultureInfo.InvariantCulture),
59 Single.Parse(parts[3].Trim(), CultureInfo.InvariantCulture));
63 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(Vector4)}");
67 internal class RelativeVector2TypeConverter : TypeConverter
69 public override object ConvertFromInvariantString(string value)
73 string[] parts = value.Split(',');
74 if (parts.Length == 2 )
76 return new RelativeVector2(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
77 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture));
81 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(RelativeVector2)}");
85 internal class RelativeVector3TypeConverter : TypeConverter
87 public override object ConvertFromInvariantString(string value)
91 string[] parts = value.Split(',');
92 if (parts.Length == 3 )
94 return new RelativeVector3(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
95 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture),
96 Single.Parse(parts[2].Trim(), CultureInfo.InvariantCulture));
100 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(RelativeVector3)}");
104 internal class RelativeVector4TypeConverter : TypeConverter
106 public override object ConvertFromInvariantString(string value)
110 string[] parts = value.Split(',');
111 if (parts.Length == 4 )
113 return new RelativeVector4(Single.Parse(parts[0].Trim(), CultureInfo.InvariantCulture),
114 Single.Parse(parts[1].Trim(), CultureInfo.InvariantCulture),
115 Single.Parse(parts[2].Trim(), CultureInfo.InvariantCulture),
116 Single.Parse(parts[3].Trim(), CultureInfo.InvariantCulture));
120 throw new InvalidOperationException($"Cannot convert \"{value}\" into {typeof(RelativeVector4)}");