1 /*
2 * Interface wrapper code.
3 *
4 * Generated by SIP 4.19.16
5 *
6 * Copyright: (c) 2018 by Total Control Software
7 * License: wxWindows License
8 */
9
10 #include "sipAPI_core.h"
11
12 #include <wx/cshelp.h>
13
14 #include <wx/help.h>
15 #include <wx/cshelp.h>
16 #include <wx/gdicmn.h>
17 #include <wx/event.h>
18
19
20 class sipwxHelpControllerHelpProvider : public ::wxHelpControllerHelpProvider
21 {
22 public:
23 sipwxHelpControllerHelpProvider( ::wxHelpControllerBase*);
24 virtual ~sipwxHelpControllerHelpProvider();
25
26 /*
27 * There is a protected method for every virtual method visible from
28 * this class.
29 */
30 protected:
31 bool ShowHelpAtPoint( ::wxWindowBase*,const ::wxPoint&, ::wxHelpEvent::Origin) SIP_OVERRIDE;
32 bool ShowHelp( ::wxWindowBase*) SIP_OVERRIDE;
33 void RemoveHelp( ::wxWindowBase*) SIP_OVERRIDE;
34 ::wxString GetHelp(const ::wxWindowBase*) SIP_OVERRIDE;
35 void AddHelp( ::wxWindowID,const ::wxString&) SIP_OVERRIDE;
36 void AddHelp( ::wxWindowBase*,const ::wxString&) SIP_OVERRIDE;
37
38 public:
39 sipSimpleWrapper *sipPySelf;
40
41 private:
42 sipwxHelpControllerHelpProvider(const sipwxHelpControllerHelpProvider &);
43 sipwxHelpControllerHelpProvider &operator = (const sipwxHelpControllerHelpProvider &);
44
45 char sipPyMethods[6];
46 };
47
sipwxHelpControllerHelpProvider(::wxHelpControllerBase * hc)48 sipwxHelpControllerHelpProvider::sipwxHelpControllerHelpProvider( ::wxHelpControllerBase*hc): ::wxHelpControllerHelpProvider(hc), sipPySelf(SIP_NULLPTR)
49 {
50 memset(sipPyMethods, 0, sizeof (sipPyMethods));
51 }
52
~sipwxHelpControllerHelpProvider()53 sipwxHelpControllerHelpProvider::~sipwxHelpControllerHelpProvider()
54 {
55 sipInstanceDestroyedEx(&sipPySelf);
56 }
57
ShowHelpAtPoint(::wxWindowBase * window,const::wxPoint & point,::wxHelpEvent::Origin origin)58 bool sipwxHelpControllerHelpProvider::ShowHelpAtPoint( ::wxWindowBase*window,const ::wxPoint& point, ::wxHelpEvent::Origin origin)
59 {
60 sip_gilstate_t sipGILState;
61 PyObject *sipMeth;
62
63 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[0],sipPySelf,SIP_NULLPTR,sipName_ShowHelpAtPoint);
64
65 if (!sipMeth)
66 return ::wxHelpControllerHelpProvider::ShowHelpAtPoint(window,point,origin);
67
68 extern bool sipVH__core_192(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*,const ::wxPoint&, ::wxHelpEvent::Origin);
69
70 return sipVH__core_192(sipGILState, 0, sipPySelf, sipMeth, window, point, origin);
71 }
72
ShowHelp(::wxWindowBase * window)73 bool sipwxHelpControllerHelpProvider::ShowHelp( ::wxWindowBase*window)
74 {
75 sip_gilstate_t sipGILState;
76 PyObject *sipMeth;
77
78 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,SIP_NULLPTR,sipName_ShowHelp);
79
80 if (!sipMeth)
81 return ::wxHelpControllerHelpProvider::ShowHelp(window);
82
83 extern bool sipVH__core_191(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*);
84
85 return sipVH__core_191(sipGILState, 0, sipPySelf, sipMeth, window);
86 }
87
RemoveHelp(::wxWindowBase * window)88 void sipwxHelpControllerHelpProvider::RemoveHelp( ::wxWindowBase*window)
89 {
90 sip_gilstate_t sipGILState;
91 PyObject *sipMeth;
92
93 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,SIP_NULLPTR,sipName_RemoveHelp);
94
95 if (!sipMeth)
96 {
97 ::wxHelpControllerHelpProvider::RemoveHelp(window);
98 return;
99 }
100
101 extern void sipVH__core_110(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*);
102
103 sipVH__core_110(sipGILState, 0, sipPySelf, sipMeth, window);
104 }
105
GetHelp(const::wxWindowBase * window)106 ::wxString sipwxHelpControllerHelpProvider::GetHelp(const ::wxWindowBase*window)
107 {
108 sip_gilstate_t sipGILState;
109 PyObject *sipMeth;
110
111 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,SIP_NULLPTR,sipName_GetHelp);
112
113 if (!sipMeth)
114 return ::wxHelpControllerHelpProvider::GetHelp(window);
115
116 extern ::wxString sipVH__core_190(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, const ::wxWindowBase*);
117
118 return sipVH__core_190(sipGILState, 0, sipPySelf, sipMeth, window);
119 }
120
AddHelp(::wxWindowID id,const::wxString & text)121 void sipwxHelpControllerHelpProvider::AddHelp( ::wxWindowID id,const ::wxString& text)
122 {
123 sip_gilstate_t sipGILState;
124 PyObject *sipMeth;
125
126 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,SIP_NULLPTR,sipName_AddHelp);
127
128 if (!sipMeth)
129 {
130 ::wxHelpControllerHelpProvider::AddHelp(id,text);
131 return;
132 }
133
134 extern void sipVH__core_189(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowID,const ::wxString&);
135
136 sipVH__core_189(sipGILState, 0, sipPySelf, sipMeth, id, text);
137 }
138
AddHelp(::wxWindowBase * window,const::wxString & text)139 void sipwxHelpControllerHelpProvider::AddHelp( ::wxWindowBase*window,const ::wxString& text)
140 {
141 sip_gilstate_t sipGILState;
142 PyObject *sipMeth;
143
144 sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[5],sipPySelf,SIP_NULLPTR,sipName_AddHelp);
145
146 if (!sipMeth)
147 {
148 ::wxHelpControllerHelpProvider::AddHelp(window,text);
149 return;
150 }
151
152 extern void sipVH__core_188(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, ::wxWindowBase*,const ::wxString&);
153
154 sipVH__core_188(sipGILState, 0, sipPySelf, sipMeth, window, text);
155 }
156
157
158 PyDoc_STRVAR(doc_wxHelpControllerHelpProvider_GetHelpController, "GetHelpController() -> HelpControllerBase\n"
159 "\n"
160 "Returns the help controller associated with this help provider.");
161
162 extern "C" {static PyObject *meth_wxHelpControllerHelpProvider_GetHelpController(PyObject *, PyObject *);}
meth_wxHelpControllerHelpProvider_GetHelpController(PyObject * sipSelf,PyObject * sipArgs)163 static PyObject *meth_wxHelpControllerHelpProvider_GetHelpController(PyObject *sipSelf, PyObject *sipArgs)
164 {
165 PyObject *sipParseErr = SIP_NULLPTR;
166
167 {
168 const ::wxHelpControllerHelpProvider *sipCpp;
169
170 if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxHelpControllerHelpProvider, &sipCpp))
171 {
172 ::wxHelpControllerBase*sipRes;
173
174 PyErr_Clear();
175
176 Py_BEGIN_ALLOW_THREADS
177 sipRes = sipCpp->GetHelpController();
178 Py_END_ALLOW_THREADS
179
180 if (PyErr_Occurred())
181 return 0;
182
183 return sipConvertFromType(sipRes,sipType_wxHelpControllerBase,SIP_NULLPTR);
184 }
185 }
186
187 /* Raise an exception if the arguments couldn't be parsed. */
188 sipNoMethod(sipParseErr, sipName_HelpControllerHelpProvider, sipName_GetHelpController, SIP_NULLPTR);
189
190 return SIP_NULLPTR;
191 }
192
193
194 PyDoc_STRVAR(doc_wxHelpControllerHelpProvider_SetHelpController, "SetHelpController(hc)\n"
195 "\n"
196 "Sets the help controller associated with this help provider.");
197
198 extern "C" {static PyObject *meth_wxHelpControllerHelpProvider_SetHelpController(PyObject *, PyObject *, PyObject *);}
meth_wxHelpControllerHelpProvider_SetHelpController(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)199 static PyObject *meth_wxHelpControllerHelpProvider_SetHelpController(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
200 {
201 PyObject *sipParseErr = SIP_NULLPTR;
202
203 {
204 ::wxHelpControllerBase* hc;
205 ::wxHelpControllerHelpProvider *sipCpp;
206
207 static const char *sipKwdList[] = {
208 sipName_hc,
209 };
210
211 if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ8", &sipSelf, sipType_wxHelpControllerHelpProvider, &sipCpp, sipType_wxHelpControllerBase, &hc))
212 {
213 PyErr_Clear();
214
215 Py_BEGIN_ALLOW_THREADS
216 sipCpp->SetHelpController(hc);
217 Py_END_ALLOW_THREADS
218
219 if (PyErr_Occurred())
220 return 0;
221
222 Py_INCREF(Py_None);
223 return Py_None;
224 }
225 }
226
227 /* Raise an exception if the arguments couldn't be parsed. */
228 sipNoMethod(sipParseErr, sipName_HelpControllerHelpProvider, sipName_SetHelpController, SIP_NULLPTR);
229
230 return SIP_NULLPTR;
231 }
232
233
234 /* Cast a pointer to a type somewhere in its inheritance hierarchy. */
235 extern "C" {static void *cast_wxHelpControllerHelpProvider(void *, const sipTypeDef *);}
cast_wxHelpControllerHelpProvider(void * sipCppV,const sipTypeDef * targetType)236 static void *cast_wxHelpControllerHelpProvider(void *sipCppV, const sipTypeDef *targetType)
237 {
238 ::wxHelpControllerHelpProvider *sipCpp = reinterpret_cast< ::wxHelpControllerHelpProvider *>(sipCppV);
239
240 if (targetType == sipType_wxSimpleHelpProvider)
241 return static_cast< ::wxSimpleHelpProvider *>(sipCpp);
242
243 if (targetType == sipType_wxHelpProvider)
244 return static_cast< ::wxHelpProvider *>(sipCpp);
245
246 return sipCppV;
247 }
248
249
250 /* Call the instance's destructor. */
251 extern "C" {static void release_wxHelpControllerHelpProvider(void *, int);}
release_wxHelpControllerHelpProvider(void * sipCppV,int sipState)252 static void release_wxHelpControllerHelpProvider(void *sipCppV, int sipState)
253 {
254 Py_BEGIN_ALLOW_THREADS
255
256 if (sipState & SIP_DERIVED_CLASS)
257 delete reinterpret_cast<sipwxHelpControllerHelpProvider *>(sipCppV);
258 else
259 delete reinterpret_cast< ::wxHelpControllerHelpProvider *>(sipCppV);
260
261 Py_END_ALLOW_THREADS
262 }
263
264
265 extern "C" {static void dealloc_wxHelpControllerHelpProvider(sipSimpleWrapper *);}
dealloc_wxHelpControllerHelpProvider(sipSimpleWrapper * sipSelf)266 static void dealloc_wxHelpControllerHelpProvider(sipSimpleWrapper *sipSelf)
267 {
268 if (sipIsDerivedClass(sipSelf))
269 reinterpret_cast<sipwxHelpControllerHelpProvider *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;
270
271 if (sipIsOwnedByPython(sipSelf))
272 {
273 release_wxHelpControllerHelpProvider(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
274 }
275 }
276
277
278 extern "C" {static void *init_type_wxHelpControllerHelpProvider(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
init_type_wxHelpControllerHelpProvider(sipSimpleWrapper * sipSelf,PyObject * sipArgs,PyObject * sipKwds,PyObject ** sipUnused,PyObject **,PyObject ** sipParseErr)279 static void *init_type_wxHelpControllerHelpProvider(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
280 {
281 sipwxHelpControllerHelpProvider *sipCpp = SIP_NULLPTR;
282
283 {
284 ::wxHelpControllerBase* hc = 0;
285
286 static const char *sipKwdList[] = {
287 sipName_hc,
288 };
289
290 if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, sipKwdList, sipUnused, "|J8", sipType_wxHelpControllerBase, &hc))
291 {
292
293 if (!wxPyCheckForApp()) return NULL;
294
295 PyErr_Clear();
296
297 Py_BEGIN_ALLOW_THREADS
298 sipCpp = new sipwxHelpControllerHelpProvider(hc);
299 Py_END_ALLOW_THREADS
300
301 if (PyErr_Occurred())
302 {
303 delete sipCpp;
304 return SIP_NULLPTR;
305 }
306
307 sipCpp->sipPySelf = sipSelf;
308
309 return sipCpp;
310 }
311 }
312
313 return SIP_NULLPTR;
314 }
315
316
317 /* Define this type's super-types. */
318 static sipEncodedTypeDef supers_wxHelpControllerHelpProvider[] = {{459, 255, 1}};
319
320
321 static PyMethodDef methods_wxHelpControllerHelpProvider[] = {
322 {SIP_MLNAME_CAST(sipName_GetHelpController), meth_wxHelpControllerHelpProvider_GetHelpController, METH_VARARGS, SIP_MLDOC_CAST(doc_wxHelpControllerHelpProvider_GetHelpController)},
323 {SIP_MLNAME_CAST(sipName_SetHelpController), SIP_MLMETH_CAST(meth_wxHelpControllerHelpProvider_SetHelpController), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxHelpControllerHelpProvider_SetHelpController)}
324 };
325
326 sipVariableDef variables_wxHelpControllerHelpProvider[] = {
327 {PropertyVariable, sipName_HelpController, &methods_wxHelpControllerHelpProvider[0], &methods_wxHelpControllerHelpProvider[1], SIP_NULLPTR, SIP_NULLPTR},
328 };
329
330 PyDoc_STRVAR(doc_wxHelpControllerHelpProvider, "HelpControllerHelpProvider(hc=None)\n"
331 "\n"
332 "wxHelpControllerHelpProvider is an implementation of wxHelpProvider\n"
333 "which supports both context identifiers and plain text help strings.");
334
335
336 sipClassTypeDef sipTypeDef__core_wxHelpControllerHelpProvider = {
337 {
338 -1,
339 SIP_NULLPTR,
340 SIP_NULLPTR,
341 SIP_TYPE_CLASS,
342 sipNameNr_wxHelpControllerHelpProvider,
343 {SIP_NULLPTR},
344 SIP_NULLPTR
345 },
346 {
347 sipNameNr_HelpControllerHelpProvider,
348 {0, 0, 1},
349 2, methods_wxHelpControllerHelpProvider,
350 0, SIP_NULLPTR,
351 1, variables_wxHelpControllerHelpProvider,
352 {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
353 },
354 doc_wxHelpControllerHelpProvider,
355 -1,
356 -1,
357 supers_wxHelpControllerHelpProvider,
358 SIP_NULLPTR,
359 init_type_wxHelpControllerHelpProvider,
360 SIP_NULLPTR,
361 SIP_NULLPTR,
362 #if PY_MAJOR_VERSION >= 3
363 SIP_NULLPTR,
364 SIP_NULLPTR,
365 #else
366 SIP_NULLPTR,
367 SIP_NULLPTR,
368 SIP_NULLPTR,
369 SIP_NULLPTR,
370 #endif
371 dealloc_wxHelpControllerHelpProvider,
372 SIP_NULLPTR,
373 SIP_NULLPTR,
374 SIP_NULLPTR,
375 release_wxHelpControllerHelpProvider,
376 cast_wxHelpControllerHelpProvider,
377 SIP_NULLPTR,
378 SIP_NULLPTR,
379 SIP_NULLPTR,
380 SIP_NULLPTR,
381 SIP_NULLPTR,
382 SIP_NULLPTR
383 };
384