Sync upstream
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / PropertyValue.cs
1 /*
2  * Copyright(c) 2019 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 using System.ComponentModel;
19
20 namespace Tizen.NUI
21 {
22     /// <summary>
23     /// A value-type representing a property value.
24     /// </summary>
25     /// <since_tizen> 3 </since_tizen>
26     public class PropertyValue : Disposable
27     {
28
29         /// <summary>
30         /// Creates a Size2D property value.
31         /// </summary>
32         /// <param name="vectorValue">Size2D values.</param>
33         /// <since_tizen> 3 </since_tizen>
34         public PropertyValue(Size2D vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_4(Size2D.getCPtr(vectorValue)), true)
35         {
36             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
37         }
38
39         /// <summary>
40         /// Creates a Position2D property value.
41         /// </summary>
42         /// <param name="vectorValue">Position2D values.</param>
43         /// <since_tizen> 3 </since_tizen>
44         public PropertyValue(Position2D vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_4(Position2D.getCPtr(vectorValue)), true)
45         {
46             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
47         }
48
49         /// <summary>
50         /// Creates a Position property value.
51         /// </summary>
52         /// <param name="vectorValue">Position values.</param>
53         /// <since_tizen> 3 </since_tizen>
54         public PropertyValue(Position vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_5(Position.getCPtr(vectorValue)), true)
55         {
56             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
57         }
58
59         /// <summary>
60         /// Creates a Color property value.
61         /// </summary>
62         /// <param name="vectorValue">Color values.</param>
63         /// <since_tizen> 3 </since_tizen>
64         public PropertyValue(Color vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_6(Color.getCPtr(vectorValue)), true)
65         {
66             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
67         }
68
69         /// <summary>
70         /// The default constructor.
71         /// </summary>
72         /// <since_tizen> 3 </since_tizen>
73         public PropertyValue() : this(Interop.PropertyValue.new_Property_Value__SWIG_0(), true)
74         {
75             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
76         }
77
78         /// <summary>
79         /// Creates a boolean property value.
80         /// </summary>
81         /// <param name="boolValue">A boolean value.</param>
82         /// <since_tizen> 3 </since_tizen>
83         public PropertyValue(bool boolValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_1(boolValue), true)
84         {
85             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
86         }
87
88         /// <summary>
89         /// Creates an integer property value.
90         /// </summary>
91         /// <param name="integerValue">An integer value.</param>
92         /// <since_tizen> 3 </since_tizen>
93         public PropertyValue(int integerValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_2(integerValue), true)
94         {
95             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
96         }
97
98         /// <summary>
99         /// Creates a float property value.
100         /// </summary>
101         /// <param name="floatValue">A floating-point value.</param>
102         /// <since_tizen> 3 </since_tizen>
103         public PropertyValue(float floatValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_3(floatValue), true)
104         {
105             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
106         }
107
108         /// <summary>
109         /// Creates a Vector2 property value.
110         /// </summary>
111         /// <param name="vectorValue">A vector of 2 floating-point values.</param>
112         /// <since_tizen> 3 </since_tizen>
113         public PropertyValue(Vector2 vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_4(Vector2.getCPtr(vectorValue)), true)
114         {
115             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
116         }
117
118         /// <summary>
119         /// Creates a Vector3 property value.
120         /// </summary>
121         /// <param name="vectorValue">A vector of 3 floating-point values.</param>
122         /// <since_tizen> 3 </since_tizen>
123         public PropertyValue(Vector3 vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_5(Vector3.getCPtr(vectorValue)), true)
124         {
125             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
126         }
127
128         /// <summary>
129         /// Creates a Vector4 property value.
130         /// </summary>
131         /// <param name="vectorValue">A vector of 4 floating-point values.</param>
132         /// <since_tizen> 3 </since_tizen>
133         public PropertyValue(Vector4 vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_6(Vector4.getCPtr(vectorValue)), true)
134         {
135             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
136         }
137
138         /// <summary>
139         /// Creates a Rectangle property value.
140         /// </summary>
141         /// <param name="vectorValue">Rectangle values.</param>
142         /// <since_tizen> 3 </since_tizen>
143         public PropertyValue(Rectangle vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_9(Rectangle.getCPtr(vectorValue)), true)
144         {
145             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
146         }
147
148         /// <summary>
149         /// Creates a Rotation property value.
150         /// </summary>
151         /// <param name="quaternion">Rotation values.</param>
152         /// <since_tizen> 3 </since_tizen>
153         public PropertyValue(Rotation quaternion) : this(Interop.PropertyValue.new_Property_Value__SWIG_11(Rotation.getCPtr(quaternion)), true)
154         {
155             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
156         }
157
158         /// <summary>
159         /// Creates a string property value.
160         /// </summary>
161         /// <param name="stringValue">A string.</param>
162         /// <since_tizen> 3 </since_tizen>
163         public PropertyValue(string stringValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_12(stringValue), true)
164         {
165             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
166         }
167
168         /// <summary>
169         /// Creates an array property value.
170         /// </summary>
171         /// <param name="arrayValue">An array.</param>
172         /// <since_tizen> 3 </since_tizen>
173         public PropertyValue(PropertyArray arrayValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_14(PropertyArray.getCPtr(arrayValue)), true)
174         {
175             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
176         }
177
178         /// <summary>
179         /// Creates a map property value.
180         /// </summary>
181         /// <param name="mapValue">An array.</param>
182         /// <since_tizen> 3 </since_tizen>
183         public PropertyValue(PropertyMap mapValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_15(PropertyMap.getCPtr(mapValue)), true)
184         {
185             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
186         }
187
188         /// <summary>
189         /// Creates a Extents value.
190         /// </summary>
191         /// <param name="extentsValue">A Extents value.</param>
192         /// <since_tizen> 4 </since_tizen>
193         public PropertyValue(Extents extentsValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_16(Extents.getCPtr(extentsValue)), true)
194         {
195             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
196         }
197
198         /// <summary>
199         /// Creates a PropertyType value.
200         /// </summary>
201         /// <param name="type">A PropertyType value.</param>
202         /// <since_tizen> 3 </since_tizen>
203         public PropertyValue(PropertyType type) : this(Interop.PropertyValue.new_Property_Value__SWIG_17((int)type), true)
204         {
205             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
206         }
207
208         /// <summary>
209         /// Creates a PropertyValue value.
210         /// </summary>
211         /// <param name="value">A PropertyValue value.</param>
212         /// <since_tizen> 3 </since_tizen>
213         public PropertyValue(PropertyValue value) : this(Interop.PropertyValue.new_Property_Value__SWIG_18(PropertyValue.getCPtr(value)), true)
214         {
215             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
216         }
217
218         /// <summary>
219         /// Creates a Size property value.
220         /// </summary>
221         /// <param name="vectorValue">Size values.</param>
222         internal PropertyValue(Size vectorValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_5(Size.getCPtr(vectorValue)), true)
223         {
224             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
225         }
226
227         internal PropertyValue(global::System.IntPtr cPtr, bool cMemoryOwn) : base(cPtr, cMemoryOwn)
228         {
229         }
230
231         internal PropertyValue(Matrix3 matrixValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_7(Matrix3.getCPtr(matrixValue)), true)
232         {
233             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
234         }
235
236         internal PropertyValue(Matrix matrixValue) : this(Interop.PropertyValue.new_Property_Value__SWIG_8(Matrix.getCPtr(matrixValue)), true)
237         {
238             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
239         }
240
241         internal PropertyValue(AngleAxis angleAxis) : this(Interop.PropertyValue.new_Property_Value__SWIG_10(AngleAxis.getCPtr(angleAxis)), true)
242         {
243             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
244         }
245
246         /// <summary>
247         /// An extension to the property value class that allows us to create a
248         /// Property value from a C# object, for example, integer, float, or string.<br />
249         /// </summary>
250         /// <param name="obj">An object to create.</param>
251         /// <returns>The created value.</returns>
252         /// <since_tizen> 3 </since_tizen>
253         static public PropertyValue CreateFromObject(System.Object obj)
254         {
255             System.Type type = obj.GetType();
256
257             PropertyValue value;
258             if (type.IsEnum)
259             {
260                 value = new PropertyValue((int)obj);//Enum.Parse(type, str);
261             }
262             else if (type.Equals(typeof(int)))
263             {
264                 value = new PropertyValue((int)obj);
265             }
266             else if (type.Equals(typeof(System.Int32)))
267             {
268                 value = new PropertyValue((int)obj);
269             }
270             else if (type.Equals(typeof(bool)))
271             {
272                 value = new PropertyValue((bool)obj);
273             }
274             else if (type.Equals(typeof(float)))
275             {
276                 value = new PropertyValue((float)obj);
277             }
278             else if (type.Equals(typeof(string)))
279             {
280                 value = new PropertyValue((string)obj);
281             }
282             else if (type.Equals(typeof(Vector2)))
283             {
284                 value = new PropertyValue((Vector2)obj);
285             }
286             else if (type.Equals(typeof(Vector3)))
287             {
288                 value = new PropertyValue((Vector3)obj);
289             }
290             else if (type.Equals(typeof(Vector4)))
291             {
292                 value = new PropertyValue((Vector4)obj);
293             }
294             else if (type.Equals(typeof(Position)))
295             {
296                 value = new PropertyValue((Position)obj);
297             }
298             else if (type.Equals(typeof(Position2D)))
299             {
300                 value = new PropertyValue((Position2D)obj);
301             }
302             else if (type.Equals(typeof(Size)))
303             {
304                 value = new PropertyValue((Size)obj);
305             }
306             else if (type.Equals(typeof(Size2D)))
307             {
308                 value = new PropertyValue((Size2D)obj);
309             }
310             else if (type.Equals(typeof(Color)))
311             {
312                 value = new PropertyValue((Color)obj);
313             }
314             else if (type.Equals(typeof(Rotation)))
315             {
316                 value = new PropertyValue((Rotation)obj);
317             }
318             else if (type.Equals(typeof(RelativeVector2)))
319             {
320                 value = new PropertyValue((RelativeVector2)obj);
321             }
322             else if (type.Equals(typeof(RelativeVector3)))
323             {
324                 value = new PropertyValue((RelativeVector3)obj);
325             }
326             else if (type.Equals(typeof(RelativeVector4)))
327             {
328                 value = new PropertyValue((RelativeVector4)obj);
329             }
330             else if (type.Equals(typeof(Extents)))
331             {
332                 value = new PropertyValue((Extents)obj);
333             }
334             else if (type.Equals(typeof(Rectangle)))
335             {
336                 value = new PropertyValue((Rectangle)obj);
337             }
338             else
339             {
340                 throw new global::System.InvalidOperationException("Unimplemented type for Property Value :" + type.Name);
341             }
342             //NUILog.Debug(" got an property value of =" + type.Name);
343             return value;
344         }
345
346         /// <summary>
347         /// Retrieves a Size2D value.
348         /// </summary>
349         /// <param name="vectorValue"> On return, a Size2D value.</param>
350         /// <since_tizen> 3 </since_tizen>
351         public bool Get(Size2D vectorValue)
352         {
353             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_5(swigCPtr, Size2D.getCPtr(vectorValue));
354             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
355             return ret;
356         }
357
358         /// <summary>
359         /// Retrieves a Position2D value.
360         /// </summary>
361         /// <param name="vectorValue"> On return, a Position2D value.</param>
362         /// <since_tizen> 3 </since_tizen>
363         public bool Get(Position2D vectorValue)
364         {
365             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_5(swigCPtr, Position2D.getCPtr(vectorValue));
366             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
367             return ret;
368         }
369
370         /// <summary>
371         /// Retrieves a Size value.
372         /// </summary>
373         /// <param name="vectorValue"> On return, a size value.</param>
374         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
375         [EditorBrowsable(EditorBrowsableState.Never)]
376         public bool Get(Size vectorValue)
377         {
378             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_6(swigCPtr, Size.getCPtr(vectorValue));
379             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
380             return ret;
381         }
382
383         /// <summary>
384         /// Retrieves a Position value.
385         /// </summary>
386         /// <param name="vectorValue"> On return, a position value.</param>
387         /// <since_tizen> 3 </since_tizen>
388         public bool Get(Position vectorValue)
389         {
390             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_6(swigCPtr, Position.getCPtr(vectorValue));
391             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
392             return ret;
393         }
394
395         /// <summary>
396         /// Retrieves a Color value.
397         /// </summary>
398         /// <param name="vectorValue"> On return, a color value.</param>
399         /// <since_tizen> 3 </since_tizen>
400         public bool Get(Color vectorValue)
401         {
402             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_7(swigCPtr, Color.getCPtr(vectorValue));
403             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
404             return ret;
405         }
406
407         /// <summary>
408         /// Queries the type of this property value.
409         /// </summary>
410         /// <returns>The type ID</returns>
411         /// <since_tizen> 3 </since_tizen>
412         public new PropertyType GetType()
413         {
414             PropertyType ret = (PropertyType)Interop.PropertyValue.Property_Value_GetType(swigCPtr);
415             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
416             return ret;
417         }
418
419         /// <summary>
420         /// Retrieves a boolean value.
421         /// </summary>
422         /// <param name="boolValue">On return, a boolean value.</param>
423         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
424         /// <since_tizen> 3 </since_tizen>
425         public bool Get(out bool boolValue)
426         {
427             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_1(swigCPtr, out boolValue);
428             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
429             return ret;
430         }
431
432         /// <summary>
433         /// Retrieves a floating-point value.
434         /// </summary>
435         /// <param name="floatValue">On return, a floating-point value.</param>
436         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
437         /// <since_tizen> 3 </since_tizen>
438         public bool Get(out float floatValue)
439         {
440             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_2(swigCPtr, out floatValue);
441             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
442             return ret;
443         }
444
445         /// <summary>
446         /// Retrieves an integer value.
447         /// </summary>
448         /// <param name="integerValue">On return, an integer value.</param>
449         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
450         /// <since_tizen> 3 </since_tizen>
451         public bool Get(out int integerValue)
452         {
453             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_3(swigCPtr, out integerValue);
454             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
455             return ret;
456         }
457
458         /// <summary>
459         /// Retrieves an integer rectangle.
460         /// </summary>
461         /// <param name="rect">On return, an integer rectangle.</param>
462         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
463         /// <since_tizen> 3 </since_tizen>
464         public bool Get(Rectangle rect)
465         {
466             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_4(swigCPtr, Rectangle.getCPtr(rect));
467             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
468             return ret;
469         }
470
471         /// <summary>
472         /// Retrieves a vector value.
473         /// </summary>
474         /// <param name="vectorValue">On return, a vector value.</param>
475         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
476         /// <since_tizen> 3 </since_tizen>
477         public bool Get(Vector2 vectorValue)
478         {
479             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_5(swigCPtr, Vector2.getCPtr(vectorValue));
480             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
481             return ret;
482         }
483
484         /// <summary>
485         /// Retrieves a vector value.
486         /// </summary>
487         /// <param name="vectorValue">On return, a vector value.</param>
488         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
489         /// <since_tizen> 3 </since_tizen>
490         public bool Get(Vector3 vectorValue)
491         {
492             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_6(swigCPtr, Vector3.getCPtr(vectorValue));
493             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
494             return ret;
495         }
496
497         /// <summary>
498         /// Retrieves a vector value.
499         /// </summary>
500         /// <param name="vectorValue">On return, a vector value.</param>
501         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
502         /// <since_tizen> 3 </since_tizen>
503         public bool Get(Vector4 vectorValue)
504         {
505             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_7(swigCPtr, Vector4.getCPtr(vectorValue));
506             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
507             return ret;
508         }
509
510         /// <summary>
511         /// Retrieves a vector value.
512         /// </summary>
513         /// <param name="vectorValue">On return, a vector value.</param>
514         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
515         /// <since_tizen> 5 </since_tizen>
516         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
517         [EditorBrowsable(EditorBrowsableState.Never)]
518         public bool Get(RelativeVector2 vectorValue)
519         {
520             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_5(swigCPtr, RelativeVector2.getCPtr(vectorValue));
521             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
522             return ret;
523         }
524
525         /// <summary>
526         /// Retrieves a vector value.
527         /// </summary>
528         /// <param name="vectorValue">On return, a vector value.</param>
529         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
530         /// <since_tizen> 5 </since_tizen>
531         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
532         [EditorBrowsable(EditorBrowsableState.Never)]
533         public bool Get(RelativeVector3 vectorValue)
534         {
535             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_6(swigCPtr, RelativeVector3.getCPtr(vectorValue));
536             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
537             return ret;
538         }
539
540         /// <summary>
541         /// Retrieves a vector value.
542         /// </summary>
543         /// <param name="vectorValue">On return, a vector value.</param>
544         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
545         /// <since_tizen> 5 </since_tizen>
546         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
547         [EditorBrowsable(EditorBrowsableState.Never)]
548         public bool Get(RelativeVector4 vectorValue)
549         {
550             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_7(swigCPtr, RelativeVector4.getCPtr(vectorValue));
551             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
552             return ret;
553         }
554
555         /// <summary>
556         /// Retrieves a rotation value.
557         /// </summary>
558         /// <param name="quaternionValue">On return, a rotation value.</param>
559         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
560         /// <since_tizen> 3 </since_tizen>
561         public bool Get(Rotation quaternionValue)
562         {
563             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_11(swigCPtr, Rotation.getCPtr(quaternionValue));
564             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
565             return ret;
566         }
567
568         /// <summary>
569         /// Retrieves a string property value.
570         /// </summary>
571         /// <param name="stringValue">On return, a string.</param>
572         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
573         /// <since_tizen> 3 </since_tizen>
574         public bool Get(out string stringValue)
575         {
576             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_12(swigCPtr, out stringValue);
577             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
578             return ret;
579         }
580
581         /// <summary>
582         /// Retrieves an array property value.
583         /// </summary>
584         /// <param name="arrayValue">On return, the array as a vector property values.</param>
585         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
586         /// <since_tizen> 3 </since_tizen>
587         public bool Get(PropertyArray arrayValue)
588         {
589             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_13(swigCPtr, PropertyArray.getCPtr(arrayValue));
590             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
591             return ret;
592         }
593
594         /// <summary>
595         /// Retrieves a map property value.
596         /// </summary>
597         /// <param name="mapValue">On return, the map as vector of string and property value pairs.</param>
598         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
599         /// <since_tizen> 3 </since_tizen>
600         public bool Get(PropertyMap mapValue)
601         {
602             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_14(swigCPtr, PropertyMap.getCPtr(mapValue));
603             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
604             return ret;
605         }
606
607         /// <summary>
608         /// Retrieves a Extents value.
609         /// </summary>
610         /// <param name="extentsValue">On return, a extents.</param>
611         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible.</returns>
612         /// <since_tizen> 4 </since_tizen>
613         public bool Get(Extents extentsValue)
614         {
615             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_15(swigCPtr, Extents.getCPtr(extentsValue));
616             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
617             return ret;
618         }
619
620         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PropertyValue obj)
621         {
622             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
623         }
624
625         internal bool Get(Matrix3 matrixValue)
626         {
627             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_8(swigCPtr, Matrix3.getCPtr(matrixValue));
628             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
629             return ret;
630         }
631
632         internal bool Get(Matrix matrixValue)
633         {
634             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_9(swigCPtr, Matrix.getCPtr(matrixValue));
635             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
636             return ret;
637         }
638
639         internal bool Get(AngleAxis angleAxisValue)
640         {
641             bool ret = Interop.PropertyValue.Property_Value_Get__SWIG_10(swigCPtr, AngleAxis.getCPtr(angleAxisValue));
642             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
643             return ret;
644         }
645
646         /// This will not be public opened.
647         [EditorBrowsable(EditorBrowsableState.Never)]
648         protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
649         {
650             Interop.PropertyValue.delete_Property_Value(swigCPtr);
651         }
652
653         internal static PropertyValue CreateWithGuard(string value)
654         {
655             return value == null ? new PropertyValue() : new PropertyValue(value);
656         }
657
658         internal static PropertyValue CreateWithGuard(Vector2 value)
659         {
660             return value == null ? new PropertyValue() : new PropertyValue(value);
661         }
662
663         internal static PropertyValue CreateWithGuard(Rectangle value)
664         {
665             return value == null ? new PropertyValue() : new PropertyValue(value);
666         }
667
668         internal static PropertyValue CreateWithGuard(Color value)
669         {
670             return value == null ? new PropertyValue() : new PropertyValue(value);
671         }
672     }
673 }