]> git.saurik.com Git - wxWidgets.git/blob - wxPython/contrib/glcanvas/msw/glcanvas_wrap.cpp
use given position for page insertion instead of trying to find the page to insert...
[wxWidgets.git] / wxPython / contrib / glcanvas / msw / glcanvas_wrap.cpp
1 /* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (http://www.swig.org).
3 * Version 1.3.24
4 *
5 * This file is not intended to be easily readable and contains a number of
6 * coding conventions designed to improve portability and efficiency. Do not make
7 * changes to this file unless you know what you are doing--modify the SWIG
8 * interface file instead.
9 * ----------------------------------------------------------------------------- */
10
11 #define SWIGPYTHON
12
13 #ifdef __cplusplus
14 template<class T> class SwigValueWrapper {
15 T *tt;
16 public:
17 SwigValueWrapper() : tt(0) { }
18 SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
19 SwigValueWrapper(const T& t) : tt(new T(t)) { }
20 ~SwigValueWrapper() { delete tt; }
21 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
22 operator T&() const { return *tt; }
23 T *operator&() { return tt; }
24 private:
25 SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
26 };
27 #endif
28
29
30 #ifndef SWIG_TEMPLATE_DISAMBIGUATOR
31 # if defined(__SUNPRO_CC)
32 # define SWIG_TEMPLATE_DISAMBIGUATOR template
33 # else
34 # define SWIG_TEMPLATE_DISAMBIGUATOR
35 # endif
36 #endif
37
38
39 #include <Python.h>
40
41 /***********************************************************************
42 * swigrun.swg
43 *
44 * This file contains generic CAPI SWIG runtime support for pointer
45 * type checking.
46 *
47 ************************************************************************/
48
49 /* This should only be incremented when either the layout of swig_type_info changes,
50 or for whatever reason, the runtime changes incompatibly */
51 #define SWIG_RUNTIME_VERSION "1"
52
53 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
54 #ifdef SWIG_TYPE_TABLE
55 #define SWIG_QUOTE_STRING(x) #x
56 #define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
57 #define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
58 #else
59 #define SWIG_TYPE_TABLE_NAME
60 #endif
61
62 #include <string.h>
63
64 #ifndef SWIGINLINE
65 #if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
66 # define SWIGINLINE inline
67 #else
68 # define SWIGINLINE
69 #endif
70 #endif
71
72 /*
73 You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
74 creating a static or dynamic library from the swig runtime code.
75 In 99.9% of the cases, swig just needs to declare them as 'static'.
76
77 But only do this if is strictly necessary, ie, if you have problems
78 with your compiler or so.
79 */
80 #ifndef SWIGRUNTIME
81 #define SWIGRUNTIME static
82 #endif
83 #ifndef SWIGRUNTIMEINLINE
84 #define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
85 #endif
86
87 #ifdef __cplusplus
88 extern "C" {
89 #endif
90
91 typedef void *(*swig_converter_func)(void *);
92 typedef struct swig_type_info *(*swig_dycast_func)(void **);
93
94 typedef struct swig_type_info {
95 const char *name;
96 swig_converter_func converter;
97 const char *str;
98 void *clientdata;
99 swig_dycast_func dcast;
100 struct swig_type_info *next;
101 struct swig_type_info *prev;
102 } swig_type_info;
103
104 /*
105 Compare two type names skipping the space characters, therefore
106 "char*" == "char *" and "Class<int>" == "Class<int >", etc.
107
108 Return 0 when the two name types are equivalent, as in
109 strncmp, but skipping ' '.
110 */
111 SWIGRUNTIME int
112 SWIG_TypeNameComp(const char *f1, const char *l1,
113 const char *f2, const char *l2) {
114 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
115 while ((*f1 == ' ') && (f1 != l1)) ++f1;
116 while ((*f2 == ' ') && (f2 != l2)) ++f2;
117 if (*f1 != *f2) return *f1 - *f2;
118 }
119 return (l1 - f1) - (l2 - f2);
120 }
121
122 /*
123 Check type equivalence in a name list like <name1>|<name2>|...
124 */
125 SWIGRUNTIME int
126 SWIG_TypeEquiv(const char *nb, const char *tb) {
127 int equiv = 0;
128 const char* te = tb + strlen(tb);
129 const char* ne = nb;
130 while (!equiv && *ne) {
131 for (nb = ne; *ne; ++ne) {
132 if (*ne == '|') break;
133 }
134 equiv = SWIG_TypeNameComp(nb, ne, tb, te) == 0;
135 if (*ne) ++ne;
136 }
137 return equiv;
138 }
139
140 /*
141 Register a type mapping with the type-checking
142 */
143 SWIGRUNTIME swig_type_info *
144 SWIG_TypeRegisterTL(swig_type_info **tl, swig_type_info *ti) {
145 swig_type_info *tc, *head, *ret, *next;
146 /* Check to see if this type has already been registered */
147 tc = *tl;
148 while (tc) {
149 /* check simple type equivalence */
150 int typeequiv = (strcmp(tc->name, ti->name) == 0);
151 /* check full type equivalence, resolving typedefs */
152 if (!typeequiv) {
153 /* only if tc is not a typedef (no '|' on it) */
154 if (tc->str && ti->str && !strstr(tc->str,"|")) {
155 typeequiv = SWIG_TypeEquiv(ti->str,tc->str);
156 }
157 }
158 if (typeequiv) {
159 /* Already exists in the table. Just add additional types to the list */
160 if (ti->clientdata) tc->clientdata = ti->clientdata;
161 head = tc;
162 next = tc->next;
163 goto l1;
164 }
165 tc = tc->prev;
166 }
167 head = ti;
168 next = 0;
169
170 /* Place in list */
171 ti->prev = *tl;
172 *tl = ti;
173
174 /* Build linked lists */
175 l1:
176 ret = head;
177 tc = ti + 1;
178 /* Patch up the rest of the links */
179 while (tc->name) {
180 head->next = tc;
181 tc->prev = head;
182 head = tc;
183 tc++;
184 }
185 if (next) next->prev = head;
186 head->next = next;
187
188 return ret;
189 }
190
191 /*
192 Check the typename
193 */
194 SWIGRUNTIME swig_type_info *
195 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
196 swig_type_info *s;
197 if (!ty) return 0; /* Void pointer */
198 s = ty->next; /* First element always just a name */
199 do {
200 if (strcmp(s->name,c) == 0) {
201 if (s == ty->next) return s;
202 /* Move s to the top of the linked list */
203 s->prev->next = s->next;
204 if (s->next) {
205 s->next->prev = s->prev;
206 }
207 /* Insert s as second element in the list */
208 s->next = ty->next;
209 if (ty->next) ty->next->prev = s;
210 ty->next = s;
211 s->prev = ty;
212 return s;
213 }
214 s = s->next;
215 } while (s && (s != ty->next));
216 return 0;
217 }
218
219 /*
220 Cast a pointer up an inheritance hierarchy
221 */
222 SWIGRUNTIMEINLINE void *
223 SWIG_TypeCast(swig_type_info *ty, void *ptr) {
224 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
225 }
226
227 /*
228 Dynamic pointer casting. Down an inheritance hierarchy
229 */
230 SWIGRUNTIME swig_type_info *
231 SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
232 swig_type_info *lastty = ty;
233 if (!ty || !ty->dcast) return ty;
234 while (ty && (ty->dcast)) {
235 ty = (*ty->dcast)(ptr);
236 if (ty) lastty = ty;
237 }
238 return lastty;
239 }
240
241 /*
242 Return the name associated with this type
243 */
244 SWIGRUNTIMEINLINE const char *
245 SWIG_TypeName(const swig_type_info *ty) {
246 return ty->name;
247 }
248
249 /*
250 Return the pretty name associated with this type,
251 that is an unmangled type name in a form presentable to the user.
252 */
253 SWIGRUNTIME const char *
254 SWIG_TypePrettyName(const swig_type_info *type) {
255 /* The "str" field contains the equivalent pretty names of the
256 type, separated by vertical-bar characters. We choose
257 to print the last name, as it is often (?) the most
258 specific. */
259 if (type->str != NULL) {
260 const char *last_name = type->str;
261 const char *s;
262 for (s = type->str; *s; s++)
263 if (*s == '|') last_name = s+1;
264 return last_name;
265 }
266 else
267 return type->name;
268 }
269
270 /*
271 Search for a swig_type_info structure
272 */
273 SWIGRUNTIME swig_type_info *
274 SWIG_TypeQueryTL(swig_type_info *tl, const char *name) {
275 swig_type_info *ty = tl;
276 while (ty) {
277 if (ty->str && (SWIG_TypeEquiv(ty->str,name))) return ty;
278 if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
279 ty = ty->prev;
280 }
281 return 0;
282 }
283
284 /*
285 Set the clientdata field for a type
286 */
287 SWIGRUNTIME void
288 SWIG_TypeClientDataTL(swig_type_info *tl, swig_type_info *ti, void *clientdata) {
289 swig_type_info *tc, *equiv;
290 if (ti->clientdata) return;
291 /* if (ti->clientdata == clientdata) return; */
292 ti->clientdata = clientdata;
293 equiv = ti->next;
294 while (equiv) {
295 if (!equiv->converter) {
296 tc = tl;
297 while (tc) {
298 if ((strcmp(tc->name, equiv->name) == 0))
299 SWIG_TypeClientDataTL(tl,tc,clientdata);
300 tc = tc->prev;
301 }
302 }
303 equiv = equiv->next;
304 }
305 }
306
307 /*
308 Pack binary data into a string
309 */
310 SWIGRUNTIME char *
311 SWIG_PackData(char *c, void *ptr, size_t sz) {
312 static char hex[17] = "0123456789abcdef";
313 unsigned char *u = (unsigned char *) ptr;
314 const unsigned char *eu = u + sz;
315 register unsigned char uu;
316 for (; u != eu; ++u) {
317 uu = *u;
318 *(c++) = hex[(uu & 0xf0) >> 4];
319 *(c++) = hex[uu & 0xf];
320 }
321 return c;
322 }
323
324 /*
325 Unpack binary data from a string
326 */
327 SWIGRUNTIME const char *
328 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
329 register unsigned char *u = (unsigned char *) ptr;
330 register const unsigned char *eu = u + sz;
331 for (; u != eu; ++u) {
332 register int d = *(c++);
333 register unsigned char uu = 0;
334 if ((d >= '0') && (d <= '9'))
335 uu = ((d - '0') << 4);
336 else if ((d >= 'a') && (d <= 'f'))
337 uu = ((d - ('a'-10)) << 4);
338 else
339 return (char *) 0;
340 d = *(c++);
341 if ((d >= '0') && (d <= '9'))
342 uu |= (d - '0');
343 else if ((d >= 'a') && (d <= 'f'))
344 uu |= (d - ('a'-10));
345 else
346 return (char *) 0;
347 *u = uu;
348 }
349 return c;
350 }
351
352 /*
353 This function will propagate the clientdata field of type to any new
354 swig_type_info structures that have been added into the list of
355 equivalent types. It is like calling SWIG_TypeClientData(type,
356 clientdata) a second time.
357 */
358 SWIGRUNTIME void
359 SWIG_PropagateClientDataTL(swig_type_info *tl, swig_type_info *type) {
360 swig_type_info *equiv = type->next;
361 swig_type_info *tc;
362 if (!type->clientdata) return;
363 while (equiv) {
364 if (!equiv->converter) {
365 tc = tl;
366 while (tc) {
367 if ((strcmp(tc->name, equiv->name) == 0) && !tc->clientdata)
368 SWIG_TypeClientDataTL(tl,tc, type->clientdata);
369 tc = tc->prev;
370 }
371 }
372 equiv = equiv->next;
373 }
374 }
375
376 /*
377 Pack 'void *' into a string buffer.
378 */
379 SWIGRUNTIME char *
380 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
381 char *r = buff;
382 if ((2*sizeof(void *) + 2) > bsz) return 0;
383 *(r++) = '_';
384 r = SWIG_PackData(r,&ptr,sizeof(void *));
385 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
386 strcpy(r,name);
387 return buff;
388 }
389
390 SWIGRUNTIME const char *
391 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
392 if (*c != '_') {
393 if (strcmp(c,"NULL") == 0) {
394 *ptr = (void *) 0;
395 return name;
396 } else {
397 return 0;
398 }
399 }
400 return SWIG_UnpackData(++c,ptr,sizeof(void *));
401 }
402
403 SWIGRUNTIME char *
404 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
405 char *r = buff;
406 size_t lname = (name ? strlen(name) : 0);
407 if ((2*sz + 2 + lname) > bsz) return 0;
408 *(r++) = '_';
409 r = SWIG_PackData(r,ptr,sz);
410 if (lname) {
411 strncpy(r,name,lname+1);
412 } else {
413 *r = 0;
414 }
415 return buff;
416 }
417
418 SWIGRUNTIME const char *
419 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
420 if (*c != '_') {
421 if (strcmp(c,"NULL") == 0) {
422 memset(ptr,0,sz);
423 return name;
424 } else {
425 return 0;
426 }
427 }
428 return SWIG_UnpackData(++c,ptr,sz);
429 }
430
431 #ifdef __cplusplus
432 }
433 #endif
434
435 /***********************************************************************
436 * common.swg
437 *
438 * This file contains generic SWIG runtime support for pointer
439 * type checking as well as a few commonly used macros to control
440 * external linkage.
441 *
442 * Author : David Beazley (beazley@cs.uchicago.edu)
443 *
444 * Copyright (c) 1999-2000, The University of Chicago
445 *
446 * This file may be freely redistributed without license or fee provided
447 * this copyright message remains intact.
448 ************************************************************************/
449
450
451 #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
452 # if !defined(STATIC_LINKED)
453 # define SWIGEXPORT(a) __declspec(dllexport) a
454 # else
455 # define SWIGEXPORT(a) a
456 # endif
457 #else
458 # define SWIGEXPORT(a) a
459 #endif
460
461 #ifdef __cplusplus
462 extern "C" {
463 #endif
464
465
466 /*************************************************************************/
467
468
469 /* The static type info list */
470
471 static swig_type_info *swig_type_list = 0;
472 static swig_type_info **swig_type_list_handle = &swig_type_list;
473
474
475 /* Register a type mapping with the type-checking */
476 static swig_type_info *
477 SWIG_TypeRegister(swig_type_info *ti) {
478 return SWIG_TypeRegisterTL(swig_type_list_handle, ti);
479 }
480
481 /* Search for a swig_type_info structure */
482 static swig_type_info *
483 SWIG_TypeQuery(const char *name) {
484 return SWIG_TypeQueryTL(*swig_type_list_handle, name);
485 }
486
487 /* Set the clientdata field for a type */
488 static void
489 SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
490 SWIG_TypeClientDataTL(*swig_type_list_handle, ti, clientdata);
491 }
492
493 /* This function will propagate the clientdata field of type to
494 * any new swig_type_info structures that have been added into the list
495 * of equivalent types. It is like calling
496 * SWIG_TypeClientData(type, clientdata) a second time.
497 */
498 static void
499 SWIG_PropagateClientData(swig_type_info *type) {
500 SWIG_PropagateClientDataTL(*swig_type_list_handle, type);
501 }
502
503 #ifdef __cplusplus
504 }
505 #endif
506
507 /* -----------------------------------------------------------------------------
508 * SWIG API. Portion that goes into the runtime
509 * ----------------------------------------------------------------------------- */
510
511 #ifdef __cplusplus
512 extern "C" {
513 #endif
514
515 /* -----------------------------------------------------------------------------
516 * for internal method declarations
517 * ----------------------------------------------------------------------------- */
518
519 #ifndef SWIGINTERN
520 #define SWIGINTERN static
521 #endif
522
523 #ifndef SWIGINTERNSHORT
524 #ifdef __cplusplus
525 #define SWIGINTERNSHORT static inline
526 #else /* C case */
527 #define SWIGINTERNSHORT static
528 #endif /* __cplusplus */
529 #endif
530
531
532 /*
533 Exception handling in wrappers
534 */
535 #define SWIG_fail goto fail
536 #define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
537 #define SWIG_append_errmsg(msg) SWIG_Python_AddErrMesg(msg,0)
538 #define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1)
539 #define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj)
540 #define SWIG_null_ref(type) SWIG_Python_NullRef(type)
541
542 /*
543 Contract support
544 */
545 #define SWIG_contract_assert(expr, msg) \
546 if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else
547
548 /* -----------------------------------------------------------------------------
549 * Constant declarations
550 * ----------------------------------------------------------------------------- */
551
552 /* Constant Types */
553 #define SWIG_PY_INT 1
554 #define SWIG_PY_FLOAT 2
555 #define SWIG_PY_STRING 3
556 #define SWIG_PY_POINTER 4
557 #define SWIG_PY_BINARY 5
558
559 /* Constant information structure */
560 typedef struct swig_const_info {
561 int type;
562 char *name;
563 long lvalue;
564 double dvalue;
565 void *pvalue;
566 swig_type_info **ptype;
567 } swig_const_info;
568
569
570 /* -----------------------------------------------------------------------------
571 * Alloc. memory flags
572 * ----------------------------------------------------------------------------- */
573 #define SWIG_OLDOBJ 1
574 #define SWIG_NEWOBJ SWIG_OLDOBJ + 1
575 #define SWIG_PYSTR SWIG_NEWOBJ + 1
576
577 #ifdef __cplusplus
578 }
579 #endif
580
581
582 /***********************************************************************
583 * pyrun.swg
584 *
585 * This file contains the runtime support for Python modules
586 * and includes code for managing global variables and pointer
587 * type checking.
588 *
589 * Author : David Beazley (beazley@cs.uchicago.edu)
590 ************************************************************************/
591
592 /* Common SWIG API */
593 #define SWIG_ConvertPtr(obj, pp, type, flags) SWIG_Python_ConvertPtr(obj, pp, type, flags)
594 #define SWIG_NewPointerObj(p, type, flags) SWIG_Python_NewPointerObj(p, type, flags)
595 #define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
596
597
598 /* Python-specific SWIG API */
599 #define SWIG_ConvertPacked(obj, ptr, sz, ty, flags) SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)
600 #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
601
602
603 /* -----------------------------------------------------------------------------
604 * Pointer declarations
605 * ----------------------------------------------------------------------------- */
606 /*
607 Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent
608 C/C++ pointers in the python side. Very useful for debugging, but
609 not always safe.
610 */
611 #if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES)
612 # define SWIG_COBJECT_TYPES
613 #endif
614
615 /* Flags for pointer conversion */
616 #define SWIG_POINTER_EXCEPTION 0x1
617 #define SWIG_POINTER_DISOWN 0x2
618
619
620 #ifdef __cplusplus
621 extern "C" {
622 #endif
623
624 /* -----------------------------------------------------------------------------
625 * Create a new pointer string
626 * ----------------------------------------------------------------------------- */
627
628 #ifndef SWIG_BUFFER_SIZE
629 #define SWIG_BUFFER_SIZE 1024
630 #endif
631
632 #if defined(SWIG_COBJECT_TYPES)
633 #if !defined(SWIG_COBJECT_PYTHON)
634 /* -----------------------------------------------------------------------------
635 * Implements a simple Swig Object type, and use it instead of PyCObject
636 * ----------------------------------------------------------------------------- */
637
638 typedef struct {
639 PyObject_HEAD
640 void *ptr;
641 const char *desc;
642 } PySwigObject;
643
644 /* Declarations for objects of type PySwigObject */
645
646 SWIGRUNTIME int
647 PySwigObject_print(PySwigObject *v, FILE *fp, int flags)
648 {
649 char result[SWIG_BUFFER_SIZE];
650 if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) {
651 fputs("<Swig Object at ", fp); fputs(result, fp); fputs(">", fp);
652 return 0;
653 } else {
654 return 1;
655 }
656 }
657
658 SWIGRUNTIME PyObject *
659 PySwigObject_repr(PySwigObject *v)
660 {
661 char result[SWIG_BUFFER_SIZE];
662 return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
663 PyString_FromFormat("<Swig Object at %s>", result) : 0;
664 }
665
666 SWIGRUNTIME PyObject *
667 PySwigObject_str(PySwigObject *v)
668 {
669 char result[SWIG_BUFFER_SIZE];
670 return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
671 PyString_FromString(result) : 0;
672 }
673
674 SWIGRUNTIME PyObject *
675 PySwigObject_long(PySwigObject *v)
676 {
677 return PyLong_FromUnsignedLong((unsigned long) v->ptr);
678 }
679
680 SWIGRUNTIME PyObject *
681 PySwigObject_oct(PySwigObject *v)
682 {
683 char buf[100];
684 unsigned long x = (unsigned long)v->ptr;
685 if (x == 0)
686 strcpy(buf, "0");
687 else
688 PyOS_snprintf(buf, sizeof(buf), "0%lo", x);
689 return PyString_FromString(buf);
690 }
691
692 SWIGRUNTIME PyObject *
693 PySwigObject_hex(PySwigObject *v)
694 {
695 char buf[100];
696 PyOS_snprintf(buf, sizeof(buf), "0x%lx", (unsigned long)v->ptr);
697 return PyString_FromString(buf);
698 }
699
700 SWIGRUNTIME int
701 PySwigObject_compare(PySwigObject *v, PySwigObject *w)
702 {
703 int c = strcmp(v->desc, w->desc);
704 if (c) {
705 return c;
706 } else {
707 void *i = v->ptr;
708 void *j = w->ptr;
709 return (i < j) ? -1 : (i > j) ? 1 : 0;
710 }
711 }
712
713 SWIGRUNTIME void
714 PySwigObject_dealloc(PySwigObject *self)
715 {
716 PyObject_DEL(self);
717 }
718
719 SWIGRUNTIME PyTypeObject*
720 PySwigObject_GetType() {
721 static char PySwigObject_Type__doc__[] =
722 "Swig object carries a C/C++ instance pointer";
723
724 static PyNumberMethods PySwigObject_as_number = {
725 (binaryfunc)0, /*nb_add*/
726 (binaryfunc)0, /*nb_subtract*/
727 (binaryfunc)0, /*nb_multiply*/
728 (binaryfunc)0, /*nb_divide*/
729 (binaryfunc)0, /*nb_remainder*/
730 (binaryfunc)0, /*nb_divmod*/
731 (ternaryfunc)0,/*nb_power*/
732 (unaryfunc)0, /*nb_negative*/
733 (unaryfunc)0, /*nb_positive*/
734 (unaryfunc)0, /*nb_absolute*/
735 (inquiry)0, /*nb_nonzero*/
736 0, /*nb_invert*/
737 0, /*nb_lshift*/
738 0, /*nb_rshift*/
739 0, /*nb_and*/
740 0, /*nb_xor*/
741 0, /*nb_or*/
742 (coercion)0, /*nb_coerce*/
743 (unaryfunc)PySwigObject_long, /*nb_int*/
744 (unaryfunc)PySwigObject_long, /*nb_long*/
745 (unaryfunc)0, /*nb_float*/
746 (unaryfunc)PySwigObject_oct, /*nb_oct*/
747 (unaryfunc)PySwigObject_hex, /*nb_hex*/
748 #if PY_VERSION_HEX >= 0x02000000
749 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */
750 #endif
751 };
752
753 static int type_init = 0;
754 static PyTypeObject PySwigObject_Type;
755
756 if (!type_init) {
757 PyTypeObject tmp = {
758 PyObject_HEAD_INIT(&PyType_Type)
759 0, /*ob_size*/
760 "PySwigObject", /*tp_name*/
761 sizeof(PySwigObject), /*tp_basicsize*/
762 0, /*tp_itemsize*/
763 /* methods */
764 (destructor)PySwigObject_dealloc, /*tp_dealloc*/
765 (printfunc)PySwigObject_print, /*tp_print*/
766 (getattrfunc)0, /*tp_getattr*/
767 (setattrfunc)0, /*tp_setattr*/
768 (cmpfunc)PySwigObject_compare, /*tp_compare*/
769 (reprfunc)PySwigObject_repr, /*tp_repr*/
770 &PySwigObject_as_number, /*tp_as_number*/
771 0, /*tp_as_sequence*/
772 0, /*tp_as_mapping*/
773 (hashfunc)0, /*tp_hash*/
774 (ternaryfunc)0, /*tp_call*/
775 (reprfunc)PySwigObject_str, /*tp_str*/
776 /* Space for future expansion */
777 0L,0L,0L,0L,
778 PySwigObject_Type__doc__, /* Documentation string */
779 #if PY_VERSION_HEX >= 0x02000000
780 0, /* tp_traverse */
781 0, /* tp_clear */
782 #endif
783 #if PY_VERSION_HEX >= 0x02010000
784 0, /* tp_richcompare */
785 0, /* tp_weaklistoffset */
786 #endif
787 #if PY_VERSION_HEX >= 0x02020000
788 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
789 #endif
790 #if PY_VERSION_HEX >= 0x02030000
791 0, /* tp_del */
792 #endif
793 #ifdef COUNT_ALLOCS
794 0,0,0,0 /* tp_alloc -> tp_next */
795 #endif
796 };
797
798 PySwigObject_Type = tmp;
799 type_init = 1;
800 }
801
802 return &PySwigObject_Type;
803 }
804
805 SWIGRUNTIME PyObject *
806 PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc)
807 {
808 PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_GetType());
809 if (self == NULL) return NULL;
810 self->ptr = ptr;
811 self->desc = desc;
812 return (PyObject *)self;
813 }
814
815 SWIGRUNTIMEINLINE void *
816 PySwigObject_AsVoidPtr(PyObject *self)
817 {
818 return ((PySwigObject *)self)->ptr;
819 }
820
821 SWIGRUNTIMEINLINE const char *
822 PySwigObject_GetDesc(PyObject *self)
823 {
824 return ((PySwigObject *)self)->desc;
825 }
826
827 SWIGRUNTIMEINLINE int
828 PySwigObject_Check(PyObject *op) {
829 return ((op)->ob_type == PySwigObject_GetType())
830 || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);
831 }
832
833 /* -----------------------------------------------------------------------------
834 * Implements a simple Swig Packed type, and use it instead of string
835 * ----------------------------------------------------------------------------- */
836
837 typedef struct {
838 PyObject_HEAD
839 void *pack;
840 const char *desc;
841 size_t size;
842 } PySwigPacked;
843
844 SWIGRUNTIME int
845 PySwigPacked_print(PySwigPacked *v, FILE *fp, int flags)
846 {
847 char result[SWIG_BUFFER_SIZE];
848 fputs("<Swig Packed ", fp);
849 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
850 fputs("at ", fp);
851 fputs(result, fp);
852 }
853 fputs(v->desc,fp);
854 fputs(">", fp);
855 return 0;
856 }
857
858 SWIGRUNTIME PyObject *
859 PySwigPacked_repr(PySwigPacked *v)
860 {
861 char result[SWIG_BUFFER_SIZE];
862 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
863 return PyString_FromFormat("<Swig Packed at %s%s>", result, v->desc);
864 } else {
865 return PyString_FromFormat("<Swig Packed %s>", v->desc);
866 }
867 }
868
869 SWIGRUNTIME PyObject *
870 PySwigPacked_str(PySwigPacked *v)
871 {
872 char result[SWIG_BUFFER_SIZE];
873 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
874 return PyString_FromFormat("%s%s", result, v->desc);
875 } else {
876 return PyString_FromFormat("%s", v->desc);
877 }
878 }
879
880 SWIGRUNTIME int
881 PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
882 {
883 int c = strcmp(v->desc, w->desc);
884 if (c) {
885 return c;
886 } else {
887 size_t i = v->size;
888 size_t j = w->size;
889 int s = (i < j) ? -1 : (i > j) ? 1 : 0;
890 return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
891 }
892 }
893
894 SWIGRUNTIME void
895 PySwigPacked_dealloc(PySwigPacked *self)
896 {
897 free(self->pack);
898 PyObject_DEL(self);
899 }
900
901 SWIGRUNTIME PyTypeObject*
902 PySwigPacked_GetType() {
903 static char PySwigPacked_Type__doc__[] =
904 "Swig object carries a C/C++ instance pointer";
905 static int type_init = 0;
906
907 static PyTypeObject PySwigPacked_Type;
908 if (!type_init) {
909 PyTypeObject tmp = {
910 PyObject_HEAD_INIT(&PyType_Type)
911 0, /*ob_size*/
912 "PySwigPacked", /*tp_name*/
913 sizeof(PySwigPacked), /*tp_basicsize*/
914 0, /*tp_itemsize*/
915 /* methods */
916 (destructor)PySwigPacked_dealloc, /*tp_dealloc*/
917 (printfunc)PySwigPacked_print, /*tp_print*/
918 (getattrfunc)0, /*tp_getattr*/
919 (setattrfunc)0, /*tp_setattr*/
920 (cmpfunc)PySwigPacked_compare, /*tp_compare*/
921 (reprfunc)PySwigPacked_repr, /*tp_repr*/
922 0, /*tp_as_number*/
923 0, /*tp_as_sequence*/
924 0, /*tp_as_mapping*/
925 (hashfunc)0, /*tp_hash*/
926 (ternaryfunc)0, /*tp_call*/
927 (reprfunc)PySwigPacked_str, /*tp_str*/
928 /* Space for future expansion */
929 0L,0L,0L,0L,
930 PySwigPacked_Type__doc__, /* Documentation string */
931 #if PY_VERSION_HEX >= 0x02000000
932 0, /* tp_traverse */
933 0, /* tp_clear */
934 #endif
935 #if PY_VERSION_HEX >= 0x02010000
936 0, /* tp_richcompare */
937 0, /* tp_weaklistoffset */
938 #endif
939 #if PY_VERSION_HEX >= 0x02020000
940 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
941 #endif
942 #if PY_VERSION_HEX >= 0x02030000
943 0, /* tp_del */
944 #endif
945 #ifdef COUNT_ALLOCS
946 0,0,0,0 /* tp_alloc -> tp_next */
947 #endif
948 };
949
950 PySwigPacked_Type = tmp;
951 type_init = 1;
952 }
953
954
955
956 return &PySwigPacked_Type;
957 }
958
959 SWIGRUNTIME PyObject *
960 PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc)
961 {
962 PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_GetType());
963 if (self == NULL) {
964 return NULL;
965 } else {
966 void *pack = malloc(size);
967 memcpy(pack, ptr, size);
968 self->pack = pack;
969 self->desc = desc;
970 self->size = size;
971 return (PyObject *) self;
972 }
973 }
974
975 SWIGRUNTIMEINLINE const char *
976 PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
977 {
978 PySwigPacked *self = (PySwigPacked *)obj;
979 if (self->size != size) return 0;
980 memcpy(ptr, self->pack, size);
981 return self->desc;
982 }
983
984 SWIGRUNTIMEINLINE const char *
985 PySwigPacked_GetDesc(PyObject *self)
986 {
987 return ((PySwigPacked *)self)->desc;
988 }
989
990 SWIGRUNTIMEINLINE int
991 PySwigPacked_Check(PyObject *op) {
992 return ((op)->ob_type == PySwigPacked_GetType())
993 || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
994 }
995
996 #else
997 /* -----------------------------------------------------------------------------
998 * Use the old Python PyCObject instead of PySwigObject
999 * ----------------------------------------------------------------------------- */
1000
1001 #define PySwigObject_GetDesc(obj) PyCObject_GetDesc(obj)
1002 #define PySwigObject_Check(obj) PyCObject_Check(obj)
1003 #define PySwigObject_AsVoidPtr(obj) PyCObject_AsVoidPtr(obj)
1004 #define PySwigObject_FromVoidPtrAndDesc(p, d) PyCObject_FromVoidPtrAndDesc(p, d, NULL)
1005
1006 #endif
1007
1008 #endif
1009
1010 /* -----------------------------------------------------------------------------
1011 * errors manipulation
1012 * ----------------------------------------------------------------------------- */
1013
1014 SWIGRUNTIME void
1015 SWIG_Python_TypeError(const char *type, PyObject *obj)
1016 {
1017 if (type) {
1018 #if defined(SWIG_COBJECT_TYPES)
1019 if (PySwigObject_Check(obj)) {
1020 const char *otype = (const char *) PySwigObject_GetDesc(obj);
1021 if (otype) {
1022 PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
1023 type, otype);
1024 return;
1025 }
1026 } else
1027 #endif
1028 {
1029 const char *otype = (obj ? obj->ob_type->tp_name : 0);
1030 if (otype) {
1031 PyObject *str = PyObject_Str(obj);
1032 const char *cstr = str ? PyString_AsString(str) : 0;
1033 if (cstr) {
1034 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
1035 type, otype, cstr);
1036 } else {
1037 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
1038 type, otype);
1039 }
1040 if (str)
1041 Py_DECREF(str);
1042 return;
1043 }
1044 }
1045 PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
1046 } else {
1047 PyErr_Format(PyExc_TypeError, "unexpected type is received");
1048 }
1049 }
1050
1051 SWIGRUNTIMEINLINE void
1052 SWIG_Python_NullRef(const char *type)
1053 {
1054 if (type) {
1055 PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
1056 } else {
1057 PyErr_Format(PyExc_TypeError, "null reference was received");
1058 }
1059 }
1060
1061 SWIGRUNTIME int
1062 SWIG_Python_AddErrMesg(const char* mesg, int infront)
1063 {
1064 if (PyErr_Occurred()) {
1065 PyObject *type = 0;
1066 PyObject *value = 0;
1067 PyObject *traceback = 0;
1068 PyErr_Fetch(&type, &value, &traceback);
1069 if (value) {
1070 PyObject *old_str = PyObject_Str(value);
1071 Py_XINCREF(type);
1072 PyErr_Clear();
1073 if (infront) {
1074 PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
1075 } else {
1076 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
1077 }
1078 Py_DECREF(old_str);
1079 }
1080 return 1;
1081 } else {
1082 return 0;
1083 }
1084 }
1085
1086 SWIGRUNTIME int
1087 SWIG_Python_ArgFail(int argnum)
1088 {
1089 if (PyErr_Occurred()) {
1090 /* add information about failing argument */
1091 char mesg[256];
1092 sprintf(mesg, "argument number %d:", argnum);
1093 return SWIG_Python_AddErrMesg(mesg, 1);
1094 } else {
1095 return 0;
1096 }
1097 }
1098
1099
1100 /* -----------------------------------------------------------------------------
1101 * pointers/data manipulation
1102 * ----------------------------------------------------------------------------- */
1103
1104 /* Convert a pointer value */
1105 SWIGRUNTIME int
1106 SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
1107 swig_type_info *tc;
1108 const char *c = 0;
1109 static PyObject *SWIG_this = 0;
1110 int newref = 0;
1111 PyObject *pyobj = 0;
1112 void *vptr;
1113
1114 if (!obj) return 0;
1115 if (obj == Py_None) {
1116 *ptr = 0;
1117 return 0;
1118 }
1119
1120 #ifdef SWIG_COBJECT_TYPES
1121 if (!(PySwigObject_Check(obj))) {
1122 if (!SWIG_this)
1123 SWIG_this = PyString_FromString("this");
1124 pyobj = obj;
1125 obj = PyObject_GetAttr(obj,SWIG_this);
1126 newref = 1;
1127 if (!obj) goto type_error;
1128 if (!PySwigObject_Check(obj)) {
1129 Py_DECREF(obj);
1130 goto type_error;
1131 }
1132 }
1133 vptr = PySwigObject_AsVoidPtr(obj);
1134 c = (const char *) PySwigObject_GetDesc(obj);
1135 if (newref) { Py_DECREF(obj); }
1136 goto type_check;
1137 #else
1138 if (!(PyString_Check(obj))) {
1139 if (!SWIG_this)
1140 SWIG_this = PyString_FromString("this");
1141 pyobj = obj;
1142 obj = PyObject_GetAttr(obj,SWIG_this);
1143 newref = 1;
1144 if (!obj) goto type_error;
1145 if (!PyString_Check(obj)) {
1146 Py_DECREF(obj);
1147 goto type_error;
1148 }
1149 }
1150 c = PyString_AS_STRING(obj);
1151 /* Pointer values must start with leading underscore */
1152 c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
1153 if (newref) { Py_DECREF(obj); }
1154 if (!c) goto type_error;
1155 #endif
1156
1157 type_check:
1158
1159 if (ty) {
1160 tc = SWIG_TypeCheck(c,ty);
1161 if (!tc) goto type_error;
1162 *ptr = SWIG_TypeCast(tc,vptr);
1163 } else {
1164 *ptr = vptr;
1165 }
1166
1167 if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
1168 PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
1169 }
1170 return 0;
1171
1172 type_error:
1173 PyErr_Clear();
1174 if (pyobj && !obj) {
1175 obj = pyobj;
1176 if (PyCFunction_Check(obj)) {
1177 /* here we get the method pointer for callbacks */
1178 char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
1179 c = doc ? strstr(doc, "swig_ptr: ") : 0;
1180 if (c) {
1181 c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name);
1182 if (!c) goto type_error;
1183 goto type_check;
1184 }
1185 }
1186 }
1187 if (flags & SWIG_POINTER_EXCEPTION) {
1188 if (ty) {
1189 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1190 } else {
1191 SWIG_Python_TypeError("C/C++ pointer", obj);
1192 }
1193 }
1194 return -1;
1195 }
1196
1197 /* Convert a pointer value, signal an exception on a type mismatch */
1198 SWIGRUNTIME void *
1199 SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
1200 void *result;
1201 if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
1202 PyErr_Clear();
1203 if (flags & SWIG_POINTER_EXCEPTION) {
1204 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1205 SWIG_Python_ArgFail(argnum);
1206 }
1207 }
1208 return result;
1209 }
1210
1211 /* Convert a packed value value */
1212 SWIGRUNTIME int
1213 SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
1214 swig_type_info *tc;
1215 const char *c = 0;
1216
1217 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1218 c = PySwigPacked_UnpackData(obj, ptr, sz);
1219 #else
1220 if ((!obj) || (!PyString_Check(obj))) goto type_error;
1221 c = PyString_AS_STRING(obj);
1222 /* Pointer values must start with leading underscore */
1223 c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
1224 #endif
1225 if (!c) goto type_error;
1226 if (ty) {
1227 tc = SWIG_TypeCheck(c,ty);
1228 if (!tc) goto type_error;
1229 }
1230 return 0;
1231
1232 type_error:
1233 PyErr_Clear();
1234 if (flags & SWIG_POINTER_EXCEPTION) {
1235 if (ty) {
1236 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1237 } else {
1238 SWIG_Python_TypeError("C/C++ packed data", obj);
1239 }
1240 }
1241 return -1;
1242 }
1243
1244 /* Create a new array object */
1245 SWIGRUNTIME PyObject *
1246 SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
1247 PyObject *robj = 0;
1248 if (!ptr) {
1249 Py_INCREF(Py_None);
1250 return Py_None;
1251 }
1252 #ifdef SWIG_COBJECT_TYPES
1253 robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
1254 #else
1255 {
1256 char result[SWIG_BUFFER_SIZE];
1257 robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
1258 PyString_FromString(result) : 0;
1259 }
1260 #endif
1261 if (!robj || (robj == Py_None)) return robj;
1262 if (type->clientdata) {
1263 PyObject *inst;
1264 PyObject *args = Py_BuildValue((char*)"(O)", robj);
1265 Py_DECREF(robj);
1266 inst = PyObject_CallObject((PyObject *) type->clientdata, args);
1267 Py_DECREF(args);
1268 if (inst) {
1269 if (own) {
1270 PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
1271 }
1272 robj = inst;
1273 }
1274 }
1275 return robj;
1276 }
1277
1278 SWIGRUNTIME PyObject *
1279 SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
1280 PyObject *robj = 0;
1281 if (!ptr) {
1282 Py_INCREF(Py_None);
1283 return Py_None;
1284 }
1285 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1286 robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
1287 #else
1288 {
1289 char result[SWIG_BUFFER_SIZE];
1290 robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
1291 PyString_FromString(result) : 0;
1292 }
1293 #endif
1294 return robj;
1295 }
1296
1297 /* -----------------------------------------------------------------------------*
1298 * Get type list
1299 * -----------------------------------------------------------------------------*/
1300
1301 #ifdef SWIG_LINK_RUNTIME
1302 void *SWIG_ReturnGlobalTypeList(void *);
1303 #endif
1304
1305 SWIGRUNTIME swig_type_info **
1306 SWIG_Python_GetTypeListHandle() {
1307 static void *type_pointer = (void *)0;
1308 /* first check if module already created */
1309 if (!type_pointer) {
1310 #ifdef SWIG_LINK_RUNTIME
1311 type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
1312 #else
1313 type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
1314 (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
1315 if (PyErr_Occurred()) {
1316 PyErr_Clear();
1317 type_pointer = (void *)0;
1318 }
1319 }
1320 #endif
1321 return (swig_type_info **) type_pointer;
1322 }
1323
1324 /*
1325 Search for a swig_type_info structure
1326 */
1327 SWIGRUNTIMEINLINE swig_type_info *
1328 SWIG_Python_GetTypeList() {
1329 swig_type_info **tlh = SWIG_Python_GetTypeListHandle();
1330 return tlh ? *tlh : (swig_type_info*)0;
1331 }
1332
1333 #define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList
1334
1335 #ifdef __cplusplus
1336 }
1337 #endif
1338
1339
1340 /* -------- TYPES TABLE (BEGIN) -------- */
1341
1342 #define SWIGTYPE_p_wxGLCanvas swig_types[0]
1343 #define SWIGTYPE_p_wxObject swig_types[1]
1344 #define SWIGTYPE_p_unsigned_char swig_types[2]
1345 #define SWIGTYPE_p_wxGLContext swig_types[3]
1346 #define SWIGTYPE_p_wxWindow swig_types[4]
1347 #define SWIGTYPE_p_unsigned_long swig_types[5]
1348 #define SWIGTYPE_p_form_ops_t swig_types[6]
1349 #define SWIGTYPE_p_unsigned_int swig_types[7]
1350 #define SWIGTYPE_unsigned_int swig_types[8]
1351 #define SWIGTYPE_p_wxDuplexMode swig_types[9]
1352 #define SWIGTYPE_p_char swig_types[10]
1353 #define SWIGTYPE_p_wxEvtHandler swig_types[11]
1354 #define SWIGTYPE_p_wxPalette swig_types[12]
1355 #define SWIGTYPE_std__ptrdiff_t swig_types[13]
1356 #define SWIGTYPE_ptrdiff_t swig_types[14]
1357 #define SWIGTYPE_p_wxPaperSize swig_types[15]
1358 #define SWIGTYPE_p_int swig_types[16]
1359 static swig_type_info *swig_types[18];
1360
1361 /* -------- TYPES TABLE (END) -------- */
1362
1363
1364 /*-----------------------------------------------
1365 @(target):= _glcanvas.so
1366 ------------------------------------------------*/
1367 #define SWIG_init init_glcanvas
1368
1369 #define SWIG_name "_glcanvas"
1370
1371 #include "wx/wxPython/wxPython.h"
1372 #include "wx/wxPython/pyclasses.h"
1373
1374 #include <wx/glcanvas.h>
1375
1376
1377 static const wxString wxPyGLCanvasNameStr(wxT("GLCanvas"));
1378 static const wxString wxPyEmptyString(wxEmptyString);
1379
1380 #include <limits.h>
1381
1382
1383 SWIGINTERN int
1384 SWIG_CheckLongInRange(long value, long min_value, long max_value,
1385 const char *errmsg)
1386 {
1387 if (value < min_value) {
1388 if (errmsg) {
1389 PyErr_Format(PyExc_OverflowError,
1390 "value %ld is less than '%s' minimum %ld",
1391 value, errmsg, min_value);
1392 }
1393 return 0;
1394 } else if (value > max_value) {
1395 if (errmsg) {
1396 PyErr_Format(PyExc_OverflowError,
1397 "value %ld is greater than '%s' maximum %ld",
1398 value, errmsg, max_value);
1399 }
1400 return 0;
1401 }
1402 return 1;
1403 }
1404
1405
1406 SWIGINTERN int
1407 SWIG_AsVal_long(PyObject* obj, long* val)
1408 {
1409 if (PyNumber_Check(obj)) {
1410 if (val) *val = PyInt_AsLong(obj);
1411 return 1;
1412 }
1413 else {
1414 SWIG_type_error("number", obj);
1415 }
1416 return 0;
1417 }
1418
1419
1420 #if INT_MAX != LONG_MAX
1421 SWIGINTERN int
1422 SWIG_AsVal_int(PyObject *obj, int *val)
1423 {
1424 const char* errmsg = val ? "int" : (char*)0;
1425 long v;
1426 if (SWIG_AsVal_long(obj, &v)) {
1427 if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
1428 if (val) *val = (int)(v);
1429 return 1;
1430 } else {
1431 return 0;
1432 }
1433 } else {
1434 PyErr_Clear();
1435 }
1436 if (val) {
1437 SWIG_type_error(errmsg, obj);
1438 }
1439 return 0;
1440 }
1441 #else
1442 SWIGINTERNSHORT int
1443 SWIG_AsVal_int(PyObject *obj, int *val)
1444 {
1445 return SWIG_AsVal_long(obj,(long*)val);
1446 }
1447 #endif
1448
1449
1450 SWIGINTERN int
1451 SWIG_AsVal_bool(PyObject *obj, bool *val)
1452 {
1453 if (obj == Py_True) {
1454 if (val) *val = true;
1455 return 1;
1456 }
1457 if (obj == Py_False) {
1458 if (val) *val = false;
1459 return 1;
1460 }
1461 int res = 0;
1462 if (SWIG_AsVal_int(obj, &res)) {
1463 if (val) *val = res ? true : false;
1464 return 1;
1465 } else {
1466 PyErr_Clear();
1467 }
1468 if (val) {
1469 SWIG_type_error("bool", obj);
1470 }
1471 return 0;
1472 }
1473
1474
1475 SWIGINTERNSHORT bool
1476 SWIG_As_bool(PyObject* obj)
1477 {
1478 bool v;
1479 if (!SWIG_AsVal_bool(obj, &v)) {
1480 /*
1481 this is needed to make valgrind/purify happier.
1482 */
1483 memset((void*)&v, 0, sizeof(bool));
1484 }
1485 return v;
1486 }
1487
1488
1489 SWIGINTERNSHORT int
1490 SWIG_Check_bool(PyObject* obj)
1491 {
1492 return SWIG_AsVal_bool(obj, (bool*)0);
1493 }
1494
1495
1496 /*@c:\\PROJECTS\\SWIG-cvs\\Lib\\python\\pymacros.swg,66,SWIG_define@*/
1497 #define SWIG_From_int PyInt_FromLong
1498 /*@@*/
1499
1500
1501 SWIGINTERNSHORT int
1502 SWIG_As_int(PyObject* obj)
1503 {
1504 int v;
1505 if (!SWIG_AsVal_int(obj, &v)) {
1506 /*
1507 this is needed to make valgrind/purify happier.
1508 */
1509 memset((void*)&v, 0, sizeof(int));
1510 }
1511 return v;
1512 }
1513
1514
1515 SWIGINTERNSHORT long
1516 SWIG_As_long(PyObject* obj)
1517 {
1518 long v;
1519 if (!SWIG_AsVal_long(obj, &v)) {
1520 /*
1521 this is needed to make valgrind/purify happier.
1522 */
1523 memset((void*)&v, 0, sizeof(long));
1524 }
1525 return v;
1526 }
1527
1528
1529 SWIGINTERNSHORT int
1530 SWIG_Check_int(PyObject* obj)
1531 {
1532 return SWIG_AsVal_int(obj, (int*)0);
1533 }
1534
1535
1536 SWIGINTERNSHORT int
1537 SWIG_Check_long(PyObject* obj)
1538 {
1539 return SWIG_AsVal_long(obj, (long*)0);
1540 }
1541
1542 #ifdef __cplusplus
1543 extern "C" {
1544 #endif
1545 static int _wrap_GLCanvasNameStr_set(PyObject *) {
1546 PyErr_SetString(PyExc_TypeError,"Variable GLCanvasNameStr is read-only.");
1547 return 1;
1548 }
1549
1550
1551 static PyObject *_wrap_GLCanvasNameStr_get(void) {
1552 PyObject *pyobj;
1553
1554 {
1555 #if wxUSE_UNICODE
1556 pyobj = PyUnicode_FromWideChar((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1557 #else
1558 pyobj = PyString_FromStringAndSize((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1559 #endif
1560 }
1561 return pyobj;
1562 }
1563
1564
1565 static PyObject *_wrap_new_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1566 PyObject *resultobj;
1567 bool arg1 ;
1568 wxGLCanvas *arg2 = (wxGLCanvas *) 0 ;
1569 wxPalette const &arg3_defvalue = wxNullPalette ;
1570 wxPalette *arg3 = (wxPalette *) &arg3_defvalue ;
1571 wxGLContext *arg4 = (wxGLContext *) NULL ;
1572 wxGLContext *result;
1573 PyObject * obj0 = 0 ;
1574 PyObject * obj1 = 0 ;
1575 PyObject * obj2 = 0 ;
1576 PyObject * obj3 = 0 ;
1577 char *kwnames[] = {
1578 (char *) "isRGB",(char *) "win",(char *) "palette",(char *) "other", NULL
1579 };
1580
1581 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:new_GLContext",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
1582 {
1583 arg1 = (bool)(SWIG_As_bool(obj0));
1584 if (SWIG_arg_fail(1)) SWIG_fail;
1585 }
1586 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
1587 if (SWIG_arg_fail(2)) SWIG_fail;
1588 if (obj2) {
1589 {
1590 SWIG_Python_ConvertPtr(obj2, (void **)&arg3, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1591 if (SWIG_arg_fail(3)) SWIG_fail;
1592 if (arg3 == NULL) {
1593 SWIG_null_ref("wxPalette");
1594 }
1595 if (SWIG_arg_fail(3)) SWIG_fail;
1596 }
1597 }
1598 if (obj3) {
1599 SWIG_Python_ConvertPtr(obj3, (void **)&arg4, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1600 if (SWIG_arg_fail(4)) SWIG_fail;
1601 }
1602 {
1603 if (!wxPyCheckForApp()) SWIG_fail;
1604 PyThreadState* __tstate = wxPyBeginAllowThreads();
1605 result = (wxGLContext *)new wxGLContext(arg1,arg2,(wxPalette const &)*arg3,(wxGLContext const *)arg4);
1606
1607 wxPyEndAllowThreads(__tstate);
1608 if (PyErr_Occurred()) SWIG_fail;
1609 }
1610 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 1);
1611 return resultobj;
1612 fail:
1613 return NULL;
1614 }
1615
1616
1617 static PyObject *_wrap_delete_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1618 PyObject *resultobj;
1619 wxGLContext *arg1 = (wxGLContext *) 0 ;
1620 PyObject * obj0 = 0 ;
1621 char *kwnames[] = {
1622 (char *) "self", NULL
1623 };
1624
1625 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_GLContext",kwnames,&obj0)) goto fail;
1626 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1627 if (SWIG_arg_fail(1)) SWIG_fail;
1628 {
1629 PyThreadState* __tstate = wxPyBeginAllowThreads();
1630 delete arg1;
1631
1632 wxPyEndAllowThreads(__tstate);
1633 if (PyErr_Occurred()) SWIG_fail;
1634 }
1635 Py_INCREF(Py_None); resultobj = Py_None;
1636 return resultobj;
1637 fail:
1638 return NULL;
1639 }
1640
1641
1642 static PyObject *_wrap_GLContext_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
1643 PyObject *resultobj;
1644 wxGLContext *arg1 = (wxGLContext *) 0 ;
1645 PyObject * obj0 = 0 ;
1646 char *kwnames[] = {
1647 (char *) "self", NULL
1648 };
1649
1650 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SetCurrent",kwnames,&obj0)) goto fail;
1651 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1652 if (SWIG_arg_fail(1)) SWIG_fail;
1653 {
1654 PyThreadState* __tstate = wxPyBeginAllowThreads();
1655 (arg1)->SetCurrent();
1656
1657 wxPyEndAllowThreads(__tstate);
1658 if (PyErr_Occurred()) SWIG_fail;
1659 }
1660 Py_INCREF(Py_None); resultobj = Py_None;
1661 return resultobj;
1662 fail:
1663 return NULL;
1664 }
1665
1666
1667 static PyObject *_wrap_GLContext_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
1668 PyObject *resultobj;
1669 wxGLContext *arg1 = (wxGLContext *) 0 ;
1670 wxString *arg2 = 0 ;
1671 bool temp2 = false ;
1672 PyObject * obj0 = 0 ;
1673 PyObject * obj1 = 0 ;
1674 char *kwnames[] = {
1675 (char *) "self",(char *) "colour", NULL
1676 };
1677
1678 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetColour",kwnames,&obj0,&obj1)) goto fail;
1679 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1680 if (SWIG_arg_fail(1)) SWIG_fail;
1681 {
1682 arg2 = wxString_in_helper(obj1);
1683 if (arg2 == NULL) SWIG_fail;
1684 temp2 = true;
1685 }
1686 {
1687 PyThreadState* __tstate = wxPyBeginAllowThreads();
1688 (arg1)->SetColour((wxString const &)*arg2);
1689
1690 wxPyEndAllowThreads(__tstate);
1691 if (PyErr_Occurred()) SWIG_fail;
1692 }
1693 Py_INCREF(Py_None); resultobj = Py_None;
1694 {
1695 if (temp2)
1696 delete arg2;
1697 }
1698 return resultobj;
1699 fail:
1700 {
1701 if (temp2)
1702 delete arg2;
1703 }
1704 return NULL;
1705 }
1706
1707
1708 static PyObject *_wrap_GLContext_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
1709 PyObject *resultobj;
1710 wxGLContext *arg1 = (wxGLContext *) 0 ;
1711 PyObject * obj0 = 0 ;
1712 char *kwnames[] = {
1713 (char *) "self", NULL
1714 };
1715
1716 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SwapBuffers",kwnames,&obj0)) goto fail;
1717 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1718 if (SWIG_arg_fail(1)) SWIG_fail;
1719 {
1720 PyThreadState* __tstate = wxPyBeginAllowThreads();
1721 (arg1)->SwapBuffers();
1722
1723 wxPyEndAllowThreads(__tstate);
1724 if (PyErr_Occurred()) SWIG_fail;
1725 }
1726 Py_INCREF(Py_None); resultobj = Py_None;
1727 return resultobj;
1728 fail:
1729 return NULL;
1730 }
1731
1732
1733 static PyObject *_wrap_GLContext_GetWindow(PyObject *, PyObject *args, PyObject *kwargs) {
1734 PyObject *resultobj;
1735 wxGLContext *arg1 = (wxGLContext *) 0 ;
1736 wxWindow *result;
1737 PyObject * obj0 = 0 ;
1738 char *kwnames[] = {
1739 (char *) "self", NULL
1740 };
1741
1742 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_GetWindow",kwnames,&obj0)) goto fail;
1743 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1744 if (SWIG_arg_fail(1)) SWIG_fail;
1745 {
1746 PyThreadState* __tstate = wxPyBeginAllowThreads();
1747 result = (wxWindow *)(arg1)->GetWindow();
1748
1749 wxPyEndAllowThreads(__tstate);
1750 if (PyErr_Occurred()) SWIG_fail;
1751 }
1752 {
1753 resultobj = wxPyMake_wxObject(result, 0);
1754 }
1755 return resultobj;
1756 fail:
1757 return NULL;
1758 }
1759
1760
1761 static PyObject * GLContext_swigregister(PyObject *, PyObject *args) {
1762 PyObject *obj;
1763 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
1764 SWIG_TypeClientData(SWIGTYPE_p_wxGLContext, obj);
1765 Py_INCREF(obj);
1766 return Py_BuildValue((char *)"");
1767 }
1768 static PyObject *_wrap_new_GLCanvas(PyObject *, PyObject *args, PyObject *kwargs) {
1769 PyObject *resultobj;
1770 wxWindow *arg1 = (wxWindow *) 0 ;
1771 int arg2 = (int) -1 ;
1772 wxPoint const &arg3_defvalue = wxDefaultPosition ;
1773 wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
1774 wxSize const &arg4_defvalue = wxDefaultSize ;
1775 wxSize *arg4 = (wxSize *) &arg4_defvalue ;
1776 long arg5 = (long) 0 ;
1777 wxString const &arg6_defvalue = wxPyGLCanvasNameStr ;
1778 wxString *arg6 = (wxString *) &arg6_defvalue ;
1779 int *arg7 = (int *) NULL ;
1780 wxPalette const &arg8_defvalue = wxNullPalette ;
1781 wxPalette *arg8 = (wxPalette *) &arg8_defvalue ;
1782 wxGLCanvas *result;
1783 wxPoint temp3 ;
1784 wxSize temp4 ;
1785 bool temp6 = false ;
1786 int *temp7 ;
1787 PyObject * obj0 = 0 ;
1788 PyObject * obj1 = 0 ;
1789 PyObject * obj2 = 0 ;
1790 PyObject * obj3 = 0 ;
1791 PyObject * obj4 = 0 ;
1792 PyObject * obj5 = 0 ;
1793 PyObject * obj6 = 0 ;
1794 PyObject * obj7 = 0 ;
1795 char *kwnames[] = {
1796 (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
1797 };
1798
1799 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOO:new_GLCanvas",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
1800 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
1801 if (SWIG_arg_fail(1)) SWIG_fail;
1802 if (obj1) {
1803 {
1804 arg2 = (int)(SWIG_As_int(obj1));
1805 if (SWIG_arg_fail(2)) SWIG_fail;
1806 }
1807 }
1808 if (obj2) {
1809 {
1810 arg3 = &temp3;
1811 if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
1812 }
1813 }
1814 if (obj3) {
1815 {
1816 arg4 = &temp4;
1817 if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
1818 }
1819 }
1820 if (obj4) {
1821 {
1822 arg5 = (long)(SWIG_As_long(obj4));
1823 if (SWIG_arg_fail(5)) SWIG_fail;
1824 }
1825 }
1826 if (obj5) {
1827 {
1828 arg6 = wxString_in_helper(obj5);
1829 if (arg6 == NULL) SWIG_fail;
1830 temp6 = true;
1831 }
1832 }
1833 if (obj6) {
1834 {
1835 int i;
1836 if (PySequence_Check(obj6)) {
1837 int size = PyObject_Length(obj6);
1838 temp7 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
1839 for (i = 0; i < size; i++) {
1840 temp7[i] = PyInt_AsLong(PySequence_GetItem(obj6, i));
1841 }
1842 temp7[size] = 0;
1843 arg7 = temp7;
1844 }
1845 }
1846 }
1847 if (obj7) {
1848 {
1849 SWIG_Python_ConvertPtr(obj7, (void **)&arg8, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1850 if (SWIG_arg_fail(8)) SWIG_fail;
1851 if (arg8 == NULL) {
1852 SWIG_null_ref("wxPalette");
1853 }
1854 if (SWIG_arg_fail(8)) SWIG_fail;
1855 }
1856 }
1857 {
1858 if (!wxPyCheckForApp()) SWIG_fail;
1859 PyThreadState* __tstate = wxPyBeginAllowThreads();
1860 result = (wxGLCanvas *)new wxGLCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6,arg7,(wxPalette const &)*arg8);
1861
1862 wxPyEndAllowThreads(__tstate);
1863 if (PyErr_Occurred()) SWIG_fail;
1864 }
1865 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
1866 {
1867 if (temp6)
1868 delete arg6;
1869 }
1870 {
1871 delete [] arg7;
1872 }
1873 return resultobj;
1874 fail:
1875 {
1876 if (temp6)
1877 delete arg6;
1878 }
1879 {
1880 delete [] arg7;
1881 }
1882 return NULL;
1883 }
1884
1885
1886 static PyObject *_wrap_new_GLCanvasWithContext(PyObject *, PyObject *args, PyObject *kwargs) {
1887 PyObject *resultobj;
1888 wxWindow *arg1 = (wxWindow *) 0 ;
1889 wxGLContext *arg2 = (wxGLContext *) NULL ;
1890 int arg3 = (int) -1 ;
1891 wxPoint const &arg4_defvalue = wxDefaultPosition ;
1892 wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
1893 wxSize const &arg5_defvalue = wxDefaultSize ;
1894 wxSize *arg5 = (wxSize *) &arg5_defvalue ;
1895 long arg6 = (long) 0 ;
1896 wxString const &arg7_defvalue = wxPyGLCanvasNameStr ;
1897 wxString *arg7 = (wxString *) &arg7_defvalue ;
1898 int *arg8 = (int *) NULL ;
1899 wxPalette const &arg9_defvalue = wxNullPalette ;
1900 wxPalette *arg9 = (wxPalette *) &arg9_defvalue ;
1901 wxGLCanvas *result;
1902 wxPoint temp4 ;
1903 wxSize temp5 ;
1904 bool temp7 = false ;
1905 int *temp8 ;
1906 PyObject * obj0 = 0 ;
1907 PyObject * obj1 = 0 ;
1908 PyObject * obj2 = 0 ;
1909 PyObject * obj3 = 0 ;
1910 PyObject * obj4 = 0 ;
1911 PyObject * obj5 = 0 ;
1912 PyObject * obj6 = 0 ;
1913 PyObject * obj7 = 0 ;
1914 PyObject * obj8 = 0 ;
1915 char *kwnames[] = {
1916 (char *) "parent",(char *) "shared",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
1917 };
1918
1919 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_GLCanvasWithContext",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
1920 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
1921 if (SWIG_arg_fail(1)) SWIG_fail;
1922 if (obj1) {
1923 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1924 if (SWIG_arg_fail(2)) SWIG_fail;
1925 }
1926 if (obj2) {
1927 {
1928 arg3 = (int)(SWIG_As_int(obj2));
1929 if (SWIG_arg_fail(3)) SWIG_fail;
1930 }
1931 }
1932 if (obj3) {
1933 {
1934 arg4 = &temp4;
1935 if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
1936 }
1937 }
1938 if (obj4) {
1939 {
1940 arg5 = &temp5;
1941 if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
1942 }
1943 }
1944 if (obj5) {
1945 {
1946 arg6 = (long)(SWIG_As_long(obj5));
1947 if (SWIG_arg_fail(6)) SWIG_fail;
1948 }
1949 }
1950 if (obj6) {
1951 {
1952 arg7 = wxString_in_helper(obj6);
1953 if (arg7 == NULL) SWIG_fail;
1954 temp7 = true;
1955 }
1956 }
1957 if (obj7) {
1958 {
1959 int i;
1960 if (PySequence_Check(obj7)) {
1961 int size = PyObject_Length(obj7);
1962 temp8 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
1963 for (i = 0; i < size; i++) {
1964 temp8[i] = PyInt_AsLong(PySequence_GetItem(obj7, i));
1965 }
1966 temp8[size] = 0;
1967 arg8 = temp8;
1968 }
1969 }
1970 }
1971 if (obj8) {
1972 {
1973 SWIG_Python_ConvertPtr(obj8, (void **)&arg9, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1974 if (SWIG_arg_fail(9)) SWIG_fail;
1975 if (arg9 == NULL) {
1976 SWIG_null_ref("wxPalette");
1977 }
1978 if (SWIG_arg_fail(9)) SWIG_fail;
1979 }
1980 }
1981 {
1982 if (!wxPyCheckForApp()) SWIG_fail;
1983 PyThreadState* __tstate = wxPyBeginAllowThreads();
1984 result = (wxGLCanvas *)new wxGLCanvas(arg1,(wxGLContext const *)arg2,arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,arg8,(wxPalette const &)*arg9);
1985
1986 wxPyEndAllowThreads(__tstate);
1987 if (PyErr_Occurred()) SWIG_fail;
1988 }
1989 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
1990 {
1991 if (temp7)
1992 delete arg7;
1993 }
1994 {
1995 delete [] arg8;
1996 }
1997 return resultobj;
1998 fail:
1999 {
2000 if (temp7)
2001 delete arg7;
2002 }
2003 {
2004 delete [] arg8;
2005 }
2006 return NULL;
2007 }
2008
2009
2010 static PyObject *_wrap_GLCanvas_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
2011 PyObject *resultobj;
2012 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2013 PyObject * obj0 = 0 ;
2014 char *kwnames[] = {
2015 (char *) "self", NULL
2016 };
2017
2018 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SetCurrent",kwnames,&obj0)) goto fail;
2019 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2020 if (SWIG_arg_fail(1)) SWIG_fail;
2021 {
2022 PyThreadState* __tstate = wxPyBeginAllowThreads();
2023 (arg1)->SetCurrent();
2024
2025 wxPyEndAllowThreads(__tstate);
2026 if (PyErr_Occurred()) SWIG_fail;
2027 }
2028 Py_INCREF(Py_None); resultobj = Py_None;
2029 return resultobj;
2030 fail:
2031 return NULL;
2032 }
2033
2034
2035 static PyObject *_wrap_GLCanvas_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
2036 PyObject *resultobj;
2037 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2038 wxString *arg2 = 0 ;
2039 bool temp2 = false ;
2040 PyObject * obj0 = 0 ;
2041 PyObject * obj1 = 0 ;
2042 char *kwnames[] = {
2043 (char *) "self",(char *) "colour", NULL
2044 };
2045
2046 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetColour",kwnames,&obj0,&obj1)) goto fail;
2047 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2048 if (SWIG_arg_fail(1)) SWIG_fail;
2049 {
2050 arg2 = wxString_in_helper(obj1);
2051 if (arg2 == NULL) SWIG_fail;
2052 temp2 = true;
2053 }
2054 {
2055 PyThreadState* __tstate = wxPyBeginAllowThreads();
2056 (arg1)->SetColour((wxString const &)*arg2);
2057
2058 wxPyEndAllowThreads(__tstate);
2059 if (PyErr_Occurred()) SWIG_fail;
2060 }
2061 Py_INCREF(Py_None); resultobj = Py_None;
2062 {
2063 if (temp2)
2064 delete arg2;
2065 }
2066 return resultobj;
2067 fail:
2068 {
2069 if (temp2)
2070 delete arg2;
2071 }
2072 return NULL;
2073 }
2074
2075
2076 static PyObject *_wrap_GLCanvas_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
2077 PyObject *resultobj;
2078 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2079 PyObject * obj0 = 0 ;
2080 char *kwnames[] = {
2081 (char *) "self", NULL
2082 };
2083
2084 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SwapBuffers",kwnames,&obj0)) goto fail;
2085 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2086 if (SWIG_arg_fail(1)) SWIG_fail;
2087 {
2088 PyThreadState* __tstate = wxPyBeginAllowThreads();
2089 (arg1)->SwapBuffers();
2090
2091 wxPyEndAllowThreads(__tstate);
2092 if (PyErr_Occurred()) SWIG_fail;
2093 }
2094 Py_INCREF(Py_None); resultobj = Py_None;
2095 return resultobj;
2096 fail:
2097 return NULL;
2098 }
2099
2100
2101 static PyObject *_wrap_GLCanvas_GetContext(PyObject *, PyObject *args, PyObject *kwargs) {
2102 PyObject *resultobj;
2103 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2104 wxGLContext *result;
2105 PyObject * obj0 = 0 ;
2106 char *kwnames[] = {
2107 (char *) "self", NULL
2108 };
2109
2110 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_GetContext",kwnames,&obj0)) goto fail;
2111 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2112 if (SWIG_arg_fail(1)) SWIG_fail;
2113 {
2114 PyThreadState* __tstate = wxPyBeginAllowThreads();
2115 result = (wxGLContext *)(arg1)->GetContext();
2116
2117 wxPyEndAllowThreads(__tstate);
2118 if (PyErr_Occurred()) SWIG_fail;
2119 }
2120 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 0);
2121 return resultobj;
2122 fail:
2123 return NULL;
2124 }
2125
2126
2127 static PyObject *_wrap_GLCanvas_SetupPixelFormat(PyObject *, PyObject *args, PyObject *kwargs) {
2128 PyObject *resultobj;
2129 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2130 int *arg2 = (int *) NULL ;
2131 int *temp2 ;
2132 PyObject * obj0 = 0 ;
2133 PyObject * obj1 = 0 ;
2134 char *kwnames[] = {
2135 (char *) "self",(char *) "attribList", NULL
2136 };
2137
2138 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:GLCanvas_SetupPixelFormat",kwnames,&obj0,&obj1)) goto fail;
2139 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2140 if (SWIG_arg_fail(1)) SWIG_fail;
2141 if (obj1) {
2142 {
2143 int i;
2144 if (PySequence_Check(obj1)) {
2145 int size = PyObject_Length(obj1);
2146 temp2 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
2147 for (i = 0; i < size; i++) {
2148 temp2[i] = PyInt_AsLong(PySequence_GetItem(obj1, i));
2149 }
2150 temp2[size] = 0;
2151 arg2 = temp2;
2152 }
2153 }
2154 }
2155 {
2156 PyThreadState* __tstate = wxPyBeginAllowThreads();
2157 (arg1)->SetupPixelFormat(arg2);
2158
2159 wxPyEndAllowThreads(__tstate);
2160 if (PyErr_Occurred()) SWIG_fail;
2161 }
2162 Py_INCREF(Py_None); resultobj = Py_None;
2163 {
2164 delete [] arg2;
2165 }
2166 return resultobj;
2167 fail:
2168 {
2169 delete [] arg2;
2170 }
2171 return NULL;
2172 }
2173
2174
2175 static PyObject *_wrap_GLCanvas_SetupPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2176 PyObject *resultobj;
2177 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2178 wxPalette *arg2 = 0 ;
2179 PyObject * obj0 = 0 ;
2180 PyObject * obj1 = 0 ;
2181 char *kwnames[] = {
2182 (char *) "self",(char *) "palette", NULL
2183 };
2184
2185 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetupPalette",kwnames,&obj0,&obj1)) goto fail;
2186 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2187 if (SWIG_arg_fail(1)) SWIG_fail;
2188 {
2189 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
2190 if (SWIG_arg_fail(2)) SWIG_fail;
2191 if (arg2 == NULL) {
2192 SWIG_null_ref("wxPalette");
2193 }
2194 if (SWIG_arg_fail(2)) SWIG_fail;
2195 }
2196 {
2197 PyThreadState* __tstate = wxPyBeginAllowThreads();
2198 (arg1)->SetupPalette((wxPalette const &)*arg2);
2199
2200 wxPyEndAllowThreads(__tstate);
2201 if (PyErr_Occurred()) SWIG_fail;
2202 }
2203 Py_INCREF(Py_None); resultobj = Py_None;
2204 return resultobj;
2205 fail:
2206 return NULL;
2207 }
2208
2209
2210 static PyObject *_wrap_GLCanvas_CreateDefaultPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2211 PyObject *resultobj;
2212 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2213 wxPalette result;
2214 PyObject * obj0 = 0 ;
2215 char *kwnames[] = {
2216 (char *) "self", NULL
2217 };
2218
2219 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_CreateDefaultPalette",kwnames,&obj0)) goto fail;
2220 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2221 if (SWIG_arg_fail(1)) SWIG_fail;
2222 {
2223 PyThreadState* __tstate = wxPyBeginAllowThreads();
2224 result = (arg1)->CreateDefaultPalette();
2225
2226 wxPyEndAllowThreads(__tstate);
2227 if (PyErr_Occurred()) SWIG_fail;
2228 }
2229 {
2230 wxPalette * resultptr;
2231 resultptr = new wxPalette((wxPalette &)(result));
2232 resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxPalette, 1);
2233 }
2234 return resultobj;
2235 fail:
2236 return NULL;
2237 }
2238
2239
2240 static PyObject *_wrap_GLCanvas_GetPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2241 PyObject *resultobj;
2242 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2243 wxPalette *result;
2244 PyObject * obj0 = 0 ;
2245 char *kwnames[] = {
2246 (char *) "self", NULL
2247 };
2248
2249 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_GetPalette",kwnames,&obj0)) goto fail;
2250 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2251 if (SWIG_arg_fail(1)) SWIG_fail;
2252 {
2253 PyThreadState* __tstate = wxPyBeginAllowThreads();
2254 result = (wxPalette *)(arg1)->GetPalette();
2255
2256 wxPyEndAllowThreads(__tstate);
2257 if (PyErr_Occurred()) SWIG_fail;
2258 }
2259 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxPalette, 0);
2260 return resultobj;
2261 fail:
2262 return NULL;
2263 }
2264
2265
2266 static PyObject * GLCanvas_swigregister(PyObject *, PyObject *args) {
2267 PyObject *obj;
2268 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
2269 SWIG_TypeClientData(SWIGTYPE_p_wxGLCanvas, obj);
2270 Py_INCREF(obj);
2271 return Py_BuildValue((char *)"");
2272 }
2273 static PyMethodDef SwigMethods[] = {
2274 { (char *)"new_GLContext", (PyCFunction) _wrap_new_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2275 { (char *)"delete_GLContext", (PyCFunction) _wrap_delete_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2276 { (char *)"GLContext_SetCurrent", (PyCFunction) _wrap_GLContext_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2277 { (char *)"GLContext_SetColour", (PyCFunction) _wrap_GLContext_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2278 { (char *)"GLContext_SwapBuffers", (PyCFunction) _wrap_GLContext_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2279 { (char *)"GLContext_GetWindow", (PyCFunction) _wrap_GLContext_GetWindow, METH_VARARGS | METH_KEYWORDS, NULL},
2280 { (char *)"GLContext_swigregister", GLContext_swigregister, METH_VARARGS, NULL},
2281 { (char *)"new_GLCanvas", (PyCFunction) _wrap_new_GLCanvas, METH_VARARGS | METH_KEYWORDS, NULL},
2282 { (char *)"new_GLCanvasWithContext", (PyCFunction) _wrap_new_GLCanvasWithContext, METH_VARARGS | METH_KEYWORDS, NULL},
2283 { (char *)"GLCanvas_SetCurrent", (PyCFunction) _wrap_GLCanvas_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2284 { (char *)"GLCanvas_SetColour", (PyCFunction) _wrap_GLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2285 { (char *)"GLCanvas_SwapBuffers", (PyCFunction) _wrap_GLCanvas_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2286 { (char *)"GLCanvas_GetContext", (PyCFunction) _wrap_GLCanvas_GetContext, METH_VARARGS | METH_KEYWORDS, NULL},
2287 { (char *)"GLCanvas_SetupPixelFormat", (PyCFunction) _wrap_GLCanvas_SetupPixelFormat, METH_VARARGS | METH_KEYWORDS, NULL},
2288 { (char *)"GLCanvas_SetupPalette", (PyCFunction) _wrap_GLCanvas_SetupPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2289 { (char *)"GLCanvas_CreateDefaultPalette", (PyCFunction) _wrap_GLCanvas_CreateDefaultPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2290 { (char *)"GLCanvas_GetPalette", (PyCFunction) _wrap_GLCanvas_GetPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2291 { (char *)"GLCanvas_swigregister", GLCanvas_swigregister, METH_VARARGS, NULL},
2292 { NULL, NULL, 0, NULL }
2293 };
2294
2295
2296 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
2297
2298 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
2299 return (void *)((wxObject *) ((wxLayoutConstraints *) x));
2300 }
2301 static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
2302 return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
2303 }
2304 static void *_p_wxSizerItemTo_p_wxObject(void *x) {
2305 return (void *)((wxObject *) ((wxSizerItem *) x));
2306 }
2307 static void *_p_wxScrollEventTo_p_wxObject(void *x) {
2308 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
2309 }
2310 static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
2311 return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x));
2312 }
2313 static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
2314 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
2315 }
2316 static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
2317 return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
2318 }
2319 static void *_p_wxSizerTo_p_wxObject(void *x) {
2320 return (void *)((wxObject *) ((wxSizer *) x));
2321 }
2322 static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
2323 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
2324 }
2325 static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
2326 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
2327 }
2328 static void *_p_wxEventTo_p_wxObject(void *x) {
2329 return (void *)((wxObject *) ((wxEvent *) x));
2330 }
2331 static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
2332 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
2333 }
2334 static void *_p_wxGridSizerTo_p_wxObject(void *x) {
2335 return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
2336 }
2337 static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
2338 return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
2339 }
2340 static void *_p_wxPaintEventTo_p_wxObject(void *x) {
2341 return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
2342 }
2343 static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
2344 return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
2345 }
2346 static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
2347 return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
2348 }
2349 static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
2350 return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
2351 }
2352 static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
2353 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
2354 }
2355 static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
2356 return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
2357 }
2358 static void *_p_wxControlTo_p_wxObject(void *x) {
2359 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
2360 }
2361 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
2362 return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
2363 }
2364 static void *_p_wxFSFileTo_p_wxObject(void *x) {
2365 return (void *)((wxObject *) ((wxFSFile *) x));
2366 }
2367 static void *_p_wxPySizerTo_p_wxObject(void *x) {
2368 return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
2369 }
2370 static void *_p_wxPyEventTo_p_wxObject(void *x) {
2371 return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
2372 }
2373 static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
2374 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
2375 }
2376 static void *_p_wxGLContextTo_p_wxObject(void *x) {
2377 return (void *)((wxObject *) ((wxGLContext *) x));
2378 }
2379 static void *_p_wxShowEventTo_p_wxObject(void *x) {
2380 return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
2381 }
2382 static void *_p_wxMenuItemTo_p_wxObject(void *x) {
2383 return (void *)((wxObject *) ((wxMenuItem *) x));
2384 }
2385 static void *_p_wxDateEventTo_p_wxObject(void *x) {
2386 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
2387 }
2388 static void *_p_wxIdleEventTo_p_wxObject(void *x) {
2389 return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
2390 }
2391 static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
2392 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
2393 }
2394 static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
2395 return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
2396 }
2397 static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
2398 return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
2399 }
2400 static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
2401 return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
2402 }
2403 static void *_p_wxSizeEventTo_p_wxObject(void *x) {
2404 return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
2405 }
2406 static void *_p_wxMoveEventTo_p_wxObject(void *x) {
2407 return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
2408 }
2409 static void *_p_wxActivateEventTo_p_wxObject(void *x) {
2410 return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
2411 }
2412 static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
2413 return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
2414 }
2415 static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
2416 return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
2417 }
2418 static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
2419 return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
2420 }
2421 static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
2422 return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
2423 }
2424 static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
2425 return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
2426 }
2427 static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
2428 return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
2429 }
2430 static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
2431 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
2432 }
2433 static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
2434 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
2435 }
2436 static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
2437 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
2438 }
2439 static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
2440 return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
2441 }
2442 static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
2443 return (void *)((wxObject *) ((wxImageHandler *) x));
2444 }
2445 static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
2446 return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
2447 }
2448 static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
2449 return (void *)((wxObject *) ((wxEvtHandler *) x));
2450 }
2451 static void *_p_wxGLCanvasTo_p_wxObject(void *x) {
2452 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxGLCanvas *) x));
2453 }
2454 static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
2455 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
2456 }
2457 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
2458 return (void *)((wxObject *) ((wxAcceleratorTable *) x));
2459 }
2460 static void *_p_wxImageTo_p_wxObject(void *x) {
2461 return (void *)((wxObject *) ((wxImage *) x));
2462 }
2463 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
2464 return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
2465 }
2466 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
2467 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
2468 }
2469 static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
2470 return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
2471 }
2472 static void *_p_wxKeyEventTo_p_wxObject(void *x) {
2473 return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
2474 }
2475 static void *_p_wxWindowTo_p_wxObject(void *x) {
2476 return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
2477 }
2478 static void *_p_wxMenuTo_p_wxObject(void *x) {
2479 return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
2480 }
2481 static void *_p_wxMenuBarTo_p_wxObject(void *x) {
2482 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
2483 }
2484 static void *_p_wxFileSystemTo_p_wxObject(void *x) {
2485 return (void *)((wxObject *) ((wxFileSystem *) x));
2486 }
2487 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
2488 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
2489 }
2490 static void *_p_wxMenuEventTo_p_wxObject(void *x) {
2491 return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
2492 }
2493 static void *_p_wxPyAppTo_p_wxObject(void *x) {
2494 return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
2495 }
2496 static void *_p_wxCloseEventTo_p_wxObject(void *x) {
2497 return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
2498 }
2499 static void *_p_wxMouseEventTo_p_wxObject(void *x) {
2500 return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
2501 }
2502 static void *_p_wxEraseEventTo_p_wxObject(void *x) {
2503 return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
2504 }
2505 static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
2506 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
2507 }
2508 static void *_p_wxCommandEventTo_p_wxObject(void *x) {
2509 return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
2510 }
2511 static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
2512 return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
2513 }
2514 static void *_p_wxFocusEventTo_p_wxObject(void *x) {
2515 return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
2516 }
2517 static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
2518 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
2519 }
2520 static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
2521 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2522 }
2523 static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
2524 return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
2525 }
2526 static void *_p_wxValidatorTo_p_wxObject(void *x) {
2527 return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
2528 }
2529 static void *_p_wxControlTo_p_wxWindow(void *x) {
2530 return (void *)((wxWindow *) ((wxControl *) x));
2531 }
2532 static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
2533 return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
2534 }
2535 static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
2536 return (void *)((wxWindow *) ((wxMenuBar *) x));
2537 }
2538 static void *_p_wxGLCanvasTo_p_wxWindow(void *x) {
2539 return (void *)((wxWindow *) ((wxGLCanvas *) x));
2540 }
2541 static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
2542 return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
2543 }
2544 static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
2545 return (void *)((wxEvtHandler *) ((wxWindow *) x));
2546 }
2547 static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
2548 return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2549 }
2550 static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
2551 return (void *)((wxEvtHandler *) ((wxPyApp *) x));
2552 }
2553 static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
2554 return (void *)((wxEvtHandler *) ((wxValidator *) x));
2555 }
2556 static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
2557 return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
2558 }
2559 static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
2560 return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
2561 }
2562 static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x) {
2563 return (void *)((wxEvtHandler *) (wxWindow *) ((wxGLCanvas *) x));
2564 }
2565 static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
2566 return (void *)((wxEvtHandler *) ((wxMenu *) x));
2567 }
2568 static swig_type_info _swigt__p_wxGLCanvas[] = {{"_p_wxGLCanvas", 0, "wxGLCanvas *", 0, 0, 0, 0},{"_p_wxGLCanvas", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2569 static swig_type_info _swigt__p_wxObject[] = {{"_p_wxObject", 0, "wxObject *", 0, 0, 0, 0},{"_p_wxLayoutConstraints", _p_wxLayoutConstraintsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizerItem", _p_wxSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizer", _p_wxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvent", _p_wxEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFSFile", _p_wxFSFileTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGLContext", _p_wxGLContextTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuItem", _p_wxMenuItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxXPMHandler", _p_wxXPMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNMHandler", _p_wxPNMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxJPEGHandler", _p_wxJPEGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPCXHandler", _p_wxPCXHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFHandler", _p_wxGIFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNGHandler", _p_wxPNGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxANIHandler", _p_wxANIHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCURHandler", _p_wxCURHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxICOHandler", _p_wxICOHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBMPHandler", _p_wxBMPHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImageHandler", _p_wxImageHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxTIFFHandler", _p_wxTIFFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", _p_wxEvtHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGLCanvas", _p_wxGLCanvasTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStdDialogButtonSizer", _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAcceleratorTable", _p_wxAcceleratorTableTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImage", _p_wxImageTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxObject", 0, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFileSystem", _p_wxFileSystemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2570 static swig_type_info _swigt__p_unsigned_char[] = {{"_p_unsigned_char", 0, "unsigned char *|byte *", 0, 0, 0, 0},{"_p_unsigned_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2571 static swig_type_info _swigt__p_wxGLContext[] = {{"_p_wxGLContext", 0, "wxGLContext *", 0, 0, 0, 0},{"_p_wxGLContext", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2572 static swig_type_info _swigt__p_wxWindow[] = {{"_p_wxWindow", 0, "wxWindow *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxWindow", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxGLCanvas", _p_wxGLCanvasTo_p_wxWindow, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2573 static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *|wxUIntPtr *", 0, 0, 0, 0},{"_p_unsigned_long", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2574 static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2575 static swig_type_info _swigt__p_unsigned_int[] = {{"_p_unsigned_int", 0, "unsigned int *|time_t *", 0, 0, 0, 0},{"_p_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2576 static swig_type_info _swigt__unsigned_int[] = {{"_unsigned_int", 0, "unsigned int|std::size_t", 0, 0, 0, 0},{"_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2577 static swig_type_info _swigt__p_wxDuplexMode[] = {{"_p_wxDuplexMode", 0, "enum wxDuplexMode *|wxDuplexMode *", 0, 0, 0, 0},{"_p_wxDuplexMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2578 static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0, 0, 0, 0},{"_p_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2579 static swig_type_info _swigt__p_wxEvtHandler[] = {{"_p_wxEvtHandler", 0, "wxEvtHandler *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", 0, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxGLCanvas", _p_wxGLCanvasTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2580 static swig_type_info _swigt__p_wxPalette[] = {{"_p_wxPalette", 0, "wxPalette *", 0, 0, 0, 0},{"_p_wxPalette", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2581 static swig_type_info _swigt__std__ptrdiff_t[] = {{"_std__ptrdiff_t", 0, "std::ptrdiff_t", 0, 0, 0, 0},{"_std__ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2582 static swig_type_info _swigt__ptrdiff_t[] = {{"_ptrdiff_t", 0, "ptrdiff_t", 0, 0, 0, 0},{"_ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2583 static swig_type_info _swigt__p_wxPaperSize[] = {{"_p_wxPaperSize", 0, "enum wxPaperSize *|wxPaperSize *", 0, 0, 0, 0},{"_p_wxPaperSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2584 static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0, 0, 0, 0},{"_p_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
2585
2586 static swig_type_info *swig_types_initial[] = {
2587 _swigt__p_wxGLCanvas,
2588 _swigt__p_wxObject,
2589 _swigt__p_unsigned_char,
2590 _swigt__p_wxGLContext,
2591 _swigt__p_wxWindow,
2592 _swigt__p_unsigned_long,
2593 _swigt__p_form_ops_t,
2594 _swigt__p_unsigned_int,
2595 _swigt__unsigned_int,
2596 _swigt__p_wxDuplexMode,
2597 _swigt__p_char,
2598 _swigt__p_wxEvtHandler,
2599 _swigt__p_wxPalette,
2600 _swigt__std__ptrdiff_t,
2601 _swigt__ptrdiff_t,
2602 _swigt__p_wxPaperSize,
2603 _swigt__p_int,
2604 0
2605 };
2606
2607
2608 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
2609
2610 static swig_const_info swig_const_table[] = {
2611 {0, 0, 0, 0.0, 0, 0}};
2612
2613 #ifdef __cplusplus
2614 }
2615 #endif
2616
2617
2618 #ifdef __cplusplus
2619 extern "C" {
2620 #endif
2621
2622 /* Python-specific SWIG API */
2623 #define SWIG_newvarlink() SWIG_Python_newvarlink()
2624 #define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
2625 #define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
2626
2627 /* -----------------------------------------------------------------------------
2628 * global variable support code.
2629 * ----------------------------------------------------------------------------- */
2630
2631 typedef struct swig_globalvar {
2632 char *name; /* Name of global variable */
2633 PyObject *(*get_attr)(); /* Return the current value */
2634 int (*set_attr)(PyObject *); /* Set the value */
2635 struct swig_globalvar *next;
2636 } swig_globalvar;
2637
2638 typedef struct swig_varlinkobject {
2639 PyObject_HEAD
2640 swig_globalvar *vars;
2641 } swig_varlinkobject;
2642
2643 static PyObject *
2644 swig_varlink_repr(swig_varlinkobject *v) {
2645 v = v;
2646 return PyString_FromString("<Swig global variables>");
2647 }
2648
2649 static int
2650 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) {
2651 swig_globalvar *var;
2652 flags = flags;
2653 fprintf(fp,"Swig global variables { ");
2654 for (var = v->vars; var; var=var->next) {
2655 fprintf(fp,"%s", var->name);
2656 if (var->next) fprintf(fp,", ");
2657 }
2658 fprintf(fp," }\n");
2659 return 0;
2660 }
2661
2662 static PyObject *
2663 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
2664 swig_globalvar *var = v->vars;
2665 while (var) {
2666 if (strcmp(var->name,n) == 0) {
2667 return (*var->get_attr)();
2668 }
2669 var = var->next;
2670 }
2671 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
2672 return NULL;
2673 }
2674
2675 static int
2676 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
2677 swig_globalvar *var = v->vars;
2678 while (var) {
2679 if (strcmp(var->name,n) == 0) {
2680 return (*var->set_attr)(p);
2681 }
2682 var = var->next;
2683 }
2684 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
2685 return 1;
2686 }
2687
2688 static PyTypeObject varlinktype = {
2689 PyObject_HEAD_INIT(0)
2690 0, /* Number of items in variable part (ob_size) */
2691 (char *)"swigvarlink", /* Type name (tp_name) */
2692 sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */
2693 0, /* Itemsize (tp_itemsize) */
2694 0, /* Deallocator (tp_dealloc) */
2695 (printfunc) swig_varlink_print, /* Print (tp_print) */
2696 (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
2697 (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
2698 0, /* tp_compare */
2699 (reprfunc) swig_varlink_repr, /* tp_repr */
2700 0, /* tp_as_number */
2701 0, /* tp_as_sequence */
2702 0, /* tp_as_mapping */
2703 0, /* tp_hash */
2704 0, /* tp_call */
2705 0, /* tp_str */
2706 0, /* tp_getattro */
2707 0, /* tp_setattro */
2708 0, /* tp_as_buffer */
2709 0, /* tp_flags */
2710 0, /* tp_doc */
2711 #if PY_VERSION_HEX >= 0x02000000
2712 0, /* tp_traverse */
2713 0, /* tp_clear */
2714 #endif
2715 #if PY_VERSION_HEX >= 0x02010000
2716 0, /* tp_richcompare */
2717 0, /* tp_weaklistoffset */
2718 #endif
2719 #if PY_VERSION_HEX >= 0x02020000
2720 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
2721 #endif
2722 #if PY_VERSION_HEX >= 0x02030000
2723 0, /* tp_del */
2724 #endif
2725 #ifdef COUNT_ALLOCS
2726 0,0,0,0 /* tp_alloc -> tp_next */
2727 #endif
2728 };
2729
2730 /* Create a variable linking object for use later */
2731 static PyObject *
2732 SWIG_Python_newvarlink(void) {
2733 swig_varlinkobject *result = 0;
2734 result = PyMem_NEW(swig_varlinkobject,1);
2735 varlinktype.ob_type = &PyType_Type; /* Patch varlinktype into a PyType */
2736 result->ob_type = &varlinktype;
2737 result->vars = 0;
2738 result->ob_refcnt = 0;
2739 Py_XINCREF((PyObject *) result);
2740 return ((PyObject*) result);
2741 }
2742
2743 static void
2744 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
2745 swig_varlinkobject *v;
2746 swig_globalvar *gv;
2747 v= (swig_varlinkobject *) p;
2748 gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
2749 gv->name = (char *) malloc(strlen(name)+1);
2750 strcpy(gv->name,name);
2751 gv->get_attr = get_attr;
2752 gv->set_attr = set_attr;
2753 gv->next = v->vars;
2754 v->vars = gv;
2755 }
2756
2757 /* -----------------------------------------------------------------------------
2758 * constants/methods manipulation
2759 * ----------------------------------------------------------------------------- */
2760
2761 /* Install Constants */
2762 static void
2763 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
2764 PyObject *obj = 0;
2765 size_t i;
2766 for (i = 0; constants[i].type; i++) {
2767 switch(constants[i].type) {
2768 case SWIG_PY_INT:
2769 obj = PyInt_FromLong(constants[i].lvalue);
2770 break;
2771 case SWIG_PY_FLOAT:
2772 obj = PyFloat_FromDouble(constants[i].dvalue);
2773 break;
2774 case SWIG_PY_STRING:
2775 if (constants[i].pvalue) {
2776 obj = PyString_FromString((char *) constants[i].pvalue);
2777 } else {
2778 Py_INCREF(Py_None);
2779 obj = Py_None;
2780 }
2781 break;
2782 case SWIG_PY_POINTER:
2783 obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
2784 break;
2785 case SWIG_PY_BINARY:
2786 obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
2787 break;
2788 default:
2789 obj = 0;
2790 break;
2791 }
2792 if (obj) {
2793 PyDict_SetItemString(d,constants[i].name,obj);
2794 Py_DECREF(obj);
2795 }
2796 }
2797 }
2798
2799 /* -----------------------------------------------------------------------------*/
2800 /* Fix SwigMethods to carry the callback ptrs when needed */
2801 /* -----------------------------------------------------------------------------*/
2802
2803 static void
2804 SWIG_Python_FixMethods(PyMethodDef *methods,
2805 swig_const_info *const_table,
2806 swig_type_info **types,
2807 swig_type_info **types_initial) {
2808 size_t i;
2809 for (i = 0; methods[i].ml_name; ++i) {
2810 char *c = methods[i].ml_doc;
2811 if (c && (c = strstr(c, "swig_ptr: "))) {
2812 int j;
2813 swig_const_info *ci = 0;
2814 char *name = c + 10;
2815 for (j = 0; const_table[j].type; j++) {
2816 if (strncmp(const_table[j].name, name,
2817 strlen(const_table[j].name)) == 0) {
2818 ci = &(const_table[j]);
2819 break;
2820 }
2821 }
2822 if (ci) {
2823 size_t shift = (ci->ptype) - types;
2824 swig_type_info *ty = types_initial[shift];
2825 size_t ldoc = (c - methods[i].ml_doc);
2826 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
2827 char *ndoc = (char*)malloc(ldoc + lptr + 10);
2828 char *buff = ndoc;
2829 void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue: (void *)(ci->lvalue);
2830 strncpy(buff, methods[i].ml_doc, ldoc);
2831 buff += ldoc;
2832 strncpy(buff, "swig_ptr: ", 10);
2833 buff += 10;
2834 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
2835 methods[i].ml_doc = ndoc;
2836 }
2837 }
2838 }
2839 }
2840
2841 /* -----------------------------------------------------------------------------*
2842 * Initialize type list
2843 * -----------------------------------------------------------------------------*/
2844
2845 #if PY_MAJOR_VERSION < 2
2846 /* PyModule_AddObject function was introduced in Python 2.0. The following function
2847 is copied out of Python/modsupport.c in python version 2.3.4 */
2848 static int
2849 PyModule_AddObject(PyObject *m, char *name, PyObject *o)
2850 {
2851 PyObject *dict;
2852 if (!PyModule_Check(m)) {
2853 PyErr_SetString(PyExc_TypeError,
2854 "PyModule_AddObject() needs module as first arg");
2855 return -1;
2856 }
2857 if (!o) {
2858 PyErr_SetString(PyExc_TypeError,
2859 "PyModule_AddObject() needs non-NULL value");
2860 return -1;
2861 }
2862
2863 dict = PyModule_GetDict(m);
2864 if (dict == NULL) {
2865 /* Internal error -- modules must have a dict! */
2866 PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
2867 PyModule_GetName(m));
2868 return -1;
2869 }
2870 if (PyDict_SetItemString(dict, name, o))
2871 return -1;
2872 Py_DECREF(o);
2873 return 0;
2874 }
2875 #endif
2876
2877 static swig_type_info **
2878 SWIG_Python_SetTypeListHandle(swig_type_info **type_list_handle) {
2879 static PyMethodDef swig_empty_runtime_method_table[] = {
2880 {
2881 NULL, NULL, 0, NULL
2882 }
2883 };/* Sentinel */
2884
2885 PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
2886 swig_empty_runtime_method_table);
2887 PyObject *pointer = PyCObject_FromVoidPtr((void *) type_list_handle, NULL);
2888 if (pointer && module) {
2889 PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
2890 }
2891 return type_list_handle;
2892 }
2893
2894 static swig_type_info **
2895 SWIG_Python_LookupTypePointer(swig_type_info **type_list_handle) {
2896 swig_type_info **type_pointer;
2897
2898 /* first check if module already created */
2899 type_pointer = SWIG_Python_GetTypeListHandle();
2900 if (type_pointer) {
2901 return type_pointer;
2902 } else {
2903 /* create a new module and variable */
2904 return SWIG_Python_SetTypeListHandle(type_list_handle);
2905 }
2906 }
2907
2908 #ifdef __cplusplus
2909 }
2910 #endif
2911
2912 /* -----------------------------------------------------------------------------*
2913 * Partial Init method
2914 * -----------------------------------------------------------------------------*/
2915
2916 #ifdef SWIG_LINK_RUNTIME
2917 #ifdef __cplusplus
2918 extern "C"
2919 #endif
2920 SWIGEXPORT(void *) SWIG_ReturnGlobalTypeList(void *);
2921 #endif
2922
2923 #ifdef __cplusplus
2924 extern "C"
2925 #endif
2926 SWIGEXPORT(void) SWIG_init(void) {
2927 static PyObject *SWIG_globals = 0;
2928 static int typeinit = 0;
2929 PyObject *m, *d;
2930 int i;
2931 if (!SWIG_globals) SWIG_globals = SWIG_newvarlink();
2932
2933 /* Fix SwigMethods to carry the callback ptrs when needed */
2934 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_types_initial);
2935
2936 m = Py_InitModule((char *) SWIG_name, SwigMethods);
2937 d = PyModule_GetDict(m);
2938
2939 if (!typeinit) {
2940 #ifdef SWIG_LINK_RUNTIME
2941 swig_type_list_handle = (swig_type_info **) SWIG_ReturnGlobalTypeList(swig_type_list_handle);
2942 #else
2943 # ifndef SWIG_STATIC_RUNTIME
2944 swig_type_list_handle = SWIG_Python_LookupTypePointer(swig_type_list_handle);
2945 # endif
2946 #endif
2947 for (i = 0; swig_types_initial[i]; i++) {
2948 swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
2949 }
2950 typeinit = 1;
2951 }
2952 SWIG_InstallConstants(d,swig_const_table);
2953
2954 PyDict_SetItemString(d,(char*)"cvar", SWIG_globals);
2955 SWIG_addvarlink(SWIG_globals,(char*)"GLCanvasNameStr",_wrap_GLCanvasNameStr_get, _wrap_GLCanvasNameStr_set);
2956 {
2957 PyDict_SetItemString(d,"WX_GL_RGBA", SWIG_From_int((int)(WX_GL_RGBA)));
2958 }
2959 {
2960 PyDict_SetItemString(d,"WX_GL_BUFFER_SIZE", SWIG_From_int((int)(WX_GL_BUFFER_SIZE)));
2961 }
2962 {
2963 PyDict_SetItemString(d,"WX_GL_LEVEL", SWIG_From_int((int)(WX_GL_LEVEL)));
2964 }
2965 {
2966 PyDict_SetItemString(d,"WX_GL_DOUBLEBUFFER", SWIG_From_int((int)(WX_GL_DOUBLEBUFFER)));
2967 }
2968 {
2969 PyDict_SetItemString(d,"WX_GL_STEREO", SWIG_From_int((int)(WX_GL_STEREO)));
2970 }
2971 {
2972 PyDict_SetItemString(d,"WX_GL_AUX_BUFFERS", SWIG_From_int((int)(WX_GL_AUX_BUFFERS)));
2973 }
2974 {
2975 PyDict_SetItemString(d,"WX_GL_MIN_RED", SWIG_From_int((int)(WX_GL_MIN_RED)));
2976 }
2977 {
2978 PyDict_SetItemString(d,"WX_GL_MIN_GREEN", SWIG_From_int((int)(WX_GL_MIN_GREEN)));
2979 }
2980 {
2981 PyDict_SetItemString(d,"WX_GL_MIN_BLUE", SWIG_From_int((int)(WX_GL_MIN_BLUE)));
2982 }
2983 {
2984 PyDict_SetItemString(d,"WX_GL_MIN_ALPHA", SWIG_From_int((int)(WX_GL_MIN_ALPHA)));
2985 }
2986 {
2987 PyDict_SetItemString(d,"WX_GL_DEPTH_SIZE", SWIG_From_int((int)(WX_GL_DEPTH_SIZE)));
2988 }
2989 {
2990 PyDict_SetItemString(d,"WX_GL_STENCIL_SIZE", SWIG_From_int((int)(WX_GL_STENCIL_SIZE)));
2991 }
2992 {
2993 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_RED", SWIG_From_int((int)(WX_GL_MIN_ACCUM_RED)));
2994 }
2995 {
2996 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_GREEN", SWIG_From_int((int)(WX_GL_MIN_ACCUM_GREEN)));
2997 }
2998 {
2999 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_BLUE", SWIG_From_int((int)(WX_GL_MIN_ACCUM_BLUE)));
3000 }
3001 {
3002 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_ALPHA", SWIG_From_int((int)(WX_GL_MIN_ACCUM_ALPHA)));
3003 }
3004
3005
3006
3007 }
3008