f0c93a34fd50196ce604b307f205834daa541412
[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                 value = new PropertyValue((int)obj);
967             }
968             if (type.Equals(typeof(System.Int32)))
969             {
970                 value = new PropertyValue((int)obj);
971             }
972             else if (type.Equals(typeof(bool)))
973             {
974                 value = new PropertyValue((bool)obj);
975             }
976             else if (type.Equals(typeof(float)))
977             {
978                 value = new PropertyValue((float)obj);
979             }
980             else if (type.Equals(typeof(string)))
981             {
982                 value = new PropertyValue((string)obj);
983             }
984             else if (type.Equals(typeof(Vector2)))
985             {
986                 value = new PropertyValue((Vector2)obj);
987             }
988             else if (type.Equals(typeof(Vector3)))
989             {
990                 value = new PropertyValue((Vector3)obj);
991             }
992             else if (type.Equals(typeof(Vector4)))
993             {
994                 value = new PropertyValue((Vector4)obj);
995             }
996             else if (type.Equals(typeof(Position)))
997             {
998                 value = new PropertyValue((Position)obj);
999             }
1000             else if (type.Equals(typeof(Position2D)))
1001             {
1002                 value = new PropertyValue((Position2D)obj);
1003             }
1004             else if (type.Equals(typeof(Size)))
1005             {
1006                 value = new PropertyValue((Size)obj);
1007             }
1008             else if (type.Equals(typeof(Size2D)))
1009             {
1010                 value = new PropertyValue((Size2D)obj);
1011             }
1012             else if (type.Equals(typeof(Color)))
1013             {
1014                 value = new PropertyValue((Color)obj);
1015             }
1016             else if (type.Equals(typeof(Rotation)))
1017             {
1018                 value = new PropertyValue((Rotation)obj);
1019             }
1020             else if (type.Equals(typeof(RelativeVector2)))
1021             {
1022                 value = new PropertyValue((RelativeVector2)obj);
1023             }
1024             else if (type.Equals(typeof(RelativeVector3)))
1025             {
1026                 value = new PropertyValue((RelativeVector3)obj);
1027             }
1028             else if (type.Equals(typeof(RelativeVector4)))
1029             {
1030                 value = new PropertyValue((RelativeVector4)obj);
1031             }
1032             else
1033             {
1034                 throw new global::System.InvalidOperationException("Unimplemented type for Property Value :" + type.Name);
1035             }
1036 #if DEBUG_ON
1037             Tizen.Log.Debug("NUI", " got an property value of =" + type.Name);
1038 #endif
1039             return value;
1040         }
1041
1042         /// <summary>
1043         /// Creates a Size2D property value.
1044         /// </summary>
1045         /// <param name="vectorValue">A Size2D values</param>
1046         public PropertyValue(Size2D vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Size2D.getCPtr(vectorValue)), true)
1047         {
1048             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1049         }
1050
1051         /// <summary>
1052         /// Creates a Size property value.
1053         /// </summary>
1054         /// <param name="vectorValue">A Size values</param>
1055         public PropertyValue(Size vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Size.getCPtr(vectorValue)), true)
1056         {
1057             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1058         }
1059
1060         /// <summary>
1061         /// Creates a Position2D property value.
1062         /// </summary>
1063         /// <param name="vectorValue">A Position2D values</param>
1064         public PropertyValue(Position2D vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Position2D.getCPtr(vectorValue)), true)
1065         {
1066             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1067         }
1068
1069         /// <summary>
1070         /// Creates a Position property value.
1071         /// </summary>
1072         /// <param name="vectorValue">A Position values</param>
1073         public PropertyValue(Position vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Position.getCPtr(vectorValue)), true)
1074         {
1075             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1076         }
1077
1078         /// <summary>
1079         /// Creates a Color property value.
1080         /// </summary>
1081         /// <param name="vectorValue">A Color values</param>
1082         public PropertyValue(Color vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_6(Color.getCPtr(vectorValue)), true)
1083         {
1084             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1085         }
1086
1087
1088         /// <summary>
1089         /// Retrieves a Size2D value.
1090         /// </summary>
1091         /// <param name="vectorValue"> On return, a Size2D value</param>
1092         public bool Get(Size2D vectorValue)
1093         {
1094             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Size2D.getCPtr(vectorValue));
1095             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1096             return ret;
1097         }
1098
1099         /// <summary>
1100         /// Retrieves a Size2D value.
1101         /// </summary>
1102         /// <param name="vectorValue"> On return, a Size2D value</param>
1103         public bool Get(Size vectorValue)
1104         {
1105             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Size.getCPtr(vectorValue));
1106             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1107             return ret;
1108         }
1109
1110         /// <summary>
1111         /// Retrieves a Position2D value.
1112         /// </summary>
1113         /// <param name="vectorValue"> On return, a Position2D value</param>
1114         public bool Get(Position2D vectorValue)
1115         {
1116             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Position2D.getCPtr(vectorValue));
1117             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1118             return ret;
1119         }
1120
1121         /// <summary>
1122         /// Retrieves a Position value.
1123         /// </summary>
1124         /// <param name="vectorValue"> On return, a Position value</param>
1125         public bool Get(Position vectorValue)
1126         {
1127             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Position.getCPtr(vectorValue));
1128             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1129             return ret;
1130         }
1131
1132         /// <summary>
1133         /// Retrieves a Color value.
1134         /// </summary>
1135         /// <param name="vectorValue"> On return, a Color value</param>
1136         public bool Get(Color vectorValue)
1137         {
1138             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_7(swigCPtr, Color.getCPtr(vectorValue));
1139             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1140             return ret;
1141         }
1142
1143
1144
1145         /// <summary>
1146         /// Default constructor.
1147         /// </summary>
1148         public PropertyValue() : this(NDalicPINVOKE.new_Property_Value__SWIG_0(), true)
1149         {
1150             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1151         }
1152
1153         /// <summary>
1154         /// Creates a boolean property value.
1155         /// </summary>
1156         /// <param name="boolValue">A boolean value</param>
1157         public PropertyValue(bool boolValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_1(boolValue), true)
1158         {
1159             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1160         }
1161
1162         /// <summary>
1163         /// Creates an integer property value.
1164         /// </summary>
1165         /// <param name="integerValue">An integer value</param>
1166         public PropertyValue(int integerValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_2(integerValue), true)
1167         {
1168             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1169         }
1170
1171         /// <summary>
1172         /// Creates a float property value.
1173         /// </summary>
1174         /// <param name="floatValue">A floating-point value</param>
1175         public PropertyValue(float floatValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_3(floatValue), true)
1176         {
1177             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1178         }
1179
1180         /// <summary>
1181         /// Creates a Vector2 property value.
1182         /// </summary>
1183         /// <param name="vectorValue">A vector of 2 floating-point values</param>
1184         public PropertyValue(Vector2 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_4(Vector2.getCPtr(vectorValue)), true)
1185         {
1186             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1187         }
1188
1189         /// <summary>
1190         /// Creates a Vector3 property value.
1191         /// </summary>
1192         /// <param name="vectorValue">A vector of 3 floating-point values</param>
1193         public PropertyValue(Vector3 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_5(Vector3.getCPtr(vectorValue)), true)
1194         {
1195             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1196         }
1197
1198         /// <summary>
1199         /// Creates a Vector4 property value.
1200         /// </summary>
1201         /// <param name="vectorValue">A vector of 4 floating-point values</param>
1202         public PropertyValue(Vector4 vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_6(Vector4.getCPtr(vectorValue)), true)
1203         {
1204             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1205         }
1206
1207         internal PropertyValue(Matrix3 matrixValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_7(Matrix3.getCPtr(matrixValue)), true)
1208         {
1209             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1210         }
1211
1212         internal PropertyValue(Matrix matrixValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_8(Matrix.getCPtr(matrixValue)), true)
1213         {
1214             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1215         }
1216
1217         /// <summary>
1218         /// Creates a Rectangle property value.
1219         /// </summary>
1220         /// <param name="vectorValue">A Rectangle values</param>
1221         public PropertyValue(Rectangle vectorValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_9(Rectangle.getCPtr(vectorValue)), true)
1222         {
1223             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1224         }
1225
1226         internal PropertyValue(AngleAxis angleAxis) : this(NDalicPINVOKE.new_Property_Value__SWIG_10(AngleAxis.getCPtr(angleAxis)), true)
1227         {
1228             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1229         }
1230
1231         /// <summary>
1232         /// Creates a Rotation property value.
1233         /// </summary>
1234         /// <param name="quaternion">A Rotation values</param>
1235         public PropertyValue(Rotation quaternion) : this(NDalicPINVOKE.new_Property_Value__SWIG_11(Rotation.getCPtr(quaternion)), true)
1236         {
1237             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1238         }
1239
1240         /// <summary>
1241         /// Creates a string property value.
1242         /// </summary>
1243         /// <param name="stringValue">A string</param>
1244         public PropertyValue(string stringValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_12(stringValue), true)
1245         {
1246             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1247         }
1248
1249         /// <summary>
1250         /// Creates an array property value.
1251         /// </summary>
1252         /// <param name="arrayValue">An array</param>
1253         public PropertyValue(PropertyArray arrayValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_14(PropertyArray.getCPtr(arrayValue)), true)
1254         {
1255             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1256         }
1257
1258         /// <summary>
1259         /// Creates a map property value.
1260         /// </summary>
1261         /// <param name="mapValue">An array</param>
1262         public PropertyValue(PropertyMap mapValue) : this(NDalicPINVOKE.new_Property_Value__SWIG_15(PropertyMap.getCPtr(mapValue)), true)
1263         {
1264             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1265         }
1266
1267         /// <summary>
1268         /// Creates a PropertyType value.
1269         /// </summary>
1270         /// <param name="type">A PropertyType values</param>
1271         public PropertyValue(PropertyType type) : this(NDalicPINVOKE.new_Property_Value__SWIG_16((int)type), true)
1272         {
1273             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1274         }
1275
1276         /// <summary>
1277         /// Creates a PropertyValue value.
1278         /// </summary>
1279         /// <param name="value">A PropertyValue values</param>
1280         public PropertyValue(PropertyValue value) : this(NDalicPINVOKE.new_Property_Value__SWIG_17(PropertyValue.getCPtr(value)), true)
1281         {
1282             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1283         }
1284
1285         /// <summary>
1286         /// Copy the value.
1287         /// </summary>
1288         /// <param name="value">The value to copy from</param>
1289         /// <returns>The copied value</returns>
1290         internal PropertyValue Assign(PropertyValue value)
1291         {
1292             PropertyValue ret = new PropertyValue(NDalicPINVOKE.Property_Value_Assign(swigCPtr, PropertyValue.getCPtr(value)), false);
1293             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1294             return ret;
1295         }
1296
1297         /// <summary>
1298         /// Queries the type of this property value.
1299         /// </summary>
1300         /// <returns>The type ID</returns>
1301         public PropertyType GetType()
1302         {
1303             PropertyType ret = (PropertyType)NDalicPINVOKE.Property_Value_GetType(swigCPtr);
1304             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1305             return ret;
1306         }
1307
1308         /// <summary>
1309         /// Retrieves a boolean value.
1310         /// </summary>
1311         /// <param name="boolValue">On return, a boolean value</param>
1312         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1313         public bool Get(ref bool boolValue)
1314         {
1315             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_1(swigCPtr, ref boolValue);
1316             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1317             return ret;
1318         }
1319
1320         /// <summary>
1321         /// Retrieves a floating-point value.
1322         /// </summary>
1323         /// <param name="floatValue">On return, a floating-point value</param>
1324         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1325         public bool Get(ref float floatValue)
1326         {
1327             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_2(swigCPtr, ref floatValue);
1328             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1329             return ret;
1330         }
1331
1332         /// <summary>
1333         /// Retrieves a integer value.
1334         /// </summary>
1335         /// <param name="integerValue">On return, a integer value</param>
1336         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1337         public bool Get(ref int integerValue)
1338         {
1339             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_3(swigCPtr, ref integerValue);
1340             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1341             return ret;
1342         }
1343
1344         /// <summary>
1345         /// Retrieves an integer rectangle.
1346         /// </summary>
1347         /// <param name="rect">On return, an integer rectangle</param>
1348         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1349         public bool Get(Rectangle rect)
1350         {
1351             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_4(swigCPtr, Rectangle.getCPtr(rect));
1352             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1353             return ret;
1354         }
1355
1356         /// <summary>
1357         /// Retrieves a vector value.
1358         /// </summary>
1359         /// <param name="vectorValue">On return, a vector value</param>
1360         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1361         public bool Get(Vector2 vectorValue)
1362         {
1363             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_5(swigCPtr, Vector2.getCPtr(vectorValue));
1364             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1365             return ret;
1366         }
1367
1368         /// <summary>
1369         /// Retrieves a vector value.
1370         /// </summary>
1371         /// <param name="vectorValue">On return, a vector value</param>
1372         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1373         public bool Get(Vector3 vectorValue)
1374         {
1375             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_6(swigCPtr, Vector3.getCPtr(vectorValue));
1376             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1377             return ret;
1378         }
1379
1380         /// <summary>
1381         /// Retrieves a vector value.
1382         /// </summary>
1383         /// <param name="vectorValue">On return, a vector value</param>
1384         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1385         public bool Get(Vector4 vectorValue)
1386         {
1387             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_7(swigCPtr, Vector4.getCPtr(vectorValue));
1388             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1389             return ret;
1390         }
1391
1392         internal bool Get(Matrix3 matrixValue)
1393         {
1394             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_8(swigCPtr, Matrix3.getCPtr(matrixValue));
1395             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1396             return ret;
1397         }
1398
1399         internal bool Get(Matrix matrixValue)
1400         {
1401             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_9(swigCPtr, Matrix.getCPtr(matrixValue));
1402             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1403             return ret;
1404         }
1405
1406         internal bool Get(AngleAxis angleAxisValue)
1407         {
1408             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_10(swigCPtr, AngleAxis.getCPtr(angleAxisValue));
1409             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1410             return ret;
1411         }
1412
1413         /// <summary>
1414         /// Retrieves a Rotation value.
1415         /// </summary>
1416         /// <param name="quaternionValue">On return, a Rotation value</param>
1417         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1418         public bool Get(Rotation quaternionValue)
1419         {
1420             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_11(swigCPtr, Rotation.getCPtr(quaternionValue));
1421             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1422             return ret;
1423         }
1424
1425         /// <summary>
1426         /// Retrieves a string property value.
1427         /// </summary>
1428         /// <param name="stringValue">On return, a string</param>
1429         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1430         public bool Get(out string stringValue)
1431         {
1432             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_12(swigCPtr, out stringValue);
1433             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1434             return ret;
1435         }
1436
1437         /// <summary>
1438         /// Retrieves an array property value.
1439         /// </summary>
1440         /// <param name="arrayValue">On return, the array as a vector Property Values</param>
1441         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1442         public bool Get(PropertyArray arrayValue)
1443         {
1444             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_13(swigCPtr, PropertyArray.getCPtr(arrayValue));
1445             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1446             return ret;
1447         }
1448
1449         /// <summary>
1450         /// Retrieves an map property value.
1451         /// </summary>
1452         /// <param name="mapValue">On return, the map as vector of string and Property Value pairs</param>
1453         /// <returns>Returns true if the value is successfully retrieved, false if the type is not convertible</returns>
1454         public bool Get(PropertyMap mapValue)
1455         {
1456             bool ret = NDalicPINVOKE.Property_Value_Get__SWIG_14(swigCPtr, PropertyMap.getCPtr(mapValue));
1457             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1458             return ret;
1459         }
1460
1461         /// <summary>
1462         /// Retrieves the Array API of the Property::Value without copying the contents of the map.
1463         /// </summary>
1464         /// <returns>The Array API of the Property::Value or NULL if not a Property::Array</returns>
1465         public PropertyArray GetArray()
1466         {
1467             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Value_GetArray(swigCPtr);
1468             PropertyArray ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyArray(cPtr, false);
1469             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1470             return ret;
1471         }
1472
1473         /// <summary>
1474         /// Retrieves the Map API of the Property::Value without copying the contents of the map.
1475         /// </summary>
1476         /// <returns>The Map API of the Property::Value or NULL if not a Property::Map</returns>
1477         public PropertyMap GetMap()
1478         {
1479             global::System.IntPtr cPtr = NDalicPINVOKE.Property_Value_GetMap(swigCPtr);
1480             PropertyMap ret = (cPtr == global::System.IntPtr.Zero) ? null : new PropertyMap(cPtr, false);
1481             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1482             return ret;
1483         }
1484
1485     }
1486
1487     /// <summary>
1488     /// This specifies all the property types. <br>
1489     /// Enumeration for the property types supported.
1490     /// </summary>
1491     public enum PropertyType
1492     {
1493         /// <summary>
1494         /// No type
1495         /// </summary>
1496         None,
1497         /// <summary>
1498         /// A boolean type
1499         /// </summary>
1500         Boolean,
1501         /// <summary>
1502         /// A float type
1503         /// </summary>
1504         Float,
1505         /// <summary>
1506         /// An integer type
1507         /// </summary>
1508         Integer,
1509         /// <summary>
1510         /// a vector array of size=2 with float precision
1511         /// </summary>
1512         Vector2,
1513         /// <summary>
1514         /// a vector array of size=3 with float precision
1515         /// </summary>
1516         Vector3,
1517         /// <summary>
1518         /// a vector array of size=4 with float precision
1519         /// </summary>
1520         Vector4,
1521         /// <summary>
1522         /// a 3x3 matrix
1523         /// </summary>
1524         Matrix3,
1525         /// <summary>
1526         /// a 4x4 matrix
1527         /// </summary>
1528         Matrix,
1529         /// <summary>
1530         /// an integer array of size=4
1531         /// </summary>
1532         Rectangle,
1533         /// <summary>
1534         /// either a quaternion or an axis angle rotation
1535         /// </summary>
1536         Rotation,
1537         /// <summary>
1538         /// A string type
1539         /// </summary>
1540         String,
1541         /// <summary>
1542         /// an array of PropertyValue
1543         /// </summary>
1544         Array,
1545         /// <summary>
1546         /// a string key to PropertyValue mapping
1547         /// </summary>
1548         Map
1549     }
1550
1551     /// <summary>
1552     /// This specifies the property access mode types. <br>
1553     /// Enumeration for the access mode for custom properties.
1554     /// </summary>
1555     public enum PropertyAccessMode
1556     {
1557         /// <summary>
1558         /// if the property is read-only
1559         /// </summary>
1560         ReadOnly,
1561         /// <summary>
1562         /// If the property is read/writeable
1563         /// </summary>
1564         ReadWrite,
1565         /// <summary>
1566         /// If the property can be animated or constrained
1567         /// </summary>
1568         Animatable,
1569         /// <summary>
1570         /// The number of access modes
1571         /// </summary>
1572         AccessModeCount
1573     }
1574
1575 }