]> git.saurik.com Git - wxWidgets.git/blob - wxPython/contrib/glcanvas/mac/glcanvas_wrap.cpp
reSWIGged after 1.3.24 update
[wxWidgets.git] / wxPython / contrib / glcanvas / mac / 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 Py_DECREF(str);
1041 return;
1042 }
1043 }
1044 PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
1045 } else {
1046 PyErr_Format(PyExc_TypeError, "unexpected type is received");
1047 }
1048 }
1049
1050 SWIGRUNTIMEINLINE void
1051 SWIG_Python_NullRef(const char *type)
1052 {
1053 if (type) {
1054 PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
1055 } else {
1056 PyErr_Format(PyExc_TypeError, "null reference was received");
1057 }
1058 }
1059
1060 SWIGRUNTIME int
1061 SWIG_Python_AddErrMesg(const char* mesg, int infront)
1062 {
1063 if (PyErr_Occurred()) {
1064 PyObject *type = 0;
1065 PyObject *value = 0;
1066 PyObject *traceback = 0;
1067 PyErr_Fetch(&type, &value, &traceback);
1068 if (value) {
1069 PyObject *old_str = PyObject_Str(value);
1070 Py_XINCREF(type);
1071 PyErr_Clear();
1072 if (infront) {
1073 PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
1074 } else {
1075 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
1076 }
1077 Py_DECREF(old_str);
1078 }
1079 return 1;
1080 } else {
1081 return 0;
1082 }
1083 }
1084
1085 SWIGRUNTIME int
1086 SWIG_Python_ArgFail(int argnum)
1087 {
1088 if (PyErr_Occurred()) {
1089 /* add information about failing argument */
1090 char mesg[256];
1091 sprintf(mesg, "argument number %d:", argnum);
1092 return SWIG_Python_AddErrMesg(mesg, 1);
1093 } else {
1094 return 0;
1095 }
1096 }
1097
1098
1099 /* -----------------------------------------------------------------------------
1100 * pointers/data manipulation
1101 * ----------------------------------------------------------------------------- */
1102
1103 /* Convert a pointer value */
1104 SWIGRUNTIME int
1105 SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
1106 swig_type_info *tc;
1107 const char *c = 0;
1108 static PyObject *SWIG_this = 0;
1109 int newref = 0;
1110 PyObject *pyobj = 0;
1111 void *vptr;
1112
1113 if (!obj) return 0;
1114 if (obj == Py_None) {
1115 *ptr = 0;
1116 return 0;
1117 }
1118
1119 #ifdef SWIG_COBJECT_TYPES
1120 if (!(PySwigObject_Check(obj))) {
1121 if (!SWIG_this)
1122 SWIG_this = PyString_FromString("this");
1123 pyobj = obj;
1124 obj = PyObject_GetAttr(obj,SWIG_this);
1125 newref = 1;
1126 if (!obj) goto type_error;
1127 if (!PySwigObject_Check(obj)) {
1128 Py_DECREF(obj);
1129 goto type_error;
1130 }
1131 }
1132 vptr = PySwigObject_AsVoidPtr(obj);
1133 c = (const char *) PySwigObject_GetDesc(obj);
1134 if (newref) { Py_DECREF(obj); }
1135 goto type_check;
1136 #else
1137 if (!(PyString_Check(obj))) {
1138 if (!SWIG_this)
1139 SWIG_this = PyString_FromString("this");
1140 pyobj = obj;
1141 obj = PyObject_GetAttr(obj,SWIG_this);
1142 newref = 1;
1143 if (!obj) goto type_error;
1144 if (!PyString_Check(obj)) {
1145 Py_DECREF(obj);
1146 goto type_error;
1147 }
1148 }
1149 c = PyString_AS_STRING(obj);
1150 /* Pointer values must start with leading underscore */
1151 c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
1152 if (newref) { Py_DECREF(obj); }
1153 if (!c) goto type_error;
1154 #endif
1155
1156 type_check:
1157
1158 if (ty) {
1159 tc = SWIG_TypeCheck(c,ty);
1160 if (!tc) goto type_error;
1161 *ptr = SWIG_TypeCast(tc,vptr);
1162 } else {
1163 *ptr = vptr;
1164 }
1165
1166 if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
1167 PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
1168 }
1169 return 0;
1170
1171 type_error:
1172 PyErr_Clear();
1173 if (pyobj && !obj) {
1174 obj = pyobj;
1175 if (PyCFunction_Check(obj)) {
1176 /* here we get the method pointer for callbacks */
1177 char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
1178 c = doc ? strstr(doc, "swig_ptr: ") : 0;
1179 if (c) {
1180 c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name);
1181 if (!c) goto type_error;
1182 goto type_check;
1183 }
1184 }
1185 }
1186 if (flags & SWIG_POINTER_EXCEPTION) {
1187 if (ty) {
1188 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1189 } else {
1190 SWIG_Python_TypeError("C/C++ pointer", obj);
1191 }
1192 }
1193 return -1;
1194 }
1195
1196 /* Convert a pointer value, signal an exception on a type mismatch */
1197 SWIGRUNTIME void *
1198 SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
1199 void *result;
1200 if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
1201 PyErr_Clear();
1202 if (flags & SWIG_POINTER_EXCEPTION) {
1203 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1204 SWIG_Python_ArgFail(argnum);
1205 }
1206 }
1207 return result;
1208 }
1209
1210 /* Convert a packed value value */
1211 SWIGRUNTIME int
1212 SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
1213 swig_type_info *tc;
1214 const char *c = 0;
1215
1216 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1217 c = PySwigPacked_UnpackData(obj, ptr, sz);
1218 #else
1219 if ((!obj) || (!PyString_Check(obj))) goto type_error;
1220 c = PyString_AS_STRING(obj);
1221 /* Pointer values must start with leading underscore */
1222 c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
1223 #endif
1224 if (!c) goto type_error;
1225 if (ty) {
1226 tc = SWIG_TypeCheck(c,ty);
1227 if (!tc) goto type_error;
1228 }
1229 return 0;
1230
1231 type_error:
1232 PyErr_Clear();
1233 if (flags & SWIG_POINTER_EXCEPTION) {
1234 if (ty) {
1235 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1236 } else {
1237 SWIG_Python_TypeError("C/C++ packed data", obj);
1238 }
1239 }
1240 return -1;
1241 }
1242
1243 /* Create a new array object */
1244 SWIGRUNTIME PyObject *
1245 SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
1246 PyObject *robj = 0;
1247 if (!ptr) {
1248 Py_INCREF(Py_None);
1249 return Py_None;
1250 }
1251 #ifdef SWIG_COBJECT_TYPES
1252 robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
1253 #else
1254 {
1255 char result[SWIG_BUFFER_SIZE];
1256 robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
1257 PyString_FromString(result) : 0;
1258 }
1259 #endif
1260 if (!robj || (robj == Py_None)) return robj;
1261 if (type->clientdata) {
1262 PyObject *inst;
1263 PyObject *args = Py_BuildValue((char*)"(O)", robj);
1264 Py_DECREF(robj);
1265 inst = PyObject_CallObject((PyObject *) type->clientdata, args);
1266 Py_DECREF(args);
1267 if (inst) {
1268 if (own) {
1269 PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
1270 }
1271 robj = inst;
1272 }
1273 }
1274 return robj;
1275 }
1276
1277 SWIGRUNTIME PyObject *
1278 SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
1279 PyObject *robj = 0;
1280 if (!ptr) {
1281 Py_INCREF(Py_None);
1282 return Py_None;
1283 }
1284 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1285 robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
1286 #else
1287 {
1288 char result[SWIG_BUFFER_SIZE];
1289 robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
1290 PyString_FromString(result) : 0;
1291 }
1292 #endif
1293 return robj;
1294 }
1295
1296 /* -----------------------------------------------------------------------------*
1297 * Get type list
1298 * -----------------------------------------------------------------------------*/
1299
1300 #ifdef SWIG_LINK_RUNTIME
1301 void *SWIG_ReturnGlobalTypeList(void *);
1302 #endif
1303
1304 SWIGRUNTIME swig_type_info **
1305 SWIG_Python_GetTypeListHandle() {
1306 static void *type_pointer = (void *)0;
1307 /* first check if module already created */
1308 if (!type_pointer) {
1309 #ifdef SWIG_LINK_RUNTIME
1310 type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
1311 #else
1312 type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
1313 (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
1314 if (PyErr_Occurred()) {
1315 PyErr_Clear();
1316 type_pointer = (void *)0;
1317 }
1318 }
1319 #endif
1320 return (swig_type_info **) type_pointer;
1321 }
1322
1323 /*
1324 Search for a swig_type_info structure
1325 */
1326 SWIGRUNTIMEINLINE swig_type_info *
1327 SWIG_Python_GetTypeList() {
1328 swig_type_info **tlh = SWIG_Python_GetTypeListHandle();
1329 return tlh ? *tlh : (swig_type_info*)0;
1330 }
1331
1332 #define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList
1333
1334 #ifdef __cplusplus
1335 }
1336 #endif
1337
1338
1339 /* -------- TYPES TABLE (BEGIN) -------- */
1340
1341 #define SWIGTYPE_p_wxGLCanvas swig_types[0]
1342 #define SWIGTYPE_p_wxObject swig_types[1]
1343 #define SWIGTYPE_p_unsigned_char swig_types[2]
1344 #define SWIGTYPE_p_wxGLContext swig_types[3]
1345 #define SWIGTYPE_p_wxWindow swig_types[4]
1346 #define SWIGTYPE_p_unsigned_long swig_types[5]
1347 #define SWIGTYPE_p_form_ops_t swig_types[6]
1348 #define SWIGTYPE_p_unsigned_int swig_types[7]
1349 #define SWIGTYPE_unsigned_int swig_types[8]
1350 #define SWIGTYPE_p_wxDuplexMode swig_types[9]
1351 #define SWIGTYPE_p_char swig_types[10]
1352 #define SWIGTYPE_p_wxEvtHandler swig_types[11]
1353 #define SWIGTYPE_p_wxPalette swig_types[12]
1354 #define SWIGTYPE_std__ptrdiff_t swig_types[13]
1355 #define SWIGTYPE_ptrdiff_t swig_types[14]
1356 #define SWIGTYPE_p_wxPaperSize swig_types[15]
1357 #define SWIGTYPE_p_int swig_types[16]
1358 static swig_type_info *swig_types[18];
1359
1360 /* -------- TYPES TABLE (END) -------- */
1361
1362
1363 /*-----------------------------------------------
1364 @(target):= _glcanvas.so
1365 ------------------------------------------------*/
1366 #define SWIG_init init_glcanvas
1367
1368 #define SWIG_name "_glcanvas"
1369
1370 #include "wx/wxPython/wxPython.h"
1371 #include "wx/wxPython/pyclasses.h"
1372
1373 #include <wx/glcanvas.h>
1374
1375
1376 static const wxString wxPyGLCanvasNameStr(wxT("GLCanvas"));
1377 static const wxString wxPyEmptyString(wxEmptyString);
1378
1379 #include <limits.h>
1380
1381
1382 SWIGINTERN int
1383 SWIG_CheckLongInRange(long value, long min_value, long max_value,
1384 const char *errmsg)
1385 {
1386 if (value < min_value) {
1387 if (errmsg) {
1388 PyErr_Format(PyExc_OverflowError,
1389 "value %ld is less than '%s' minimum %ld",
1390 value, errmsg, min_value);
1391 }
1392 return 0;
1393 } else if (value > max_value) {
1394 if (errmsg) {
1395 PyErr_Format(PyExc_OverflowError,
1396 "value %ld is greater than '%s' maximum %ld",
1397 value, errmsg, max_value);
1398 }
1399 return 0;
1400 }
1401 return 1;
1402 }
1403
1404
1405 SWIGINTERN int
1406 SWIG_AsVal_long(PyObject* obj, long* val)
1407 {
1408 if (PyNumber_Check(obj)) {
1409 if (val) *val = PyInt_AsLong(obj);
1410 return 1;
1411 }
1412 else {
1413 SWIG_type_error("number", obj);
1414 }
1415 return 0;
1416 }
1417
1418
1419 #if INT_MAX != LONG_MAX
1420 SWIGINTERN int
1421 SWIG_AsVal_int(PyObject *obj, int *val)
1422 {
1423 const char* errmsg = val ? "int" : (char*)0;
1424 long v;
1425 if (SWIG_AsVal_long(obj, &v)) {
1426 if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
1427 if (val) *val = (int)(v);
1428 return 1;
1429 } else {
1430 return 0;
1431 }
1432 } else {
1433 PyErr_Clear();
1434 }
1435 if (val) {
1436 SWIG_type_error(errmsg, obj);
1437 }
1438 return 0;
1439 }
1440 #else
1441 SWIGINTERNSHORT int
1442 SWIG_AsVal_int(PyObject *obj, int *val)
1443 {
1444 return SWIG_AsVal_long(obj,(long*)val);
1445 }
1446 #endif
1447
1448
1449 SWIGINTERN int
1450 SWIG_AsVal_bool(PyObject *obj, bool *val)
1451 {
1452 if (obj == Py_True) {
1453 if (val) *val = true;
1454 return 1;
1455 }
1456 if (obj == Py_False) {
1457 if (val) *val = false;
1458 return 1;
1459 }
1460 int res = 0;
1461 if (SWIG_AsVal_int(obj, &res)) {
1462 if (val) *val = res ? true : false;
1463 return 1;
1464 } else {
1465 PyErr_Clear();
1466 }
1467 if (val) {
1468 SWIG_type_error("bool", obj);
1469 }
1470 return 0;
1471 }
1472
1473
1474 SWIGINTERNSHORT bool
1475 SWIG_As_bool(PyObject* obj)
1476 {
1477 bool v;
1478 if (!SWIG_AsVal_bool(obj, &v)) {
1479 /*
1480 this is needed to make valgrind/purify happier.
1481 */
1482 memset((void*)&v, 0, sizeof(bool));
1483 }
1484 return v;
1485 }
1486
1487
1488 SWIGINTERNSHORT int
1489 SWIG_Check_bool(PyObject* obj)
1490 {
1491 return SWIG_AsVal_bool(obj, (bool*)0);
1492 }
1493
1494 static wxGLContext *new_wxGLContext(bool isRGB,wxGLCanvas *win,wxPalette const &palette=wxNullPalette,wxGLContext const *other=NULL){
1495 AGLPixelFormat fmt; // TODO: How should this be initialized?
1496 return new wxGLContext(fmt, win, palette, other);
1497 }
1498
1499 /*@/opt/swig/share/swig/1.3.24/python/pymacros.swg,66,SWIG_define@*/
1500 #define SWIG_From_int PyInt_FromLong
1501 /*@@*/
1502
1503
1504 SWIGINTERNSHORT int
1505 SWIG_As_int(PyObject* obj)
1506 {
1507 int v;
1508 if (!SWIG_AsVal_int(obj, &v)) {
1509 /*
1510 this is needed to make valgrind/purify happier.
1511 */
1512 memset((void*)&v, 0, sizeof(int));
1513 }
1514 return v;
1515 }
1516
1517
1518 SWIGINTERNSHORT long
1519 SWIG_As_long(PyObject* obj)
1520 {
1521 long v;
1522 if (!SWIG_AsVal_long(obj, &v)) {
1523 /*
1524 this is needed to make valgrind/purify happier.
1525 */
1526 memset((void*)&v, 0, sizeof(long));
1527 }
1528 return v;
1529 }
1530
1531
1532 SWIGINTERNSHORT int
1533 SWIG_Check_int(PyObject* obj)
1534 {
1535 return SWIG_AsVal_int(obj, (int*)0);
1536 }
1537
1538
1539 SWIGINTERNSHORT int
1540 SWIG_Check_long(PyObject* obj)
1541 {
1542 return SWIG_AsVal_long(obj, (long*)0);
1543 }
1544
1545 #ifdef __cplusplus
1546 extern "C" {
1547 #endif
1548 static int _wrap_GLCanvasNameStr_set(PyObject *) {
1549 PyErr_SetString(PyExc_TypeError,"Variable GLCanvasNameStr is read-only.");
1550 return 1;
1551 }
1552
1553
1554 static PyObject *_wrap_GLCanvasNameStr_get(void) {
1555 PyObject *pyobj;
1556
1557 {
1558 #if wxUSE_UNICODE
1559 pyobj = PyUnicode_FromWideChar((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1560 #else
1561 pyobj = PyString_FromStringAndSize((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1562 #endif
1563 }
1564 return pyobj;
1565 }
1566
1567
1568 static PyObject *_wrap_new_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1569 PyObject *resultobj;
1570 bool arg1 ;
1571 wxGLCanvas *arg2 = (wxGLCanvas *) 0 ;
1572 wxPalette const &arg3_defvalue = wxNullPalette ;
1573 wxPalette *arg3 = (wxPalette *) &arg3_defvalue ;
1574 wxGLContext *arg4 = (wxGLContext *) NULL ;
1575 wxGLContext *result;
1576 PyObject * obj0 = 0 ;
1577 PyObject * obj1 = 0 ;
1578 PyObject * obj2 = 0 ;
1579 PyObject * obj3 = 0 ;
1580 char *kwnames[] = {
1581 (char *) "isRGB",(char *) "win",(char *) "palette",(char *) "other", NULL
1582 };
1583
1584 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:new_GLContext",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
1585 {
1586 arg1 = (bool)(SWIG_As_bool(obj0));
1587 if (SWIG_arg_fail(1)) SWIG_fail;
1588 }
1589 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
1590 if (SWIG_arg_fail(2)) SWIG_fail;
1591 if (obj2) {
1592 {
1593 SWIG_Python_ConvertPtr(obj2, (void **)&arg3, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1594 if (SWIG_arg_fail(3)) SWIG_fail;
1595 if (arg3 == NULL) {
1596 SWIG_null_ref("wxPalette");
1597 }
1598 if (SWIG_arg_fail(3)) SWIG_fail;
1599 }
1600 }
1601 if (obj3) {
1602 SWIG_Python_ConvertPtr(obj3, (void **)&arg4, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1603 if (SWIG_arg_fail(4)) SWIG_fail;
1604 }
1605 {
1606 if (!wxPyCheckForApp()) SWIG_fail;
1607 PyThreadState* __tstate = wxPyBeginAllowThreads();
1608 result = (wxGLContext *)new_wxGLContext(arg1,arg2,(wxPalette const &)*arg3,(wxGLContext const *)arg4);
1609
1610 wxPyEndAllowThreads(__tstate);
1611 if (PyErr_Occurred()) SWIG_fail;
1612 }
1613 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 1);
1614 return resultobj;
1615 fail:
1616 return NULL;
1617 }
1618
1619
1620 static PyObject *_wrap_delete_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1621 PyObject *resultobj;
1622 wxGLContext *arg1 = (wxGLContext *) 0 ;
1623 PyObject * obj0 = 0 ;
1624 char *kwnames[] = {
1625 (char *) "self", NULL
1626 };
1627
1628 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_GLContext",kwnames,&obj0)) goto fail;
1629 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1630 if (SWIG_arg_fail(1)) SWIG_fail;
1631 {
1632 PyThreadState* __tstate = wxPyBeginAllowThreads();
1633 delete arg1;
1634
1635 wxPyEndAllowThreads(__tstate);
1636 if (PyErr_Occurred()) SWIG_fail;
1637 }
1638 Py_INCREF(Py_None); resultobj = Py_None;
1639 return resultobj;
1640 fail:
1641 return NULL;
1642 }
1643
1644
1645 static PyObject *_wrap_GLContext_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
1646 PyObject *resultobj;
1647 wxGLContext *arg1 = (wxGLContext *) 0 ;
1648 PyObject * obj0 = 0 ;
1649 char *kwnames[] = {
1650 (char *) "self", NULL
1651 };
1652
1653 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SetCurrent",kwnames,&obj0)) goto fail;
1654 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1655 if (SWIG_arg_fail(1)) SWIG_fail;
1656 {
1657 PyThreadState* __tstate = wxPyBeginAllowThreads();
1658 (arg1)->SetCurrent();
1659
1660 wxPyEndAllowThreads(__tstate);
1661 if (PyErr_Occurred()) SWIG_fail;
1662 }
1663 Py_INCREF(Py_None); resultobj = Py_None;
1664 return resultobj;
1665 fail:
1666 return NULL;
1667 }
1668
1669
1670 static PyObject *_wrap_GLContext_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
1671 PyObject *resultobj;
1672 wxGLContext *arg1 = (wxGLContext *) 0 ;
1673 wxString *arg2 = 0 ;
1674 bool temp2 = false ;
1675 PyObject * obj0 = 0 ;
1676 PyObject * obj1 = 0 ;
1677 char *kwnames[] = {
1678 (char *) "self",(char *) "colour", NULL
1679 };
1680
1681 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetColour",kwnames,&obj0,&obj1)) goto fail;
1682 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1683 if (SWIG_arg_fail(1)) SWIG_fail;
1684 {
1685 arg2 = wxString_in_helper(obj1);
1686 if (arg2 == NULL) SWIG_fail;
1687 temp2 = true;
1688 }
1689 {
1690 PyThreadState* __tstate = wxPyBeginAllowThreads();
1691 (arg1)->SetColour((wxString const &)*arg2);
1692
1693 wxPyEndAllowThreads(__tstate);
1694 if (PyErr_Occurred()) SWIG_fail;
1695 }
1696 Py_INCREF(Py_None); resultobj = Py_None;
1697 {
1698 if (temp2)
1699 delete arg2;
1700 }
1701 return resultobj;
1702 fail:
1703 {
1704 if (temp2)
1705 delete arg2;
1706 }
1707 return NULL;
1708 }
1709
1710
1711 static PyObject *_wrap_GLContext_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
1712 PyObject *resultobj;
1713 wxGLContext *arg1 = (wxGLContext *) 0 ;
1714 PyObject * obj0 = 0 ;
1715 char *kwnames[] = {
1716 (char *) "self", NULL
1717 };
1718
1719 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SwapBuffers",kwnames,&obj0)) goto fail;
1720 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1721 if (SWIG_arg_fail(1)) SWIG_fail;
1722 {
1723 PyThreadState* __tstate = wxPyBeginAllowThreads();
1724 (arg1)->SwapBuffers();
1725
1726 wxPyEndAllowThreads(__tstate);
1727 if (PyErr_Occurred()) SWIG_fail;
1728 }
1729 Py_INCREF(Py_None); resultobj = Py_None;
1730 return resultobj;
1731 fail:
1732 return NULL;
1733 }
1734
1735
1736 static PyObject *_wrap_GLContext_GetWindow(PyObject *, PyObject *args, PyObject *kwargs) {
1737 PyObject *resultobj;
1738 wxGLContext *arg1 = (wxGLContext *) 0 ;
1739 wxWindow *result;
1740 PyObject * obj0 = 0 ;
1741 char *kwnames[] = {
1742 (char *) "self", NULL
1743 };
1744
1745 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_GetWindow",kwnames,&obj0)) goto fail;
1746 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1747 if (SWIG_arg_fail(1)) SWIG_fail;
1748 {
1749 PyThreadState* __tstate = wxPyBeginAllowThreads();
1750 result = (wxWindow *)(arg1)->GetWindow();
1751
1752 wxPyEndAllowThreads(__tstate);
1753 if (PyErr_Occurred()) SWIG_fail;
1754 }
1755 {
1756 resultobj = wxPyMake_wxObject(result, 0);
1757 }
1758 return resultobj;
1759 fail:
1760 return NULL;
1761 }
1762
1763
1764 static PyObject * GLContext_swigregister(PyObject *, PyObject *args) {
1765 PyObject *obj;
1766 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
1767 SWIG_TypeClientData(SWIGTYPE_p_wxGLContext, obj);
1768 Py_INCREF(obj);
1769 return Py_BuildValue((char *)"");
1770 }
1771 static PyObject *_wrap_new_GLCanvas(PyObject *, PyObject *args, PyObject *kwargs) {
1772 PyObject *resultobj;
1773 wxWindow *arg1 = (wxWindow *) 0 ;
1774 int arg2 = (int) -1 ;
1775 wxPoint const &arg3_defvalue = wxDefaultPosition ;
1776 wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
1777 wxSize const &arg4_defvalue = wxDefaultSize ;
1778 wxSize *arg4 = (wxSize *) &arg4_defvalue ;
1779 long arg5 = (long) 0 ;
1780 wxString const &arg6_defvalue = wxPyGLCanvasNameStr ;
1781 wxString *arg6 = (wxString *) &arg6_defvalue ;
1782 int *arg7 = (int *) NULL ;
1783 wxPalette const &arg8_defvalue = wxNullPalette ;
1784 wxPalette *arg8 = (wxPalette *) &arg8_defvalue ;
1785 wxGLCanvas *result;
1786 wxPoint temp3 ;
1787 wxSize temp4 ;
1788 bool temp6 = false ;
1789 int *temp7 ;
1790 PyObject * obj0 = 0 ;
1791 PyObject * obj1 = 0 ;
1792 PyObject * obj2 = 0 ;
1793 PyObject * obj3 = 0 ;
1794 PyObject * obj4 = 0 ;
1795 PyObject * obj5 = 0 ;
1796 PyObject * obj6 = 0 ;
1797 PyObject * obj7 = 0 ;
1798 char *kwnames[] = {
1799 (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
1800 };
1801
1802 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOO:new_GLCanvas",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
1803 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
1804 if (SWIG_arg_fail(1)) SWIG_fail;
1805 if (obj1) {
1806 {
1807 arg2 = (int)(SWIG_As_int(obj1));
1808 if (SWIG_arg_fail(2)) SWIG_fail;
1809 }
1810 }
1811 if (obj2) {
1812 {
1813 arg3 = &temp3;
1814 if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
1815 }
1816 }
1817 if (obj3) {
1818 {
1819 arg4 = &temp4;
1820 if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
1821 }
1822 }
1823 if (obj4) {
1824 {
1825 arg5 = (long)(SWIG_As_long(obj4));
1826 if (SWIG_arg_fail(5)) SWIG_fail;
1827 }
1828 }
1829 if (obj5) {
1830 {
1831 arg6 = wxString_in_helper(obj5);
1832 if (arg6 == NULL) SWIG_fail;
1833 temp6 = true;
1834 }
1835 }
1836 if (obj6) {
1837 {
1838 int i;
1839 if (PySequence_Check(obj6)) {
1840 int size = PyObject_Length(obj6);
1841 temp7 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
1842 for (i = 0; i < size; i++) {
1843 temp7[i] = PyInt_AsLong(PySequence_GetItem(obj6, i));
1844 }
1845 temp7[size] = 0;
1846 arg7 = temp7;
1847 }
1848 }
1849 }
1850 if (obj7) {
1851 {
1852 SWIG_Python_ConvertPtr(obj7, (void **)&arg8, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1853 if (SWIG_arg_fail(8)) SWIG_fail;
1854 if (arg8 == NULL) {
1855 SWIG_null_ref("wxPalette");
1856 }
1857 if (SWIG_arg_fail(8)) SWIG_fail;
1858 }
1859 }
1860 {
1861 if (!wxPyCheckForApp()) SWIG_fail;
1862 PyThreadState* __tstate = wxPyBeginAllowThreads();
1863 result = (wxGLCanvas *)new wxGLCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6,arg7,(wxPalette const &)*arg8);
1864
1865 wxPyEndAllowThreads(__tstate);
1866 if (PyErr_Occurred()) SWIG_fail;
1867 }
1868 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
1869 {
1870 if (temp6)
1871 delete arg6;
1872 }
1873 {
1874 delete [] arg7;
1875 }
1876 return resultobj;
1877 fail:
1878 {
1879 if (temp6)
1880 delete arg6;
1881 }
1882 {
1883 delete [] arg7;
1884 }
1885 return NULL;
1886 }
1887
1888
1889 static PyObject *_wrap_new_GLCanvasWithContext(PyObject *, PyObject *args, PyObject *kwargs) {
1890 PyObject *resultobj;
1891 wxWindow *arg1 = (wxWindow *) 0 ;
1892 wxGLContext *arg2 = (wxGLContext *) NULL ;
1893 int arg3 = (int) -1 ;
1894 wxPoint const &arg4_defvalue = wxDefaultPosition ;
1895 wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
1896 wxSize const &arg5_defvalue = wxDefaultSize ;
1897 wxSize *arg5 = (wxSize *) &arg5_defvalue ;
1898 long arg6 = (long) 0 ;
1899 wxString const &arg7_defvalue = wxPyGLCanvasNameStr ;
1900 wxString *arg7 = (wxString *) &arg7_defvalue ;
1901 int *arg8 = (int *) NULL ;
1902 wxPalette const &arg9_defvalue = wxNullPalette ;
1903 wxPalette *arg9 = (wxPalette *) &arg9_defvalue ;
1904 wxGLCanvas *result;
1905 wxPoint temp4 ;
1906 wxSize temp5 ;
1907 bool temp7 = false ;
1908 int *temp8 ;
1909 PyObject * obj0 = 0 ;
1910 PyObject * obj1 = 0 ;
1911 PyObject * obj2 = 0 ;
1912 PyObject * obj3 = 0 ;
1913 PyObject * obj4 = 0 ;
1914 PyObject * obj5 = 0 ;
1915 PyObject * obj6 = 0 ;
1916 PyObject * obj7 = 0 ;
1917 PyObject * obj8 = 0 ;
1918 char *kwnames[] = {
1919 (char *) "parent",(char *) "shared",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
1920 };
1921
1922 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_GLCanvasWithContext",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
1923 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
1924 if (SWIG_arg_fail(1)) SWIG_fail;
1925 if (obj1) {
1926 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1927 if (SWIG_arg_fail(2)) SWIG_fail;
1928 }
1929 if (obj2) {
1930 {
1931 arg3 = (int)(SWIG_As_int(obj2));
1932 if (SWIG_arg_fail(3)) SWIG_fail;
1933 }
1934 }
1935 if (obj3) {
1936 {
1937 arg4 = &temp4;
1938 if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
1939 }
1940 }
1941 if (obj4) {
1942 {
1943 arg5 = &temp5;
1944 if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
1945 }
1946 }
1947 if (obj5) {
1948 {
1949 arg6 = (long)(SWIG_As_long(obj5));
1950 if (SWIG_arg_fail(6)) SWIG_fail;
1951 }
1952 }
1953 if (obj6) {
1954 {
1955 arg7 = wxString_in_helper(obj6);
1956 if (arg7 == NULL) SWIG_fail;
1957 temp7 = true;
1958 }
1959 }
1960 if (obj7) {
1961 {
1962 int i;
1963 if (PySequence_Check(obj7)) {
1964 int size = PyObject_Length(obj7);
1965 temp8 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
1966 for (i = 0; i < size; i++) {
1967 temp8[i] = PyInt_AsLong(PySequence_GetItem(obj7, i));
1968 }
1969 temp8[size] = 0;
1970 arg8 = temp8;
1971 }
1972 }
1973 }
1974 if (obj8) {
1975 {
1976 SWIG_Python_ConvertPtr(obj8, (void **)&arg9, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1977 if (SWIG_arg_fail(9)) SWIG_fail;
1978 if (arg9 == NULL) {
1979 SWIG_null_ref("wxPalette");
1980 }
1981 if (SWIG_arg_fail(9)) SWIG_fail;
1982 }
1983 }
1984 {
1985 if (!wxPyCheckForApp()) SWIG_fail;
1986 PyThreadState* __tstate = wxPyBeginAllowThreads();
1987 result = (wxGLCanvas *)new wxGLCanvas(arg1,(wxGLContext const *)arg2,arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,arg8,(wxPalette const &)*arg9);
1988
1989 wxPyEndAllowThreads(__tstate);
1990 if (PyErr_Occurred()) SWIG_fail;
1991 }
1992 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
1993 {
1994 if (temp7)
1995 delete arg7;
1996 }
1997 {
1998 delete [] arg8;
1999 }
2000 return resultobj;
2001 fail:
2002 {
2003 if (temp7)
2004 delete arg7;
2005 }
2006 {
2007 delete [] arg8;
2008 }
2009 return NULL;
2010 }
2011
2012
2013 static PyObject *_wrap_GLCanvas_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
2014 PyObject *resultobj;
2015 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2016 PyObject * obj0 = 0 ;
2017 char *kwnames[] = {
2018 (char *) "self", NULL
2019 };
2020
2021 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SetCurrent",kwnames,&obj0)) goto fail;
2022 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2023 if (SWIG_arg_fail(1)) SWIG_fail;
2024 {
2025 PyThreadState* __tstate = wxPyBeginAllowThreads();
2026 (arg1)->SetCurrent();
2027
2028 wxPyEndAllowThreads(__tstate);
2029 if (PyErr_Occurred()) SWIG_fail;
2030 }
2031 Py_INCREF(Py_None); resultobj = Py_None;
2032 return resultobj;
2033 fail:
2034 return NULL;
2035 }
2036
2037
2038 static PyObject *_wrap_GLCanvas_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
2039 PyObject *resultobj;
2040 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2041 wxString *arg2 = 0 ;
2042 bool temp2 = false ;
2043 PyObject * obj0 = 0 ;
2044 PyObject * obj1 = 0 ;
2045 char *kwnames[] = {
2046 (char *) "self",(char *) "colour", NULL
2047 };
2048
2049 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetColour",kwnames,&obj0,&obj1)) goto fail;
2050 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2051 if (SWIG_arg_fail(1)) SWIG_fail;
2052 {
2053 arg2 = wxString_in_helper(obj1);
2054 if (arg2 == NULL) SWIG_fail;
2055 temp2 = true;
2056 }
2057 {
2058 PyThreadState* __tstate = wxPyBeginAllowThreads();
2059 (arg1)->SetColour((wxString const &)*arg2);
2060
2061 wxPyEndAllowThreads(__tstate);
2062 if (PyErr_Occurred()) SWIG_fail;
2063 }
2064 Py_INCREF(Py_None); resultobj = Py_None;
2065 {
2066 if (temp2)
2067 delete arg2;
2068 }
2069 return resultobj;
2070 fail:
2071 {
2072 if (temp2)
2073 delete arg2;
2074 }
2075 return NULL;
2076 }
2077
2078
2079 static PyObject *_wrap_GLCanvas_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
2080 PyObject *resultobj;
2081 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2082 PyObject * obj0 = 0 ;
2083 char *kwnames[] = {
2084 (char *) "self", NULL
2085 };
2086
2087 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SwapBuffers",kwnames,&obj0)) goto fail;
2088 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2089 if (SWIG_arg_fail(1)) SWIG_fail;
2090 {
2091 PyThreadState* __tstate = wxPyBeginAllowThreads();
2092 (arg1)->SwapBuffers();
2093
2094 wxPyEndAllowThreads(__tstate);
2095 if (PyErr_Occurred()) SWIG_fail;
2096 }
2097 Py_INCREF(Py_None); resultobj = Py_None;
2098 return resultobj;
2099 fail:
2100 return NULL;
2101 }
2102
2103
2104 static PyObject *_wrap_GLCanvas_GetContext(PyObject *, PyObject *args, PyObject *kwargs) {
2105 PyObject *resultobj;
2106 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2107 wxGLContext *result;
2108 PyObject * obj0 = 0 ;
2109 char *kwnames[] = {
2110 (char *) "self", NULL
2111 };
2112
2113 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_GetContext",kwnames,&obj0)) goto fail;
2114 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2115 if (SWIG_arg_fail(1)) SWIG_fail;
2116 {
2117 PyThreadState* __tstate = wxPyBeginAllowThreads();
2118 result = (wxGLContext *)(arg1)->GetContext();
2119
2120 wxPyEndAllowThreads(__tstate);
2121 if (PyErr_Occurred()) SWIG_fail;
2122 }
2123 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 0);
2124 return resultobj;
2125 fail:
2126 return NULL;
2127 }
2128
2129
2130 static PyObject * GLCanvas_swigregister(PyObject *, PyObject *args) {
2131 PyObject *obj;
2132 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
2133 SWIG_TypeClientData(SWIGTYPE_p_wxGLCanvas, obj);
2134 Py_INCREF(obj);
2135 return Py_BuildValue((char *)"");
2136 }
2137 static PyMethodDef SwigMethods[] = {
2138 { (char *)"new_GLContext", (PyCFunction) _wrap_new_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2139 { (char *)"delete_GLContext", (PyCFunction) _wrap_delete_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2140 { (char *)"GLContext_SetCurrent", (PyCFunction) _wrap_GLContext_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2141 { (char *)"GLContext_SetColour", (PyCFunction) _wrap_GLContext_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2142 { (char *)"GLContext_SwapBuffers", (PyCFunction) _wrap_GLContext_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2143 { (char *)"GLContext_GetWindow", (PyCFunction) _wrap_GLContext_GetWindow, METH_VARARGS | METH_KEYWORDS, NULL},
2144 { (char *)"GLContext_swigregister", GLContext_swigregister, METH_VARARGS, NULL},
2145 { (char *)"new_GLCanvas", (PyCFunction) _wrap_new_GLCanvas, METH_VARARGS | METH_KEYWORDS, NULL},
2146 { (char *)"new_GLCanvasWithContext", (PyCFunction) _wrap_new_GLCanvasWithContext, METH_VARARGS | METH_KEYWORDS, NULL},
2147 { (char *)"GLCanvas_SetCurrent", (PyCFunction) _wrap_GLCanvas_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2148 { (char *)"GLCanvas_SetColour", (PyCFunction) _wrap_GLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2149 { (char *)"GLCanvas_SwapBuffers", (PyCFunction) _wrap_GLCanvas_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2150 { (char *)"GLCanvas_GetContext", (PyCFunction) _wrap_GLCanvas_GetContext, METH_VARARGS | METH_KEYWORDS, NULL},
2151 { (char *)"GLCanvas_swigregister", GLCanvas_swigregister, METH_VARARGS, NULL},
2152 { NULL, NULL, 0, NULL }
2153 };
2154
2155
2156 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
2157
2158 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
2159 return (void *)((wxObject *) ((wxLayoutConstraints *) x));
2160 }
2161 static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
2162 return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
2163 }
2164 static void *_p_wxSizerItemTo_p_wxObject(void *x) {
2165 return (void *)((wxObject *) ((wxSizerItem *) x));
2166 }
2167 static void *_p_wxScrollEventTo_p_wxObject(void *x) {
2168 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
2169 }
2170 static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
2171 return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x));
2172 }
2173 static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
2174 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
2175 }
2176 static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
2177 return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
2178 }
2179 static void *_p_wxSizerTo_p_wxObject(void *x) {
2180 return (void *)((wxObject *) ((wxSizer *) x));
2181 }
2182 static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
2183 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
2184 }
2185 static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
2186 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
2187 }
2188 static void *_p_wxEventTo_p_wxObject(void *x) {
2189 return (void *)((wxObject *) ((wxEvent *) x));
2190 }
2191 static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
2192 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
2193 }
2194 static void *_p_wxGridSizerTo_p_wxObject(void *x) {
2195 return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
2196 }
2197 static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
2198 return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
2199 }
2200 static void *_p_wxPaintEventTo_p_wxObject(void *x) {
2201 return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
2202 }
2203 static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
2204 return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
2205 }
2206 static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
2207 return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
2208 }
2209 static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
2210 return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
2211 }
2212 static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
2213 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
2214 }
2215 static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
2216 return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
2217 }
2218 static void *_p_wxControlTo_p_wxObject(void *x) {
2219 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
2220 }
2221 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
2222 return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
2223 }
2224 static void *_p_wxFSFileTo_p_wxObject(void *x) {
2225 return (void *)((wxObject *) ((wxFSFile *) x));
2226 }
2227 static void *_p_wxPySizerTo_p_wxObject(void *x) {
2228 return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
2229 }
2230 static void *_p_wxPyEventTo_p_wxObject(void *x) {
2231 return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
2232 }
2233 static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
2234 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
2235 }
2236 static void *_p_wxGLContextTo_p_wxObject(void *x) {
2237 return (void *)((wxObject *) ((wxGLContext *) x));
2238 }
2239 static void *_p_wxShowEventTo_p_wxObject(void *x) {
2240 return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
2241 }
2242 static void *_p_wxMenuItemTo_p_wxObject(void *x) {
2243 return (void *)((wxObject *) ((wxMenuItem *) x));
2244 }
2245 static void *_p_wxIdleEventTo_p_wxObject(void *x) {
2246 return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
2247 }
2248 static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
2249 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
2250 }
2251 static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
2252 return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
2253 }
2254 static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
2255 return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
2256 }
2257 static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
2258 return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
2259 }
2260 static void *_p_wxSizeEventTo_p_wxObject(void *x) {
2261 return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
2262 }
2263 static void *_p_wxMoveEventTo_p_wxObject(void *x) {
2264 return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
2265 }
2266 static void *_p_wxActivateEventTo_p_wxObject(void *x) {
2267 return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
2268 }
2269 static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
2270 return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
2271 }
2272 static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
2273 return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
2274 }
2275 static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
2276 return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
2277 }
2278 static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
2279 return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
2280 }
2281 static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
2282 return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
2283 }
2284 static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
2285 return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
2286 }
2287 static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
2288 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
2289 }
2290 static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
2291 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
2292 }
2293 static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
2294 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
2295 }
2296 static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
2297 return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
2298 }
2299 static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
2300 return (void *)((wxObject *) ((wxImageHandler *) x));
2301 }
2302 static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
2303 return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
2304 }
2305 static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
2306 return (void *)((wxObject *) ((wxEvtHandler *) x));
2307 }
2308 static void *_p_wxGLCanvasTo_p_wxObject(void *x) {
2309 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxGLCanvas *) x));
2310 }
2311 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
2312 return (void *)((wxObject *) ((wxAcceleratorTable *) x));
2313 }
2314 static void *_p_wxImageTo_p_wxObject(void *x) {
2315 return (void *)((wxObject *) ((wxImage *) x));
2316 }
2317 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
2318 return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
2319 }
2320 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
2321 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
2322 }
2323 static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
2324 return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
2325 }
2326 static void *_p_wxKeyEventTo_p_wxObject(void *x) {
2327 return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
2328 }
2329 static void *_p_wxWindowTo_p_wxObject(void *x) {
2330 return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
2331 }
2332 static void *_p_wxMenuTo_p_wxObject(void *x) {
2333 return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
2334 }
2335 static void *_p_wxMenuBarTo_p_wxObject(void *x) {
2336 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
2337 }
2338 static void *_p_wxFileSystemTo_p_wxObject(void *x) {
2339 return (void *)((wxObject *) ((wxFileSystem *) x));
2340 }
2341 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
2342 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
2343 }
2344 static void *_p_wxMenuEventTo_p_wxObject(void *x) {
2345 return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
2346 }
2347 static void *_p_wxPyAppTo_p_wxObject(void *x) {
2348 return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
2349 }
2350 static void *_p_wxCloseEventTo_p_wxObject(void *x) {
2351 return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
2352 }
2353 static void *_p_wxMouseEventTo_p_wxObject(void *x) {
2354 return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
2355 }
2356 static void *_p_wxEraseEventTo_p_wxObject(void *x) {
2357 return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
2358 }
2359 static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
2360 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
2361 }
2362 static void *_p_wxCommandEventTo_p_wxObject(void *x) {
2363 return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
2364 }
2365 static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
2366 return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
2367 }
2368 static void *_p_wxFocusEventTo_p_wxObject(void *x) {
2369 return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
2370 }
2371 static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
2372 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
2373 }
2374 static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
2375 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2376 }
2377 static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
2378 return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
2379 }
2380 static void *_p_wxValidatorTo_p_wxObject(void *x) {
2381 return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
2382 }
2383 static void *_p_wxControlTo_p_wxWindow(void *x) {
2384 return (void *)((wxWindow *) ((wxControl *) x));
2385 }
2386 static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
2387 return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
2388 }
2389 static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
2390 return (void *)((wxWindow *) ((wxMenuBar *) x));
2391 }
2392 static void *_p_wxGLCanvasTo_p_wxWindow(void *x) {
2393 return (void *)((wxWindow *) ((wxGLCanvas *) x));
2394 }
2395 static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
2396 return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
2397 }
2398 static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
2399 return (void *)((wxEvtHandler *) ((wxWindow *) x));
2400 }
2401 static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
2402 return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2403 }
2404 static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
2405 return (void *)((wxEvtHandler *) ((wxPyApp *) x));
2406 }
2407 static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
2408 return (void *)((wxEvtHandler *) ((wxValidator *) x));
2409 }
2410 static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
2411 return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
2412 }
2413 static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
2414 return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
2415 }
2416 static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x) {
2417 return (void *)((wxEvtHandler *) (wxWindow *) ((wxGLCanvas *) x));
2418 }
2419 static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
2420 return (void *)((wxEvtHandler *) ((wxMenu *) x));
2421 }
2422 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}};
2423 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_wxMaximizeEvent", _p_wxMaximizeEventTo_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_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_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_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_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_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}};
2424 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}};
2425 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}};
2426 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}};
2427 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}};
2428 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}};
2429 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}};
2430 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}};
2431 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}};
2432 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}};
2433 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}};
2434 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}};
2435 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}};
2436 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}};
2437 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}};
2438 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}};
2439
2440 static swig_type_info *swig_types_initial[] = {
2441 _swigt__p_wxGLCanvas,
2442 _swigt__p_wxObject,
2443 _swigt__p_unsigned_char,
2444 _swigt__p_wxGLContext,
2445 _swigt__p_wxWindow,
2446 _swigt__p_unsigned_long,
2447 _swigt__p_form_ops_t,
2448 _swigt__p_unsigned_int,
2449 _swigt__unsigned_int,
2450 _swigt__p_wxDuplexMode,
2451 _swigt__p_char,
2452 _swigt__p_wxEvtHandler,
2453 _swigt__p_wxPalette,
2454 _swigt__std__ptrdiff_t,
2455 _swigt__ptrdiff_t,
2456 _swigt__p_wxPaperSize,
2457 _swigt__p_int,
2458 0
2459 };
2460
2461
2462 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
2463
2464 static swig_const_info swig_const_table[] = {
2465 {0, 0, 0, 0.0, 0, 0}};
2466
2467 #ifdef __cplusplus
2468 }
2469 #endif
2470
2471
2472 #ifdef __cplusplus
2473 extern "C" {
2474 #endif
2475
2476 /* Python-specific SWIG API */
2477 #define SWIG_newvarlink() SWIG_Python_newvarlink()
2478 #define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
2479 #define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
2480
2481 /* -----------------------------------------------------------------------------
2482 * global variable support code.
2483 * ----------------------------------------------------------------------------- */
2484
2485 typedef struct swig_globalvar {
2486 char *name; /* Name of global variable */
2487 PyObject *(*get_attr)(); /* Return the current value */
2488 int (*set_attr)(PyObject *); /* Set the value */
2489 struct swig_globalvar *next;
2490 } swig_globalvar;
2491
2492 typedef struct swig_varlinkobject {
2493 PyObject_HEAD
2494 swig_globalvar *vars;
2495 } swig_varlinkobject;
2496
2497 static PyObject *
2498 swig_varlink_repr(swig_varlinkobject *v) {
2499 v = v;
2500 return PyString_FromString("<Swig global variables>");
2501 }
2502
2503 static int
2504 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) {
2505 swig_globalvar *var;
2506 flags = flags;
2507 fprintf(fp,"Swig global variables { ");
2508 for (var = v->vars; var; var=var->next) {
2509 fprintf(fp,"%s", var->name);
2510 if (var->next) fprintf(fp,", ");
2511 }
2512 fprintf(fp," }\n");
2513 return 0;
2514 }
2515
2516 static PyObject *
2517 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
2518 swig_globalvar *var = v->vars;
2519 while (var) {
2520 if (strcmp(var->name,n) == 0) {
2521 return (*var->get_attr)();
2522 }
2523 var = var->next;
2524 }
2525 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
2526 return NULL;
2527 }
2528
2529 static int
2530 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
2531 swig_globalvar *var = v->vars;
2532 while (var) {
2533 if (strcmp(var->name,n) == 0) {
2534 return (*var->set_attr)(p);
2535 }
2536 var = var->next;
2537 }
2538 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
2539 return 1;
2540 }
2541
2542 static PyTypeObject varlinktype = {
2543 PyObject_HEAD_INIT(0)
2544 0, /* Number of items in variable part (ob_size) */
2545 (char *)"swigvarlink", /* Type name (tp_name) */
2546 sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */
2547 0, /* Itemsize (tp_itemsize) */
2548 0, /* Deallocator (tp_dealloc) */
2549 (printfunc) swig_varlink_print, /* Print (tp_print) */
2550 (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
2551 (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
2552 0, /* tp_compare */
2553 (reprfunc) swig_varlink_repr, /* tp_repr */
2554 0, /* tp_as_number */
2555 0, /* tp_as_sequence */
2556 0, /* tp_as_mapping */
2557 0, /* tp_hash */
2558 0, /* tp_call */
2559 0, /* tp_str */
2560 0, /* tp_getattro */
2561 0, /* tp_setattro */
2562 0, /* tp_as_buffer */
2563 0, /* tp_flags */
2564 0, /* tp_doc */
2565 #if PY_VERSION_HEX >= 0x02000000
2566 0, /* tp_traverse */
2567 0, /* tp_clear */
2568 #endif
2569 #if PY_VERSION_HEX >= 0x02010000
2570 0, /* tp_richcompare */
2571 0, /* tp_weaklistoffset */
2572 #endif
2573 #if PY_VERSION_HEX >= 0x02020000
2574 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
2575 #endif
2576 #if PY_VERSION_HEX >= 0x02030000
2577 0, /* tp_del */
2578 #endif
2579 #ifdef COUNT_ALLOCS
2580 0,0,0,0 /* tp_alloc -> tp_next */
2581 #endif
2582 };
2583
2584 /* Create a variable linking object for use later */
2585 static PyObject *
2586 SWIG_Python_newvarlink(void) {
2587 swig_varlinkobject *result = 0;
2588 result = PyMem_NEW(swig_varlinkobject,1);
2589 varlinktype.ob_type = &PyType_Type; /* Patch varlinktype into a PyType */
2590 result->ob_type = &varlinktype;
2591 result->vars = 0;
2592 result->ob_refcnt = 0;
2593 Py_XINCREF((PyObject *) result);
2594 return ((PyObject*) result);
2595 }
2596
2597 static void
2598 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
2599 swig_varlinkobject *v;
2600 swig_globalvar *gv;
2601 v= (swig_varlinkobject *) p;
2602 gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
2603 gv->name = (char *) malloc(strlen(name)+1);
2604 strcpy(gv->name,name);
2605 gv->get_attr = get_attr;
2606 gv->set_attr = set_attr;
2607 gv->next = v->vars;
2608 v->vars = gv;
2609 }
2610
2611 /* -----------------------------------------------------------------------------
2612 * constants/methods manipulation
2613 * ----------------------------------------------------------------------------- */
2614
2615 /* Install Constants */
2616 static void
2617 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
2618 PyObject *obj = 0;
2619 size_t i;
2620 for (i = 0; constants[i].type; i++) {
2621 switch(constants[i].type) {
2622 case SWIG_PY_INT:
2623 obj = PyInt_FromLong(constants[i].lvalue);
2624 break;
2625 case SWIG_PY_FLOAT:
2626 obj = PyFloat_FromDouble(constants[i].dvalue);
2627 break;
2628 case SWIG_PY_STRING:
2629 if (constants[i].pvalue) {
2630 obj = PyString_FromString((char *) constants[i].pvalue);
2631 } else {
2632 Py_INCREF(Py_None);
2633 obj = Py_None;
2634 }
2635 break;
2636 case SWIG_PY_POINTER:
2637 obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
2638 break;
2639 case SWIG_PY_BINARY:
2640 obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
2641 break;
2642 default:
2643 obj = 0;
2644 break;
2645 }
2646 if (obj) {
2647 PyDict_SetItemString(d,constants[i].name,obj);
2648 Py_DECREF(obj);
2649 }
2650 }
2651 }
2652
2653 /* -----------------------------------------------------------------------------*/
2654 /* Fix SwigMethods to carry the callback ptrs when needed */
2655 /* -----------------------------------------------------------------------------*/
2656
2657 static void
2658 SWIG_Python_FixMethods(PyMethodDef *methods,
2659 swig_const_info *const_table,
2660 swig_type_info **types,
2661 swig_type_info **types_initial) {
2662 size_t i;
2663 for (i = 0; methods[i].ml_name; ++i) {
2664 char *c = methods[i].ml_doc;
2665 if (c && (c = strstr(c, "swig_ptr: "))) {
2666 int j;
2667 swig_const_info *ci = 0;
2668 char *name = c + 10;
2669 for (j = 0; const_table[j].type; j++) {
2670 if (strncmp(const_table[j].name, name,
2671 strlen(const_table[j].name)) == 0) {
2672 ci = &(const_table[j]);
2673 break;
2674 }
2675 }
2676 if (ci) {
2677 size_t shift = (ci->ptype) - types;
2678 swig_type_info *ty = types_initial[shift];
2679 size_t ldoc = (c - methods[i].ml_doc);
2680 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
2681 char *ndoc = (char*)malloc(ldoc + lptr + 10);
2682 char *buff = ndoc;
2683 void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue: (void *)(ci->lvalue);
2684 strncpy(buff, methods[i].ml_doc, ldoc);
2685 buff += ldoc;
2686 strncpy(buff, "swig_ptr: ", 10);
2687 buff += 10;
2688 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
2689 methods[i].ml_doc = ndoc;
2690 }
2691 }
2692 }
2693 }
2694
2695 /* -----------------------------------------------------------------------------*
2696 * Initialize type list
2697 * -----------------------------------------------------------------------------*/
2698
2699 #if PY_MAJOR_VERSION < 2
2700 /* PyModule_AddObject function was introduced in Python 2.0. The following function
2701 is copied out of Python/modsupport.c in python version 2.3.4 */
2702 static int
2703 PyModule_AddObject(PyObject *m, char *name, PyObject *o)
2704 {
2705 PyObject *dict;
2706 if (!PyModule_Check(m)) {
2707 PyErr_SetString(PyExc_TypeError,
2708 "PyModule_AddObject() needs module as first arg");
2709 return -1;
2710 }
2711 if (!o) {
2712 PyErr_SetString(PyExc_TypeError,
2713 "PyModule_AddObject() needs non-NULL value");
2714 return -1;
2715 }
2716
2717 dict = PyModule_GetDict(m);
2718 if (dict == NULL) {
2719 /* Internal error -- modules must have a dict! */
2720 PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
2721 PyModule_GetName(m));
2722 return -1;
2723 }
2724 if (PyDict_SetItemString(dict, name, o))
2725 return -1;
2726 Py_DECREF(o);
2727 return 0;
2728 }
2729 #endif
2730
2731 static swig_type_info **
2732 SWIG_Python_SetTypeListHandle(swig_type_info **type_list_handle) {
2733 static PyMethodDef swig_empty_runtime_method_table[] = {
2734 {
2735 NULL, NULL, 0, NULL
2736 }
2737 };/* Sentinel */
2738
2739 PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
2740 swig_empty_runtime_method_table);
2741 PyObject *pointer = PyCObject_FromVoidPtr((void *) type_list_handle, NULL);
2742 if (pointer && module) {
2743 PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
2744 }
2745 return type_list_handle;
2746 }
2747
2748 static swig_type_info **
2749 SWIG_Python_LookupTypePointer(swig_type_info **type_list_handle) {
2750 swig_type_info **type_pointer;
2751
2752 /* first check if module already created */
2753 type_pointer = SWIG_Python_GetTypeListHandle();
2754 if (type_pointer) {
2755 return type_pointer;
2756 } else {
2757 /* create a new module and variable */
2758 return SWIG_Python_SetTypeListHandle(type_list_handle);
2759 }
2760 }
2761
2762 #ifdef __cplusplus
2763 }
2764 #endif
2765
2766 /* -----------------------------------------------------------------------------*
2767 * Partial Init method
2768 * -----------------------------------------------------------------------------*/
2769
2770 #ifdef SWIG_LINK_RUNTIME
2771 #ifdef __cplusplus
2772 extern "C"
2773 #endif
2774 SWIGEXPORT(void *) SWIG_ReturnGlobalTypeList(void *);
2775 #endif
2776
2777 #ifdef __cplusplus
2778 extern "C"
2779 #endif
2780 SWIGEXPORT(void) SWIG_init(void) {
2781 static PyObject *SWIG_globals = 0;
2782 static int typeinit = 0;
2783 PyObject *m, *d;
2784 int i;
2785 if (!SWIG_globals) SWIG_globals = SWIG_newvarlink();
2786
2787 /* Fix SwigMethods to carry the callback ptrs when needed */
2788 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_types_initial);
2789
2790 m = Py_InitModule((char *) SWIG_name, SwigMethods);
2791 d = PyModule_GetDict(m);
2792
2793 if (!typeinit) {
2794 #ifdef SWIG_LINK_RUNTIME
2795 swig_type_list_handle = (swig_type_info **) SWIG_ReturnGlobalTypeList(swig_type_list_handle);
2796 #else
2797 # ifndef SWIG_STATIC_RUNTIME
2798 swig_type_list_handle = SWIG_Python_LookupTypePointer(swig_type_list_handle);
2799 # endif
2800 #endif
2801 for (i = 0; swig_types_initial[i]; i++) {
2802 swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
2803 }
2804 typeinit = 1;
2805 }
2806 SWIG_InstallConstants(d,swig_const_table);
2807
2808 PyDict_SetItemString(d,(char*)"cvar", SWIG_globals);
2809 SWIG_addvarlink(SWIG_globals,(char*)"GLCanvasNameStr",_wrap_GLCanvasNameStr_get, _wrap_GLCanvasNameStr_set);
2810 {
2811 PyDict_SetItemString(d,"WX_GL_RGBA", SWIG_From_int((int)(WX_GL_RGBA)));
2812 }
2813 {
2814 PyDict_SetItemString(d,"WX_GL_BUFFER_SIZE", SWIG_From_int((int)(WX_GL_BUFFER_SIZE)));
2815 }
2816 {
2817 PyDict_SetItemString(d,"WX_GL_LEVEL", SWIG_From_int((int)(WX_GL_LEVEL)));
2818 }
2819 {
2820 PyDict_SetItemString(d,"WX_GL_DOUBLEBUFFER", SWIG_From_int((int)(WX_GL_DOUBLEBUFFER)));
2821 }
2822 {
2823 PyDict_SetItemString(d,"WX_GL_STEREO", SWIG_From_int((int)(WX_GL_STEREO)));
2824 }
2825 {
2826 PyDict_SetItemString(d,"WX_GL_AUX_BUFFERS", SWIG_From_int((int)(WX_GL_AUX_BUFFERS)));
2827 }
2828 {
2829 PyDict_SetItemString(d,"WX_GL_MIN_RED", SWIG_From_int((int)(WX_GL_MIN_RED)));
2830 }
2831 {
2832 PyDict_SetItemString(d,"WX_GL_MIN_GREEN", SWIG_From_int((int)(WX_GL_MIN_GREEN)));
2833 }
2834 {
2835 PyDict_SetItemString(d,"WX_GL_MIN_BLUE", SWIG_From_int((int)(WX_GL_MIN_BLUE)));
2836 }
2837 {
2838 PyDict_SetItemString(d,"WX_GL_MIN_ALPHA", SWIG_From_int((int)(WX_GL_MIN_ALPHA)));
2839 }
2840 {
2841 PyDict_SetItemString(d,"WX_GL_DEPTH_SIZE", SWIG_From_int((int)(WX_GL_DEPTH_SIZE)));
2842 }
2843 {
2844 PyDict_SetItemString(d,"WX_GL_STENCIL_SIZE", SWIG_From_int((int)(WX_GL_STENCIL_SIZE)));
2845 }
2846 {
2847 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_RED", SWIG_From_int((int)(WX_GL_MIN_ACCUM_RED)));
2848 }
2849 {
2850 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_GREEN", SWIG_From_int((int)(WX_GL_MIN_ACCUM_GREEN)));
2851 }
2852 {
2853 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_BLUE", SWIG_From_int((int)(WX_GL_MIN_ACCUM_BLUE)));
2854 }
2855 {
2856 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_ALPHA", SWIG_From_int((int)(WX_GL_MIN_ACCUM_ALPHA)));
2857 }
2858
2859
2860
2861 }
2862