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_grid.h"
11 
12         #include <wx/grid.h>
13 
14         #include <wx/grid.h>
15         #include <wx/grid.h>
16         #include <wx/grid.h>
17         #include <wx/grid.h>
18 
19 
20 class sipwxGridCellAttrProvider : public  ::wxGridCellAttrProvider
21 {
22 public:
23     sipwxGridCellAttrProvider();
24     virtual ~sipwxGridCellAttrProvider();
25 
26     /*
27      * There is a protected method for every virtual method visible from
28      * this class.
29      */
30 protected:
31      ::wxGridCellAttr* GetAttr(int,int, ::wxGridCellAttr::wxAttrKind) const SIP_OVERRIDE;
32     const  ::wxGridCornerHeaderRenderer& GetCornerRenderer() SIP_OVERRIDE;
33     const  ::wxGridRowHeaderRenderer& GetRowHeaderRenderer(int) SIP_OVERRIDE;
34     const  ::wxGridColumnHeaderRenderer& GetColumnHeaderRenderer(int) SIP_OVERRIDE;
35     void SetColAttr( ::wxGridCellAttr*,int) SIP_OVERRIDE;
36     void SetRowAttr( ::wxGridCellAttr*,int) SIP_OVERRIDE;
37     void SetAttr( ::wxGridCellAttr*,int,int) SIP_OVERRIDE;
38 
39 public:
40     sipSimpleWrapper *sipPySelf;
41 
42 private:
43     sipwxGridCellAttrProvider(const sipwxGridCellAttrProvider &);
44     sipwxGridCellAttrProvider &operator = (const sipwxGridCellAttrProvider &);
45 
46     char sipPyMethods[7];
47 };
48 
sipwxGridCellAttrProvider()49 sipwxGridCellAttrProvider::sipwxGridCellAttrProvider():  ::wxGridCellAttrProvider(), sipPySelf(SIP_NULLPTR)
50 {
51     memset(sipPyMethods, 0, sizeof (sipPyMethods));
52 }
53 
~sipwxGridCellAttrProvider()54 sipwxGridCellAttrProvider::~sipwxGridCellAttrProvider()
55 {
56     sipInstanceDestroyedEx(&sipPySelf);
57 }
58 
GetAttr(int row,int col,::wxGridCellAttr::wxAttrKind kind) const59  ::wxGridCellAttr* sipwxGridCellAttrProvider::GetAttr(int row,int col, ::wxGridCellAttr::wxAttrKind kind) const
60 {
61     sip_gilstate_t sipGILState;
62     PyObject *sipMeth;
63 
64     sipMeth = sipIsPyMethod(&sipGILState,const_cast<char *>(&sipPyMethods[0]),sipPySelf,SIP_NULLPTR,sipName_GetAttr);
65 
66     if (!sipMeth)
67         return  ::wxGridCellAttrProvider::GetAttr(row,col,kind);
68 
69     extern  ::wxGridCellAttr* sipVH__grid_22(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int,int, ::wxGridCellAttr::wxAttrKind);
70 
71     return sipVH__grid_22(sipGILState, 0, sipPySelf, sipMeth, row, col, kind);
72 }
73 
GetCornerRenderer()74 const  ::wxGridCornerHeaderRenderer& sipwxGridCellAttrProvider::GetCornerRenderer()
75 {
76     sip_gilstate_t sipGILState;
77     PyObject *sipMeth;
78 
79     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[1],sipPySelf,SIP_NULLPTR,sipName_GetCornerRenderer);
80 
81     if (!sipMeth)
82         return  ::wxGridCellAttrProvider::GetCornerRenderer();
83 
84     extern const  ::wxGridCornerHeaderRenderer& sipVH__grid_21(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *);
85 
86     return sipVH__grid_21(sipGILState, 0, sipPySelf, sipMeth);
87 }
88 
GetRowHeaderRenderer(int row)89 const  ::wxGridRowHeaderRenderer& sipwxGridCellAttrProvider::GetRowHeaderRenderer(int row)
90 {
91     sip_gilstate_t sipGILState;
92     PyObject *sipMeth;
93 
94     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[2],sipPySelf,SIP_NULLPTR,sipName_GetRowHeaderRenderer);
95 
96     if (!sipMeth)
97         return  ::wxGridCellAttrProvider::GetRowHeaderRenderer(row);
98 
99     extern const  ::wxGridRowHeaderRenderer& sipVH__grid_20(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int);
100 
101     return sipVH__grid_20(sipGILState, 0, sipPySelf, sipMeth, row);
102 }
103 
GetColumnHeaderRenderer(int col)104 const  ::wxGridColumnHeaderRenderer& sipwxGridCellAttrProvider::GetColumnHeaderRenderer(int col)
105 {
106     sip_gilstate_t sipGILState;
107     PyObject *sipMeth;
108 
109     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[3],sipPySelf,SIP_NULLPTR,sipName_GetColumnHeaderRenderer);
110 
111     if (!sipMeth)
112         return  ::wxGridCellAttrProvider::GetColumnHeaderRenderer(col);
113 
114     extern const  ::wxGridColumnHeaderRenderer& sipVH__grid_19(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *, int);
115 
116     return sipVH__grid_19(sipGILState, 0, sipPySelf, sipMeth, col);
117 }
118 
SetColAttr(::wxGridCellAttr * attr,int col)119 void sipwxGridCellAttrProvider::SetColAttr( ::wxGridCellAttr*attr,int col)
120 {
121     sip_gilstate_t sipGILState;
122     PyObject *sipMeth;
123 
124     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[4],sipPySelf,SIP_NULLPTR,sipName_SetColAttr);
125 
126     if (!sipMeth)
127     {
128          ::wxGridCellAttrProvider::SetColAttr(attr,col);
129         return;
130     }
131 
132     extern void sipVH__grid_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::wxGridCellAttr*,int);
133 
134     sipVH__grid_18(sipGILState, 0, sipPySelf, sipMeth, attr, col);
135 }
136 
SetRowAttr(::wxGridCellAttr * attr,int row)137 void sipwxGridCellAttrProvider::SetRowAttr( ::wxGridCellAttr*attr,int row)
138 {
139     sip_gilstate_t sipGILState;
140     PyObject *sipMeth;
141 
142     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[5],sipPySelf,SIP_NULLPTR,sipName_SetRowAttr);
143 
144     if (!sipMeth)
145     {
146          ::wxGridCellAttrProvider::SetRowAttr(attr,row);
147         return;
148     }
149 
150     extern void sipVH__grid_18(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::wxGridCellAttr*,int);
151 
152     sipVH__grid_18(sipGILState, 0, sipPySelf, sipMeth, attr, row);
153 }
154 
SetAttr(::wxGridCellAttr * attr,int row,int col)155 void sipwxGridCellAttrProvider::SetAttr( ::wxGridCellAttr*attr,int row,int col)
156 {
157     sip_gilstate_t sipGILState;
158     PyObject *sipMeth;
159 
160     sipMeth = sipIsPyMethod(&sipGILState,&sipPyMethods[6],sipPySelf,SIP_NULLPTR,sipName_SetAttr);
161 
162     if (!sipMeth)
163     {
164          ::wxGridCellAttrProvider::SetAttr(attr,row,col);
165         return;
166     }
167 
168     extern void sipVH__grid_17(sip_gilstate_t, sipVirtErrorHandlerFunc, sipSimpleWrapper *, PyObject *,  ::wxGridCellAttr*,int,int);
169 
170     sipVH__grid_17(sipGILState, 0, sipPySelf, sipMeth, attr, row, col);
171 }
172 
173 
174 PyDoc_STRVAR(doc_wxGridCellAttrProvider_SetAttr, "SetAttr(attr, row, col)\n"
175 "\n"
176 "Set attribute for the specified cell.");
177 
178 extern "C" {static PyObject *meth_wxGridCellAttrProvider_SetAttr(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_SetAttr(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)179 static PyObject *meth_wxGridCellAttrProvider_SetAttr(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
180 {
181     PyObject *sipParseErr = SIP_NULLPTR;
182     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
183 
184     {
185          ::wxGridCellAttr* attr;
186         int row;
187         int col;
188          ::wxGridCellAttrProvider *sipCpp;
189 
190         static const char *sipKwdList[] = {
191             sipName_attr,
192             sipName_row,
193             sipName_col,
194         };
195 
196         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ:ii", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, sipType_wxGridCellAttr, &attr, &row, &col))
197         {
198             PyErr_Clear();
199 
200             Py_BEGIN_ALLOW_THREADS
201             (sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::SetAttr(attr,row,col) : sipCpp->SetAttr(attr,row,col));
202             Py_END_ALLOW_THREADS
203 
204             if (PyErr_Occurred())
205                 return 0;
206 
207             Py_INCREF(Py_None);
208             return Py_None;
209         }
210     }
211 
212     /* Raise an exception if the arguments couldn't be parsed. */
213     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_SetAttr, SIP_NULLPTR);
214 
215     return SIP_NULLPTR;
216 }
217 
218 
219 PyDoc_STRVAR(doc_wxGridCellAttrProvider_SetRowAttr, "SetRowAttr(attr, row)\n"
220 "\n"
221 "Set attribute for the specified row.");
222 
223 extern "C" {static PyObject *meth_wxGridCellAttrProvider_SetRowAttr(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_SetRowAttr(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)224 static PyObject *meth_wxGridCellAttrProvider_SetRowAttr(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
225 {
226     PyObject *sipParseErr = SIP_NULLPTR;
227     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
228 
229     {
230          ::wxGridCellAttr* attr;
231         int row;
232          ::wxGridCellAttrProvider *sipCpp;
233 
234         static const char *sipKwdList[] = {
235             sipName_attr,
236             sipName_row,
237         };
238 
239         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ:i", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, sipType_wxGridCellAttr, &attr, &row))
240         {
241             PyErr_Clear();
242 
243             Py_BEGIN_ALLOW_THREADS
244             (sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::SetRowAttr(attr,row) : sipCpp->SetRowAttr(attr,row));
245             Py_END_ALLOW_THREADS
246 
247             if (PyErr_Occurred())
248                 return 0;
249 
250             Py_INCREF(Py_None);
251             return Py_None;
252         }
253     }
254 
255     /* Raise an exception if the arguments couldn't be parsed. */
256     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_SetRowAttr, SIP_NULLPTR);
257 
258     return SIP_NULLPTR;
259 }
260 
261 
262 PyDoc_STRVAR(doc_wxGridCellAttrProvider_SetColAttr, "SetColAttr(attr, col)\n"
263 "\n"
264 "Set attribute for the specified column.");
265 
266 extern "C" {static PyObject *meth_wxGridCellAttrProvider_SetColAttr(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_SetColAttr(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)267 static PyObject *meth_wxGridCellAttrProvider_SetColAttr(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
268 {
269     PyObject *sipParseErr = SIP_NULLPTR;
270     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
271 
272     {
273          ::wxGridCellAttr* attr;
274         int col;
275          ::wxGridCellAttrProvider *sipCpp;
276 
277         static const char *sipKwdList[] = {
278             sipName_attr,
279             sipName_col,
280         };
281 
282         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BJ:i", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, sipType_wxGridCellAttr, &attr, &col))
283         {
284             PyErr_Clear();
285 
286             Py_BEGIN_ALLOW_THREADS
287             (sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::SetColAttr(attr,col) : sipCpp->SetColAttr(attr,col));
288             Py_END_ALLOW_THREADS
289 
290             if (PyErr_Occurred())
291                 return 0;
292 
293             Py_INCREF(Py_None);
294             return Py_None;
295         }
296     }
297 
298     /* Raise an exception if the arguments couldn't be parsed. */
299     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_SetColAttr, SIP_NULLPTR);
300 
301     return SIP_NULLPTR;
302 }
303 
304 
305 PyDoc_STRVAR(doc_wxGridCellAttrProvider_GetColumnHeaderRenderer, "GetColumnHeaderRenderer(col) -> GridColumnHeaderRenderer\n"
306 "\n"
307 "Return the renderer used for drawing column headers.");
308 
309 extern "C" {static PyObject *meth_wxGridCellAttrProvider_GetColumnHeaderRenderer(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_GetColumnHeaderRenderer(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)310 static PyObject *meth_wxGridCellAttrProvider_GetColumnHeaderRenderer(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
311 {
312     PyObject *sipParseErr = SIP_NULLPTR;
313     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
314 
315     {
316         int col;
317          ::wxGridCellAttrProvider *sipCpp;
318 
319         static const char *sipKwdList[] = {
320             sipName_col,
321         };
322 
323         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, &col))
324         {
325             const  ::wxGridColumnHeaderRenderer*sipRes;
326 
327             PyErr_Clear();
328 
329             Py_BEGIN_ALLOW_THREADS
330             sipRes = &(sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::GetColumnHeaderRenderer(col) : sipCpp->GetColumnHeaderRenderer(col));
331             Py_END_ALLOW_THREADS
332 
333             if (PyErr_Occurred())
334                 return 0;
335 
336             return sipConvertFromType(const_cast< ::wxGridColumnHeaderRenderer *>(sipRes),sipType_wxGridColumnHeaderRenderer,SIP_NULLPTR);
337         }
338     }
339 
340     /* Raise an exception if the arguments couldn't be parsed. */
341     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_GetColumnHeaderRenderer, SIP_NULLPTR);
342 
343     return SIP_NULLPTR;
344 }
345 
346 
347 PyDoc_STRVAR(doc_wxGridCellAttrProvider_GetRowHeaderRenderer, "GetRowHeaderRenderer(row) -> GridRowHeaderRenderer\n"
348 "\n"
349 "Return the renderer used for drawing row headers.");
350 
351 extern "C" {static PyObject *meth_wxGridCellAttrProvider_GetRowHeaderRenderer(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_GetRowHeaderRenderer(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)352 static PyObject *meth_wxGridCellAttrProvider_GetRowHeaderRenderer(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
353 {
354     PyObject *sipParseErr = SIP_NULLPTR;
355     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
356 
357     {
358         int row;
359          ::wxGridCellAttrProvider *sipCpp;
360 
361         static const char *sipKwdList[] = {
362             sipName_row,
363         };
364 
365         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "Bi", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, &row))
366         {
367             const  ::wxGridRowHeaderRenderer*sipRes;
368 
369             PyErr_Clear();
370 
371             Py_BEGIN_ALLOW_THREADS
372             sipRes = &(sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::GetRowHeaderRenderer(row) : sipCpp->GetRowHeaderRenderer(row));
373             Py_END_ALLOW_THREADS
374 
375             if (PyErr_Occurred())
376                 return 0;
377 
378             return sipConvertFromType(const_cast< ::wxGridRowHeaderRenderer *>(sipRes),sipType_wxGridRowHeaderRenderer,SIP_NULLPTR);
379         }
380     }
381 
382     /* Raise an exception if the arguments couldn't be parsed. */
383     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_GetRowHeaderRenderer, SIP_NULLPTR);
384 
385     return SIP_NULLPTR;
386 }
387 
388 
389 PyDoc_STRVAR(doc_wxGridCellAttrProvider_GetCornerRenderer, "GetCornerRenderer() -> GridCornerHeaderRenderer\n"
390 "\n"
391 "Return the renderer used for drawing the corner window.");
392 
393 extern "C" {static PyObject *meth_wxGridCellAttrProvider_GetCornerRenderer(PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_GetCornerRenderer(PyObject * sipSelf,PyObject * sipArgs)394 static PyObject *meth_wxGridCellAttrProvider_GetCornerRenderer(PyObject *sipSelf, PyObject *sipArgs)
395 {
396     PyObject *sipParseErr = SIP_NULLPTR;
397     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
398 
399     {
400          ::wxGridCellAttrProvider *sipCpp;
401 
402         if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp))
403         {
404             const  ::wxGridCornerHeaderRenderer*sipRes;
405 
406             PyErr_Clear();
407 
408             Py_BEGIN_ALLOW_THREADS
409             sipRes = &(sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::GetCornerRenderer() : sipCpp->GetCornerRenderer());
410             Py_END_ALLOW_THREADS
411 
412             if (PyErr_Occurred())
413                 return 0;
414 
415             return sipConvertFromType(const_cast< ::wxGridCornerHeaderRenderer *>(sipRes),sipType_wxGridCornerHeaderRenderer,SIP_NULLPTR);
416         }
417     }
418 
419     /* Raise an exception if the arguments couldn't be parsed. */
420     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_GetCornerRenderer, SIP_NULLPTR);
421 
422     return SIP_NULLPTR;
423 }
424 
425 
426 PyDoc_STRVAR(doc_wxGridCellAttrProvider_GetAttr, "GetAttr(row, col, kind) -> GridCellAttr\n"
427 "\n"
428 "Get the attribute to use for the specified cell.");
429 
430 extern "C" {static PyObject *meth_wxGridCellAttrProvider_GetAttr(PyObject *, PyObject *, PyObject *);}
meth_wxGridCellAttrProvider_GetAttr(PyObject * sipSelf,PyObject * sipArgs,PyObject * sipKwds)431 static PyObject *meth_wxGridCellAttrProvider_GetAttr(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
432 {
433     PyObject *sipParseErr = SIP_NULLPTR;
434     bool sipSelfWasArg = (!sipSelf || sipIsDerivedClass((sipSimpleWrapper *)sipSelf));
435 
436     {
437         int row;
438         int col;
439          ::wxGridCellAttr::wxAttrKind kind;
440         const  ::wxGridCellAttrProvider *sipCpp;
441 
442         static const char *sipKwdList[] = {
443             sipName_row,
444             sipName_col,
445             sipName_kind,
446         };
447 
448         if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "BiiE", &sipSelf, sipType_wxGridCellAttrProvider, &sipCpp, &row, &col, sipType_wxGridCellAttr_wxAttrKind, &kind))
449         {
450              ::wxGridCellAttr*sipRes;
451 
452             PyErr_Clear();
453 
454             Py_BEGIN_ALLOW_THREADS
455             sipRes = (sipSelfWasArg ? sipCpp-> ::wxGridCellAttrProvider::GetAttr(row,col,kind) : sipCpp->GetAttr(row,col,kind));
456             Py_END_ALLOW_THREADS
457 
458             if (PyErr_Occurred())
459                 return 0;
460 
461             return sipConvertFromType(sipRes,sipType_wxGridCellAttr,SIP_NULLPTR);
462         }
463     }
464 
465     /* Raise an exception if the arguments couldn't be parsed. */
466     sipNoMethod(sipParseErr, sipName_GridCellAttrProvider, sipName_GetAttr, SIP_NULLPTR);
467 
468     return SIP_NULLPTR;
469 }
470 
471 
472 /* Cast a pointer to a type somewhere in its inheritance hierarchy. */
473 extern "C" {static void *cast_wxGridCellAttrProvider(void *, const sipTypeDef *);}
cast_wxGridCellAttrProvider(void * sipCppV,const sipTypeDef * targetType)474 static void *cast_wxGridCellAttrProvider(void *sipCppV, const sipTypeDef *targetType)
475 {
476      ::wxGridCellAttrProvider *sipCpp = reinterpret_cast< ::wxGridCellAttrProvider *>(sipCppV);
477 
478     if (targetType == sipType_wxClientDataContainer)
479         return static_cast< ::wxClientDataContainer *>(sipCpp);
480 
481     return sipCppV;
482 }
483 
484 
485 /* Call the instance's destructor. */
486 extern "C" {static void release_wxGridCellAttrProvider(void *, int);}
release_wxGridCellAttrProvider(void * sipCppV,int sipState)487 static void release_wxGridCellAttrProvider(void *sipCppV, int sipState)
488 {
489     Py_BEGIN_ALLOW_THREADS
490 
491     if (sipState & SIP_DERIVED_CLASS)
492         delete reinterpret_cast<sipwxGridCellAttrProvider *>(sipCppV);
493     else
494         delete reinterpret_cast< ::wxGridCellAttrProvider *>(sipCppV);
495 
496     Py_END_ALLOW_THREADS
497 }
498 
499 
500 extern "C" {static void dealloc_wxGridCellAttrProvider(sipSimpleWrapper *);}
dealloc_wxGridCellAttrProvider(sipSimpleWrapper * sipSelf)501 static void dealloc_wxGridCellAttrProvider(sipSimpleWrapper *sipSelf)
502 {
503     if (sipIsDerivedClass(sipSelf))
504         reinterpret_cast<sipwxGridCellAttrProvider *>(sipGetAddress(sipSelf))->sipPySelf = SIP_NULLPTR;
505 
506     if (sipIsOwnedByPython(sipSelf))
507     {
508         release_wxGridCellAttrProvider(sipGetAddress(sipSelf), sipIsDerivedClass(sipSelf));
509     }
510 }
511 
512 
513 extern "C" {static void *init_type_wxGridCellAttrProvider(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
init_type_wxGridCellAttrProvider(sipSimpleWrapper * sipSelf,PyObject * sipArgs,PyObject * sipKwds,PyObject ** sipUnused,PyObject **,PyObject ** sipParseErr)514 static void *init_type_wxGridCellAttrProvider(sipSimpleWrapper *sipSelf, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
515 {
516     sipwxGridCellAttrProvider *sipCpp = SIP_NULLPTR;
517 
518     {
519         if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, ""))
520         {
521             PyErr_Clear();
522 
523             Py_BEGIN_ALLOW_THREADS
524             sipCpp = new sipwxGridCellAttrProvider();
525             Py_END_ALLOW_THREADS
526 
527             if (PyErr_Occurred())
528             {
529                 delete sipCpp;
530                 return SIP_NULLPTR;
531             }
532 
533             sipCpp->sipPySelf = sipSelf;
534 
535             return sipCpp;
536         }
537     }
538 
539     return SIP_NULLPTR;
540 }
541 
542 
543 /* Define this type's super-types. */
544 static sipEncodedTypeDef supers_wxGridCellAttrProvider[] = {{4, 0, 1}};
545 
546 
547 static PyMethodDef methods_wxGridCellAttrProvider[] = {
548     {SIP_MLNAME_CAST(sipName_GetAttr), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_GetAttr), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_GetAttr)},
549     {SIP_MLNAME_CAST(sipName_GetColumnHeaderRenderer), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_GetColumnHeaderRenderer), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_GetColumnHeaderRenderer)},
550     {SIP_MLNAME_CAST(sipName_GetCornerRenderer), meth_wxGridCellAttrProvider_GetCornerRenderer, METH_VARARGS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_GetCornerRenderer)},
551     {SIP_MLNAME_CAST(sipName_GetRowHeaderRenderer), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_GetRowHeaderRenderer), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_GetRowHeaderRenderer)},
552     {SIP_MLNAME_CAST(sipName_SetAttr), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_SetAttr), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_SetAttr)},
553     {SIP_MLNAME_CAST(sipName_SetColAttr), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_SetColAttr), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_SetColAttr)},
554     {SIP_MLNAME_CAST(sipName_SetRowAttr), SIP_MLMETH_CAST(meth_wxGridCellAttrProvider_SetRowAttr), METH_VARARGS|METH_KEYWORDS, SIP_MLDOC_CAST(doc_wxGridCellAttrProvider_SetRowAttr)}
555 };
556 
557 sipVariableDef variables_wxGridCellAttrProvider[] = {
558     {PropertyVariable, sipName_CornerRenderer, &methods_wxGridCellAttrProvider[2], SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
559 };
560 
561 PyDoc_STRVAR(doc_wxGridCellAttrProvider, "GridCellAttrProvider()\n"
562 "\n"
563 "Class providing attributes to be used for the grid cells.");
564 
565 
566 sipClassTypeDef sipTypeDef__grid_wxGridCellAttrProvider = {
567     {
568         -1,
569         SIP_NULLPTR,
570         SIP_NULLPTR,
571         SIP_TYPE_CLASS,
572         sipNameNr_wxGridCellAttrProvider,
573         {SIP_NULLPTR},
574         SIP_NULLPTR
575     },
576     {
577         sipNameNr_GridCellAttrProvider,
578         {0, 0, 1},
579         7, methods_wxGridCellAttrProvider,
580         0, SIP_NULLPTR,
581         1, variables_wxGridCellAttrProvider,
582         {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
583     },
584     doc_wxGridCellAttrProvider,
585     -1,
586     -1,
587     supers_wxGridCellAttrProvider,
588     SIP_NULLPTR,
589     init_type_wxGridCellAttrProvider,
590     SIP_NULLPTR,
591     SIP_NULLPTR,
592 #if PY_MAJOR_VERSION >= 3
593     SIP_NULLPTR,
594     SIP_NULLPTR,
595 #else
596     SIP_NULLPTR,
597     SIP_NULLPTR,
598     SIP_NULLPTR,
599     SIP_NULLPTR,
600 #endif
601     dealloc_wxGridCellAttrProvider,
602     SIP_NULLPTR,
603     SIP_NULLPTR,
604     SIP_NULLPTR,
605     release_wxGridCellAttrProvider,
606     cast_wxGridCellAttrProvider,
607     SIP_NULLPTR,
608     SIP_NULLPTR,
609     SIP_NULLPTR,
610     SIP_NULLPTR,
611     SIP_NULLPTR,
612     SIP_NULLPTR
613 };
614