[dali_2.3.13] Merge branch 'devel/master'
[platform/core/uifw/dali-csharp-binder.git] / dali-csharp-binder / dali-adaptor / clipboard-wrap.cpp
1 /*
2  * Copyright (c) 2023 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 SWIGSTDCALL
19
20 // INCLUDES
21 #include <dali/devel-api/adaptor-framework/clipboard.h>
22 #include <dali/integration-api/debug.h>
23
24 // INTERNAL INCLUDES
25 #include <dali-csharp-binder/common/common.h>
26
27 using namespace Dali;
28
29 /* Callback for returning strings to C# without leaking memory */
30 typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *);
31 extern SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback;
32
33
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37
38
39 SWIGINTERN bool Dali_Signal_Dali_Adaptor_Clipboard_Empty(Dali::Signal<void (Dali::Clipboard)> const *self)
40 {
41   return self->Empty();
42 }
43
44 SWIGINTERN std::size_t Dali_Signal_Dali_Adaptor_Clipboard_GetConnectionCount(Dali::Signal<void (Dali::Clipboard)> const *self)
45 {
46   return self->GetConnectionCount();
47 }
48
49 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Connect(Dali::Signal<void (Dali::Clipboard)> *self, void (*func)(Dali::Clipboard))
50 {
51   self->Connect(func);
52 }
53
54 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Disconnect(Dali::Signal<void (Dali::Clipboard)> *self, void (*func)(Dali::Clipboard))
55 {
56   self->Disconnect(func);
57 }
58
59 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Emit(Dali::Signal<void (Dali::Clipboard)> *self, Dali::Clipboard clipboard)
60 {
61   self->Emit(clipboard);
62 }
63
64 SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_Clipboard_Get()
65 {
66   void *pClipboard = nullptr;
67   Dali::Clipboard clipboard;
68   try
69   {
70     clipboard = Dali::Clipboard::Get();
71   } CALL_CATCH_EXCEPTION(0);
72   pClipboard = new Dali::Clipboard((const Dali::Clipboard &)clipboard);
73
74   return pClipboard;
75 }
76
77 SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_Clipboard_SetData(void * argClipboard, char * argMimeType, char * argData)
78 {
79   Dali::Clipboard *clipboard = (Dali::Clipboard *) 0;
80   bool result = false;
81
82   clipboard = (Dali::Clipboard *)argClipboard;
83   {
84     Dali::Clipboard::ClipData clipData(argMimeType, argData);
85     try
86     {
87       result = clipboard->SetData(clipData);
88     } CALL_CATCH_EXCEPTION(0);
89   }
90
91   return result;
92 }
93
94 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Clipboard_GetData(void * argClipboard, char * argMimeType)
95 {
96   Dali::Clipboard *clipboard = (Dali::Clipboard *) 0;
97   uint32_t id = 0u;
98   clipboard = (Dali::Clipboard *)argClipboard;
99   {
100     try
101     {
102       id = clipboard->GetData(argMimeType);
103     } CALL_CATCH_EXCEPTION(0);
104   }
105
106   return (unsigned int) id;
107 }
108
109 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataSentSignal(void * argClipboard)
110 {
111   Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
112   Dali::Clipboard::DataSentSignalType *signal = 0 ;
113
114   clipboard = (Dali::Clipboard *)argClipboard;
115   {
116     try
117     {
118       signal = (Dali::Clipboard::DataSentSignalType *) &(clipboard)->DataSentSignal();
119     } CALL_CATCH_EXCEPTION(0);
120   }
121
122   return (void *)signal;
123 }
124
125 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataReceivedSignal(void * argClipboard)
126 {
127   Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
128   Dali::Clipboard::DataReceivedSignalType *signal = 0 ;
129
130   clipboard = (Dali::Clipboard *)argClipboard;
131   {
132     try
133     {
134       signal = (Dali::Clipboard::DataReceivedSignalType *) &(clipboard)->DataReceivedSignal();
135     } CALL_CATCH_EXCEPTION(0);
136   }
137
138   return (void *)signal;
139 }
140
141 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataSelectedSignal(void * argClipboard)
142 {
143   Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
144   Dali::Clipboard::DataSelectedSignalType *signal = 0 ;
145
146   clipboard = (Dali::Clipboard *)argClipboard;
147   {
148     try
149     {
150       signal = (Dali::Clipboard::DataSelectedSignalType *) &(clipboard)->DataSelectedSignal();
151     } CALL_CATCH_EXCEPTION(0);
152   }
153
154   return (void *)signal;
155 }
156
157 SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_ClipboardSignal_Empty(void * argSignal)
158 {
159   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
160   bool result;
161
162   signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
163   {
164     try
165     {
166       result = (bool)Dali_Signal_Dali_Adaptor_Clipboard_Empty((Dali::Signal<void (Dali::Clipboard)> const *)signal);
167     } CALL_CATCH_EXCEPTION(0);
168   }
169
170   return result;
171 }
172
173 SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_ClipboardSignal_GetConnectionCount(void * argSignal)
174 {
175   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
176   std::size_t result;
177
178   signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
179   {
180     try
181     {
182       result = Dali_Signal_Dali_Adaptor_Clipboard_GetConnectionCount((Dali::Signal<void (Dali::Clipboard)> const *)signal);
183     } CALL_CATCH_EXCEPTION(0);
184   }
185
186   return (unsigned long)result;
187 }
188
189 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Connect(void * argSignal, void * argClipboard)
190 {
191   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
192   void (*clipboard)(Dali::Clipboard) = (void (*)(Dali::Clipboard)) 0;
193
194   signal    = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
195   clipboard = (void (*)(Dali::Clipboard))argClipboard;
196   {
197     try
198     {
199       Dali_Signal_Dali_Adaptor_Clipboard_Connect(signal, clipboard);
200     } CALL_CATCH_EXCEPTION();
201   }
202 }
203
204 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Disconnect(void * argSignal, void * argClipboard)
205 {
206   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
207   void (*clipboard)(Dali::Clipboard) = (void (*)(Dali::Clipboard)) 0;
208
209   signal    = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
210   clipboard = (void (*)(Dali::Clipboard))argClipboard;
211   {
212     try
213     {
214       Dali_Signal_Dali_Adaptor_Clipboard_Disconnect(signal, clipboard);
215     } CALL_CATCH_EXCEPTION();
216   }
217 }
218
219 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Emit(void * argSignal, void * argClipboard)
220 {
221   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
222   Dali::Clipboard clipboard;
223   Dali::Clipboard *pClipboard;
224
225   signal     = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
226   pClipboard = (Dali::Clipboard *)argClipboard;
227   if (!pClipboard)
228   {
229     SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Clipboard", 0);
230     return ;
231   }
232   clipboard = *pClipboard;
233   {
234     try
235     {
236       Dali_Signal_Dali_Adaptor_Clipboard_Emit(signal, clipboard);
237     } CALL_CATCH_EXCEPTION();
238   }
239 }
240
241 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ClipboardSignal()
242 {
243   Dali::Signal<void (Dali::Clipboard)> *result = 0;
244   {
245     try
246     {
247       result = (Dali::Signal<void (Dali::Clipboard)> *)new Dali::Signal<void (Dali::Clipboard)>();
248     } CALL_CATCH_EXCEPTION(0);
249   }
250
251   return (void *)result;
252 }
253
254 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ClipboardSignal(void * argSignal)
255 {
256   Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
257
258   signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
259   {
260     try
261     {
262       delete signal;
263     } CALL_CATCH_EXCEPTION();
264   }
265 }
266
267
268 #ifdef __cplusplus
269 } // end extern "C"
270 #endif