Merge "[NUI-252] change string type of property to enum type of property" into tizen
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / Property.cs
1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 3.0.9
6 //
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
10
11 namespace Tizen.NUI
12 {
13
14     internal class Property : global::System.IDisposable
15     {
16         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
17         protected bool swigCMemOwn;
18
19         internal Property(global::System.IntPtr cPtr, bool cMemoryOwn)
20         {
21             swigCMemOwn = cMemoryOwn;
22             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
23         }
24
25         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Property obj)
26         {
27             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
28         }
29
30         ~Property()
31         {
32             DisposeQueue.Instance.Add(this);
33         }
34
35         public virtual void Dispose()
36         {
37             if (!Stage.IsInstalled())
38             {
39                 DisposeQueue.Instance.Add(this);
40                 return;
41             }
42
43             lock (this)
44             {
45                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
46                 {
47                     if (swigCMemOwn)
48                     {
49                         swigCMemOwn = false;
50                         NDalicPINVOKE.delete_Property(swigCPtr);
51                     }
52                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
53                 }
54                 global::System.GC.SuppressFinalize(this);
55             }
56         }
57
58
59         internal static int INVALID_INDEX
60         {
61             get
62             {
63                 int ret = NDalicPINVOKE.Property_INVALID_INDEX_get();
64                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
65                 return ret;
66             }
67         }
68
69         internal static int INVALID_KEY
70         {
71             get
72             {
73                 int ret = NDalicPINVOKE.Property_INVALID_KEY_get();
74                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
75                 return ret;
76             }
77         }
78
79         internal static int INVALID_COMPONENT_INDEX
80         {
81             get
82             {
83                 int ret = NDalicPINVOKE.Property_INVALID_COMPONENT_INDEX_get();
84                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
85                 return ret;
86             }
87         }
88
89         /// <summary>
90         /// Constructor. Create a Property instance.
91         /// </summary>
92         /// <param name="arg0">A valid handle to the target object</param>
93         /// <param name="propertyIndex">The index of a property</param>
94         public Property(Handle arg0, int propertyIndex) : this(NDalicPINVOKE.new_Property__SWIG_0(Handle.getCPtr(arg0), propertyIndex), true)
95         {
96             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
97         }
98
99         /// <summary>
100         /// Constructor. Create a Property instance.
101         /// </summary>
102         /// <param name="arg0">A valid handle to the target object</param>
103         /// <param name="propertyIndex">The index of a property</param>
104         /// <param name="componentIndex">Index to a sub component of a property, for use with Vector2, Vector3 and Vector4. -1 for main property (default is -1)</param>
105         public Property(Handle arg0, int propertyIndex, int componentIndex) : this(NDalicPINVOKE.new_Property__SWIG_1(Handle.getCPtr(arg0), propertyIndex, componentIndex), true)
106         {
107             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
108         }
109
110         /// <summary>
111         /// Constructor. Create a Property instance.<br>
112         /// This performs a property index query and is therefore slower than constructing a Property directly with the index.<br>
113         /// </summary>
114         /// <param name="arg0">A valid handle to the target object</param>
115         /// <param name="propertyName">The property name</param>
116         public Property(Handle arg0, string propertyName) : this(NDalicPINVOKE.new_Property__SWIG_2(Handle.getCPtr(arg0), propertyName), true)
117         {
118             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
119         }
120
121         /// <summary>
122         /// Constructor. Create a Property instance.<br>
123         /// This performs a property index query and is therefore slower than constructing a Property directly with the index.<br>
124         /// </summary>
125         /// <param name="arg0">A valid handle to the target object</param>
126         /// <param name="propertyName">The property name</param>
127         /// <param name="componentIndex">Index to a sub component of a property, for use with Vector2, Vector3 and Vector4. -1 for main property (default is -1)</param>
128         public Property(Handle arg0, string propertyName, int componentIndex) : this(NDalicPINVOKE.new_Property__SWIG_3(Handle.getCPtr(arg0), propertyName, componentIndex), true)
129         {
130             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
131         }
132
133         internal Handle _object
134         {
135             set
136             {
137                 NDalicPINVOKE.Property__object_set(swigCPtr, Handle.getCPtr(value));
138                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
139             }
140             get
141             {
142                 Handle ret = new Handle(NDalicPINVOKE.Property__object_get(swigCPtr), false);
143                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
144                 return ret;
145             }
146         }
147
148         /// <summary>
149         /// Gets/Sets the index of the property.
150         /// </summary>
151         public int propertyIndex
152         {
153             set
154             {
155                 NDalicPINVOKE.Property_propertyIndex_set(swigCPtr, value);
156                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
157             }
158             get
159             {
160                 int ret = NDalicPINVOKE.Property_propertyIndex_get(swigCPtr);
161                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
162                 return ret;
163             }
164         }
165
166         /// <summary>
167         /// Gets/Sets the componentIndex of the property.
168         /// </summary>
169         public int componentIndex
170         {
171             set
172             {
173                 NDalicPINVOKE.Property_componentIndex_set(swigCPtr, value);
174                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
175             }
176             get
177             {
178                 int ret = NDalicPINVOKE.Property_componentIndex_get(swigCPtr);
179                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
180                 return ret;
181             }
182         }
183
184     }
185
186     /// <summary>
187     /// A Array of property values.
188     /// </summary>
189     public class PropertyArray : global::System.IDisposable
190     {
191         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
192         protected bool swigCMemOwn;
193
194         internal PropertyArray(global::System.IntPtr cPtr, bool cMemoryOwn)
195         {
196             swigCMemOwn = cMemoryOwn;
197             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
198         }
199
200         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PropertyArray obj)
201         {
202             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
203         }
204
205         ~PropertyArray()
206         {
207             Dispose();
208         }
209
210         public virtual void Dispose()
211         {
212             lock (this)
213             {
214                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
215                 {
216                     if (swigCMemOwn)
217                     {
218                         swigCMemOwn = false;
219                         NDalicPINVOKE.delete_Property_Array(swigCPtr);
220                     }
221                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
222                 }
223                 global::System.GC.SuppressFinalize(this);
224             }
225         }
226
227         /// <summary>
228         /// Operator to access an element.
229         /// </summary>
230         /// <param name="index">The element index to access. No bounds checking is performed</param>
231         /// <returns>The a reference to the element</returns>
232         public PropertyValue this[uint index]
233         {
234             get
235             {
236                 return ValueOfIndex(index);
237             }
238         }
239
240         /// <summary>
241         /// Constructor
242         /// </summary>
243         public PropertyArray() : this(NDalicPINVOKE.new_Property_Array__SWIG_0(), true)
244         {
245             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
246         }
247
248         internal PropertyArray(PropertyArray other) : this(NDalicPINVOKE.new_Property_Array__SWIG_1(PropertyArray.getCPtr(other)), true)
249         {
250             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
251         }
252
253         /// <summary>
254         /// Retrieves the number of elements in the array.
255         /// </summary>
256         /// <returns>The number of elements in the array</returns>
257         public uint Size()
258         {
259             uint ret = NDalicPINVOKE.Property_Array_Size(swigCPtr);
260             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
261             return ret;
262         }
263
264         /// <summary>
265         /// Retrieves the number of elements in the array.
266         /// </summary>
267         /// <returns>The number of elements in the array</returns>
268         public uint Count()
269         {
270             uint ret = NDalicPINVOKE.Property_Array_Count(swigCPtr);
271             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
272             return ret;
273         }
274
275         /// <summary>
276         /// Returns whether the array is empty.
277         /// </summary>
278         /// <returns>Return true if empty, false otherwise</returns>
279         public bool Empty()
280         {
281             bool ret = NDalicPINVOKE.Property_Array_Empty(swigCPtr);
282             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
283             return ret;
284         }
285
286         /// <summary>
287         /// Clears the array.
288         /// </summary>
289         public void Clear()
290         {
291             NDalicPINVOKE.Property_Array_Clear(swigCPtr);
292             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
293         }
294
295         /// <summary>
296         /// Increases the capacity of the array.
297         /// </summary>
298         /// <param name="size">The size to reserve</param>
299         public void Reserve(uint size)
300         {
301             NDalicPINVOKE.Property_Array_Reserve(swigCPtr, size);
302             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
303         }
304
305         /// <summary>
306         /// Resizes to size.
307         /// </summary>
308         /// <param name="size">The size to resize</param>
309         public void Resize(uint size)
310         {
311             NDalicPINVOKE.Property_Array_Resize(swigCPtr, size);
312             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
313         }
314
315         /// <summary>
316         /// Retrieves the capacity of the array.
317         /// </summary>
318         /// <returns>The allocated capacity of the array</returns>
319         public uint Capacity()
320         {
321             uint ret = NDalicPINVOKE.Property_Array_Capacity(swigCPtr);
322             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
323             return ret;
324         }
325
326         /// <summary>
327         /// Adds an element to the array.
328         /// </summary>
329         /// <param name="value">The value to add to the end of the array</param>
330         public void PushBack(PropertyValue value)
331         {
332             NDalicPINVOKE.Property_Array_PushBack(swigCPtr, PropertyValue.getCPtr(value));
333             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
334         }
335
336         /// <summary>
337         /// Add an element to the array.
338         /// </summary>
339         /// <param name="value">The value to add to the end of the array</param>
340         public PropertyArray Add(PropertyValue value)
341         {
342             PropertyArray ret = new PropertyArray(NDalicPINVOKE.Property_Array_Add(swigCPtr, PropertyValue.getCPtr(value)), false);
343             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
344             return ret;
345         }
346
347         /// <summary>
348         /// Access an element.
349         /// </summary>
350         /// <param name="index">The element index to access. No bounds checking is performed</param>
351         /// <returns>The a reference to the element</returns>
352         public PropertyValue GetElementAt(uint index)
353         {
354             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Array_GetElementAt__SWIG_0(swigCPtr, index), false);
355             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
356             return ret;
357         }
358
359         /// <summary>
360         /// Retrieves the value of elements in the array.
361         /// </summary>
362         /// <param name="index">The element index to retrieve.</param>
363         /// <returns>The a reference to the element</returns>
364         public PropertyValue ValueOfIndex(uint index)
365         {
366             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Array_ValueOfIndex__SWIG_0(swigCPtr, index), false);
367             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
368             return ret;
369         }
370
371         /// <summary>
372         /// Copy the array.
373         /// </summary>
374         /// <param name="other">The array to copy from</param>
375         /// <returns>The copied array</returns>
376         internal PropertyArray Assign(PropertyArray other)
377         {
378             PropertyArray ret = new PropertyArray(NDalicPINVOKE.Property_Array_Assign(swigCPtr, PropertyArray.getCPtr(other)), false);
379             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
380             return ret;
381         }
382
383     }
384
385     /// <summary>
386     /// A key type which can be either a std::string or a Property::Index
387     /// </summary>
388     public class PropertyKey : global::System.IDisposable
389     {
390         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
391         protected bool swigCMemOwn;
392
393         internal PropertyKey(global::System.IntPtr cPtr, bool cMemoryOwn)
394         {
395             swigCMemOwn = cMemoryOwn;
396             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
397         }
398
399         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PropertyKey obj)
400         {
401             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
402         }
403
404         ~PropertyKey()
405         {
406             Dispose();
407         }
408
409         public virtual void Dispose()
410         {
411             lock (this)
412             {
413                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
414                 {
415                     if (swigCMemOwn)
416                     {
417                         swigCMemOwn = false;
418                         NDalicPINVOKE.delete_Property_Key(swigCPtr);
419                     }
420                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
421                 }
422                 global::System.GC.SuppressFinalize(this);
423             }
424         }
425
426         /// <summary>
427         /// The type of the key
428         /// </summary>
429         public PropertyKey.Type type
430         {
431             set
432             {
433                 NDalicPINVOKE.Property_Key_type_set(swigCPtr, (int)value);
434                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
435             }
436             get
437             {
438                 PropertyKey.Type ret = (PropertyKey.Type)NDalicPINVOKE.Property_Key_type_get(swigCPtr);
439                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
440                 return ret;
441             }
442         }
443
444         /// <summary>
445         /// The index key.
446         /// </summary>
447         public int indexKey
448         {
449             set
450             {
451                 NDalicPINVOKE.Property_Key_indexKey_set(swigCPtr, value);
452                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
453             }
454             get
455             {
456                 int ret = NDalicPINVOKE.Property_Key_indexKey_get(swigCPtr);
457                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
458                 return ret;
459             }
460         }
461
462         /// <summary>
463         /// The string key.
464         /// </summary>
465         public string stringKey
466         {
467             set
468             {
469                 NDalicPINVOKE.Property_Key_stringKey_set(swigCPtr, value);
470                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
471             }
472             get
473             {
474                 string ret = NDalicPINVOKE.Property_Key_stringKey_get(swigCPtr);
475                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
476                 return ret;
477             }
478         }
479
480         /// <summary>
481         /// Constructor
482         /// </summary>
483         /// <param name="key">The string key</param>
484         public PropertyKey(string key) : this(NDalicPINVOKE.new_Property_Key__SWIG_0(key), true)
485         {
486             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
487         }
488
489         /// <summary>
490         /// Constructor
491         /// </summary>
492         /// <param name="key">The index key</param>
493         public PropertyKey(int key) : this(NDalicPINVOKE.new_Property_Key__SWIG_1(key), true)
494         {
495             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
496         }
497
498         /// <summary>
499         /// Compare if rhs is equal to
500         /// </summary>
501         /// <param name="rhs">A string key to compare against</param>
502         /// <returns>Returns true if the key compares, or false if it isn't equal or of the wrong type</returns>
503         public bool EqualTo(string rhs)
504         {
505             bool ret = NDalicPINVOKE.Property_Key_EqualTo__SWIG_0(swigCPtr, rhs);
506             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
507             return ret;
508         }
509
510         /// <summary>
511         /// Compare if rhs is equal to
512         /// </summary>
513         /// <param name="rhs">A index key to compare against</param>
514         /// <returns>Returns true if the key compares, or false if it isn't equal or of the wrong type</returns>
515         public bool EqualTo(int rhs)
516         {
517             bool ret = NDalicPINVOKE.Property_Key_EqualTo__SWIG_1(swigCPtr, rhs);
518             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
519             return ret;
520         }
521
522         /// <summary>
523         /// Compare if rhs is equal to
524         /// </summary>
525         /// <param name="rhs">A key to compare against</param>
526         /// <returns>Returns true if the keys are of the same type and have the same value</returns>
527         public bool EqualTo(PropertyKey rhs)
528         {
529             bool ret = NDalicPINVOKE.Property_Key_EqualTo__SWIG_2(swigCPtr, PropertyKey.getCPtr(rhs));
530             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
531             return ret;
532         }
533
534         /// <summary>
535         /// Compare if rhs is not equal to
536         /// </summary>
537         /// <param name="rhs">An index key to compare against.</param>
538         /// <returns>Returns true if the key is not equal or not a string key</returns>
539         public bool NotEqualTo(string rhs)
540         {
541             bool ret = NDalicPINVOKE.Property_Key_NotEqualTo__SWIG_0(swigCPtr, rhs);
542             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
543             return ret;
544         }
545
546         /// <summary>
547         /// Compare if rhs is not equal to
548         /// </summary>
549         /// <param name="rhs">An index key to compare against.</param>
550         /// <returns>Returns true if the key is not equal, or not an index key</returns>
551         public bool NotEqualTo(int rhs)
552         {
553             bool ret = NDalicPINVOKE.Property_Key_NotEqualTo__SWIG_1(swigCPtr, rhs);
554             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
555             return ret;
556         }
557
558         /// <summary>
559         /// Compare if rhs is not equal to
560         /// </summary>
561         /// <param name="rhs">A key to compare against.</param>
562         /// <returns>Returns true if the keys are not of the same type or are not equal</returns>
563         public bool NotEqualTo(PropertyKey rhs)
564         {
565             bool ret = NDalicPINVOKE.Property_Key_NotEqualTo__SWIG_2(swigCPtr, PropertyKey.getCPtr(rhs));
566             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
567             return ret;
568         }
569
570         /// <summary>
571         /// The type of key
572         /// </summary>
573         public enum Type
574         {
575             Index,
576             String
577         }
578
579     }
580
581     /// <summary>
582     /// A Map of property values, the key type could be String or Property::Index.
583     /// </summary>
584     public class PropertyMap : global::System.IDisposable
585     {
586         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
587         protected bool swigCMemOwn;
588
589         internal PropertyMap(global::System.IntPtr cPtr, bool cMemoryOwn)
590         {
591             swigCMemOwn = cMemoryOwn;
592             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
593         }
594
595         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PropertyMap obj)
596         {
597             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
598         }
599
600         ~PropertyMap()
601         {
602             Dispose();
603         }
604
605         public virtual void Dispose()
606         {
607             lock (this)
608             {
609                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
610                 {
611                     if (swigCMemOwn)
612                     {
613                         swigCMemOwn = false;
614                         NDalicPINVOKE.delete_Property_Map(swigCPtr);
615                     }
616                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
617                 }
618                 global::System.GC.SuppressFinalize(this);
619             }
620         }
621
622         /// <summary>
623         /// Operator to access the element with the specified string key.<br>
624         /// If an element with the key does not exist, then it is created.<br>
625         /// </summary>
626         /// <param name="key">The key whose value to access</param>
627         /// <returns>A value for the element with the specified key</returns>
628         public PropertyValue this[string key]
629         {
630             get
631             {
632                 return ValueOfIndex(key);
633             }
634         }
635
636         /// <summary>
637         /// Operator to access the element with the specified index key.<br>
638         /// If an element with the key does not exist, then it is created.<br>
639         /// </summary>
640         /// <param name="key">The key whose value to access</param>
641         /// <returns>A value for the element with the specified key</returns>
642         public PropertyValue this[int key]
643         {
644             get
645             {
646                 return ValueOfIndex(key);
647             }
648         }
649
650         /// <summary>
651         /// Constructor
652         /// </summary>
653         public PropertyMap() : this(NDalicPINVOKE.new_Property_Map__SWIG_0(), true)
654         {
655             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
656         }
657
658         /// <summary>
659         /// Copy Constructor
660         /// </summary>
661         /// <param name="other">The Map to copy from</param>
662         public PropertyMap(PropertyMap other) : this(NDalicPINVOKE.new_Property_Map__SWIG_1(PropertyMap.getCPtr(other)), true)
663         {
664             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
665         }
666
667         /// <summary>
668         /// Retrieves the number of elements in the map.
669         /// </summary>
670         /// <returns>The number of elements in the map</returns>
671         public uint Count()
672         {
673             uint ret = NDalicPINVOKE.Property_Map_Count(swigCPtr);
674             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
675             return ret;
676         }
677
678         /// <summary>
679         /// Returns whether the map is empty.
680         /// </summary>
681         /// <returns>Returns true if empty, false otherwise</returns>
682         public bool Empty()
683         {
684             bool ret = NDalicPINVOKE.Property_Map_Empty(swigCPtr);
685             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
686             return ret;
687         }
688
689         /// <summary>
690         /// Inserts the key-value pair in the Map, with the key type as string.<br>
691         /// Does not check for duplicates.<br>
692         /// </summary>
693         /// <param name="key">The key to insert</param>
694         /// <param name="value">The value to insert</param>
695         public void Insert(string key, PropertyValue value)
696         {
697             NDalicPINVOKE.Property_Map_Insert__SWIG_0(swigCPtr, key, PropertyValue.getCPtr(value));
698             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
699         }
700
701         /// <summary>
702         /// Inserts the key-value pair in the Map, with the key type as index.<br>
703         /// Does not check for duplicates.<br>
704         /// </summary>
705         /// <param name="key">The key to insert</param>
706         /// <param name="value">The value to insert</param>
707         public void Insert(int key, PropertyValue value)
708         {
709             NDalicPINVOKE.Property_Map_Insert__SWIG_2(swigCPtr, key, PropertyValue.getCPtr(value));
710             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
711         }
712
713         /// <summary>
714         /// Inserts the key-value pair in the Map, with the key type as string.<br>
715         /// Does not check for duplicates.<br>
716         /// </summary>
717         /// <param name="key">The key to insert</param>
718         /// <param name="value">The value to insert</param>
719         /// <returns>Returns a reference to this object</returns>
720         public PropertyMap Add(string key, PropertyValue value)
721         {
722             PropertyMap ret = new PropertyMap(NDalicPINVOKE.Property_Map_Add__SWIG_0(swigCPtr, key, PropertyValue.getCPtr(value)), false);
723             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
724             return ret;
725         }
726
727         /// <summary>
728         /// Inserts the key-value pair in the Map, with the key type as string.<br>
729         /// Does not check for duplicates.<br>
730         /// </summary>
731         /// <param name="key">The key to insert</param>
732         /// <param name="value">The value to insert</param>
733         /// <returns>Returns a reference to this object</returns>
734         public PropertyMap Add(int key, PropertyValue value)
735         {
736             PropertyMap ret = new PropertyMap(NDalicPINVOKE.Property_Map_Add__SWIG_2(swigCPtr, key, PropertyValue.getCPtr(value)), false);
737             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
738             return ret;
739         }
740
741         /// <summary>
742         /// Retrieves the value at the specified position.
743         /// </summary>
744         /// <param name="position">The specified position</param>
745         /// <returns>A reference to the value at the specified position</returns>
746         public PropertyValue GetValue(uint position)
747         {
748             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Map_GetValue(swigCPtr, position), false);
749             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
750             return ret;
751         }
752
753         /// <summary>
754         /// Retrieves the key at the specified position.
755         /// </summary>
756         /// <param name="position">The specified position</param>
757         /// <returns>A reference to the key at the specified position</returns>
758         public string GetKey(uint position)
759         {
760             string ret = NDalicPINVOKE.Property_Map_GetKey(swigCPtr, position);
761             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
762             return ret;
763         }
764
765         /// <summary>
766         /// Retrieve the key at the specified position.
767         /// </summary>
768         /// <param name="position">The specified position</param>
769         /// <returns>A copy of the key at the specified position</returns>
770         public PropertyKey GetKeyAt(uint position)
771         {
772             PropertyKey ret = new PropertyKey(NDalicPINVOKE.Property_Map_GetKeyAt(swigCPtr, position), true);
773             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
774             return ret;
775         }
776
777         internal StringValuePair GetPair(uint position)
778         {
779             StringValuePair ret = new StringValuePair(NDalicPINVOKE.Property_Map_GetPair(swigCPtr, position), false);
780             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
781             return ret;
782         }
783
784         /// <summary>
785         /// Finds the value for the specified key if it exists.
786         /// </summary>
787         /// <param name="key">The key to find</param>
788         /// <returns>The value if it exists, an empty object otherwise</returns>
789         public PropertyValue Find(string key)
790         {
791             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Map_Find__SWIG_0(swigCPtr, key);
792             PropertyValue ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyValue(cPtr, false);
793             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
794             return ret;
795         }
796
797         /// <summary>
798         /// Finds the value for the specified key if it exists.
799         /// </summary>
800         /// <param name="key">The key to find</param>
801         /// <returns>The value if it exists, an empty object otherwise</returns>
802         public PropertyValue Find(int key)
803         {
804             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Map_Find__SWIG_2(swigCPtr, key);
805             PropertyValue ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyValue(cPtr, false);
806             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
807             return ret;
808         }
809
810         /// <summary>
811         /// Finds the value for the specified keys if either exist.
812         /// </summary>
813         /// <param name="indexKey">The index key to find</param>
814         /// <param name="stringKey">The string key to find</param>
815         /// <returns>The value if it exists, an empty object otherwise</returns>
816         public PropertyValue Find(int indexKey, string stringKey)
817         {
818             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Map_Find__SWIG_3(swigCPtr, indexKey, stringKey);
819             PropertyValue ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyValue(cPtr, false);
820             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
821             return ret;
822         }
823
824         /// <summary>
825         /// Finds the value for the specified key if it exists and its type is type.
826         /// </summary>
827         /// <param name="key">The key to find</param>
828         /// <param name="type">The type to check</param>
829         /// <returns>The value if it exists, an empty value otherwise</returns>
830         public PropertyValue Find(string key, PropertyType type)
831         {
832             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Map_Find__SWIG_4(swigCPtr, key, (int)type);
833             PropertyValue ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyValue(cPtr, false);
834             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
835             return ret;
836         }
837
838         /// <summary>
839         /// Finds the value for the specified key if it exists and its type is type.
840         /// </summary>
841         /// <param name="key">The key to find</param>
842         /// <param name="type">The type to check</param>
843         /// <returns>The value if it exists, an empty value otherwise</returns>
844         public PropertyValue Find(int key, PropertyType type)
845         {
846             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Map_Find__SWIG_5(swigCPtr, key, (int)type);
847             PropertyValue ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyValue(cPtr, false);
848             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
849             return ret;
850         }
851
852         /// <summary>
853         /// Clears the map.
854         /// </summary>
855         public void Clear()
856         {
857             NDalicPINVOKE.Property_Map_Clear(swigCPtr);
858             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
859         }
860
861         /// <summary>
862         /// Merges values from the map 'from' to the current.<br>
863         /// Any values in 'from' will overwrite the values in the current map.<br>
864         /// </summary>
865         /// <param name="from">The map to merge from</param>
866         public void Merge(PropertyMap from)
867         {
868             NDalicPINVOKE.Property_Map_Merge(swigCPtr, PropertyMap.getCPtr(from));
869             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
870         }
871
872         /// <summary>
873         /// Retrieves the element with the specified string key.
874         /// </summary>
875         /// <param name="key">The key whose value to retrieve</param>
876         /// <returns>The value for the element with the specified key</returns>
877         public PropertyValue ValueOfIndex(string key)
878         {
879             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Map_ValueOfIndex__SWIG_0(swigCPtr, key), false);
880             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
881             return ret;
882         }
883
884         /// <summary>
885         /// Retrieves the element with the specified index key.
886         /// </summary>
887         /// <param name="key">The key whose value to retrieve</param>
888         /// <returns>The value for the element with the specified key</returns>
889         public PropertyValue ValueOfIndex(int key)
890         {
891             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Map_ValueOfIndex__SWIG_2(swigCPtr, key), false);
892             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
893             return ret;
894         }
895
896         /// <summary>
897         /// Copy the map.
898         /// </summary>
899         /// <param name="other">The map to copy from</param>
900         /// <returns>The copied map</returns>
901         internal PropertyMap Assign(PropertyMap other)
902         {
903             PropertyMap ret = new PropertyMap(NDalicPINVOKE.Property_Map_Assign(swigCPtr, PropertyMap.getCPtr(other)), false);
904             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
905             return ret;
906         }
907
908     }
909
910     /// <summary>
911     /// A value-type representing a property value.
912     /// </summary>
913     public class PropertyValue : global::System.IDisposable
914     {
915         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
916         protected bool swigCMemOwn;
917
918         internal PropertyValue(global::System.IntPtr cPtr, bool cMemoryOwn)
919         {
920             swigCMemOwn = cMemoryOwn;
921             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
922         }
923
924         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PropertyValue obj)
925         {
926             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
927         }
928
929         ~PropertyValue()
930         {
931             Dispose();
932         }
933
934         public virtual void Dispose()
935         {
936             lock (this)
937             {
938                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
939                 {
940                     if (swigCMemOwn)
941                     {
942                         swigCMemOwn = false;
943                         NDalicPINVOKE.delete_Property_Value(swigCPtr);
944                     }
945                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
946                 }
947                 global::System.GC.SuppressFinalize(this);
948             }
949         }
950
951
952         /// <summary>
953         /// Extension to property value class that allows us to create a
954         /// PropertyValue from a C# object, e.g. int, float, string.<br>
955         /// </summary>
956         /// <param name="obj">An object to create</param>
957         /// <returns>The created value</returns>
958         static public PropertyValue CreateFromObject(System.Object obj)
959         {
960             System.Type type = obj.GetType();
961
962             PropertyValue value;
963
964             if (type.Equals(typeof(int)))
965             {
966                 Tizen.Log.Debug("NUI", " got an int property value ");
967                 value = new PropertyValue((int)obj);
968             }
969             if (type.Equals(typeof(System.Int32)))
970             {
971                 Tizen.Log.Debug("NUI", " got an int property value ");
972                 value = new PropertyValue((int)obj);
973             }
974             else if (type.Equals(typeof(bool)))
975             {
976                 Tizen.Log.Debug("NUI", " got an bool property value ");
977                 value = new PropertyValue((bool)obj);
978             }
979             else if (type.Equals(typeof(float)))
980             {
981                 Tizen.Log.Debug("NUI", " got an float property value ");
982                 value = new PropertyValue((float)obj);
983             }
984             else if (type.Equals(typeof(string)))
985             {
986                 Tizen.Log.Debug("NUI", " got a string property value ");
987                 value = new PropertyValue((string)obj);
988             }
989             else if (type.Equals(typeof(Vector2)))
990             {
991                 Tizen.Log.Debug("NUI", " got an Vector2 property value ");
992                 value = new PropertyValue((Vector2)obj);
993             }
994             else if (type.Equals(typeof(Vector3)))
995             {
996                 Tizen.Log.Debug("NUI", " got an Vector3 property value ");
997                 value = new PropertyValue((Vector3)obj);
998             }
999             else if (type.Equals(typeof(Vector4)))
1000             {
1001                 Tizen.Log.Debug("NUI", " got an Vector4 property value ");
1002
1003                 value = new PropertyValue((Vector4)obj);
1004             }
1005             else if (type.Equals(typeof(Position)))
1006             {
1007                 Tizen.Log.Debug("NUI", " got an Position property value ");
1008                 value = new PropertyValue((Position)obj);
1009             }
1010             else if (type.Equals(typeof(Position2D)))
1011             {
1012                 Tizen.Log.Debug("NUI", " got an Position2D property value ");
1013                 value = new PropertyValue((Position2D)obj);
1014             }
1015             else if (type.Equals(typeof(Size)))
1016             {
1017                 Tizen.Log.Debug("NUI", " got an Size property value ");
1018                 value = new PropertyValue((Size)obj);
1019             }
1020             else if (type.Equals(typeof(Size2D)))
1021             {
1022                 Tizen.Log.Debug("NUI", " got an Size2D property value ");
1023                 value = new PropertyValue((Size2D)obj);
1024             }
1025             else if (type.Equals(typeof(Color)))
1026             {
1027                 Tizen.Log.Debug("NUI", " got an Color property value ");
1028                 value = new PropertyValue((Color)obj);
1029             }
1030             else if (type.Equals(typeof(Rotation)))
1031             {
1032                 Tizen.Log.Debug("NUI", " got an Rotation property value ");
1033                 value = new PropertyValue((Rotation)obj);
1034             }
1035             else if (type.Equals(typeof(RelativeVector2)))
1036             {
1037                 Tizen.Log.Debug("NUI", " got an RelativeVector2 property value ");
1038                 value = new PropertyValue((RelativeVector2)obj);
1039             }
1040             else if (type.Equals(typeof(RelativeVector3)))
1041             {
1042                 Tizen.Log.Debug("NUI", " got an RelativeVector3 property value ");
1043                 value = new PropertyValue((RelativeVector3)obj);
1044             }
1045             else if (type.Equals(typeof(RelativeVector4)))
1046             {
1047                 Tizen.Log.Debug("NUI", " got an RelativeVector4 property value ");
1048                 value = new PropertyValue((RelativeVector4)obj);
1049             }
1050             else
1051             {
1052                 throw new global::System.InvalidOperationException("Unimplemented type for Property Value :" + type.Name);
1053             }
1054             return value;
1055         }
1056
1057
1058         /// <summary>
1059         /// Creates a Size2D property value.
1060         /// </summary>
1061         /// <param name="vectorValue">A Size2D values</param>
1062         public PropertyValue(Size2D vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Size2D.getCPtr(vectorValue)), true)
1063         {
1064             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1065         }
1066
1067         /// <summary>
1068         /// Creates a Size property value.
1069         /// </summary>
1070         /// <param name="vectorValue">A Size values</param>
1071         public PropertyValue(Size vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Size.getCPtr(vectorValue)), true)
1072         {
1073             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1074         }
1075
1076         /// <summary>
1077         /// Creates a Position2D property value.
1078         /// </summary>
1079         /// <param name="vectorValue">A Position2D values</param>
1080         public PropertyValue(Position2D vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Position2D.getCPtr(vectorValue)), true)
1081         {
1082             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1083         }
1084
1085         /// <summary>
1086         /// Creates a Position property value.
1087         /// </summary>
1088         /// <param name="vectorValue">A Position values</param>
1089         public PropertyValue(Position vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Position.getCPtr(vectorValue)), true)
1090         {
1091             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1092         }
1093
1094         /// <summary>
1095         /// Creates a Color property value.
1096         /// </summary>
1097         /// <param name="vectorValue">A Color values</param>
1098         public PropertyValue(Color vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_6(Color.getCPtr(vectorValue)), true)
1099         {
1100             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1101         }
1102
1103
1104         /// <summary>
1105         /// Retrieves a Size2D value.
1106         /// </summary>
1107         /// <param name="vectorValue"> On return, a Size2D value</param>
1108         public bool Get(Size2D vectorValue)
1109         {
1110             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Size2D.getCPtr(vectorValue));
1111             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1112             return ret;
1113         }
1114
1115         /// <summary>
1116         /// Retrieves a Size2D value.
1117         /// </summary>
1118         /// <param name="vectorValue"> On return, a Size2D value</param>
1119         public bool Get(Size vectorValue)
1120         {
1121             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Size.getCPtr(vectorValue));
1122             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1123             return ret;
1124         }
1125
1126         /// <summary>
1127         /// Retrieves a Position2D value.
1128         /// </summary>
1129         /// <param name="vectorValue"> On return, a Position2D value</param>
1130         public bool Get(Position2D vectorValue)
1131         {
1132             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Position2D.getCPtr(vectorValue));
1133             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1134             return ret;
1135         }
1136
1137         /// <summary>
1138         /// Retrieves a Position value.
1139         /// </summary>
1140         /// <param name="vectorValue"> On return, a Position value</param>
1141         public bool Get(Position vectorValue)
1142         {
1143             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Position.getCPtr(vectorValue));
1144             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1145             return ret;
1146         }
1147
1148         /// <summary>
1149         /// Retrieves a Color value.
1150         /// </summary>
1151         /// <param name="vectorValue"> On return, a Color value</param>
1152         public bool Get(Color vectorValue)
1153         {
1154             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_7(swigCPtr, Color.getCPtr(vectorValue));
1155             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1156             return ret;
1157         }
1158
1159
1160
1161         /// <summary>
1162         /// Default constructor.
1163         /// </summary>
1164         public PropertyValue() : this(NDalicPINVOKE.new_Property_Value__SWIG_0(), true)
1165         {
1166             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1167         }
1168
1169         /// <summary>
1170         /// Creates a boolean property value.
1171         /// </summary>
1172         /// <param name="boolValue">A boolean value</param>
1173         public PropertyValue(bool boolValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_1(boolValue), true)
1174         {
1175             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1176         }
1177
1178         /// <summary>
1179         /// Creates an integer property value.
1180         /// </summary>
1181         /// <param name="integerValue">An integer value</param>
1182         public PropertyValue(int integerValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_2(integerValue), true)
1183         {
1184             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1185         }
1186
1187         /// <summary>
1188         /// Creates a float property value.
1189         /// </summary>
1190         /// <param name="floatValue">A floating-point value</param>
1191         public PropertyValue(float floatValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_3(floatValue), true)
1192         {
1193             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1194         }
1195
1196         /// <summary>
1197         /// Creates a Vector2 property value.
1198         /// </summary>
1199         /// <param name="vectorValue">A vector of 2 floating-point values</param>
1200         public PropertyValue(Vector2 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Vector2.getCPtr(vectorValue)), true)
1201         {
1202             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1203         }
1204
1205         /// <summary>
1206         /// Creates a Vector3 property value.
1207         /// </summary>
1208         /// <param name="vectorValue">A vector of 3 floating-point values</param>
1209         public PropertyValue(Vector3 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Vector3.getCPtr(vectorValue)), true)
1210         {
1211             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1212         }
1213
1214         /// <summary>
1215         /// Creates a Vector4 property value.
1216         /// </summary>
1217         /// <param name="vectorValue">A vector of 4 floating-point values</param>
1218         public PropertyValue(Vector4 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_6(Vector4.getCPtr(vectorValue)), true)
1219         {
1220             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1221         }
1222
1223         internal PropertyValue(Matrix3 matrixValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_7(Matrix3.getCPtr(matrixValue)), true)
1224         {
1225             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1226         }
1227
1228         internal PropertyValue(Matrix matrixValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_8(Matrix.getCPtr(matrixValue)), true)
1229         {
1230             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1231         }
1232
1233         /// <summary>
1234         /// Creates a Rectangle property value.
1235         /// </summary>
1236         /// <param name="vectorValue">A Rectangle values</param>
1237         public PropertyValue(Rectangle vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_9(Rectangle.getCPtr(vectorValue)), true)
1238         {
1239             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1240         }
1241
1242         internal PropertyValue(AngleAxis angleAxis) : this(NDalicPINVOKE.new_Property_Value__SWIG_10(AngleAxis.getCPtr(angleAxis)), true)
1243         {
1244             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1245         }
1246
1247         /// <summary>
1248         /// Creates a Rotation property value.
1249         /// </summary>
1250         /// <param name="quaternion">A Rotation values</param>
1251         public PropertyValue(Rotation quaternion) : this(NDalicPINVOKE.new_Property_Value__SWIG_11(Rotation.getCPtr(quaternion)), true)
1252         {
1253             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1254         }
1255
1256         /// <summary>
1257         /// Creates a string property value.
1258         /// </summary>
1259         /// <param name="stringValue">A string</param>
1260         public PropertyValue(string stringValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_12(stringValue), true)
1261         {
1262             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1263         }
1264
1265         /// <summary>
1266         /// Creates an array property value.
1267         /// </summary>
1268         /// <param name="arrayValue">An array</param>
1269         public PropertyValue(PropertyArray arrayValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_14(PropertyArray.getCPtr(arrayValue)), true)
1270         {
1271             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1272         }
1273
1274         /// <summary>
1275         /// Creates a map property value.
1276         /// </summary>
1277         /// <param name="mapValue">An array</param>
1278         public PropertyValue(PropertyMap mapValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_15(PropertyMap.getCPtr(mapValue)), true)
1279         {
1280             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1281         }
1282
1283         /// <summary>
1284         /// Creates a PropertyType value.
1285         /// </summary>
1286         /// <param name="type">A PropertyType values</param>
1287         public PropertyValue(PropertyType type) : this(NDalicPINVOKE.new_Property_Value__SWIG_16((int)type), true)
1288         {
1289             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1290         }
1291
1292         /// <summary>
1293         /// Creates a PropertyValue value.
1294         /// </summary>
1295         /// <param name="value">A PropertyValue values</param>
1296         public PropertyValue(PropertyValue value) : this(NDalicPINVOKE.new_Property_Value__SWIG_17(PropertyValue.getCPtr(value)), true)
1297         {
1298             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1299         }
1300
1301         /// <summary>
1302         /// Copy the value.
1303         /// </summary>
1304         /// <param name="value">The value to copy from</param>
1305         /// <returns>The copied value</returns>
1306         internal PropertyValue Assign(PropertyValue value)
1307         {
1308             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Value_Assign(swigCPtr, PropertyValue.getCPtr(value)), false);
1309             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1310             return ret;
1311         }
1312
1313         /// <summary>
1314         /// Queries the type of this property value.
1315         /// </summary>
1316         /// <returns>The type ID</returns>
1317         public PropertyType GetType()
1318         {
1319             PropertyType ret = (PropertyType)NDalicPINVOKE.Property_Value_GetType(swigCPtr);
1320             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1321             return ret;
1322         }
1323
1324         /// <summary>
1325         /// Retrieves a boolean value.
1326         /// </summary>
1327         /// <param name="boolValue">On return, a boolean value</param>
1328         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1329         public bool Get(ref bool boolValue)
1330         {
1331             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_1(swigCPtr, ref boolValue);
1332             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1333             return ret;
1334         }
1335
1336         /// <summary>
1337         /// Retrieves a floating-point value.
1338         /// </summary>
1339         /// <param name="floatValue">On return, a floating-point value</param>
1340         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1341         public bool Get(ref float floatValue)
1342         {
1343             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_2(swigCPtr, ref floatValue);
1344             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1345             return ret;
1346         }
1347
1348         /// <summary>
1349         /// Retrieves a integer value.
1350         /// </summary>
1351         /// <param name="integerValue">On return, a integer value</param>
1352         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1353         public bool Get(ref int integerValue)
1354         {
1355             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_3(swigCPtr, ref integerValue);
1356             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1357             return ret;
1358         }
1359
1360         /// <summary>
1361         /// Retrieves an integer rectangle.
1362         /// </summary>
1363         /// <param name="rect">On return, an integer rectangle</param>
1364         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1365         public bool Get(Rectangle rect)
1366         {
1367             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_4(swigCPtr, Rectangle.getCPtr(rect));
1368             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1369             return ret;
1370         }
1371
1372         /// <summary>
1373         /// Retrieves a vector value.
1374         /// </summary>
1375         /// <param name="vectorValue">On return, a vector value</param>
1376         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1377         public bool Get(Vector2 vectorValue)
1378         {
1379             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Vector2.getCPtr(vectorValue));
1380             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1381             return ret;
1382         }
1383
1384         /// <summary>
1385         /// Retrieves a vector value.
1386         /// </summary>
1387         /// <param name="vectorValue">On return, a vector value</param>
1388         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1389         public bool Get(Vector3 vectorValue)
1390         {
1391             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Vector3.getCPtr(vectorValue));
1392             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1393             return ret;
1394         }
1395
1396         /// <summary>
1397         /// Retrieves a vector value.
1398         /// </summary>
1399         /// <param name="vectorValue">On return, a vector value</param>
1400         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1401         public bool Get(Vector4 vectorValue)
1402         {
1403             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_7(swigCPtr, Vector4.getCPtr(vectorValue));
1404             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1405             return ret;
1406         }
1407
1408         internal bool Get(Matrix3 matrixValue)
1409         {
1410             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_8(swigCPtr, Matrix3.getCPtr(matrixValue));
1411             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1412             return ret;
1413         }
1414
1415         internal bool Get(Matrix matrixValue)
1416         {
1417             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_9(swigCPtr, Matrix.getCPtr(matrixValue));
1418             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1419             return ret;
1420         }
1421
1422         internal bool Get(AngleAxis angleAxisValue)
1423         {
1424             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_10(swigCPtr, AngleAxis.getCPtr(angleAxisValue));
1425             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1426             return ret;
1427         }
1428
1429         /// <summary>
1430         /// Retrieves a Rotation value.
1431         /// </summary>
1432         /// <param name="quaternionValue">On return, a Rotation value</param>
1433         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1434         public bool Get(Rotation quaternionValue)
1435         {
1436             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_11(swigCPtr, Rotation.getCPtr(quaternionValue));
1437             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1438             return ret;
1439         }
1440
1441         /// <summary>
1442         /// Retrieves a string property value.
1443         /// </summary>
1444         /// <param name="stringValue">On return, a string</param>
1445         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1446         public bool Get(out string stringValue)
1447         {
1448             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_12(swigCPtr, out stringValue);
1449             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1450             return ret;
1451         }
1452
1453         /// <summary>
1454         /// Retrieves an array property value.
1455         /// </summary>
1456         /// <param name="arrayValue">On return, the array as a vector Property Values</param>
1457         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1458         public bool Get(PropertyArray arrayValue)
1459         {
1460             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_13(swigCPtr, PropertyArray.getCPtr(arrayValue));
1461             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1462             return ret;
1463         }
1464
1465         /// <summary>
1466         /// Retrieves an map property value.
1467         /// </summary>
1468         /// <param name="mapValue">On return, the map as vector of string and Property Value pairs</param>
1469         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1470         public bool Get(PropertyMap mapValue)
1471         {
1472             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_14(swigCPtr, PropertyMap.getCPtr(mapValue));
1473             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1474             return ret;
1475         }
1476
1477         /// <summary>
1478         /// Retrieves the Array API of the Property::Value without copying the contents of the map.
1479         /// </summary>
1480         /// <returns>The Array API of the Property::Value or NULL if not a Property::Array</returns>
1481         public PropertyArray GetArray()
1482         {
1483             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Value_GetArray(swigCPtr);
1484             PropertyArray ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyArray(cPtr, false);
1485             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1486             return ret;
1487         }
1488
1489         /// <summary>
1490         /// Retrieves the Map API of the Property::Value without copying the contents of the map.
1491         /// </summary>
1492         /// <returns>The Map API of the Property::Value or NULL if not a Property::Map</returns>
1493         public PropertyMap GetMap()
1494         {
1495             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Value_GetMap(swigCPtr);
1496             PropertyMap ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyMap(cPtr, false);
1497             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1498             return ret;
1499         }
1500
1501     }
1502
1503     /// <summary>
1504     /// This specifies all the property types. <br>
1505     /// Enumeration for the property types supported.
1506     /// </summary>
1507     public enum PropertyType
1508     {
1509         /// <summary>
1510         /// No type
1511         /// </summary>
1512         None,
1513         /// <summary>
1514         /// A boolean type
1515         /// </summary>
1516         Boolean,
1517         /// <summary>
1518         /// A float type
1519         /// </summary>
1520         Float,
1521         /// <summary>
1522         /// An integer type
1523         /// </summary>
1524         Integer,
1525         /// <summary>
1526         /// a vector array of size=2 with float precision
1527         /// </summary>
1528         Vector2,
1529         /// <summary>
1530         /// a vector array of size=3 with float precision
1531         /// </summary>
1532         Vector3,
1533         /// <summary>
1534         /// a vector array of size=4 with float precision
1535         /// </summary>
1536         Vector4,
1537         /// <summary>
1538         /// a 3x3 matrix
1539         /// </summary>
1540         Matrix3,
1541         /// <summary>
1542         /// a 4x4 matrix
1543         /// </summary>
1544         Matrix,
1545         /// <summary>
1546         /// an integer array of size=4
1547         /// </summary>
1548         Rectangle,
1549         /// <summary>
1550         /// either a quaternion or an axis angle rotation
1551         /// </summary>
1552         Rotation,
1553         /// <summary>
1554         /// A string type
1555         /// </summary>
1556         String,
1557         /// <summary>
1558         /// an array of PropertyValue
1559         /// </summary>
1560         Array,
1561         /// <summary>
1562         /// a string key to PropertyValue mapping
1563         /// </summary>
1564         Map
1565     }
1566
1567     /// <summary>
1568     /// This specifies the property access mode types. <br>
1569     /// Enumeration for the access mode for custom properties.
1570     /// </summary>
1571     public enum PropertyAccessMode
1572     {
1573         /// <summary>
1574         /// if the property is read-only
1575         /// </summary>
1576         ReadOnly,
1577         /// <summary>
1578         /// If the property is read/writeable
1579         /// </summary>
1580         ReadWrite,
1581         /// <summary>
1582         /// If the property can be animated or constrained
1583         /// </summary>
1584         Animatable,
1585         /// <summary>
1586         /// The number of access modes
1587         /// </summary>
1588         AccessModeCount
1589     }
1590
1591 }