Manual binding to add getter/setter APIs for various event classes (i.e. Gesture...
[platform/core/uifw/dali-toolkit.git] / plugins / dali-swig / SWIG / dali-gc.i
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( NameSpace, ClassName )
19 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
20     if (!Stage.IsInstalled()) {
21       DisposeQueue.Instance.Add(this);
22       return;
23     }
24
25     lock(this) {
26       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
27         if (swigCMemOwn) {
28           swigCMemOwn = false;
29           NDalicPINVOKE.delete_##ClassName(swigCPtr);
30         }
31         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
32       }
33       global::System.GC.SuppressFinalize(this);
34     }
35   }
36 %}
37 %enddef
38
39 %define DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( NameSpace, ClassName )
40 %typemap(csdestruct_derived, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
41     if (!Stage.IsInstalled()) {
42       DisposeQueue.Instance.Add(this);
43       return;
44     }
45
46     lock(this) {
47       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
48         if (swigCMemOwn) {
49           swigCMemOwn = false;
50           NDalicPINVOKE.delete_##ClassName(swigCPtr);
51         }
52         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
53       }
54       global::System.GC.SuppressFinalize(this);
55       base.Dispose();
56     }
57   }
58 %}
59 %enddef
60
61 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( NameSpace, ClassName )
62 %typemap(csfinalize) NameSpace::ClassName %{
63   ~ClassName() {
64     DisposeQueue.Instance.Add(this);
65   }
66 %}
67 %enddef
68
69 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENAME( NameSpace, ClassName, NewClassName )
70 %typemap(csfinalize) NameSpace::ClassName %{
71   ~NewClassName() {
72     DisposeQueue.Instance.Add(this);
73   }
74 %}
75 %enddef
76
77 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENAME( NameSpace, ClassName, NewClassName )
78 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
79     if (!Stage.IsInstalled()) {
80       DisposeQueue.Instance.Add(this);
81       return;
82     }
83
84     lock(this) {
85       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
86         if (swigCMemOwn) {
87           swigCMemOwn = false;
88           NDalicPINVOKE.delete_##NewClassName(swigCPtr);
89         }
90         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
91       }
92       global::System.GC.SuppressFinalize(this);
93     }
94   }
95 %}
96 %enddef
97
98 %define DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION_RENAME( NameSpace, ClassName, NewClassName )
99 %typemap(csdestruct_derived, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
100     if (!Stage.IsInstalled()) {
101       DisposeQueue.Instance.Add(this);
102       return;
103     }
104
105     lock(this) {
106       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
107         if (swigCMemOwn) {
108           swigCMemOwn = false;
109           NDalicPINVOKE.delete_##NewClassName(swigCPtr);
110         }
111         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
112       }
113       global::System.GC.SuppressFinalize(this);
114       base.Dispose();
115     }
116   }
117 %}
118 %enddef
119
120 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VIDEOVIEWSIGNAL( NameSpace, ClassName )
121 %typemap(csfinalize) NameSpace::ClassName %{
122   ~VideoViewSignal() {
123     DisposeQueue.Instance.Add(this);
124   }
125 %}
126 %enddef
127
128 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VIDEOVIEWSIGNAL( NameSpace, ClassName )
129 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
130     if (!Stage.IsInstalled()) {
131       DisposeQueue.Instance.Add(this);
132       return;
133     }
134
135     lock(this) {
136       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
137         if (swigCMemOwn) {
138           swigCMemOwn = false;
139           NDalicPINVOKE.delete_VideoViewSignal(swigCPtr);
140         }
141         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
142       }
143       global::System.GC.SuppressFinalize(this);
144     }
145   }
146 %}
147 %enddef
148
149 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_APPLICATIONSIGNAL( NameSpace, ClassName )
150 %typemap(csfinalize) NameSpace::ClassName %{
151   ~ApplicationSignal() {
152     DisposeQueue.Instance.Add(this);
153   }
154 %}
155 %enddef
156
157 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_APPLICATIONSIGNAL( NameSpace, ClassName )
158 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
159     if (!Stage.IsInstalled()) {
160       DisposeQueue.Instance.Add(this);
161       return;
162     }
163
164     lock(this) {
165       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
166         if (swigCMemOwn) {
167           swigCMemOwn = false;
168           NDalicPINVOKE.delete_ApplicationSignal(swigCPtr);
169         }
170         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
171       }
172       global::System.GC.SuppressFinalize(this);
173     }
174   }
175 %}
176 %enddef
177
178 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_APPLICATIONCONTROLSIGNAL( NameSpace, ClassName )
179 %typemap(csfinalize) NameSpace::ClassName %{
180   ~ApplicationControlSignal() {
181     DisposeQueue.Instance.Add(this);
182   }
183 %}
184 %enddef
185
186 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_APPLICATIONCONTROLSIGNAL( NameSpace, ClassName )
187 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
188     if (!Stage.IsInstalled()) {
189       DisposeQueue.Instance.Add(this);
190       return;
191     }
192
193     lock(this) {
194       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
195         if (swigCMemOwn) {
196           swigCMemOwn = false;
197           NDalicPINVOKE.delete_ApplicationControlSignal(swigCPtr);
198         }
199         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
200       }
201       global::System.GC.SuppressFinalize(this);
202     }
203   }
204 %}
205 %enddef
206
207 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_IMAGESIGNAL( NameSpace, ClassName )
208 %typemap(csfinalize) NameSpace::ClassName %{
209   ~ImageSignal() {
210     DisposeQueue.Instance.Add(this);
211   }
212 %}
213 %enddef
214
215 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_IMAGESIGNAL( NameSpace, ClassName )
216 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
217     if (!Stage.IsInstalled()) {
218       DisposeQueue.Instance.Add(this);
219       return;
220     }
221
222     lock(this) {
223       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
224         if (swigCMemOwn) {
225           swigCMemOwn = false;
226           NDalicPINVOKE.delete_ImageSignal(swigCPtr);
227         }
228         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
229       }
230       global::System.GC.SuppressFinalize(this);
231     }
232   }
233 %}
234 %enddef
235
236 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RESOURCESIMAGESIGNAL( NameSpace, ClassName )
237 %typemap(csfinalize) NameSpace::ClassName %{
238   ~ResourceImageSignal() {
239     DisposeQueue.Instance.Add(this);
240   }
241 %}
242 %enddef
243
244 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RESOURCESIMAGESIGNAL( NameSpace, ClassName )
245 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
246     if (!Stage.IsInstalled()) {
247       DisposeQueue.Instance.Add(this);
248       return;
249     }
250
251     lock(this) {
252       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
253         if (swigCMemOwn) {
254           swigCMemOwn = false;
255           NDalicPINVOKE.delete_ResourceImageSignal(swigCPtr);
256         }
257         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
258       }
259       global::System.GC.SuppressFinalize(this);
260     }
261   }
262 %}
263 %enddef
264
265 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTINT( NameSpace, ClassName )
266 %typemap(csfinalize) NameSpace::ClassName %{
267   ~RectInteger() {
268     DisposeQueue.Instance.Add(this);
269   }
270 %}
271 %enddef
272
273 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTINT( NameSpace, ClassName )
274 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
275     if (!Stage.IsInstalled()) {
276       DisposeQueue.Instance.Add(this);
277       return;
278     }
279
280     lock(this) {
281       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
282         if (swigCMemOwn) {
283           swigCMemOwn = false;
284           NDalicPINVOKE.delete_RectInteger(swigCPtr);
285         }
286         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
287       }
288       global::System.GC.SuppressFinalize(this);
289     }
290   }
291 %}
292 %enddef
293
294 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTDOUBLE( NameSpace, ClassName )
295 %typemap(csfinalize) NameSpace::ClassName %{
296   ~RectDouble() {
297     DisposeQueue.Instance.Add(this);
298   }
299 %}
300 %enddef
301
302 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTDOUBLE( NameSpace, ClassName )
303 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
304     if (!Stage.IsInstalled()) {
305       DisposeQueue.Instance.Add(this);
306       return;
307     }
308
309     lock(this) {
310       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
311         if (swigCMemOwn) {
312           swigCMemOwn = false;
313           NDalicPINVOKE.delete_RectDouble(swigCPtr);
314         }
315         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
316       }
317       global::System.GC.SuppressFinalize(this);
318     }
319   }
320 %}
321 %enddef
322
323 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTFLOAT( NameSpace, ClassName )
324 %typemap(csfinalize) NameSpace::ClassName %{
325   ~RectFloat() {
326     DisposeQueue.Instance.Add(this);
327   }
328 %}
329 %enddef
330
331 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTFLOAT( NameSpace, ClassName )
332 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
333     if (!Stage.IsInstalled()) {
334       DisposeQueue.Instance.Add(this);
335       return;
336     }
337
338     lock(this) {
339       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
340         if (swigCMemOwn) {
341           swigCMemOwn = false;
342           NDalicPINVOKE.delete_RectFloat(swigCPtr);
343         }
344         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
345       }
346       global::System.GC.SuppressFinalize(this);
347     }
348   }
349 %}
350 %enddef
351
352 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTUNSIGNEDINT( NameSpace, ClassName )
353 %typemap(csfinalize) NameSpace::ClassName %{
354   ~RectUnsignedInteger() {
355     DisposeQueue.Instance.Add(this);
356   }
357 %}
358 %enddef
359
360 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTUNSIGNEDINT( NameSpace, ClassName )
361 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
362     if (!Stage.IsInstalled()) {
363       DisposeQueue.Instance.Add(this);
364       return;
365     }
366
367     lock(this) {
368       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
369         if (swigCMemOwn) {
370           swigCMemOwn = false;
371           NDalicPINVOKE.delete_RectUnsignedInteger(swigCPtr);
372         }
373         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
374       }
375       global::System.GC.SuppressFinalize(this);
376     }
377   }
378 %}
379 %enddef
380
381 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STRINGVALUEPAIR( NameSpace, ClassName )
382 %typemap(csfinalize) NameSpace::ClassName %{
383   ~StringValuePair() {
384     DisposeQueue.Instance.Add(this);
385   }
386 %}
387 %enddef
388
389 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STRINGVALUEPAIR( NameSpace, ClassName )
390 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
391     if (!Stage.IsInstalled()) {
392       DisposeQueue.Instance.Add(this);
393       return;
394     }
395
396     lock(this) {
397       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
398         if (swigCMemOwn) {
399           swigCMemOwn = false;
400           NDalicPINVOKE.delete_StringValuePair(swigCPtr);
401         }
402         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
403       }
404       global::System.GC.SuppressFinalize(this);
405     }
406   }
407 %}
408 %enddef
409
410 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TOUCHCONTAINER( NameSpace, ClassName )
411 %typemap(csfinalize) NameSpace::ClassName %{
412   ~TouchPointContainer() {
413     DisposeQueue.Instance.Add(this);
414   }
415 %}
416 %enddef
417
418 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TOUCHCONTAINER( NameSpace, ClassName )
419 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
420     if (!Stage.IsInstalled()) {
421       DisposeQueue.Instance.Add(this);
422       return;
423     }
424
425     lock(this) {
426       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
427         if (swigCMemOwn) {
428           swigCMemOwn = false;
429           NDalicPINVOKE.delete_TouchPointContainer(swigCPtr);
430         }
431         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
432       }
433       global::System.GC.SuppressFinalize(this);
434     }
435   }
436 %}
437 %enddef
438
439 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_BOOLSIGNAL( NameSpace, ClassName )
440 %typemap(csfinalize) NameSpace::ClassName %{
441   ~BoolSignal() {
442     DisposeQueue.Instance.Add(this);
443   }
444 %}
445 %enddef
446
447 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_BOOLSIGNAL( NameSpace, ClassName )
448 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
449     if (!Stage.IsInstalled()) {
450       DisposeQueue.Instance.Add(this);
451       return;
452     }
453
454     lock(this) {
455       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
456         if (swigCMemOwn) {
457           swigCMemOwn = false;
458           NDalicPINVOKE.delete_BoolSignal(swigCPtr);
459         }
460         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
461       }
462       global::System.GC.SuppressFinalize(this);
463     }
464   }
465 %}
466 %enddef
467
468 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYACTIONSIGNAL( NameSpace, ClassName )
469 %typemap(csfinalize) NameSpace::ClassName %{
470   ~AccessibilityActionSignal() {
471     DisposeQueue.Instance.Add(this);
472   }
473 %}
474 %enddef
475
476 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYACTIONSIGNAL( NameSpace, ClassName )
477 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
478     if (!Stage.IsInstalled()) {
479       DisposeQueue.Instance.Add(this);
480       return;
481     }
482
483     lock(this) {
484       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
485         if (swigCMemOwn) {
486           swigCMemOwn = false;
487           NDalicPINVOKE.delete_AccessibilityActionSignal(swigCPtr);
488         }
489         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
490       }
491       global::System.GC.SuppressFinalize(this);
492     }
493   }
494 %}
495 %enddef
496
497 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYACTIONSCROLLSIGNAL( NameSpace, ClassName )
498 %typemap(csfinalize) NameSpace::ClassName %{
499   ~AccessibilityActionScrollSignal() {
500     DisposeQueue.Instance.Add(this);
501   }
502 %}
503 %enddef
504
505 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYACTIONSCROLLSIGNAL( NameSpace, ClassName )
506 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
507     if (!Stage.IsInstalled()) {
508       DisposeQueue.Instance.Add(this);
509       return;
510     }
511
512     lock(this) {
513       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
514         if (swigCMemOwn) {
515           swigCMemOwn = false;
516           NDalicPINVOKE.delete_AccessibilityActionScrollSignal(swigCPtr);
517         }
518         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
519       }
520       global::System.GC.SuppressFinalize(this);
521     }
522   }
523 %}
524 %enddef
525
526 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYFOCUSSIGNAL( NameSpace, ClassName )
527 %typemap(csfinalize) NameSpace::ClassName %{
528   ~AccessibilityFocusOvershotSignal() {
529     DisposeQueue.Instance.Add(this);
530   }
531 %}
532 %enddef
533
534 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYFOCUSSIGNAL( NameSpace, ClassName )
535 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
536     if (!Stage.IsInstalled()) {
537       DisposeQueue.Instance.Add(this);
538       return;
539     }
540
541     lock(this) {
542       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
543         if (swigCMemOwn) {
544           swigCMemOwn = false;
545           NDalicPINVOKE.delete_AccessibilityFocusOvershotSignal(swigCPtr);
546         }
547         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
548       }
549       global::System.GC.SuppressFinalize(this);
550     }
551   }
552 %}
553 %enddef
554
555 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORINT( NameSpace, ClassName )
556 %typemap(csfinalize) NameSpace::ClassName %{
557   ~VectorInteger() {
558     DisposeQueue.Instance.Add(this);
559   }
560 %}
561 %enddef
562
563 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORINT( NameSpace, ClassName )
564 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
565     if (!Stage.IsInstalled()) {
566       DisposeQueue.Instance.Add(this);
567       return;
568     }
569
570     lock(this) {
571       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
572         if (swigCMemOwn) {
573           swigCMemOwn = false;
574           NDalicPINVOKE.delete_VectorInteger(swigCPtr);
575         }
576         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
577       }
578       global::System.GC.SuppressFinalize(this);
579     }
580   }
581 %}
582 %enddef
583
584 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORFLOAT( NameSpace, ClassName )
585 %typemap(csfinalize) NameSpace::ClassName %{
586   ~VectorFloat() {
587     DisposeQueue.Instance.Add(this);
588   }
589 %}
590 %enddef
591
592 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORFLOAT( NameSpace, ClassName )
593 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
594     if (!Stage.IsInstalled()) {
595       DisposeQueue.Instance.Add(this);
596       return;
597     }
598
599     lock(this) {
600       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
601         if (swigCMemOwn) {
602           swigCMemOwn = false;
603           NDalicPINVOKE.delete_VectorFloat(swigCPtr);
604         }
605         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
606       }
607       global::System.GC.SuppressFinalize(this);
608     }
609   }
610 %}
611 %enddef
612
613 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORUNSIGNEDCHAR( NameSpace, ClassName )
614 %typemap(csfinalize) NameSpace::ClassName %{
615   ~VectorUnsignedChar() {
616     DisposeQueue.Instance.Add(this);
617   }
618 %}
619 %enddef
620
621 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORUNSIGNEDCHAR( NameSpace, ClassName )
622 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
623     if (!Stage.IsInstalled()) {
624       DisposeQueue.Instance.Add(this);
625       return;
626     }
627
628     lock(this) {
629       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
630         if (swigCMemOwn) {
631           swigCMemOwn = false;
632           NDalicPINVOKE.delete_VectorUnsignedChar(swigCPtr);
633         }
634         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
635       }
636       global::System.GC.SuppressFinalize(this);
637     }
638   }
639 %}
640 %enddef
641
642 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORUINT16PAIR( NameSpace, ClassName )
643 %typemap(csfinalize) NameSpace::ClassName %{
644   ~VectorUint16Pair() {
645     DisposeQueue.Instance.Add(this);
646   }
647 %}
648 %enddef
649
650 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORUINT16PAIR( NameSpace, ClassName )
651 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
652     if (!Stage.IsInstalled()) {
653       DisposeQueue.Instance.Add(this);
654       return;
655     }
656
657     lock(this) {
658       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
659         if (swigCMemOwn) {
660           swigCMemOwn = false;
661           NDalicPINVOKE.delete_VectorUint16Pair(swigCPtr);
662         }
663         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
664       }
665       global::System.GC.SuppressFinalize(this);
666     }
667   }
668 %}
669 %enddef
670
671 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TIMERSIGNALTYPE( NameSpace, ClassName )
672 %typemap(csfinalize) NameSpace::ClassName %{
673   ~TimerSignalType() {
674     DisposeQueue.Instance.Add(this);
675   }
676 %}
677 %enddef
678
679 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TIMERSIGNALTYPE( NameSpace, ClassName )
680 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
681     if (!Stage.IsInstalled()) {
682       DisposeQueue.Instance.Add(this);
683       return;
684     }
685
686     lock(this) {
687       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
688         if (swigCMemOwn) {
689           swigCMemOwn = false;
690           NDalicPINVOKE.delete_TimerSignalType(swigCPtr);
691         }
692         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
693       }
694       global::System.GC.SuppressFinalize(this);
695     }
696   }
697 %}
698 %enddef
699
700 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACTOR( NameSpace, ClassName )
701 %typemap(csfinalize) NameSpace::ClassName %{
702   ~ActorSignal() {
703     DisposeQueue.Instance.Add(this);
704   }
705 %}
706 %enddef
707
708 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACTOR( NameSpace, ClassName )
709 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
710     if (!Stage.IsInstalled()) {
711       DisposeQueue.Instance.Add(this);
712       return;
713     }
714
715     lock(this) {
716       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
717         if (swigCMemOwn) {
718           swigCMemOwn = false;
719           NDalicPINVOKE.delete_ActorSignal(swigCPtr);
720         }
721         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
722       }
723       global::System.GC.SuppressFinalize(this);
724     }
725   }
726 %}
727 %enddef
728
729 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ANIMATIONSIGNAL( NameSpace, ClassName )
730 %typemap(csfinalize) NameSpace::ClassName %{
731   ~AnimationSignal() {
732     DisposeQueue.Instance.Add(this);
733   }
734 %}
735 %enddef
736
737 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ANIMATIONSIGNAL( NameSpace, ClassName )
738 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
739     if (!Stage.IsInstalled()) {
740       DisposeQueue.Instance.Add(this);
741       return;
742     }
743
744     lock(this) {
745       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
746         if (swigCMemOwn) {
747           swigCMemOwn = false;
748           NDalicPINVOKE.delete_AnimationSignal(swigCPtr);
749         }
750         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
751       }
752       global::System.GC.SuppressFinalize(this);
753     }
754   }
755 %}
756 %enddef
757
758 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_BUTTON( NameSpace, ClassName )
759 %typemap(csfinalize) NameSpace::ClassName %{
760   ~ButtonSignal() {
761     DisposeQueue.Instance.Add(this);
762   }
763 %}
764 %enddef
765
766 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_BUTTON( NameSpace, ClassName )
767 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
768     if (!Stage.IsInstalled()) {
769       DisposeQueue.Instance.Add(this);
770       return;
771     }
772
773     lock(this) {
774       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
775         if (swigCMemOwn) {
776           swigCMemOwn = false;
777           NDalicPINVOKE.delete_ButtonSignal(swigCPtr);
778         }
779         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
780       }
781       global::System.GC.SuppressFinalize(this);
782     }
783   }
784 %}
785 %enddef
786
787 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PAGETURNSIGNAL( NameSpace, ClassName )
788 %typemap(csfinalize) NameSpace::ClassName %{
789   ~PageTurnSignal() {
790     DisposeQueue.Instance.Add(this);
791   }
792 %}
793 %enddef
794
795 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PAGETURNSIGNAL( NameSpace, ClassName )
796 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
797     if (!Stage.IsInstalled()) {
798       DisposeQueue.Instance.Add(this);
799       return;
800     }
801
802     lock(this) {
803       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
804         if (swigCMemOwn) {
805           swigCMemOwn = false;
806           NDalicPINVOKE.delete_PageTurnSignal(swigCPtr);
807         }
808         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
809       }
810       global::System.GC.SuppressFinalize(this);
811     }
812   }
813 %}
814 %enddef
815
816 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PAGEVIEWSIGNAL( NameSpace, ClassName )
817 %typemap(csfinalize) NameSpace::ClassName %{
818   ~PagePanSignal() {
819     DisposeQueue.Instance.Add(this);
820   }
821 %}
822 %enddef
823
824 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PAGEVIEWSIGNAL( NameSpace, ClassName )
825 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
826     if (!Stage.IsInstalled()) {
827       DisposeQueue.Instance.Add(this);
828       return;
829     }
830
831     lock(this) {
832       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
833         if (swigCMemOwn) {
834           swigCMemOwn = false;
835           NDalicPINVOKE.delete_PagePanSignal(swigCPtr);
836         }
837         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
838       }
839       global::System.GC.SuppressFinalize(this);
840     }
841   }
842 %}
843 %enddef
844
845 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PANGESTURESIGNAL( NameSpace, ClassName )
846 %typemap(csfinalize) NameSpace::ClassName %{
847   ~PanGestureDetectedSignal() {
848     DisposeQueue.Instance.Add(this);
849   }
850 %}
851 %enddef
852
853 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PANGESTURESIGNAL( NameSpace, ClassName )
854 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
855     if (!Stage.IsInstalled()) {
856       DisposeQueue.Instance.Add(this);
857       return;
858     }
859
860     lock(this) {
861       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
862         if (swigCMemOwn) {
863           swigCMemOwn = false;
864           NDalicPINVOKE.delete_PanGestureDetectedSignal(swigCPtr);
865         }
866         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
867       }
868       global::System.GC.SuppressFinalize(this);
869     }
870   }
871 %}
872 %enddef
873
874 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PINCHGESTURESIGNAL( NameSpace, ClassName )
875 %typemap(csfinalize) NameSpace::ClassName %{
876   ~PinchGestureDetectedSignal() {
877     DisposeQueue.Instance.Add(this);
878   }
879 %}
880 %enddef
881
882 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PINCHGESTURESIGNAL( NameSpace, ClassName )
883 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
884     if (!Stage.IsInstalled()) {
885       DisposeQueue.Instance.Add(this);
886       return;
887     }
888
889     lock(this) {
890       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
891         if (swigCMemOwn) {
892           swigCMemOwn = false;
893           NDalicPINVOKE.delete_PinchGestureDetectedSignal(swigCPtr);
894         }
895         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
896       }
897       global::System.GC.SuppressFinalize(this);
898     }
899   }
900 %}
901 %enddef
902
903 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENDERTASKSIGNAL( NameSpace, ClassName )
904 %typemap(csfinalize) NameSpace::ClassName %{
905   ~RenderTaskSignal() {
906     DisposeQueue.Instance.Add(this);
907   }
908 %}
909 %enddef
910
911 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENDERTASKSIGNAL( NameSpace, ClassName )
912 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
913     if (!Stage.IsInstalled()) {
914       DisposeQueue.Instance.Add(this);
915       return;
916     }
917
918     lock(this) {
919       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
920         if (swigCMemOwn) {
921           swigCMemOwn = false;
922           NDalicPINVOKE.delete_RenderTaskSignal(swigCPtr);
923         }
924         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
925       }
926       global::System.GC.SuppressFinalize(this);
927     }
928   }
929 %}
930 %enddef
931
932 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SCROLLABLESIGNAL( NameSpace, ClassName )
933 %typemap(csfinalize) NameSpace::ClassName %{
934   ~ScrollableSignal() {
935     DisposeQueue.Instance.Add(this);
936   }
937 %}
938 %enddef
939
940 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SCROLLABLESIGNAL( NameSpace, ClassName )
941 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
942     if (!Stage.IsInstalled()) {
943       DisposeQueue.Instance.Add(this);
944       return;
945     }
946
947     lock(this) {
948       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
949         if (swigCMemOwn) {
950           swigCMemOwn = false;
951           NDalicPINVOKE.delete_ScrollableSignal(swigCPtr);
952         }
953         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
954       }
955       global::System.GC.SuppressFinalize(this);
956     }
957   }
958 %}
959 %enddef
960
961 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SCROLLVIEWSIGNAL( NameSpace, ClassName )
962 %typemap(csfinalize) NameSpace::ClassName %{
963   ~ScrollViewSnapStartedSignal() {
964     DisposeQueue.Instance.Add(this);
965   }
966 %}
967 %enddef
968
969 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SCROLLVIEWSIGNAL( NameSpace, ClassName )
970 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
971     if (!Stage.IsInstalled()) {
972       DisposeQueue.Instance.Add(this);
973       return;
974     }
975
976     lock(this) {
977       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
978         if (swigCMemOwn) {
979           swigCMemOwn = false;
980           NDalicPINVOKE.delete_ScrollViewSnapStartedSignal(swigCPtr);
981         }
982         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
983       }
984       global::System.GC.SuppressFinalize(this);
985     }
986   }
987 %}
988 %enddef
989
990 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SLIDERVALUECHANGEDSIGNAL( NameSpace, ClassName )
991 %typemap(csfinalize) NameSpace::ClassName %{
992   ~SliderValueChangedSignal() {
993     DisposeQueue.Instance.Add(this);
994   }
995 %}
996 %enddef
997
998 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SLIDERVALUECHANGEDSIGNAL( NameSpace, ClassName )
999 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1000     if (!Stage.IsInstalled()) {
1001       DisposeQueue.Instance.Add(this);
1002       return;
1003     }
1004
1005     lock(this) {
1006       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1007         if (swigCMemOwn) {
1008           swigCMemOwn = false;
1009           NDalicPINVOKE.delete_SliderValueChangedSignal(swigCPtr);
1010         }
1011         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1012       }
1013       global::System.GC.SuppressFinalize(this);
1014     }
1015   }
1016 %}
1017 %enddef
1018
1019 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SLIDERMARKCHANGEDSIGNAL( NameSpace, ClassName )
1020 %typemap(csfinalize) NameSpace::ClassName %{
1021   ~SliderMarkReachedSignal() {
1022     DisposeQueue.Instance.Add(this);
1023   }
1024 %}
1025 %enddef
1026
1027 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SLIDERMARKCHANGEDSIGNAL( NameSpace, ClassName )
1028 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1029     if (!Stage.IsInstalled()) {
1030       DisposeQueue.Instance.Add(this);
1031       return;
1032     }
1033
1034     lock(this) {
1035       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1036         if (swigCMemOwn) {
1037           swigCMemOwn = false;
1038           NDalicPINVOKE.delete_SliderMarkReachedSignal(swigCPtr);
1039         }
1040         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1041       }
1042       global::System.GC.SuppressFinalize(this);
1043     }
1044   }
1045 %}
1046 %enddef
1047
1048 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STAGESIGNAL( NameSpace, ClassName )
1049 %typemap(csfinalize) NameSpace::ClassName %{
1050   ~StageWheelSignal() {
1051     DisposeQueue.Instance.Add(this);
1052   }
1053 %}
1054 %enddef
1055
1056 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STAGESIGNAL( NameSpace, ClassName )
1057 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1058     if (!Stage.IsInstalled()) {
1059       DisposeQueue.Instance.Add(this);
1060       return;
1061     }
1062
1063     lock(this) {
1064       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1065         if (swigCMemOwn) {
1066           swigCMemOwn = false;
1067           NDalicPINVOKE.delete_StageWheelSignal(swigCPtr);
1068         }
1069         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1070       }
1071       global::System.GC.SuppressFinalize(this);
1072     }
1073   }
1074 %}
1075 %enddef
1076
1077 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STYLECHANGEDSIGNAL( NameSpace, ClassName )
1078 %typemap(csfinalize) NameSpace::ClassName %{
1079   ~StyleChangedSignal() {
1080     DisposeQueue.Instance.Add(this);
1081   }
1082 %}
1083 %enddef
1084
1085 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STYLECHANGEDSIGNAL( NameSpace, ClassName )
1086 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1087     if (!Stage.IsInstalled()) {
1088       DisposeQueue.Instance.Add(this);
1089       return;
1090     }
1091
1092     lock(this) {
1093       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1094         if (swigCMemOwn) {
1095           swigCMemOwn = false;
1096           NDalicPINVOKE.delete_StyleChangedSignal(swigCPtr);
1097         }
1098         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1099       }
1100       global::System.GC.SuppressFinalize(this);
1101     }
1102   }
1103 %}
1104 %enddef
1105
1106 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TAPGESTURESIGNAL( NameSpace, ClassName )
1107 %typemap(csfinalize) NameSpace::ClassName %{
1108   ~TapGestureDetectedSignal() {
1109     DisposeQueue.Instance.Add(this);
1110   }
1111 %}
1112 %enddef
1113
1114 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TAPGESTURESIGNAL( NameSpace, ClassName )
1115 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1116     if (!Stage.IsInstalled()) {
1117       DisposeQueue.Instance.Add(this);
1118       return;
1119     }
1120
1121     lock(this) {
1122       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1123         if (swigCMemOwn) {
1124           swigCMemOwn = false;
1125           NDalicPINVOKE.delete_TapGestureDetectedSignal(swigCPtr);
1126         }
1127         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1128       }
1129       global::System.GC.SuppressFinalize(this);
1130     }
1131   }
1132 %}
1133 %enddef
1134
1135 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TEXTFIELDSIGNAL( NameSpace, ClassName )
1136 %typemap(csfinalize) NameSpace::ClassName %{
1137   ~TextFieldSignal() {
1138     DisposeQueue.Instance.Add(this);
1139   }
1140 %}
1141 %enddef
1142
1143 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TEXTFIELDSIGNAL( NameSpace, ClassName )
1144 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1145     if (!Stage.IsInstalled()) {
1146       DisposeQueue.Instance.Add(this);
1147       return;
1148     }
1149
1150     lock(this) {
1151       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1152         if (swigCMemOwn) {
1153           swigCMemOwn = false;
1154           NDalicPINVOKE.delete_TextFieldSignal(swigCPtr);
1155         }
1156         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1157       }
1158       global::System.GC.SuppressFinalize(this);
1159     }
1160   }
1161 %}
1162 %enddef
1163
1164 %define DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TEXTEDITORSIGNAL( NameSpace, ClassName )
1165 %typemap(csfinalize) NameSpace::ClassName %{
1166   ~TextEditorSignal() {
1167     DisposeQueue.Instance.Add(this);
1168   }
1169 %}
1170 %enddef
1171
1172 %define DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TEXTEDITORSIGNAL( NameSpace, ClassName )
1173 %typemap(csdestruct, methodname="Dispose", methodmodifiers="public") NameSpace::ClassName %{{
1174     if (!Stage.IsInstalled()) {
1175       DisposeQueue.Instance.Add(this);
1176       return;
1177     }
1178
1179     lock(this) {
1180       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
1181         if (swigCMemOwn) {
1182           swigCMemOwn = false;
1183           NDalicPINVOKE.delete_TextEditorSignal(swigCPtr);
1184         }
1185         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1186       }
1187       global::System.GC.SuppressFinalize(this);
1188     }
1189   }
1190 %}
1191 %enddef
1192
1193 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Any );
1194 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Any );
1195 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Actor );
1196 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Actor );
1197 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, AlphaFunction );
1198 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, AlphaFunction );
1199 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Animation );
1200 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Animation );
1201 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, AngleAxis );
1202 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, AngleAxis );
1203
1204 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, BaseObject );
1205 //DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, BaseObject );
1206 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, RefObject );
1207 //DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, RefObject );
1208
1209 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Handle );
1210 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Handle );
1211 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, ObjectRegistry );
1212 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, ObjectRegistry );
1213 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, BaseHandle );
1214 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, BaseHandle );
1215 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, BufferImage );
1216 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, BufferImage );
1217
1218 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, CameraActor );
1219 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, CameraActor );
1220 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, CustomActor );
1221 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, CustomActor );
1222 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, ConnectionTracker );
1223 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, ConnectionTracker );
1224 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, ConnectionTrackerInterface );
1225 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, ConnectionTrackerInterface );
1226
1227 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Degree );
1228 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Degree );
1229 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, EncodedBufferImage );
1230 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, EncodedBufferImage );
1231 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, FrameBuffer );
1232 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, FrameBuffer );
1233 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, FrameBufferImage );
1234 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, FrameBufferImage );
1235
1236 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Geometry );
1237 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Geometry );
1238 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Gesture );
1239 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Gesture );
1240 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, GestureDetector );
1241 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, GestureDetector );
1242 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TapGesture );
1243 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, TapGesture );
1244 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TapGestureDetector );
1245 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, TapGestureDetector );
1246 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PanGesture );
1247 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PanGesture );
1248 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PanGestureDetector );
1249 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PanGestureDetector );
1250 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PinchGesture );
1251 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PinchGesture );
1252 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PinchGestureDetector );
1253 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PinchGestureDetector );
1254 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, LongPressGesture );
1255 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, LongPressGesture );
1256 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, LongPressGestureDetector );
1257 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, LongPressGestureDetector );
1258
1259 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENAME( Dali, KeyEvent, Key );
1260 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENAME( Dali, KeyEvent, Key );
1261 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENAME( Dali, HoverEvent, Hover );
1262 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENAME( Dali, HoverEvent, Hover );
1263 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TouchEvent );
1264 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, TouchEvent );
1265 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENAME( Dali, WheelEvent, Wheel );
1266 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENAME( Dali, WheelEvent, Wheel );
1267
1268 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Renderer );
1269 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Renderer );
1270 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, RenderTask );
1271 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, RenderTask );
1272 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, RenderTaskList );
1273 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, RenderTaskList );
1274 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, RelayoutContainer );
1275 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, RelayoutContainer );
1276 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Radian );
1277 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Radian );
1278
1279 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Quaternion );
1280 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Quaternion );
1281 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Matrix );
1282 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Matrix );
1283 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Matrix3 );
1284 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Matrix3 );
1285
1286 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, RulerPtr );
1287 //DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, RulerPtr );
1288
1289 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Layer );
1290 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Layer );
1291 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, KeyFrames );
1292 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, KeyFrames );
1293
1294 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Stage );
1295 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Stage );
1296 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Sampler );
1297 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Sampler );
1298 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Shader );
1299 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Shader );
1300
1301 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Vector2 );
1302 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Vector2 );
1303 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Vector3 );
1304 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Vector3 );
1305 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Vector4 );
1306 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Vector4 );
1307 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, VectorBase );
1308 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, VectorBase );
1309
1310 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Image );
1311 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Image );
1312 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, NativeImage );
1313 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, NativeImage );
1314 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, NinePatchImage );
1315 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, NinePatchImage );
1316 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, ResourceImage );
1317 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, ResourceImage );
1318
1319 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Path );
1320 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Path );
1321 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Property );
1322 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Property );
1323 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PropertyBuffer );
1324 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PropertyBuffer );
1325 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PropertyCondition );
1326 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PropertyCondition );
1327 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PropertyNotification );
1328 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PropertyNotification );
1329 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PixelData );
1330 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PixelData );
1331
1332 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Uint16Pair );
1333 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, Uint16Pair );
1334
1335 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TypeInfo );
1336 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, TypeInfo );
1337 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Texture );
1338 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Texture );
1339 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TextureSet );
1340 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, TextureSet );
1341
1342 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TimePeriod );
1343 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, TimePeriod );
1344 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, LinearConstrainer );
1345 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, LinearConstrainer );
1346 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, PathConstrainer );
1347 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, PathConstrainer );
1348
1349 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, TouchPoint );
1350 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali, TouchPoint );
1351 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENAME( Dali, TouchData, Touch );
1352 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION_RENAME( Dali, TouchData, Touch );
1353
1354 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Application );
1355 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Application );
1356 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, DragAndDropDetector );
1357 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, DragAndDropDetector );
1358 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Timer );
1359 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Timer );
1360 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali, Window );
1361 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali, Window );
1362
1363 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, AccessibilityManager );
1364 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, AccessibilityManager );
1365 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Alignment );
1366 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Alignment );
1367
1368 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Button );
1369 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Button );
1370 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, CheckBoxButton );
1371 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, CheckBoxButton );
1372 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, PushButton );
1373 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, PushButton );
1374 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, RadioButton );
1375 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, RadioButton );
1376 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Builder );
1377 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Builder );
1378
1379 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, View );
1380 //DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, View );
1381 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ViewImpl );
1382 //DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ViewImpl );
1383
1384 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, FlexContainer );
1385 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, FlexContainer );
1386 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, GaussianBlurView );
1387 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, GaussianBlurView );
1388
1389 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ImageView );
1390 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ImageView );
1391 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ItemView );
1392 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ItemView );
1393 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ItemFactory );
1394 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali::Toolkit, ItemFactory );
1395 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ItemLayout );
1396 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ItemLayout );
1397 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ItemRange );
1398 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali::Toolkit, ItemRange );
1399
1400 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Model3dView );
1401 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Model3dView );
1402
1403 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, PageFactory );
1404 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION( Dali::Toolkit, PageFactory );
1405 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, PageTurnLandscapeView );
1406 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, PageTurnLandscapeView );
1407 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, PageTurnPortraitView );
1408 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, PageTurnPortraitView );
1409 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, PageTurnView );
1410 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, PageTurnView );
1411 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Popup );
1412 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Popup );
1413 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ProgressBar );
1414 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ProgressBar );
1415
1416 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Scrollable );
1417 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Scrollable );
1418 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ScrollBar );
1419 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ScrollBar );
1420 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ScrollView );
1421 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ScrollView );
1422 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ScrollViewEffect );
1423 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ScrollViewEffect );
1424 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, ScrollViewPagePathEffect );
1425 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, ScrollViewPagePathEffect );
1426 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, StyleManager );
1427 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, StyleManager );
1428 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, Slider );
1429 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, Slider );
1430
1431 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, TableView );
1432 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, TableView );
1433 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, TextEditor );
1434 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, TextEditor );
1435 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, TextField );
1436 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, TextField );
1437 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, TextLabel );
1438 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, TextLabel );
1439
1440 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, VideoView );
1441 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, VideoView );
1442 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, VisualBase );
1443 //DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, VisualBase);
1444 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION( Dali::Toolkit, VisualFactory );
1445 DALI_CREATE_CUSTOM_DISPOSE_DERIVED_FUNCTION( Dali::Toolkit, VisualFactory );
1446
1447 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_APPLICATIONSIGNAL( Dali, Signal<void(Dali::Application&)>);
1448 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_APPLICATIONSIGNAL( Dali, Signal<void(Dali::Application&)>);
1449 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_APPLICATIONCONTROLSIGNAL( Dali, Signal<void(Dali::Application&, void*)>);
1450 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_APPLICATIONCONTROLSIGNAL( Dali, Signal<void(Dali::Application&, void*)>);
1451
1452 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VIDEOVIEWSIGNAL( Dali, Signal<void(Dali::Toolkit::VideoView&)>);
1453 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VIDEOVIEWSIGNAL( Dali, Signal<void(Dali::Toolkit::VideoView&)>);
1454
1455 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_IMAGESIGNAL( Dali, Signal<void(Dali::Image)>);
1456 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_IMAGESIGNAL( Dali, Signal<void(Dali::Image)>);
1457 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RESOURCESIMAGESIGNAL( Dali, Signal<void(Dali::ResourceImage)>);
1458 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RESOURCESIMAGESIGNAL( Dali, Signal<void(Dali::ResourceImage)>);
1459
1460 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTINT( Dali, Rect<int>);
1461 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTINT( Dali, Rect<int>);
1462 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTDOUBLE( Dali, Rect<double>);
1463 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTDOUBLE( Dali, Rect<double>);
1464 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTFLOAT( Dali, Rect<float>);
1465 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTFLOAT( Dali, Rect<float>);
1466 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RECTUNSIGNEDINT( Dali, Rect<unsigned int>);
1467 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RECTUNSIGNEDINT( Dali, Rect<unsigned int>);
1468 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TOUCHCONTAINER( std, vector<Dali::TouchPoint>);
1469 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TOUCHCONTAINER( std, vector<Dali::TouchPoint>);
1470
1471 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORINT( Dali, Vector<int>);
1472 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORINT( Dali, Vector<int>);
1473 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORFLOAT( Dali, Vector<float>);
1474 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORFLOAT( Dali, Vector<float>);
1475 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORUNSIGNEDCHAR( Dali, Vector<unsigned char>);
1476 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORUNSIGNEDCHAR( Dali, Vector<unsigned char>);
1477 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_VECTORUINT16PAIR( Dali, Vector<Dali::Uint16Pair>);
1478 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_VECTORUINT16PAIR( Dali, Vector<Dali::Uint16Pair>);
1479
1480 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYACTIONSIGNAL( Dali, Signal<bool(Dali::Toolkit::AccessibilityManager&)>);
1481 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYACTIONSIGNAL( Dali, Signal<bool(Dali::Toolkit::AccessibilityManager&)>);
1482 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYACTIONSCROLLSIGNAL( Dali, Signal<bool(Dali::Toolkit::AccessibilityManager&, const Dali::TouchEvent&)>);
1483 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYACTIONSCROLLSIGNAL( Dali, Signal<bool(Dali::Toolkit::AccessibilityManager&, const Dali::TouchEvent&)>);
1484 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACCESSIBILITYFOCUSSIGNAL( Dali, Signal<void(Dali::Actor, Dali::Toolkit::AccessibilityManager::FocusOvershotDirection)>);
1485 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACCESSIBILITYFOCUSSIGNAL( Dali, Signal<void(Dali::Actor, Dali::Toolkit::AccessibilityManager::FocusOvershotDirection)>);
1486 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STRINGVALUEPAIR( Dali, pair<std::string, Dali::Property::Value>);
1487 //DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STRINGVALUEPAIR( Dali, pair<std::string, Dali::Property::Value>);
1488 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_BOOLSIGNAL( Dali, Signal<bool()>);
1489 //DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_BOOLSIGNAL( Dali, Signal<bool()>);
1490 //DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TIMERSIGNALTYPE( Dali, Signal<bool()>);
1491 //DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TIMERSIGNALTYPE( Dali, Signal<bool()>);
1492
1493 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ACTOR( Dali, Signal<void (Dali::Actor)>);
1494 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ACTOR( Dali, Signal<void (Dali::Actor)>);
1495
1496 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_ANIMATIONSIGNAL( Dali, Signal<void(Dali::Animation&)>);
1497 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_ANIMATIONSIGNAL( Dali, Signal<void(Dali::Animation&)>);
1498
1499 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_BUTTON( Dali, Signal<bool(Dali::Toolkit::Button)>);
1500 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_BUTTON( Dali, Signal<bool(Dali::Toolkit::Button)>);
1501
1502 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PAGETURNSIGNAL( Dali, Signal<void(Dali::Toolkit::PageTurnView, unsigned int, bool)>);
1503 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PAGETURNSIGNAL( Dali, Signal<void(Dali::Toolkit::PageTurnView, unsigned int, bool)>);
1504 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PAGEVIEWSIGNAL( Dali, Signal<void(Dali::Toolkit::PageTurnView)>);
1505 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PAGEVIEWSIGNAL( Dali, Signal<void(Dali::Toolkit::PageTurnView)>);
1506
1507 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PANGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::PanGesture&)>);
1508 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PANGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::PanGesture&)>);
1509
1510 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_PINCHGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::PinchGesture&)>);
1511 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_PINCHGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::PinchGesture&)>);
1512
1513 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_RENDERTASKSIGNAL( Dali, Signal<void(Dali::RenderTask&)>);
1514 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_RENDERTASKSIGNAL( Dali, Signal<void(Dali::RenderTask&)>);
1515
1516 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SCROLLABLESIGNAL( Dali, Signal< void(const Dali::Vector2&)>);
1517 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SCROLLABLESIGNAL( Dali, Signal< void(const Dali::Vector2&)>);
1518
1519 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SCROLLVIEWSIGNAL( Dali, Signal< void(const Dali::Toolkit::ScrollView::SnapEvent&)>);
1520 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SCROLLVIEWSIGNAL( Dali, Signal< void(const Dali::Toolkit::ScrollView::SnapEvent&)>);
1521
1522 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SLIDERVALUECHANGEDSIGNAL( Dali, Signal<bool(Dali::Toolkit::Slider, float)>);
1523 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SLIDERVALUECHANGEDSIGNAL( Dali, Signal<bool(Dali::Toolkit::Slider, float)>);
1524 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_SLIDERMARKCHANGEDSIGNAL( Dali, Signal<bool(Dali::Toolkit::Slider, int)>);
1525 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_SLIDERMARKCHANGEDSIGNAL( Dali, Signal<bool(Dali::Toolkit::Slider, int)>);
1526
1527 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STAGESIGNAL( Dali, Signal<void (const Dali::WheelEvent&)>);
1528 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STAGESIGNAL( Dali, Signal<void (const Dali::WheelEvent&)>);
1529
1530 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_STYLECHANGEDSIGNAL( Dali, Signal<void(Dali::Toolkit::StyleManager, Dali::StyleChange::Type)>);
1531 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_STYLECHANGEDSIGNAL( Dali, Signal<void(Dali::Toolkit::StyleManager, Dali::StyleChange::Type)>);
1532
1533 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TAPGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::TapGesture&)>);
1534 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TAPGESTURESIGNAL( Dali, Signal<void (Dali::Actor, const Dali::TapGesture&)>);
1535
1536 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TEXTEDITORSIGNAL( Dali, Signal<void(Dali::Toolkit::TextEditor)>);
1537 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TEXTEDITORSIGNAL( Dali, Signal<void(Dali::Toolkit::TextEditor)>);
1538
1539 DALI_CREATE_CUSTOM_DESTRUCTOR_FUNCTION_TEXTFIELDSIGNAL( Dali, Signal<void(Dali::Toolkit::TextField)>);
1540 DALI_CREATE_CUSTOM_DISPOSE_FUNCTION_TEXTFIELDSIGNAL( Dali, Signal<void(Dali::Toolkit::TextField)>);