Add C# Bindings for Actor ScreenPosition
[platform/core/uifw/dali-toolkit.git] / plugins / dali-swig / SWIG / events / actor-event.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 ACTOR_EVENTHANDLER_TYPEMAP_EVENTARG(NameSpace, ClassName)
19 %typemap(csimports) NameSpace::ClassName %{
20     using System;
21     using System.Runtime.InteropServices;
22 %}
23
24 %enddef
25
26 %define ACTOR_EVENTHANDLER_TYPEMAP_HELPER(NameSpace, ClassName)
27   %typemap(cscode) NameSpace::ClassName %{
28
29     public static ClassName Get ## ClassName ## FromPtr(global::System.IntPtr cPtr) {
30       ClassName ret = new ClassName(cPtr, false);
31       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
32       return ret;
33     }
34
35     public IntPtr GetPtrfrom ## ClassName ()
36     {
37        return (IntPtr)swigCPtr;
38     }
39
40     public Position CurrentPosition
41     {
42       get
43       {
44         return GetCurrentPosition();
45       }
46     }
47
48     public Size3D CurrentSize
49     {
50       get
51       {
52         return GetCurrentSize();
53       }
54     }
55
56     public Actor Parent
57     {
58       get
59       {
60         return GetParent();
61       }
62     }
63
64    public bool Visibility
65    {
66       get
67       {
68         return IsVisible();
69       }
70    }
71
72     public float Opacity
73     {
74       get
75       {
76         float temp = 0;
77         GetProperty( Actor.Property.OPACITY ).Get( ref temp );
78         return temp;
79       }
80       set
81       {
82         SetProperty( Actor.Property.OPACITY, new Dali.Property.Value( value ) );
83       }
84     }
85
86    public Vector2 ScreenPosition
87    {
88       get
89       {
90         Vector2 temp = new Vector2( 0.0f, 0.0f );
91         GetProperty( Actor.Property.SCREEN_POSITION ).Get( temp );
92         return temp;
93       }
94    }
95
96     public bool StateFocusEnable
97     {
98       set
99       {
100         SetKeyboardFocusable(value);
101       }
102       get
103       {
104         return IsKeyboardFocusable();
105       }
106     }
107
108     public bool IsOnStage
109     {
110       get
111       {
112         return OnStage();
113       }
114     }
115
116     public int SiblingOrder
117     {
118       get
119       {
120         int temp = 0;
121         GetProperty( Actor.Property.SIBLING_ORDER ).Get( ref temp );
122         return temp;
123       }
124       set
125       {
126         SetProperty( Actor.Property.SIBLING_ORDER, new Dali.Property.Value( value ) );
127       }
128     }
129
130     public void Show()
131     {
132       SetVisible(true);
133     }
134
135     public void Hide()
136     {
137       SetVisible(false);
138     }
139
140     public void Raise()
141     {
142       NDalicPINVOKE.Raise(swigCPtr);
143       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
144     }
145
146     public void Lower()
147     {
148       NDalicPINVOKE.Lower(swigCPtr);
149       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
150     }
151
152     public void RaiseToTop()
153     {
154       NDalicPINVOKE.RaiseToTop(swigCPtr);
155       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
156     }
157
158     public void LowerToBottom()
159     {
160       NDalicPINVOKE.LowerToBottom(swigCPtr);
161       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
162     }
163
164     public void RaiseAbove(Actor target)
165     {
166       NDalicPINVOKE.RaiseAbove(swigCPtr, Actor.getCPtr(target));
167       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
168     }
169
170     public void LowerBelow(Actor target)
171     {
172       NDalicPINVOKE.RaiseAbove(swigCPtr, Actor.getCPtr(target));
173       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
174     }
175
176 %}
177
178 %enddef
179
180 %define DALI_ACTOR_EVENTHANDLER_PARAM( NameSpace, ClassName)
181
182 ACTOR_EVENTHANDLER_TYPEMAP_EVENTARG( NameSpace, ClassName);
183 ACTOR_EVENTHANDLER_TYPEMAP_HELPER( NameSpace, ClassName);
184
185 %enddef
186
187 namespace Dali
188 {
189   DALI_ACTOR_EVENTHANDLER_PARAM( Dali, Actor);
190 }