2 * Copyright (c) 2023 Samsung Electronics Co., Ltd.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
21 #include <dali/devel-api/adaptor-framework/clipboard.h>
22 #include <dali/integration-api/debug.h>
25 #include <dali-csharp-binder/common/common.h>
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;
39 SWIGINTERN bool Dali_Signal_Dali_Adaptor_Clipboard_Empty(Dali::Signal<void (Dali::Clipboard)> const *self)
44 SWIGINTERN std::size_t Dali_Signal_Dali_Adaptor_Clipboard_GetConnectionCount(Dali::Signal<void (Dali::Clipboard)> const *self)
46 return self->GetConnectionCount();
49 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Connect(Dali::Signal<void (Dali::Clipboard)> *self, void (*func)(Dali::Clipboard))
54 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Disconnect(Dali::Signal<void (Dali::Clipboard)> *self, void (*func)(Dali::Clipboard))
56 self->Disconnect(func);
59 SWIGINTERN void Dali_Signal_Dali_Adaptor_Clipboard_Emit(Dali::Signal<void (Dali::Clipboard)> *self, Dali::Clipboard clipboard)
61 self->Emit(clipboard);
64 SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_Clipboard_Get()
66 void *pClipboard = nullptr;
67 Dali::Clipboard clipboard;
70 clipboard = Dali::Clipboard::Get();
71 } CALL_CATCH_EXCEPTION(0);
72 pClipboard = new Dali::Clipboard((const Dali::Clipboard &)clipboard);
77 SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_Clipboard_SetData(void * argClipboard, char * argMimeType, char * argData)
79 Dali::Clipboard *clipboard = (Dali::Clipboard *) 0;
82 clipboard = (Dali::Clipboard *)argClipboard;
84 Dali::Clipboard::ClipData clipData(argMimeType, argData);
87 result = clipboard->SetData(clipData);
88 } CALL_CATCH_EXCEPTION(0);
94 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Clipboard_GetData(void * argClipboard, char * argMimeType)
96 Dali::Clipboard *clipboard = (Dali::Clipboard *) 0;
98 clipboard = (Dali::Clipboard *)argClipboard;
102 id = clipboard->GetData(argMimeType);
103 } CALL_CATCH_EXCEPTION(0);
106 return (unsigned int) id;
109 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataSentSignal(void * argClipboard)
111 Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
112 Dali::Clipboard::DataSentSignalType *signal = 0 ;
114 clipboard = (Dali::Clipboard *)argClipboard;
118 signal = (Dali::Clipboard::DataSentSignalType *) &(clipboard)->DataSentSignal();
119 } CALL_CATCH_EXCEPTION(0);
122 return (void *)signal;
125 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataReceivedSignal(void * argClipboard)
127 Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
128 Dali::Clipboard::DataReceivedSignalType *signal = 0 ;
130 clipboard = (Dali::Clipboard *)argClipboard;
134 signal = (Dali::Clipboard::DataReceivedSignalType *) &(clipboard)->DataReceivedSignal();
135 } CALL_CATCH_EXCEPTION(0);
138 return (void *)signal;
141 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Clipboard_DataSelectedSignal(void * argClipboard)
143 Dali::Clipboard *clipboard = (Dali::Clipboard *) 0 ;
144 Dali::Clipboard::DataSelectedSignalType *signal = 0 ;
146 clipboard = (Dali::Clipboard *)argClipboard;
150 signal = (Dali::Clipboard::DataSelectedSignalType *) &(clipboard)->DataSelectedSignal();
151 } CALL_CATCH_EXCEPTION(0);
154 return (void *)signal;
157 SWIGEXPORT bool SWIGSTDCALL CSharp_Dali_ClipboardSignal_Empty(void * argSignal)
159 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
162 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
166 result = (bool)Dali_Signal_Dali_Adaptor_Clipboard_Empty((Dali::Signal<void (Dali::Clipboard)> const *)signal);
167 } CALL_CATCH_EXCEPTION(0);
173 SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_ClipboardSignal_GetConnectionCount(void * argSignal)
175 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
178 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
182 result = Dali_Signal_Dali_Adaptor_Clipboard_GetConnectionCount((Dali::Signal<void (Dali::Clipboard)> const *)signal);
183 } CALL_CATCH_EXCEPTION(0);
186 return (unsigned long)result;
189 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Connect(void * argSignal, void * argClipboard)
191 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
192 void (*clipboard)(Dali::Clipboard) = (void (*)(Dali::Clipboard)) 0;
194 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
195 clipboard = (void (*)(Dali::Clipboard))argClipboard;
199 Dali_Signal_Dali_Adaptor_Clipboard_Connect(signal, clipboard);
200 } CALL_CATCH_EXCEPTION();
204 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Disconnect(void * argSignal, void * argClipboard)
206 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
207 void (*clipboard)(Dali::Clipboard) = (void (*)(Dali::Clipboard)) 0;
209 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
210 clipboard = (void (*)(Dali::Clipboard))argClipboard;
214 Dali_Signal_Dali_Adaptor_Clipboard_Disconnect(signal, clipboard);
215 } CALL_CATCH_EXCEPTION();
219 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_ClipboardSignal_Emit(void * argSignal, void * argClipboard)
221 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
222 Dali::Clipboard clipboard;
223 Dali::Clipboard *pClipboard;
225 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
226 pClipboard = (Dali::Clipboard *)argClipboard;
229 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Clipboard", 0);
232 clipboard = *pClipboard;
236 Dali_Signal_Dali_Adaptor_Clipboard_Emit(signal, clipboard);
237 } CALL_CATCH_EXCEPTION();
241 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_ClipboardSignal()
243 Dali::Signal<void (Dali::Clipboard)> *result = 0;
247 result = (Dali::Signal<void (Dali::Clipboard)> *)new Dali::Signal<void (Dali::Clipboard)>();
248 } CALL_CATCH_EXCEPTION(0);
251 return (void *)result;
254 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_ClipboardSignal(void * argSignal)
256 Dali::Signal<void (Dali::Clipboard)> *signal = (Dali::Signal<void (Dali::Clipboard)> *) 0;
258 signal = (Dali::Signal<void (Dali::Clipboard)> *)argSignal;
263 } CALL_CATCH_EXCEPTION();