]> git.saurik.com Git - wxWidgets.git/blob - wxPython/contrib/glcanvas/msw/glcanvas_wrap.cpp
more standard (although less RFC-conformant) treatment of file: URIs (patch 1415189)
[wxWidgets.git] / wxPython / contrib / glcanvas / msw / glcanvas_wrap.cpp
1 /* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (http://www.swig.org).
3 * Version 1.3.27
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 #define SWIG_VERSION 0x010327
13
14 #ifdef __cplusplus
15 template<class T> class SwigValueWrapper {
16 T *tt;
17 public:
18 SwigValueWrapper() : tt(0) { }
19 SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
20 SwigValueWrapper(const T& t) : tt(new T(t)) { }
21 ~SwigValueWrapper() { delete tt; }
22 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
23 operator T&() const { return *tt; }
24 T *operator&() { return tt; }
25 private:
26 SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
27 };
28 #endif
29
30 /***********************************************************************
31 *
32 * This section contains generic SWIG labels for method/variable
33 * declarations/attributes, and other compiler dependent labels.
34 *
35 ************************************************************************/
36
37 /* template workaround for compilers that cannot correctly implement the C++ standard */
38 #ifndef SWIGTEMPLATEDISAMBIGUATOR
39 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
40 # define SWIGTEMPLATEDISAMBIGUATOR template
41 # else
42 # define SWIGTEMPLATEDISAMBIGUATOR
43 # endif
44 #endif
45
46 /* inline attribute */
47 #ifndef SWIGINLINE
48 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
49 # define SWIGINLINE inline
50 # else
51 # define SWIGINLINE
52 # endif
53 #endif
54
55 /* attribute recognised by some compilers to avoid 'unused' warnings */
56 #ifndef SWIGUNUSED
57 # if defined(__GNUC__) || defined(__ICC)
58 # define SWIGUNUSED __attribute__ ((unused))
59 # else
60 # define SWIGUNUSED
61 # endif
62 #endif
63
64 /* internal SWIG method */
65 #ifndef SWIGINTERN
66 # define SWIGINTERN static SWIGUNUSED
67 #endif
68
69 /* internal inline SWIG method */
70 #ifndef SWIGINTERNINLINE
71 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
72 #endif
73
74 /* exporting methods for Windows DLLs */
75 #ifndef SWIGEXPORT
76 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
77 # if defined(STATIC_LINKED)
78 # define SWIGEXPORT
79 # else
80 # define SWIGEXPORT __declspec(dllexport)
81 # endif
82 # else
83 # define SWIGEXPORT
84 # endif
85 #endif
86
87 /* calling conventions for Windows */
88 #ifndef SWIGSTDCALL
89 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
90 # define SWIGSTDCALL __stdcall
91 # else
92 # define SWIGSTDCALL
93 # endif
94 #endif
95
96
97
98 #include <Python.h>
99
100 /***********************************************************************
101 * swigrun.swg
102 *
103 * This file contains generic CAPI SWIG runtime support for pointer
104 * type checking.
105 *
106 ************************************************************************/
107
108 /* This should only be incremented when either the layout of swig_type_info changes,
109 or for whatever reason, the runtime changes incompatibly */
110 #define SWIG_RUNTIME_VERSION "2"
111
112 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
113 #ifdef SWIG_TYPE_TABLE
114 # define SWIG_QUOTE_STRING(x) #x
115 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
116 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
117 #else
118 # define SWIG_TYPE_TABLE_NAME
119 #endif
120
121 /*
122 You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
123 creating a static or dynamic library from the swig runtime code.
124 In 99.9% of the cases, swig just needs to declare them as 'static'.
125
126 But only do this if is strictly necessary, ie, if you have problems
127 with your compiler or so.
128 */
129
130 #ifndef SWIGRUNTIME
131 # define SWIGRUNTIME SWIGINTERN
132 #endif
133
134 #ifndef SWIGRUNTIMEINLINE
135 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
136 #endif
137
138 #include <string.h>
139
140 #ifdef __cplusplus
141 extern "C" {
142 #endif
143
144 typedef void *(*swig_converter_func)(void *);
145 typedef struct swig_type_info *(*swig_dycast_func)(void **);
146
147 /* Structure to store inforomation on one type */
148 typedef struct swig_type_info {
149 const char *name; /* mangled name of this type */
150 const char *str; /* human readable name of this type */
151 swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
152 struct swig_cast_info *cast; /* linked list of types that can cast into this type */
153 void *clientdata; /* language specific type data */
154 } swig_type_info;
155
156 /* Structure to store a type and conversion function used for casting */
157 typedef struct swig_cast_info {
158 swig_type_info *type; /* pointer to type that is equivalent to this type */
159 swig_converter_func converter; /* function to cast the void pointers */
160 struct swig_cast_info *next; /* pointer to next cast in linked list */
161 struct swig_cast_info *prev; /* pointer to the previous cast */
162 } swig_cast_info;
163
164 /* Structure used to store module information
165 * Each module generates one structure like this, and the runtime collects
166 * all of these structures and stores them in a circularly linked list.*/
167 typedef struct swig_module_info {
168 swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
169 size_t size; /* Number of types in this module */
170 struct swig_module_info *next; /* Pointer to next element in circularly linked list */
171 swig_type_info **type_initial; /* Array of initially generated type structures */
172 swig_cast_info **cast_initial; /* Array of initially generated casting structures */
173 void *clientdata; /* Language specific module data */
174 } swig_module_info;
175
176
177 /*
178 Compare two type names skipping the space characters, therefore
179 "char*" == "char *" and "Class<int>" == "Class<int >", etc.
180
181 Return 0 when the two name types are equivalent, as in
182 strncmp, but skipping ' '.
183 */
184 SWIGRUNTIME int
185 SWIG_TypeNameComp(const char *f1, const char *l1,
186 const char *f2, const char *l2) {
187 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
188 while ((*f1 == ' ') && (f1 != l1)) ++f1;
189 while ((*f2 == ' ') && (f2 != l2)) ++f2;
190 if (*f1 != *f2) return (int)(*f1 - *f2);
191 }
192 return (l1 - f1) - (l2 - f2);
193 }
194
195 /*
196 Check type equivalence in a name list like <name1>|<name2>|...
197 Return 0 if not equal, 1 if equal
198 */
199 SWIGRUNTIME int
200 SWIG_TypeEquiv(const char *nb, const char *tb) {
201 int equiv = 0;
202 const char* te = tb + strlen(tb);
203 const char* ne = nb;
204 while (!equiv && *ne) {
205 for (nb = ne; *ne; ++ne) {
206 if (*ne == '|') break;
207 }
208 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
209 if (*ne) ++ne;
210 }
211 return equiv;
212 }
213
214 /*
215 Check type equivalence in a name list like <name1>|<name2>|...
216 Return 0 if equal, -1 if nb < tb, 1 if nb > tb
217 */
218 SWIGRUNTIME int
219 SWIG_TypeCompare(const char *nb, const char *tb) {
220 int equiv = 0;
221 const char* te = tb + strlen(tb);
222 const char* ne = nb;
223 while (!equiv && *ne) {
224 for (nb = ne; *ne; ++ne) {
225 if (*ne == '|') break;
226 }
227 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
228 if (*ne) ++ne;
229 }
230 return equiv;
231 }
232
233
234 /* think of this as a c++ template<> or a scheme macro */
235 #define SWIG_TypeCheck_Template(comparison, ty) \
236 if (ty) { \
237 swig_cast_info *iter = ty->cast; \
238 while (iter) { \
239 if (comparison) { \
240 if (iter == ty->cast) return iter; \
241 /* Move iter to the top of the linked list */ \
242 iter->prev->next = iter->next; \
243 if (iter->next) \
244 iter->next->prev = iter->prev; \
245 iter->next = ty->cast; \
246 iter->prev = 0; \
247 if (ty->cast) ty->cast->prev = iter; \
248 ty->cast = iter; \
249 return iter; \
250 } \
251 iter = iter->next; \
252 } \
253 } \
254 return 0
255
256 /*
257 Check the typename
258 */
259 SWIGRUNTIME swig_cast_info *
260 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
261 SWIG_TypeCheck_Template(strcmp(iter->type->name, c) == 0, ty);
262 }
263
264 /* Same as previous function, except strcmp is replaced with a pointer comparison */
265 SWIGRUNTIME swig_cast_info *
266 SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *into) {
267 SWIG_TypeCheck_Template(iter->type == from, into);
268 }
269
270 /*
271 Cast a pointer up an inheritance hierarchy
272 */
273 SWIGRUNTIMEINLINE void *
274 SWIG_TypeCast(swig_cast_info *ty, void *ptr) {
275 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
276 }
277
278 /*
279 Dynamic pointer casting. Down an inheritance hierarchy
280 */
281 SWIGRUNTIME swig_type_info *
282 SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
283 swig_type_info *lastty = ty;
284 if (!ty || !ty->dcast) return ty;
285 while (ty && (ty->dcast)) {
286 ty = (*ty->dcast)(ptr);
287 if (ty) lastty = ty;
288 }
289 return lastty;
290 }
291
292 /*
293 Return the name associated with this type
294 */
295 SWIGRUNTIMEINLINE const char *
296 SWIG_TypeName(const swig_type_info *ty) {
297 return ty->name;
298 }
299
300 /*
301 Return the pretty name associated with this type,
302 that is an unmangled type name in a form presentable to the user.
303 */
304 SWIGRUNTIME const char *
305 SWIG_TypePrettyName(const swig_type_info *type) {
306 /* The "str" field contains the equivalent pretty names of the
307 type, separated by vertical-bar characters. We choose
308 to print the last name, as it is often (?) the most
309 specific. */
310 if (type->str != NULL) {
311 const char *last_name = type->str;
312 const char *s;
313 for (s = type->str; *s; s++)
314 if (*s == '|') last_name = s+1;
315 return last_name;
316 }
317 else
318 return type->name;
319 }
320
321 /*
322 Set the clientdata field for a type
323 */
324 SWIGRUNTIME void
325 SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
326 swig_cast_info *cast = ti->cast;
327 /* if (ti->clientdata == clientdata) return; */
328 ti->clientdata = clientdata;
329
330 while (cast) {
331 if (!cast->converter) {
332 swig_type_info *tc = cast->type;
333 if (!tc->clientdata) {
334 SWIG_TypeClientData(tc, clientdata);
335 }
336 }
337 cast = cast->next;
338 }
339 }
340
341 /*
342 Search for a swig_type_info structure only by mangled name
343 Search is a O(log #types)
344
345 We start searching at module start, and finish searching when start == end.
346 Note: if start == end at the beginning of the function, we go all the way around
347 the circular list.
348 */
349 SWIGRUNTIME swig_type_info *
350 SWIG_MangledTypeQueryModule(swig_module_info *start,
351 swig_module_info *end,
352 const char *name) {
353 swig_module_info *iter = start;
354 do {
355 if (iter->size) {
356 register size_t l = 0;
357 register size_t r = iter->size - 1;
358 do {
359 /* since l+r >= 0, we can (>> 1) instead (/ 2) */
360 register size_t i = (l + r) >> 1;
361 const char *iname = iter->types[i]->name;
362 if (iname) {
363 register int compare = strcmp(name, iname);
364 if (compare == 0) {
365 return iter->types[i];
366 } else if (compare < 0) {
367 if (i) {
368 r = i - 1;
369 } else {
370 break;
371 }
372 } else if (compare > 0) {
373 l = i + 1;
374 }
375 } else {
376 break; /* should never happen */
377 }
378 } while (l <= r);
379 }
380 iter = iter->next;
381 } while (iter != end);
382 return 0;
383 }
384
385 /*
386 Search for a swig_type_info structure for either a mangled name or a human readable name.
387 It first searches the mangled names of the types, which is a O(log #types)
388 If a type is not found it then searches the human readable names, which is O(#types).
389
390 We start searching at module start, and finish searching when start == end.
391 Note: if start == end at the beginning of the function, we go all the way around
392 the circular list.
393 */
394 SWIGRUNTIME swig_type_info *
395 SWIG_TypeQueryModule(swig_module_info *start,
396 swig_module_info *end,
397 const char *name) {
398 /* STEP 1: Search the name field using binary search */
399 swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
400 if (ret) {
401 return ret;
402 } else {
403 /* STEP 2: If the type hasn't been found, do a complete search
404 of the str field (the human readable name) */
405 swig_module_info *iter = start;
406 do {
407 register size_t i = 0;
408 for (; i < iter->size; ++i) {
409 if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
410 return iter->types[i];
411 }
412 iter = iter->next;
413 } while (iter != end);
414 }
415
416 /* neither found a match */
417 return 0;
418 }
419
420
421 /*
422 Pack binary data into a string
423 */
424 SWIGRUNTIME char *
425 SWIG_PackData(char *c, void *ptr, size_t sz) {
426 static const char hex[17] = "0123456789abcdef";
427 register const unsigned char *u = (unsigned char *) ptr;
428 register const unsigned char *eu = u + sz;
429 for (; u != eu; ++u) {
430 register unsigned char uu = *u;
431 *(c++) = hex[(uu & 0xf0) >> 4];
432 *(c++) = hex[uu & 0xf];
433 }
434 return c;
435 }
436
437 /*
438 Unpack binary data from a string
439 */
440 SWIGRUNTIME const char *
441 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
442 register unsigned char *u = (unsigned char *) ptr;
443 register const unsigned char *eu = u + sz;
444 for (; u != eu; ++u) {
445 register char d = *(c++);
446 register unsigned char uu = 0;
447 if ((d >= '0') && (d <= '9'))
448 uu = ((d - '0') << 4);
449 else if ((d >= 'a') && (d <= 'f'))
450 uu = ((d - ('a'-10)) << 4);
451 else
452 return (char *) 0;
453 d = *(c++);
454 if ((d >= '0') && (d <= '9'))
455 uu |= (d - '0');
456 else if ((d >= 'a') && (d <= 'f'))
457 uu |= (d - ('a'-10));
458 else
459 return (char *) 0;
460 *u = uu;
461 }
462 return c;
463 }
464
465 /*
466 Pack 'void *' into a string buffer.
467 */
468 SWIGRUNTIME char *
469 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
470 char *r = buff;
471 if ((2*sizeof(void *) + 2) > bsz) return 0;
472 *(r++) = '_';
473 r = SWIG_PackData(r,&ptr,sizeof(void *));
474 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
475 strcpy(r,name);
476 return buff;
477 }
478
479 SWIGRUNTIME const char *
480 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
481 if (*c != '_') {
482 if (strcmp(c,"NULL") == 0) {
483 *ptr = (void *) 0;
484 return name;
485 } else {
486 return 0;
487 }
488 }
489 return SWIG_UnpackData(++c,ptr,sizeof(void *));
490 }
491
492 SWIGRUNTIME char *
493 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
494 char *r = buff;
495 size_t lname = (name ? strlen(name) : 0);
496 if ((2*sz + 2 + lname) > bsz) return 0;
497 *(r++) = '_';
498 r = SWIG_PackData(r,ptr,sz);
499 if (lname) {
500 strncpy(r,name,lname+1);
501 } else {
502 *r = 0;
503 }
504 return buff;
505 }
506
507 SWIGRUNTIME const char *
508 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
509 if (*c != '_') {
510 if (strcmp(c,"NULL") == 0) {
511 memset(ptr,0,sz);
512 return name;
513 } else {
514 return 0;
515 }
516 }
517 return SWIG_UnpackData(++c,ptr,sz);
518 }
519
520 #ifdef __cplusplus
521 }
522 #endif
523
524 /* -----------------------------------------------------------------------------
525 * SWIG API. Portion that goes into the runtime
526 * ----------------------------------------------------------------------------- */
527
528 #ifdef __cplusplus
529 extern "C" {
530 #endif
531
532 /* -----------------------------------------------------------------------------
533 * for internal method declarations
534 * ----------------------------------------------------------------------------- */
535
536 #ifndef SWIGINTERN
537 # define SWIGINTERN static SWIGUNUSED
538 #endif
539
540 #ifndef SWIGINTERNINLINE
541 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
542 #endif
543
544 /*
545 Exception handling in wrappers
546 */
547 #define SWIG_fail goto fail
548 #define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
549 #define SWIG_append_errmsg(msg) SWIG_Python_AddErrMesg(msg,0)
550 #define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1)
551 #define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj)
552 #define SWIG_null_ref(type) SWIG_Python_NullRef(type)
553
554 /*
555 Contract support
556 */
557 #define SWIG_contract_assert(expr, msg) \
558 if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else
559
560 /* -----------------------------------------------------------------------------
561 * Constant declarations
562 * ----------------------------------------------------------------------------- */
563
564 /* Constant Types */
565 #define SWIG_PY_INT 1
566 #define SWIG_PY_FLOAT 2
567 #define SWIG_PY_STRING 3
568 #define SWIG_PY_POINTER 4
569 #define SWIG_PY_BINARY 5
570
571 /* Constant information structure */
572 typedef struct swig_const_info {
573 int type;
574 char *name;
575 long lvalue;
576 double dvalue;
577 void *pvalue;
578 swig_type_info **ptype;
579 } swig_const_info;
580
581
582 /* -----------------------------------------------------------------------------
583 * Alloc. memory flags
584 * ----------------------------------------------------------------------------- */
585 #define SWIG_OLDOBJ 1
586 #define SWIG_NEWOBJ SWIG_OLDOBJ + 1
587 #define SWIG_PYSTR SWIG_NEWOBJ + 1
588
589 #ifdef __cplusplus
590 }
591 #endif
592
593
594 /***********************************************************************
595 * pyrun.swg
596 *
597 * This file contains the runtime support for Python modules
598 * and includes code for managing global variables and pointer
599 * type checking.
600 *
601 * Author : David Beazley (beazley@cs.uchicago.edu)
602 ************************************************************************/
603
604 /* Common SWIG API */
605 #define SWIG_ConvertPtr(obj, pp, type, flags) SWIG_Python_ConvertPtr(obj, pp, type, flags)
606 #define SWIG_NewPointerObj(p, type, flags) SWIG_Python_NewPointerObj(p, type, flags)
607 #define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
608
609
610 /* Python-specific SWIG API */
611 #define SWIG_ConvertPacked(obj, ptr, sz, ty, flags) SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)
612 #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
613
614 /* Runtime API */
615 #define SWIG_GetModule(clientdata) SWIG_Python_GetModule()
616 #define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer)
617
618 /* -----------------------------------------------------------------------------
619 * Pointer declarations
620 * ----------------------------------------------------------------------------- */
621 /*
622 Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent
623 C/C++ pointers in the python side. Very useful for debugging, but
624 not always safe.
625 */
626 #if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES)
627 # define SWIG_COBJECT_TYPES
628 #endif
629
630 /* Flags for pointer conversion */
631 #define SWIG_POINTER_EXCEPTION 0x1
632 #define SWIG_POINTER_DISOWN 0x2
633
634
635 /* Add PyOS_snprintf for old Pythons */
636 #if PY_VERSION_HEX < 0x02020000
637 #define PyOS_snprintf snprintf
638 #endif
639
640 #ifdef __cplusplus
641 extern "C" {
642 #endif
643
644 /* -----------------------------------------------------------------------------
645 * Create a new pointer string
646 * ----------------------------------------------------------------------------- */
647 #ifndef SWIG_BUFFER_SIZE
648 #define SWIG_BUFFER_SIZE 1024
649 #endif
650
651 /* A crude PyString_FromFormat implementation for old Pythons */
652 #if PY_VERSION_HEX < 0x02020000
653 static PyObject *
654 PyString_FromFormat(const char *fmt, ...) {
655 va_list ap;
656 char buf[SWIG_BUFFER_SIZE * 2];
657 int res;
658 va_start(ap, fmt);
659 res = vsnprintf(buf, sizeof(buf), fmt, ap);
660 va_end(ap);
661 return (res < 0 || res >= sizeof(buf)) ? 0 : PyString_FromString(buf);
662 }
663 #endif
664
665 #if PY_VERSION_HEX < 0x01060000
666 #define PyObject_Del(op) PyMem_DEL((op))
667 #endif
668
669 #if defined(SWIG_COBJECT_TYPES)
670 #if !defined(SWIG_COBJECT_PYTHON)
671 /* -----------------------------------------------------------------------------
672 * Implements a simple Swig Object type, and use it instead of PyCObject
673 * ----------------------------------------------------------------------------- */
674
675 typedef struct {
676 PyObject_HEAD
677 void *ptr;
678 const char *desc;
679 } PySwigObject;
680
681 /* Declarations for objects of type PySwigObject */
682
683 SWIGRUNTIME int
684 PySwigObject_print(PySwigObject *v, FILE *fp, int flags)
685 {
686 char result[SWIG_BUFFER_SIZE];
687 flags = flags;
688 if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) {
689 fputs("<Swig Object at ", fp); fputs(result, fp); fputs(">", fp);
690 return 0;
691 } else {
692 return 1;
693 }
694 }
695
696 SWIGRUNTIME PyObject *
697 PySwigObject_repr(PySwigObject *v)
698 {
699 char result[SWIG_BUFFER_SIZE];
700 return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
701 PyString_FromFormat("<Swig Object at %s>", result) : 0;
702 }
703
704 SWIGRUNTIME PyObject *
705 PySwigObject_str(PySwigObject *v)
706 {
707 char result[SWIG_BUFFER_SIZE];
708 return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
709 PyString_FromString(result) : 0;
710 }
711
712 SWIGRUNTIME PyObject *
713 PySwigObject_long(PySwigObject *v)
714 {
715 return PyLong_FromVoidPtr(v->ptr);
716 }
717
718 SWIGRUNTIME PyObject *
719 PySwigObject_format(const char* fmt, PySwigObject *v)
720 {
721 PyObject *res = NULL;
722 PyObject *args = PyTuple_New(1);
723 if (args && (PyTuple_SetItem(args, 0, PySwigObject_long(v)) == 0)) {
724 PyObject *ofmt = PyString_FromString(fmt);
725 if (ofmt) {
726 res = PyString_Format(ofmt,args);
727 Py_DECREF(ofmt);
728 }
729 Py_DECREF(args);
730 }
731 return res;
732 }
733
734 SWIGRUNTIME PyObject *
735 PySwigObject_oct(PySwigObject *v)
736 {
737 return PySwigObject_format("%o",v);
738 }
739
740 SWIGRUNTIME PyObject *
741 PySwigObject_hex(PySwigObject *v)
742 {
743 return PySwigObject_format("%x",v);
744 }
745
746 SWIGRUNTIME int
747 PySwigObject_compare(PySwigObject *v, PySwigObject *w)
748 {
749 int c = strcmp(v->desc, w->desc);
750 if (c) {
751 return (c > 0) ? 1 : -1;
752 } else {
753 void *i = v->ptr;
754 void *j = w->ptr;
755 return (i < j) ? -1 : ((i > j) ? 1 : 0);
756 }
757 }
758
759 SWIGRUNTIME void
760 PySwigObject_dealloc(PySwigObject *self)
761 {
762 PyObject_Del(self);
763 }
764
765 SWIGRUNTIME PyTypeObject*
766 PySwigObject_type(void) {
767 static char pyswigobject_type__doc__[] =
768 "Swig object carries a C/C++ instance pointer";
769
770 static PyNumberMethods PySwigObject_as_number = {
771 (binaryfunc)0, /*nb_add*/
772 (binaryfunc)0, /*nb_subtract*/
773 (binaryfunc)0, /*nb_multiply*/
774 (binaryfunc)0, /*nb_divide*/
775 (binaryfunc)0, /*nb_remainder*/
776 (binaryfunc)0, /*nb_divmod*/
777 (ternaryfunc)0,/*nb_power*/
778 (unaryfunc)0, /*nb_negative*/
779 (unaryfunc)0, /*nb_positive*/
780 (unaryfunc)0, /*nb_absolute*/
781 (inquiry)0, /*nb_nonzero*/
782 0, /*nb_invert*/
783 0, /*nb_lshift*/
784 0, /*nb_rshift*/
785 0, /*nb_and*/
786 0, /*nb_xor*/
787 0, /*nb_or*/
788 (coercion)0, /*nb_coerce*/
789 (unaryfunc)PySwigObject_long, /*nb_int*/
790 (unaryfunc)PySwigObject_long, /*nb_long*/
791 (unaryfunc)0, /*nb_float*/
792 (unaryfunc)PySwigObject_oct, /*nb_oct*/
793 (unaryfunc)PySwigObject_hex, /*nb_hex*/
794 #if PY_VERSION_HEX >= 0x02020000
795 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */
796 #elif PY_VERSION_HEX >= 0x02000000
797 0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */
798 #endif
799 };
800
801 static PyTypeObject pyswigobject_type
802 #if !defined(__cplusplus)
803 ;
804 static int type_init = 0;
805 if (!type_init) {
806 PyTypeObject tmp
807 #endif
808 = {
809 PyObject_HEAD_INIT(&PyType_Type)
810 0, /*ob_size*/
811 (char *)"PySwigObject", /*tp_name*/
812 sizeof(PySwigObject), /*tp_basicsize*/
813 0, /*tp_itemsize*/
814 /* methods */
815 (destructor)PySwigObject_dealloc, /*tp_dealloc*/
816 (printfunc)PySwigObject_print, /*tp_print*/
817 (getattrfunc)0, /*tp_getattr*/
818 (setattrfunc)0, /*tp_setattr*/
819 (cmpfunc)PySwigObject_compare, /*tp_compare*/
820 (reprfunc)PySwigObject_repr, /*tp_repr*/
821 &PySwigObject_as_number, /*tp_as_number*/
822 0, /*tp_as_sequence*/
823 0, /*tp_as_mapping*/
824 (hashfunc)0, /*tp_hash*/
825 (ternaryfunc)0, /*tp_call*/
826 (reprfunc)PySwigObject_str, /*tp_str*/
827 /* Space for future expansion */
828 0,0,0,0,
829 pyswigobject_type__doc__, /* Documentation string */
830 #if PY_VERSION_HEX >= 0x02000000
831 0, /* tp_traverse */
832 0, /* tp_clear */
833 #endif
834 #if PY_VERSION_HEX >= 0x02010000
835 0, /* tp_richcompare */
836 0, /* tp_weaklistoffset */
837 #endif
838 #if PY_VERSION_HEX >= 0x02020000
839 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
840 #endif
841 #if PY_VERSION_HEX >= 0x02030000
842 0, /* tp_del */
843 #endif
844 #ifdef COUNT_ALLOCS
845 0,0,0,0 /* tp_alloc -> tp_next */
846 #endif
847 };
848 #if !defined(__cplusplus)
849 pyswigobject_type = tmp;
850 type_init = 1;
851 }
852 #endif
853 return &pyswigobject_type;
854 }
855
856 SWIGRUNTIME PyObject *
857 PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc)
858 {
859 PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_type());
860 if (self) {
861 self->ptr = ptr;
862 self->desc = desc;
863 }
864 return (PyObject *)self;
865 }
866
867 SWIGRUNTIMEINLINE void *
868 PySwigObject_AsVoidPtr(PyObject *self)
869 {
870 return ((PySwigObject *)self)->ptr;
871 }
872
873 SWIGRUNTIMEINLINE const char *
874 PySwigObject_GetDesc(PyObject *self)
875 {
876 return ((PySwigObject *)self)->desc;
877 }
878
879 SWIGRUNTIMEINLINE int
880 PySwigObject_Check(PyObject *op) {
881 return ((op)->ob_type == PySwigObject_type())
882 || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);
883 }
884
885 /* -----------------------------------------------------------------------------
886 * Implements a simple Swig Packed type, and use it instead of string
887 * ----------------------------------------------------------------------------- */
888
889 typedef struct {
890 PyObject_HEAD
891 void *pack;
892 const char *desc;
893 size_t size;
894 } PySwigPacked;
895
896 SWIGRUNTIME int
897 PySwigPacked_print(PySwigPacked *v, FILE *fp, int flags)
898 {
899 char result[SWIG_BUFFER_SIZE];
900 flags = flags;
901 fputs("<Swig Packed ", fp);
902 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
903 fputs("at ", fp);
904 fputs(result, fp);
905 }
906 fputs(v->desc,fp);
907 fputs(">", fp);
908 return 0;
909 }
910
911 SWIGRUNTIME PyObject *
912 PySwigPacked_repr(PySwigPacked *v)
913 {
914 char result[SWIG_BUFFER_SIZE];
915 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
916 return PyString_FromFormat("<Swig Packed at %s%s>", result, v->desc);
917 } else {
918 return PyString_FromFormat("<Swig Packed %s>", v->desc);
919 }
920 }
921
922 SWIGRUNTIME PyObject *
923 PySwigPacked_str(PySwigPacked *v)
924 {
925 char result[SWIG_BUFFER_SIZE];
926 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
927 return PyString_FromFormat("%s%s", result, v->desc);
928 } else {
929 return PyString_FromString(v->desc);
930 }
931 }
932
933 SWIGRUNTIME int
934 PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
935 {
936 int c = strcmp(v->desc, w->desc);
937 if (c) {
938 return (c > 0) ? 1 : -1;
939 } else {
940 size_t i = v->size;
941 size_t j = w->size;
942 int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
943 return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
944 }
945 }
946
947 SWIGRUNTIME void
948 PySwigPacked_dealloc(PySwigPacked *self)
949 {
950 free(self->pack);
951 PyObject_Del(self);
952 }
953
954 SWIGRUNTIME PyTypeObject*
955 PySwigPacked_type(void) {
956 static char pyswigpacked_type__doc__[] =
957 "Swig object carries a C/C++ instance pointer";
958 static PyTypeObject pyswigpacked_type
959 #if !defined(__cplusplus)
960 ;
961 static int type_init = 0;
962 if (!type_init) {
963 PyTypeObject tmp
964 #endif
965 = {
966 PyObject_HEAD_INIT(&PyType_Type)
967 0, /*ob_size*/
968 (char *)"PySwigPacked", /*tp_name*/
969 sizeof(PySwigPacked), /*tp_basicsize*/
970 0, /*tp_itemsize*/
971 /* methods */
972 (destructor)PySwigPacked_dealloc, /*tp_dealloc*/
973 (printfunc)PySwigPacked_print, /*tp_print*/
974 (getattrfunc)0, /*tp_getattr*/
975 (setattrfunc)0, /*tp_setattr*/
976 (cmpfunc)PySwigPacked_compare, /*tp_compare*/
977 (reprfunc)PySwigPacked_repr, /*tp_repr*/
978 0, /*tp_as_number*/
979 0, /*tp_as_sequence*/
980 0, /*tp_as_mapping*/
981 (hashfunc)0, /*tp_hash*/
982 (ternaryfunc)0, /*tp_call*/
983 (reprfunc)PySwigPacked_str, /*tp_str*/
984 /* Space for future expansion */
985 0,0,0,0,
986 pyswigpacked_type__doc__, /* Documentation string */
987 #if PY_VERSION_HEX >= 0x02000000
988 0, /* tp_traverse */
989 0, /* tp_clear */
990 #endif
991 #if PY_VERSION_HEX >= 0x02010000
992 0, /* tp_richcompare */
993 0, /* tp_weaklistoffset */
994 #endif
995 #if PY_VERSION_HEX >= 0x02020000
996 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
997 #endif
998 #if PY_VERSION_HEX >= 0x02030000
999 0, /* tp_del */
1000 #endif
1001 #ifdef COUNT_ALLOCS
1002 0,0,0,0 /* tp_alloc -> tp_next */
1003 #endif
1004 };
1005 #if !defined(__cplusplus)
1006 pyswigpacked_type = tmp;
1007 type_init = 1;
1008 }
1009 #endif
1010 return &pyswigpacked_type;
1011 }
1012
1013 SWIGRUNTIME PyObject *
1014 PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc)
1015 {
1016 PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_type());
1017 if (self == NULL) {
1018 return NULL;
1019 } else {
1020 void *pack = malloc(size);
1021 if (pack) {
1022 memcpy(pack, ptr, size);
1023 self->pack = pack;
1024 self->desc = desc;
1025 self->size = size;
1026 return (PyObject *) self;
1027 }
1028 return NULL;
1029 }
1030 }
1031
1032 SWIGRUNTIMEINLINE const char *
1033 PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
1034 {
1035 PySwigPacked *self = (PySwigPacked *)obj;
1036 if (self->size != size) return 0;
1037 memcpy(ptr, self->pack, size);
1038 return self->desc;
1039 }
1040
1041 SWIGRUNTIMEINLINE const char *
1042 PySwigPacked_GetDesc(PyObject *self)
1043 {
1044 return ((PySwigPacked *)self)->desc;
1045 }
1046
1047 SWIGRUNTIMEINLINE int
1048 PySwigPacked_Check(PyObject *op) {
1049 return ((op)->ob_type == PySwigPacked_type())
1050 || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
1051 }
1052
1053 #else
1054 /* -----------------------------------------------------------------------------
1055 * Use the old Python PyCObject instead of PySwigObject
1056 * ----------------------------------------------------------------------------- */
1057
1058 #define PySwigObject_GetDesc(obj) PyCObject_GetDesc(obj)
1059 #define PySwigObject_Check(obj) PyCObject_Check(obj)
1060 #define PySwigObject_AsVoidPtr(obj) PyCObject_AsVoidPtr(obj)
1061 #define PySwigObject_FromVoidPtrAndDesc(p, d) PyCObject_FromVoidPtrAndDesc(p, d, NULL)
1062
1063 #endif
1064
1065 #endif
1066
1067 /* -----------------------------------------------------------------------------
1068 * errors manipulation
1069 * ----------------------------------------------------------------------------- */
1070
1071 SWIGRUNTIME void
1072 SWIG_Python_TypeError(const char *type, PyObject *obj)
1073 {
1074 if (type) {
1075 #if defined(SWIG_COBJECT_TYPES)
1076 if (obj && PySwigObject_Check(obj)) {
1077 const char *otype = (const char *) PySwigObject_GetDesc(obj);
1078 if (otype) {
1079 PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
1080 type, otype);
1081 return;
1082 }
1083 } else
1084 #endif
1085 {
1086 const char *otype = (obj ? obj->ob_type->tp_name : 0);
1087 if (otype) {
1088 PyObject *str = PyObject_Str(obj);
1089 const char *cstr = str ? PyString_AsString(str) : 0;
1090 if (cstr) {
1091 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
1092 type, otype, cstr);
1093 } else {
1094 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
1095 type, otype);
1096 }
1097 Py_XDECREF(str);
1098 return;
1099 }
1100 }
1101 PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
1102 } else {
1103 PyErr_Format(PyExc_TypeError, "unexpected type is received");
1104 }
1105 }
1106
1107 SWIGRUNTIMEINLINE void
1108 SWIG_Python_NullRef(const char *type)
1109 {
1110 if (type) {
1111 PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
1112 } else {
1113 PyErr_Format(PyExc_TypeError, "null reference was received");
1114 }
1115 }
1116
1117 SWIGRUNTIME int
1118 SWIG_Python_AddErrMesg(const char* mesg, int infront)
1119 {
1120 if (PyErr_Occurred()) {
1121 PyObject *type = 0;
1122 PyObject *value = 0;
1123 PyObject *traceback = 0;
1124 PyErr_Fetch(&type, &value, &traceback);
1125 if (value) {
1126 PyObject *old_str = PyObject_Str(value);
1127 Py_XINCREF(type);
1128 PyErr_Clear();
1129 if (infront) {
1130 PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
1131 } else {
1132 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
1133 }
1134 Py_DECREF(old_str);
1135 }
1136 return 1;
1137 } else {
1138 return 0;
1139 }
1140 }
1141
1142 SWIGRUNTIME int
1143 SWIG_Python_ArgFail(int argnum)
1144 {
1145 if (PyErr_Occurred()) {
1146 /* add information about failing argument */
1147 char mesg[256];
1148 PyOS_snprintf(mesg, sizeof(mesg), "argument number %d:", argnum);
1149 return SWIG_Python_AddErrMesg(mesg, 1);
1150 } else {
1151 return 0;
1152 }
1153 }
1154
1155
1156 /* -----------------------------------------------------------------------------
1157 * pointers/data manipulation
1158 * ----------------------------------------------------------------------------- */
1159
1160 /* Convert a pointer value */
1161 SWIGRUNTIME int
1162 SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
1163 swig_cast_info *tc;
1164 const char *c = 0;
1165 static PyObject *SWIG_this = 0;
1166 int newref = 0;
1167 PyObject *pyobj = 0;
1168 void *vptr;
1169
1170 if (!obj) return 0;
1171 if (obj == Py_None) {
1172 *ptr = 0;
1173 return 0;
1174 }
1175
1176 #ifdef SWIG_COBJECT_TYPES
1177 if (!(PySwigObject_Check(obj))) {
1178 if (!SWIG_this)
1179 SWIG_this = PyString_FromString("this");
1180 pyobj = obj;
1181 obj = PyObject_GetAttr(obj,SWIG_this);
1182 newref = 1;
1183 if (!obj) goto type_error;
1184 if (!PySwigObject_Check(obj)) {
1185 Py_DECREF(obj);
1186 goto type_error;
1187 }
1188 }
1189 vptr = PySwigObject_AsVoidPtr(obj);
1190 c = (const char *) PySwigObject_GetDesc(obj);
1191 if (newref) { Py_DECREF(obj); }
1192 goto type_check;
1193 #else
1194 if (!(PyString_Check(obj))) {
1195 if (!SWIG_this)
1196 SWIG_this = PyString_FromString("this");
1197 pyobj = obj;
1198 obj = PyObject_GetAttr(obj,SWIG_this);
1199 newref = 1;
1200 if (!obj) goto type_error;
1201 if (!PyString_Check(obj)) {
1202 Py_DECREF(obj);
1203 goto type_error;
1204 }
1205 }
1206 c = PyString_AsString(obj);
1207 /* Pointer values must start with leading underscore */
1208 c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
1209 if (newref) { Py_DECREF(obj); }
1210 if (!c) goto type_error;
1211 #endif
1212
1213 type_check:
1214 if (ty) {
1215 tc = SWIG_TypeCheck(c,ty);
1216 if (!tc) goto type_error;
1217 *ptr = SWIG_TypeCast(tc,vptr);
1218 } else {
1219 *ptr = vptr;
1220 }
1221 if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
1222 PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
1223 }
1224 return 0;
1225
1226 type_error:
1227 PyErr_Clear();
1228 if (pyobj && !obj) {
1229 obj = pyobj;
1230 if (PyCFunction_Check(obj)) {
1231 /* here we get the method pointer for callbacks */
1232 char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
1233 c = doc ? strstr(doc, "swig_ptr: ") : 0;
1234 if (c) {
1235 c = ty ? SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name) : 0;
1236 if (!c) goto type_error;
1237 goto type_check;
1238 }
1239 }
1240 }
1241 if (flags & SWIG_POINTER_EXCEPTION) {
1242 if (ty) {
1243 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1244 } else {
1245 SWIG_Python_TypeError("C/C++ pointer", obj);
1246 }
1247 }
1248 return -1;
1249 }
1250
1251 /* Convert a pointer value, signal an exception on a type mismatch */
1252 SWIGRUNTIME void *
1253 SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
1254 void *result;
1255 if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
1256 PyErr_Clear();
1257 if (flags & SWIG_POINTER_EXCEPTION) {
1258 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1259 SWIG_Python_ArgFail(argnum);
1260 }
1261 }
1262 return result;
1263 }
1264
1265 /* Convert a packed value value */
1266 SWIGRUNTIME int
1267 SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
1268 swig_cast_info *tc;
1269 const char *c = 0;
1270
1271 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1272 c = PySwigPacked_UnpackData(obj, ptr, sz);
1273 #else
1274 if ((!obj) || (!PyString_Check(obj))) goto type_error;
1275 c = PyString_AsString(obj);
1276 /* Pointer values must start with leading underscore */
1277 c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
1278 #endif
1279 if (!c) goto type_error;
1280 if (ty) {
1281 tc = SWIG_TypeCheck(c,ty);
1282 if (!tc) goto type_error;
1283 }
1284 return 0;
1285
1286 type_error:
1287 PyErr_Clear();
1288 if (flags & SWIG_POINTER_EXCEPTION) {
1289 if (ty) {
1290 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
1291 } else {
1292 SWIG_Python_TypeError("C/C++ packed data", obj);
1293 }
1294 }
1295 return -1;
1296 }
1297
1298 /* Create a new array object */
1299 SWIGRUNTIME PyObject *
1300 SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
1301 PyObject *robj = 0;
1302 if (!type) {
1303 if (!PyErr_Occurred()) {
1304 PyErr_Format(PyExc_TypeError, "Swig: null type passed to NewPointerObj");
1305 }
1306 return robj;
1307 }
1308 if (!ptr) {
1309 Py_INCREF(Py_None);
1310 return Py_None;
1311 }
1312 #ifdef SWIG_COBJECT_TYPES
1313 robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
1314 #else
1315 {
1316 char result[SWIG_BUFFER_SIZE];
1317 robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
1318 PyString_FromString(result) : 0;
1319 }
1320 #endif
1321 if (!robj || (robj == Py_None)) return robj;
1322 if (type->clientdata) {
1323 PyObject *inst;
1324 PyObject *args = Py_BuildValue((char*)"(O)", robj);
1325 Py_DECREF(robj);
1326 inst = PyObject_CallObject((PyObject *) type->clientdata, args);
1327 Py_DECREF(args);
1328 if (inst) {
1329 if (own) {
1330 PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
1331 }
1332 robj = inst;
1333 }
1334 }
1335 return robj;
1336 }
1337
1338 SWIGRUNTIME PyObject *
1339 SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
1340 PyObject *robj = 0;
1341 if (!ptr) {
1342 Py_INCREF(Py_None);
1343 return Py_None;
1344 }
1345 #if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
1346 robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
1347 #else
1348 {
1349 char result[SWIG_BUFFER_SIZE];
1350 robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
1351 PyString_FromString(result) : 0;
1352 }
1353 #endif
1354 return robj;
1355 }
1356
1357 /* -----------------------------------------------------------------------------*
1358 * Get type list
1359 * -----------------------------------------------------------------------------*/
1360
1361 #ifdef SWIG_LINK_RUNTIME
1362 void *SWIG_ReturnGlobalTypeList(void *);
1363 #endif
1364
1365 SWIGRUNTIME swig_module_info *
1366 SWIG_Python_GetModule(void) {
1367 static void *type_pointer = (void *)0;
1368 /* first check if module already created */
1369 if (!type_pointer) {
1370 #ifdef SWIG_LINK_RUNTIME
1371 type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
1372 #else
1373 type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
1374 (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
1375 if (PyErr_Occurred()) {
1376 PyErr_Clear();
1377 type_pointer = (void *)0;
1378 }
1379 #endif
1380 }
1381 return (swig_module_info *) type_pointer;
1382 }
1383
1384 #if PY_MAJOR_VERSION < 2
1385 /* PyModule_AddObject function was introduced in Python 2.0. The following function
1386 is copied out of Python/modsupport.c in python version 2.3.4 */
1387 SWIGINTERN int
1388 PyModule_AddObject(PyObject *m, char *name, PyObject *o)
1389 {
1390 PyObject *dict;
1391 if (!PyModule_Check(m)) {
1392 PyErr_SetString(PyExc_TypeError,
1393 "PyModule_AddObject() needs module as first arg");
1394 return -1;
1395 }
1396 if (!o) {
1397 PyErr_SetString(PyExc_TypeError,
1398 "PyModule_AddObject() needs non-NULL value");
1399 return -1;
1400 }
1401
1402 dict = PyModule_GetDict(m);
1403 if (dict == NULL) {
1404 /* Internal error -- modules must have a dict! */
1405 PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
1406 PyModule_GetName(m));
1407 return -1;
1408 }
1409 if (PyDict_SetItemString(dict, name, o))
1410 return -1;
1411 Py_DECREF(o);
1412 return 0;
1413 }
1414 #endif
1415
1416 SWIGRUNTIME void
1417 SWIG_Python_SetModule(swig_module_info *swig_module) {
1418 static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} };/* Sentinel */
1419
1420 PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
1421 swig_empty_runtime_method_table);
1422 PyObject *pointer = PyCObject_FromVoidPtr((void *) swig_module, NULL);
1423 if (pointer && module) {
1424 PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
1425 }
1426 }
1427
1428 #ifdef __cplusplus
1429 }
1430 #endif
1431
1432
1433 /* -------- TYPES TABLE (BEGIN) -------- */
1434
1435 #define SWIGTYPE_p_char swig_types[0]
1436 #define SWIGTYPE_p_form_ops_t swig_types[1]
1437 #define SWIGTYPE_p_int swig_types[2]
1438 #define SWIGTYPE_p_unsigned_char swig_types[3]
1439 #define SWIGTYPE_p_unsigned_int swig_types[4]
1440 #define SWIGTYPE_p_unsigned_long swig_types[5]
1441 #define SWIGTYPE_p_wxANIHandler swig_types[6]
1442 #define SWIGTYPE_p_wxAcceleratorTable swig_types[7]
1443 #define SWIGTYPE_p_wxActivateEvent swig_types[8]
1444 #define SWIGTYPE_p_wxBMPHandler swig_types[9]
1445 #define SWIGTYPE_p_wxBoxSizer swig_types[10]
1446 #define SWIGTYPE_p_wxCURHandler swig_types[11]
1447 #define SWIGTYPE_p_wxChildFocusEvent swig_types[12]
1448 #define SWIGTYPE_p_wxCloseEvent swig_types[13]
1449 #define SWIGTYPE_p_wxCommandEvent swig_types[14]
1450 #define SWIGTYPE_p_wxContextMenuEvent swig_types[15]
1451 #define SWIGTYPE_p_wxControl swig_types[16]
1452 #define SWIGTYPE_p_wxControlWithItems swig_types[17]
1453 #define SWIGTYPE_p_wxDateEvent swig_types[18]
1454 #define SWIGTYPE_p_wxDisplayChangedEvent swig_types[19]
1455 #define SWIGTYPE_p_wxDropFilesEvent swig_types[20]
1456 #define SWIGTYPE_p_wxDuplexMode swig_types[21]
1457 #define SWIGTYPE_p_wxEraseEvent swig_types[22]
1458 #define SWIGTYPE_p_wxEvent swig_types[23]
1459 #define SWIGTYPE_p_wxEvtHandler swig_types[24]
1460 #define SWIGTYPE_p_wxFSFile swig_types[25]
1461 #define SWIGTYPE_p_wxFileSystem swig_types[26]
1462 #define SWIGTYPE_p_wxFlexGridSizer swig_types[27]
1463 #define SWIGTYPE_p_wxFocusEvent swig_types[28]
1464 #define SWIGTYPE_p_wxGBSizerItem swig_types[29]
1465 #define SWIGTYPE_p_wxGIFHandler swig_types[30]
1466 #define SWIGTYPE_p_wxGLCanvas swig_types[31]
1467 #define SWIGTYPE_p_wxGLContext swig_types[32]
1468 #define SWIGTYPE_p_wxGridBagSizer swig_types[33]
1469 #define SWIGTYPE_p_wxGridSizer swig_types[34]
1470 #define SWIGTYPE_p_wxICOHandler swig_types[35]
1471 #define SWIGTYPE_p_wxIconizeEvent swig_types[36]
1472 #define SWIGTYPE_p_wxIdleEvent swig_types[37]
1473 #define SWIGTYPE_p_wxImage swig_types[38]
1474 #define SWIGTYPE_p_wxImageHandler swig_types[39]
1475 #define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[40]
1476 #define SWIGTYPE_p_wxInitDialogEvent swig_types[41]
1477 #define SWIGTYPE_p_wxJPEGHandler swig_types[42]
1478 #define SWIGTYPE_p_wxKeyEvent swig_types[43]
1479 #define SWIGTYPE_p_wxLayoutConstraints swig_types[44]
1480 #define SWIGTYPE_p_wxMaximizeEvent swig_types[45]
1481 #define SWIGTYPE_p_wxMenu swig_types[46]
1482 #define SWIGTYPE_p_wxMenuBar swig_types[47]
1483 #define SWIGTYPE_p_wxMenuEvent swig_types[48]
1484 #define SWIGTYPE_p_wxMenuItem swig_types[49]
1485 #define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[50]
1486 #define SWIGTYPE_p_wxMouseEvent swig_types[51]
1487 #define SWIGTYPE_p_wxMoveEvent swig_types[52]
1488 #define SWIGTYPE_p_wxNavigationKeyEvent swig_types[53]
1489 #define SWIGTYPE_p_wxNcPaintEvent swig_types[54]
1490 #define SWIGTYPE_p_wxNotifyEvent swig_types[55]
1491 #define SWIGTYPE_p_wxObject swig_types[56]
1492 #define SWIGTYPE_p_wxPCXHandler swig_types[57]
1493 #define SWIGTYPE_p_wxPNGHandler swig_types[58]
1494 #define SWIGTYPE_p_wxPNMHandler swig_types[59]
1495 #define SWIGTYPE_p_wxPaintEvent swig_types[60]
1496 #define SWIGTYPE_p_wxPalette swig_types[61]
1497 #define SWIGTYPE_p_wxPaletteChangedEvent swig_types[62]
1498 #define SWIGTYPE_p_wxPaperSize swig_types[63]
1499 #define SWIGTYPE_p_wxPyApp swig_types[64]
1500 #define SWIGTYPE_p_wxPyCommandEvent swig_types[65]
1501 #define SWIGTYPE_p_wxPyEvent swig_types[66]
1502 #define SWIGTYPE_p_wxPyImageHandler swig_types[67]
1503 #define SWIGTYPE_p_wxPySizer swig_types[68]
1504 #define SWIGTYPE_p_wxPyValidator swig_types[69]
1505 #define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[70]
1506 #define SWIGTYPE_p_wxScrollEvent swig_types[71]
1507 #define SWIGTYPE_p_wxScrollWinEvent swig_types[72]
1508 #define SWIGTYPE_p_wxSetCursorEvent swig_types[73]
1509 #define SWIGTYPE_p_wxShowEvent swig_types[74]
1510 #define SWIGTYPE_p_wxSizeEvent swig_types[75]
1511 #define SWIGTYPE_p_wxSizer swig_types[76]
1512 #define SWIGTYPE_p_wxSizerItem swig_types[77]
1513 #define SWIGTYPE_p_wxStaticBoxSizer swig_types[78]
1514 #define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[79]
1515 #define SWIGTYPE_p_wxSysColourChangedEvent swig_types[80]
1516 #define SWIGTYPE_p_wxTIFFHandler swig_types[81]
1517 #define SWIGTYPE_p_wxUpdateUIEvent swig_types[82]
1518 #define SWIGTYPE_p_wxValidator swig_types[83]
1519 #define SWIGTYPE_p_wxWindow swig_types[84]
1520 #define SWIGTYPE_p_wxWindowCreateEvent swig_types[85]
1521 #define SWIGTYPE_p_wxWindowDestroyEvent swig_types[86]
1522 #define SWIGTYPE_p_wxXPMHandler swig_types[87]
1523 #define SWIGTYPE_ptrdiff_t swig_types[88]
1524 #define SWIGTYPE_std__ptrdiff_t swig_types[89]
1525 #define SWIGTYPE_unsigned_int swig_types[90]
1526 static swig_type_info *swig_types[92];
1527 static swig_module_info swig_module = {swig_types, 91, 0, 0, 0, 0};
1528 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1529 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1530
1531 /* -------- TYPES TABLE (END) -------- */
1532
1533
1534 /*-----------------------------------------------
1535 @(target):= _glcanvas.so
1536 ------------------------------------------------*/
1537 #define SWIG_init init_glcanvas
1538
1539 #define SWIG_name "_glcanvas"
1540
1541 #include "wx/wxPython/wxPython.h"
1542 #include "wx/wxPython/pyclasses.h"
1543
1544 #include <wx/glcanvas.h>
1545
1546
1547 static const wxString wxPyGLCanvasNameStr(wxT("GLCanvas"));
1548 static const wxString wxPyEmptyString(wxEmptyString);
1549
1550 #include <limits.h>
1551
1552
1553 SWIGINTERN int
1554 SWIG_CheckLongInRange(long value, long min_value, long max_value,
1555 const char *errmsg)
1556 {
1557 if (value < min_value) {
1558 if (errmsg) {
1559 PyErr_Format(PyExc_OverflowError,
1560 "value %ld is less than '%s' minimum %ld",
1561 value, errmsg, min_value);
1562 }
1563 return 0;
1564 } else if (value > max_value) {
1565 if (errmsg) {
1566 PyErr_Format(PyExc_OverflowError,
1567 "value %ld is greater than '%s' maximum %ld",
1568 value, errmsg, max_value);
1569 }
1570 return 0;
1571 }
1572 return 1;
1573 }
1574
1575
1576 SWIGINTERN int
1577 SWIG_AsVal_long(PyObject* obj, long* val)
1578 {
1579 if (PyNumber_Check(obj)) {
1580 if (val) *val = PyInt_AsLong(obj);
1581 return 1;
1582 }
1583 else {
1584 SWIG_Python_TypeError("number", obj);
1585 }
1586 return 0;
1587 }
1588
1589
1590 #if INT_MAX != LONG_MAX
1591 SWIGINTERN int
1592 SWIG_AsVal_int(PyObject *obj, int *val)
1593 {
1594 const char* errmsg = val ? "int" : (char*)0;
1595 long v;
1596 if (SWIG_AsVal_long(obj, &v)) {
1597 if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
1598 if (val) *val = static_cast<int >(v);
1599 return 1;
1600 } else {
1601 return 0;
1602 }
1603 } else {
1604 PyErr_Clear();
1605 }
1606 if (val) {
1607 SWIG_type_error(errmsg, obj);
1608 }
1609 return 0;
1610 }
1611 #else
1612 SWIGINTERNINLINE int
1613 SWIG_AsVal_int(PyObject *obj, int *val)
1614 {
1615 return SWIG_AsVal_long(obj,(long*)val);
1616 }
1617 #endif
1618
1619
1620 SWIGINTERN int
1621 SWIG_AsVal_bool(PyObject *obj, bool *val)
1622 {
1623 if (obj == Py_True) {
1624 if (val) *val = true;
1625 return 1;
1626 }
1627 if (obj == Py_False) {
1628 if (val) *val = false;
1629 return 1;
1630 }
1631 int res = 0;
1632 if (SWIG_AsVal_int(obj, &res)) {
1633 if (val) *val = res ? true : false;
1634 return 1;
1635 } else {
1636 PyErr_Clear();
1637 }
1638 if (val) {
1639 SWIG_type_error("bool", obj);
1640 }
1641 return 0;
1642 }
1643
1644
1645 SWIGINTERNINLINE bool
1646 SWIG_As_bool(PyObject* obj)
1647 {
1648 bool v;
1649 if (!SWIG_AsVal_bool(obj, &v)) {
1650 /*
1651 this is needed to make valgrind/purify happier.
1652 */
1653 memset((void*)&v, 0, sizeof(bool));
1654 }
1655 return v;
1656 }
1657
1658
1659 SWIGINTERNINLINE int
1660 SWIG_Check_bool(PyObject* obj)
1661 {
1662 return SWIG_AsVal_bool(obj, (bool*)0);
1663 }
1664
1665
1666 /*@c:\\PROJECTS\\SWIG-1.3.27\\Lib\\python\\pymacros.swg,72,SWIG_define@*/
1667 #define SWIG_From_int PyInt_FromLong
1668 /*@@*/
1669
1670
1671 SWIGINTERNINLINE int
1672 SWIG_As_int(PyObject* obj)
1673 {
1674 int v;
1675 if (!SWIG_AsVal_int(obj, &v)) {
1676 /*
1677 this is needed to make valgrind/purify happier.
1678 */
1679 memset((void*)&v, 0, sizeof(int));
1680 }
1681 return v;
1682 }
1683
1684
1685 SWIGINTERNINLINE long
1686 SWIG_As_long(PyObject* obj)
1687 {
1688 long v;
1689 if (!SWIG_AsVal_long(obj, &v)) {
1690 /*
1691 this is needed to make valgrind/purify happier.
1692 */
1693 memset((void*)&v, 0, sizeof(long));
1694 }
1695 return v;
1696 }
1697
1698
1699 SWIGINTERNINLINE int
1700 SWIG_Check_int(PyObject* obj)
1701 {
1702 return SWIG_AsVal_int(obj, (int*)0);
1703 }
1704
1705
1706 SWIGINTERNINLINE int
1707 SWIG_Check_long(PyObject* obj)
1708 {
1709 return SWIG_AsVal_long(obj, (long*)0);
1710 }
1711
1712 #ifdef __cplusplus
1713 extern "C" {
1714 #endif
1715 static int _wrap_GLCanvasNameStr_set(PyObject *) {
1716 PyErr_SetString(PyExc_TypeError,"Variable GLCanvasNameStr is read-only.");
1717 return 1;
1718 }
1719
1720
1721 static PyObject *_wrap_GLCanvasNameStr_get(void) {
1722 PyObject *pyobj = NULL;
1723
1724 {
1725 #if wxUSE_UNICODE
1726 pyobj = PyUnicode_FromWideChar((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1727 #else
1728 pyobj = PyString_FromStringAndSize((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
1729 #endif
1730 }
1731 return pyobj;
1732 }
1733
1734
1735 static PyObject *_wrap_new_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1736 PyObject *resultobj = NULL;
1737 bool arg1 ;
1738 wxGLCanvas *arg2 = (wxGLCanvas *) 0 ;
1739 wxPalette const &arg3_defvalue = wxNullPalette ;
1740 wxPalette *arg3 = (wxPalette *) &arg3_defvalue ;
1741 wxGLContext *arg4 = (wxGLContext *) NULL ;
1742 wxGLContext *result;
1743 PyObject * obj0 = 0 ;
1744 PyObject * obj1 = 0 ;
1745 PyObject * obj2 = 0 ;
1746 PyObject * obj3 = 0 ;
1747 char *kwnames[] = {
1748 (char *) "isRGB",(char *) "win",(char *) "palette",(char *) "other", NULL
1749 };
1750
1751 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:new_GLContext",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
1752 {
1753 arg1 = static_cast<bool >(SWIG_As_bool(obj0));
1754 if (SWIG_arg_fail(1)) SWIG_fail;
1755 }
1756 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
1757 if (SWIG_arg_fail(2)) SWIG_fail;
1758 if (obj2) {
1759 {
1760 SWIG_Python_ConvertPtr(obj2, (void **)&arg3, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
1761 if (SWIG_arg_fail(3)) SWIG_fail;
1762 if (arg3 == NULL) {
1763 SWIG_null_ref("wxPalette");
1764 }
1765 if (SWIG_arg_fail(3)) SWIG_fail;
1766 }
1767 }
1768 if (obj3) {
1769 SWIG_Python_ConvertPtr(obj3, (void **)&arg4, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1770 if (SWIG_arg_fail(4)) SWIG_fail;
1771 }
1772 {
1773 if (!wxPyCheckForApp()) SWIG_fail;
1774 PyThreadState* __tstate = wxPyBeginAllowThreads();
1775 result = (wxGLContext *)new wxGLContext(arg1,arg2,(wxPalette const &)*arg3,(wxGLContext const *)arg4);
1776
1777 wxPyEndAllowThreads(__tstate);
1778 if (PyErr_Occurred()) SWIG_fail;
1779 }
1780 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 1);
1781 return resultobj;
1782 fail:
1783 return NULL;
1784 }
1785
1786
1787 static PyObject *_wrap_delete_GLContext(PyObject *, PyObject *args, PyObject *kwargs) {
1788 PyObject *resultobj = NULL;
1789 wxGLContext *arg1 = (wxGLContext *) 0 ;
1790 PyObject * obj0 = 0 ;
1791 char *kwnames[] = {
1792 (char *) "self", NULL
1793 };
1794
1795 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:delete_GLContext",kwnames,&obj0)) goto fail;
1796 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1797 if (SWIG_arg_fail(1)) SWIG_fail;
1798 {
1799 PyThreadState* __tstate = wxPyBeginAllowThreads();
1800 delete arg1;
1801
1802 wxPyEndAllowThreads(__tstate);
1803 if (PyErr_Occurred()) SWIG_fail;
1804 }
1805 Py_INCREF(Py_None); resultobj = Py_None;
1806 return resultobj;
1807 fail:
1808 return NULL;
1809 }
1810
1811
1812 static PyObject *_wrap_GLContext_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
1813 PyObject *resultobj = NULL;
1814 wxGLContext *arg1 = (wxGLContext *) 0 ;
1815 PyObject * obj0 = 0 ;
1816 char *kwnames[] = {
1817 (char *) "self", NULL
1818 };
1819
1820 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SetCurrent",kwnames,&obj0)) goto fail;
1821 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1822 if (SWIG_arg_fail(1)) SWIG_fail;
1823 {
1824 PyThreadState* __tstate = wxPyBeginAllowThreads();
1825 (arg1)->SetCurrent();
1826
1827 wxPyEndAllowThreads(__tstate);
1828 if (PyErr_Occurred()) SWIG_fail;
1829 }
1830 Py_INCREF(Py_None); resultobj = Py_None;
1831 return resultobj;
1832 fail:
1833 return NULL;
1834 }
1835
1836
1837 static PyObject *_wrap_GLContext_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
1838 PyObject *resultobj = NULL;
1839 wxGLContext *arg1 = (wxGLContext *) 0 ;
1840 wxString *arg2 = 0 ;
1841 bool temp2 = false ;
1842 PyObject * obj0 = 0 ;
1843 PyObject * obj1 = 0 ;
1844 char *kwnames[] = {
1845 (char *) "self",(char *) "colour", NULL
1846 };
1847
1848 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetColour",kwnames,&obj0,&obj1)) goto fail;
1849 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1850 if (SWIG_arg_fail(1)) SWIG_fail;
1851 {
1852 arg2 = wxString_in_helper(obj1);
1853 if (arg2 == NULL) SWIG_fail;
1854 temp2 = true;
1855 }
1856 {
1857 PyThreadState* __tstate = wxPyBeginAllowThreads();
1858 (arg1)->SetColour((wxString const &)*arg2);
1859
1860 wxPyEndAllowThreads(__tstate);
1861 if (PyErr_Occurred()) SWIG_fail;
1862 }
1863 Py_INCREF(Py_None); resultobj = Py_None;
1864 {
1865 if (temp2)
1866 delete arg2;
1867 }
1868 return resultobj;
1869 fail:
1870 {
1871 if (temp2)
1872 delete arg2;
1873 }
1874 return NULL;
1875 }
1876
1877
1878 static PyObject *_wrap_GLContext_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
1879 PyObject *resultobj = NULL;
1880 wxGLContext *arg1 = (wxGLContext *) 0 ;
1881 PyObject * obj0 = 0 ;
1882 char *kwnames[] = {
1883 (char *) "self", NULL
1884 };
1885
1886 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_SwapBuffers",kwnames,&obj0)) goto fail;
1887 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1888 if (SWIG_arg_fail(1)) SWIG_fail;
1889 {
1890 PyThreadState* __tstate = wxPyBeginAllowThreads();
1891 (arg1)->SwapBuffers();
1892
1893 wxPyEndAllowThreads(__tstate);
1894 if (PyErr_Occurred()) SWIG_fail;
1895 }
1896 Py_INCREF(Py_None); resultobj = Py_None;
1897 return resultobj;
1898 fail:
1899 return NULL;
1900 }
1901
1902
1903 static PyObject *_wrap_GLContext_GetWindow(PyObject *, PyObject *args, PyObject *kwargs) {
1904 PyObject *resultobj = NULL;
1905 wxGLContext *arg1 = (wxGLContext *) 0 ;
1906 wxWindow *result;
1907 PyObject * obj0 = 0 ;
1908 char *kwnames[] = {
1909 (char *) "self", NULL
1910 };
1911
1912 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLContext_GetWindow",kwnames,&obj0)) goto fail;
1913 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
1914 if (SWIG_arg_fail(1)) SWIG_fail;
1915 {
1916 PyThreadState* __tstate = wxPyBeginAllowThreads();
1917 result = (wxWindow *)(arg1)->GetWindow();
1918
1919 wxPyEndAllowThreads(__tstate);
1920 if (PyErr_Occurred()) SWIG_fail;
1921 }
1922 {
1923 resultobj = wxPyMake_wxObject(result, 0);
1924 }
1925 return resultobj;
1926 fail:
1927 return NULL;
1928 }
1929
1930
1931 static PyObject * GLContext_swigregister(PyObject *, PyObject *args) {
1932 PyObject *obj;
1933 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
1934 SWIG_TypeClientData(SWIGTYPE_p_wxGLContext, obj);
1935 Py_INCREF(obj);
1936 return Py_BuildValue((char *)"");
1937 }
1938 static PyObject *_wrap_new_GLCanvas(PyObject *, PyObject *args, PyObject *kwargs) {
1939 PyObject *resultobj = NULL;
1940 wxWindow *arg1 = (wxWindow *) 0 ;
1941 int arg2 = (int) -1 ;
1942 wxPoint const &arg3_defvalue = wxDefaultPosition ;
1943 wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
1944 wxSize const &arg4_defvalue = wxDefaultSize ;
1945 wxSize *arg4 = (wxSize *) &arg4_defvalue ;
1946 long arg5 = (long) 0 ;
1947 wxString const &arg6_defvalue = wxPyGLCanvasNameStr ;
1948 wxString *arg6 = (wxString *) &arg6_defvalue ;
1949 int *arg7 = (int *) NULL ;
1950 wxPalette const &arg8_defvalue = wxNullPalette ;
1951 wxPalette *arg8 = (wxPalette *) &arg8_defvalue ;
1952 wxGLCanvas *result;
1953 wxPoint temp3 ;
1954 wxSize temp4 ;
1955 bool temp6 = false ;
1956 int *temp7 ;
1957 PyObject * obj0 = 0 ;
1958 PyObject * obj1 = 0 ;
1959 PyObject * obj2 = 0 ;
1960 PyObject * obj3 = 0 ;
1961 PyObject * obj4 = 0 ;
1962 PyObject * obj5 = 0 ;
1963 PyObject * obj6 = 0 ;
1964 PyObject * obj7 = 0 ;
1965 char *kwnames[] = {
1966 (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
1967 };
1968
1969 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOO:new_GLCanvas",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) goto fail;
1970 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
1971 if (SWIG_arg_fail(1)) SWIG_fail;
1972 if (obj1) {
1973 {
1974 arg2 = static_cast<int >(SWIG_As_int(obj1));
1975 if (SWIG_arg_fail(2)) SWIG_fail;
1976 }
1977 }
1978 if (obj2) {
1979 {
1980 arg3 = &temp3;
1981 if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
1982 }
1983 }
1984 if (obj3) {
1985 {
1986 arg4 = &temp4;
1987 if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
1988 }
1989 }
1990 if (obj4) {
1991 {
1992 arg5 = static_cast<long >(SWIG_As_long(obj4));
1993 if (SWIG_arg_fail(5)) SWIG_fail;
1994 }
1995 }
1996 if (obj5) {
1997 {
1998 arg6 = wxString_in_helper(obj5);
1999 if (arg6 == NULL) SWIG_fail;
2000 temp6 = true;
2001 }
2002 }
2003 if (obj6) {
2004 {
2005 int i;
2006 if (PySequence_Check(obj6)) {
2007 int size = PyObject_Length(obj6);
2008 temp7 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
2009 for (i = 0; i < size; i++) {
2010 temp7[i] = PyInt_AsLong(PySequence_GetItem(obj6, i));
2011 }
2012 temp7[size] = 0;
2013 arg7 = temp7;
2014 }
2015 }
2016 }
2017 if (obj7) {
2018 {
2019 SWIG_Python_ConvertPtr(obj7, (void **)&arg8, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
2020 if (SWIG_arg_fail(8)) SWIG_fail;
2021 if (arg8 == NULL) {
2022 SWIG_null_ref("wxPalette");
2023 }
2024 if (SWIG_arg_fail(8)) SWIG_fail;
2025 }
2026 }
2027 {
2028 if (!wxPyCheckForApp()) SWIG_fail;
2029 PyThreadState* __tstate = wxPyBeginAllowThreads();
2030 result = (wxGLCanvas *)new wxGLCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6,arg7,(wxPalette const &)*arg8);
2031
2032 wxPyEndAllowThreads(__tstate);
2033 if (PyErr_Occurred()) SWIG_fail;
2034 }
2035 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
2036 {
2037 if (temp6)
2038 delete arg6;
2039 }
2040 {
2041 delete [] arg7;
2042 }
2043 return resultobj;
2044 fail:
2045 {
2046 if (temp6)
2047 delete arg6;
2048 }
2049 {
2050 delete [] arg7;
2051 }
2052 return NULL;
2053 }
2054
2055
2056 static PyObject *_wrap_new_GLCanvasWithContext(PyObject *, PyObject *args, PyObject *kwargs) {
2057 PyObject *resultobj = NULL;
2058 wxWindow *arg1 = (wxWindow *) 0 ;
2059 wxGLContext *arg2 = (wxGLContext *) NULL ;
2060 int arg3 = (int) -1 ;
2061 wxPoint const &arg4_defvalue = wxDefaultPosition ;
2062 wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
2063 wxSize const &arg5_defvalue = wxDefaultSize ;
2064 wxSize *arg5 = (wxSize *) &arg5_defvalue ;
2065 long arg6 = (long) 0 ;
2066 wxString const &arg7_defvalue = wxPyGLCanvasNameStr ;
2067 wxString *arg7 = (wxString *) &arg7_defvalue ;
2068 int *arg8 = (int *) NULL ;
2069 wxPalette const &arg9_defvalue = wxNullPalette ;
2070 wxPalette *arg9 = (wxPalette *) &arg9_defvalue ;
2071 wxGLCanvas *result;
2072 wxPoint temp4 ;
2073 wxSize temp5 ;
2074 bool temp7 = false ;
2075 int *temp8 ;
2076 PyObject * obj0 = 0 ;
2077 PyObject * obj1 = 0 ;
2078 PyObject * obj2 = 0 ;
2079 PyObject * obj3 = 0 ;
2080 PyObject * obj4 = 0 ;
2081 PyObject * obj5 = 0 ;
2082 PyObject * obj6 = 0 ;
2083 PyObject * obj7 = 0 ;
2084 PyObject * obj8 = 0 ;
2085 char *kwnames[] = {
2086 (char *) "parent",(char *) "shared",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
2087 };
2088
2089 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_GLCanvasWithContext",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
2090 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
2091 if (SWIG_arg_fail(1)) SWIG_fail;
2092 if (obj1) {
2093 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxGLContext, SWIG_POINTER_EXCEPTION | 0);
2094 if (SWIG_arg_fail(2)) SWIG_fail;
2095 }
2096 if (obj2) {
2097 {
2098 arg3 = static_cast<int >(SWIG_As_int(obj2));
2099 if (SWIG_arg_fail(3)) SWIG_fail;
2100 }
2101 }
2102 if (obj3) {
2103 {
2104 arg4 = &temp4;
2105 if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
2106 }
2107 }
2108 if (obj4) {
2109 {
2110 arg5 = &temp5;
2111 if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
2112 }
2113 }
2114 if (obj5) {
2115 {
2116 arg6 = static_cast<long >(SWIG_As_long(obj5));
2117 if (SWIG_arg_fail(6)) SWIG_fail;
2118 }
2119 }
2120 if (obj6) {
2121 {
2122 arg7 = wxString_in_helper(obj6);
2123 if (arg7 == NULL) SWIG_fail;
2124 temp7 = true;
2125 }
2126 }
2127 if (obj7) {
2128 {
2129 int i;
2130 if (PySequence_Check(obj7)) {
2131 int size = PyObject_Length(obj7);
2132 temp8 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
2133 for (i = 0; i < size; i++) {
2134 temp8[i] = PyInt_AsLong(PySequence_GetItem(obj7, i));
2135 }
2136 temp8[size] = 0;
2137 arg8 = temp8;
2138 }
2139 }
2140 }
2141 if (obj8) {
2142 {
2143 SWIG_Python_ConvertPtr(obj8, (void **)&arg9, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
2144 if (SWIG_arg_fail(9)) SWIG_fail;
2145 if (arg9 == NULL) {
2146 SWIG_null_ref("wxPalette");
2147 }
2148 if (SWIG_arg_fail(9)) SWIG_fail;
2149 }
2150 }
2151 {
2152 if (!wxPyCheckForApp()) SWIG_fail;
2153 PyThreadState* __tstate = wxPyBeginAllowThreads();
2154 result = (wxGLCanvas *)new wxGLCanvas(arg1,(wxGLContext const *)arg2,arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,arg8,(wxPalette const &)*arg9);
2155
2156 wxPyEndAllowThreads(__tstate);
2157 if (PyErr_Occurred()) SWIG_fail;
2158 }
2159 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLCanvas, 1);
2160 {
2161 if (temp7)
2162 delete arg7;
2163 }
2164 {
2165 delete [] arg8;
2166 }
2167 return resultobj;
2168 fail:
2169 {
2170 if (temp7)
2171 delete arg7;
2172 }
2173 {
2174 delete [] arg8;
2175 }
2176 return NULL;
2177 }
2178
2179
2180 static PyObject *_wrap_GLCanvas_SetCurrent(PyObject *, PyObject *args, PyObject *kwargs) {
2181 PyObject *resultobj = NULL;
2182 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2183 PyObject * obj0 = 0 ;
2184 char *kwnames[] = {
2185 (char *) "self", NULL
2186 };
2187
2188 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SetCurrent",kwnames,&obj0)) goto fail;
2189 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2190 if (SWIG_arg_fail(1)) SWIG_fail;
2191 {
2192 PyThreadState* __tstate = wxPyBeginAllowThreads();
2193 (arg1)->SetCurrent();
2194
2195 wxPyEndAllowThreads(__tstate);
2196 if (PyErr_Occurred()) SWIG_fail;
2197 }
2198 Py_INCREF(Py_None); resultobj = Py_None;
2199 return resultobj;
2200 fail:
2201 return NULL;
2202 }
2203
2204
2205 static PyObject *_wrap_GLCanvas_SetColour(PyObject *, PyObject *args, PyObject *kwargs) {
2206 PyObject *resultobj = NULL;
2207 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2208 wxString *arg2 = 0 ;
2209 bool temp2 = false ;
2210 PyObject * obj0 = 0 ;
2211 PyObject * obj1 = 0 ;
2212 char *kwnames[] = {
2213 (char *) "self",(char *) "colour", NULL
2214 };
2215
2216 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetColour",kwnames,&obj0,&obj1)) goto fail;
2217 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2218 if (SWIG_arg_fail(1)) SWIG_fail;
2219 {
2220 arg2 = wxString_in_helper(obj1);
2221 if (arg2 == NULL) SWIG_fail;
2222 temp2 = true;
2223 }
2224 {
2225 PyThreadState* __tstate = wxPyBeginAllowThreads();
2226 (arg1)->SetColour((wxString const &)*arg2);
2227
2228 wxPyEndAllowThreads(__tstate);
2229 if (PyErr_Occurred()) SWIG_fail;
2230 }
2231 Py_INCREF(Py_None); resultobj = Py_None;
2232 {
2233 if (temp2)
2234 delete arg2;
2235 }
2236 return resultobj;
2237 fail:
2238 {
2239 if (temp2)
2240 delete arg2;
2241 }
2242 return NULL;
2243 }
2244
2245
2246 static PyObject *_wrap_GLCanvas_SwapBuffers(PyObject *, PyObject *args, PyObject *kwargs) {
2247 PyObject *resultobj = NULL;
2248 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2249 PyObject * obj0 = 0 ;
2250 char *kwnames[] = {
2251 (char *) "self", NULL
2252 };
2253
2254 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_SwapBuffers",kwnames,&obj0)) goto fail;
2255 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2256 if (SWIG_arg_fail(1)) SWIG_fail;
2257 {
2258 PyThreadState* __tstate = wxPyBeginAllowThreads();
2259 (arg1)->SwapBuffers();
2260
2261 wxPyEndAllowThreads(__tstate);
2262 if (PyErr_Occurred()) SWIG_fail;
2263 }
2264 Py_INCREF(Py_None); resultobj = Py_None;
2265 return resultobj;
2266 fail:
2267 return NULL;
2268 }
2269
2270
2271 static PyObject *_wrap_GLCanvas_GetContext(PyObject *, PyObject *args, PyObject *kwargs) {
2272 PyObject *resultobj = NULL;
2273 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2274 wxGLContext *result;
2275 PyObject * obj0 = 0 ;
2276 char *kwnames[] = {
2277 (char *) "self", NULL
2278 };
2279
2280 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_GetContext",kwnames,&obj0)) goto fail;
2281 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2282 if (SWIG_arg_fail(1)) SWIG_fail;
2283 {
2284 PyThreadState* __tstate = wxPyBeginAllowThreads();
2285 result = (wxGLContext *)(arg1)->GetContext();
2286
2287 wxPyEndAllowThreads(__tstate);
2288 if (PyErr_Occurred()) SWIG_fail;
2289 }
2290 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxGLContext, 0);
2291 return resultobj;
2292 fail:
2293 return NULL;
2294 }
2295
2296
2297 static PyObject *_wrap_GLCanvas_SetupPixelFormat(PyObject *, PyObject *args, PyObject *kwargs) {
2298 PyObject *resultobj = NULL;
2299 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2300 int *arg2 = (int *) NULL ;
2301 int *temp2 ;
2302 PyObject * obj0 = 0 ;
2303 PyObject * obj1 = 0 ;
2304 char *kwnames[] = {
2305 (char *) "self",(char *) "attribList", NULL
2306 };
2307
2308 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:GLCanvas_SetupPixelFormat",kwnames,&obj0,&obj1)) goto fail;
2309 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2310 if (SWIG_arg_fail(1)) SWIG_fail;
2311 if (obj1) {
2312 {
2313 int i;
2314 if (PySequence_Check(obj1)) {
2315 int size = PyObject_Length(obj1);
2316 temp2 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
2317 for (i = 0; i < size; i++) {
2318 temp2[i] = PyInt_AsLong(PySequence_GetItem(obj1, i));
2319 }
2320 temp2[size] = 0;
2321 arg2 = temp2;
2322 }
2323 }
2324 }
2325 {
2326 PyThreadState* __tstate = wxPyBeginAllowThreads();
2327 (arg1)->SetupPixelFormat(arg2);
2328
2329 wxPyEndAllowThreads(__tstate);
2330 if (PyErr_Occurred()) SWIG_fail;
2331 }
2332 Py_INCREF(Py_None); resultobj = Py_None;
2333 {
2334 delete [] arg2;
2335 }
2336 return resultobj;
2337 fail:
2338 {
2339 delete [] arg2;
2340 }
2341 return NULL;
2342 }
2343
2344
2345 static PyObject *_wrap_GLCanvas_SetupPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2346 PyObject *resultobj = NULL;
2347 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2348 wxPalette *arg2 = 0 ;
2349 PyObject * obj0 = 0 ;
2350 PyObject * obj1 = 0 ;
2351 char *kwnames[] = {
2352 (char *) "self",(char *) "palette", NULL
2353 };
2354
2355 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetupPalette",kwnames,&obj0,&obj1)) goto fail;
2356 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2357 if (SWIG_arg_fail(1)) SWIG_fail;
2358 {
2359 SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxPalette, SWIG_POINTER_EXCEPTION | 0);
2360 if (SWIG_arg_fail(2)) SWIG_fail;
2361 if (arg2 == NULL) {
2362 SWIG_null_ref("wxPalette");
2363 }
2364 if (SWIG_arg_fail(2)) SWIG_fail;
2365 }
2366 {
2367 PyThreadState* __tstate = wxPyBeginAllowThreads();
2368 (arg1)->SetupPalette((wxPalette const &)*arg2);
2369
2370 wxPyEndAllowThreads(__tstate);
2371 if (PyErr_Occurred()) SWIG_fail;
2372 }
2373 Py_INCREF(Py_None); resultobj = Py_None;
2374 return resultobj;
2375 fail:
2376 return NULL;
2377 }
2378
2379
2380 static PyObject *_wrap_GLCanvas_CreateDefaultPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2381 PyObject *resultobj = NULL;
2382 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2383 wxPalette result;
2384 PyObject * obj0 = 0 ;
2385 char *kwnames[] = {
2386 (char *) "self", NULL
2387 };
2388
2389 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_CreateDefaultPalette",kwnames,&obj0)) goto fail;
2390 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2391 if (SWIG_arg_fail(1)) SWIG_fail;
2392 {
2393 PyThreadState* __tstate = wxPyBeginAllowThreads();
2394 result = (arg1)->CreateDefaultPalette();
2395
2396 wxPyEndAllowThreads(__tstate);
2397 if (PyErr_Occurred()) SWIG_fail;
2398 }
2399 {
2400 wxPalette * resultptr;
2401 resultptr = new wxPalette(static_cast<wxPalette & >(result));
2402 resultobj = SWIG_NewPointerObj((void *)(resultptr), SWIGTYPE_p_wxPalette, 1);
2403 }
2404 return resultobj;
2405 fail:
2406 return NULL;
2407 }
2408
2409
2410 static PyObject *_wrap_GLCanvas_GetPalette(PyObject *, PyObject *args, PyObject *kwargs) {
2411 PyObject *resultobj = NULL;
2412 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2413 wxPalette *result;
2414 PyObject * obj0 = 0 ;
2415 char *kwnames[] = {
2416 (char *) "self", NULL
2417 };
2418
2419 if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:GLCanvas_GetPalette",kwnames,&obj0)) goto fail;
2420 SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_EXCEPTION | 0);
2421 if (SWIG_arg_fail(1)) SWIG_fail;
2422 {
2423 PyThreadState* __tstate = wxPyBeginAllowThreads();
2424 result = (wxPalette *)(arg1)->GetPalette();
2425
2426 wxPyEndAllowThreads(__tstate);
2427 if (PyErr_Occurred()) SWIG_fail;
2428 }
2429 resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxPalette, 0);
2430 return resultobj;
2431 fail:
2432 return NULL;
2433 }
2434
2435
2436 static PyObject * GLCanvas_swigregister(PyObject *, PyObject *args) {
2437 PyObject *obj;
2438 if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
2439 SWIG_TypeClientData(SWIGTYPE_p_wxGLCanvas, obj);
2440 Py_INCREF(obj);
2441 return Py_BuildValue((char *)"");
2442 }
2443 static PyMethodDef SwigMethods[] = {
2444 { (char *)"new_GLContext", (PyCFunction) _wrap_new_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2445 { (char *)"delete_GLContext", (PyCFunction) _wrap_delete_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
2446 { (char *)"GLContext_SetCurrent", (PyCFunction) _wrap_GLContext_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2447 { (char *)"GLContext_SetColour", (PyCFunction) _wrap_GLContext_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2448 { (char *)"GLContext_SwapBuffers", (PyCFunction) _wrap_GLContext_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2449 { (char *)"GLContext_GetWindow", (PyCFunction) _wrap_GLContext_GetWindow, METH_VARARGS | METH_KEYWORDS, NULL},
2450 { (char *)"GLContext_swigregister", GLContext_swigregister, METH_VARARGS, NULL},
2451 { (char *)"new_GLCanvas", (PyCFunction) _wrap_new_GLCanvas, METH_VARARGS | METH_KEYWORDS, NULL},
2452 { (char *)"new_GLCanvasWithContext", (PyCFunction) _wrap_new_GLCanvasWithContext, METH_VARARGS | METH_KEYWORDS, NULL},
2453 { (char *)"GLCanvas_SetCurrent", (PyCFunction) _wrap_GLCanvas_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
2454 { (char *)"GLCanvas_SetColour", (PyCFunction) _wrap_GLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
2455 { (char *)"GLCanvas_SwapBuffers", (PyCFunction) _wrap_GLCanvas_SwapBuffers, METH_VARARGS | METH_KEYWORDS, NULL},
2456 { (char *)"GLCanvas_GetContext", (PyCFunction) _wrap_GLCanvas_GetContext, METH_VARARGS | METH_KEYWORDS, NULL},
2457 { (char *)"GLCanvas_SetupPixelFormat", (PyCFunction) _wrap_GLCanvas_SetupPixelFormat, METH_VARARGS | METH_KEYWORDS, NULL},
2458 { (char *)"GLCanvas_SetupPalette", (PyCFunction) _wrap_GLCanvas_SetupPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2459 { (char *)"GLCanvas_CreateDefaultPalette", (PyCFunction) _wrap_GLCanvas_CreateDefaultPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2460 { (char *)"GLCanvas_GetPalette", (PyCFunction) _wrap_GLCanvas_GetPalette, METH_VARARGS | METH_KEYWORDS, NULL},
2461 { (char *)"GLCanvas_swigregister", GLCanvas_swigregister, METH_VARARGS, NULL},
2462 { NULL, NULL, 0, NULL }
2463 };
2464
2465
2466 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
2467
2468 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
2469 return (void *)((wxObject *) ((wxLayoutConstraints *) x));
2470 }
2471 static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
2472 return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
2473 }
2474 static void *_p_wxSizerItemTo_p_wxObject(void *x) {
2475 return (void *)((wxObject *) ((wxSizerItem *) x));
2476 }
2477 static void *_p_wxScrollEventTo_p_wxObject(void *x) {
2478 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
2479 }
2480 static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
2481 return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x));
2482 }
2483 static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
2484 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
2485 }
2486 static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
2487 return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
2488 }
2489 static void *_p_wxSizerTo_p_wxObject(void *x) {
2490 return (void *)((wxObject *) ((wxSizer *) x));
2491 }
2492 static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
2493 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
2494 }
2495 static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
2496 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
2497 }
2498 static void *_p_wxEventTo_p_wxObject(void *x) {
2499 return (void *)((wxObject *) ((wxEvent *) x));
2500 }
2501 static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
2502 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
2503 }
2504 static void *_p_wxGridSizerTo_p_wxObject(void *x) {
2505 return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
2506 }
2507 static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
2508 return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
2509 }
2510 static void *_p_wxPaintEventTo_p_wxObject(void *x) {
2511 return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
2512 }
2513 static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
2514 return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
2515 }
2516 static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
2517 return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
2518 }
2519 static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
2520 return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
2521 }
2522 static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
2523 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
2524 }
2525 static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
2526 return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
2527 }
2528 static void *_p_wxControlTo_p_wxObject(void *x) {
2529 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
2530 }
2531 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
2532 return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
2533 }
2534 static void *_p_wxFSFileTo_p_wxObject(void *x) {
2535 return (void *)((wxObject *) ((wxFSFile *) x));
2536 }
2537 static void *_p_wxPySizerTo_p_wxObject(void *x) {
2538 return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
2539 }
2540 static void *_p_wxPyEventTo_p_wxObject(void *x) {
2541 return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
2542 }
2543 static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
2544 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
2545 }
2546 static void *_p_wxGLContextTo_p_wxObject(void *x) {
2547 return (void *)((wxObject *) ((wxGLContext *) x));
2548 }
2549 static void *_p_wxShowEventTo_p_wxObject(void *x) {
2550 return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
2551 }
2552 static void *_p_wxMenuItemTo_p_wxObject(void *x) {
2553 return (void *)((wxObject *) ((wxMenuItem *) x));
2554 }
2555 static void *_p_wxDateEventTo_p_wxObject(void *x) {
2556 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
2557 }
2558 static void *_p_wxIdleEventTo_p_wxObject(void *x) {
2559 return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
2560 }
2561 static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
2562 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
2563 }
2564 static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
2565 return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
2566 }
2567 static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
2568 return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
2569 }
2570 static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
2571 return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
2572 }
2573 static void *_p_wxSizeEventTo_p_wxObject(void *x) {
2574 return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
2575 }
2576 static void *_p_wxMoveEventTo_p_wxObject(void *x) {
2577 return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
2578 }
2579 static void *_p_wxActivateEventTo_p_wxObject(void *x) {
2580 return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
2581 }
2582 static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
2583 return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
2584 }
2585 static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
2586 return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
2587 }
2588 static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
2589 return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
2590 }
2591 static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
2592 return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
2593 }
2594 static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
2595 return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
2596 }
2597 static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
2598 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
2599 }
2600 static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
2601 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
2602 }
2603 static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
2604 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
2605 }
2606 static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
2607 return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
2608 }
2609 static void *_p_wxPyImageHandlerTo_p_wxObject(void *x) {
2610 return (void *)((wxObject *) (wxImageHandler *) ((wxPyImageHandler *) x));
2611 }
2612 static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
2613 return (void *)((wxObject *) ((wxImageHandler *) x));
2614 }
2615 static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
2616 return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
2617 }
2618 static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
2619 return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
2620 }
2621 static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
2622 return (void *)((wxObject *) ((wxEvtHandler *) x));
2623 }
2624 static void *_p_wxGLCanvasTo_p_wxObject(void *x) {
2625 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxGLCanvas *) x));
2626 }
2627 static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
2628 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
2629 }
2630 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
2631 return (void *)((wxObject *) ((wxAcceleratorTable *) x));
2632 }
2633 static void *_p_wxImageTo_p_wxObject(void *x) {
2634 return (void *)((wxObject *) ((wxImage *) x));
2635 }
2636 static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
2637 return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
2638 }
2639 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
2640 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
2641 }
2642 static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
2643 return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
2644 }
2645 static void *_p_wxKeyEventTo_p_wxObject(void *x) {
2646 return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
2647 }
2648 static void *_p_wxWindowTo_p_wxObject(void *x) {
2649 return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
2650 }
2651 static void *_p_wxMenuTo_p_wxObject(void *x) {
2652 return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
2653 }
2654 static void *_p_wxMenuBarTo_p_wxObject(void *x) {
2655 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
2656 }
2657 static void *_p_wxFileSystemTo_p_wxObject(void *x) {
2658 return (void *)((wxObject *) ((wxFileSystem *) x));
2659 }
2660 static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
2661 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
2662 }
2663 static void *_p_wxMenuEventTo_p_wxObject(void *x) {
2664 return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
2665 }
2666 static void *_p_wxPyAppTo_p_wxObject(void *x) {
2667 return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
2668 }
2669 static void *_p_wxCloseEventTo_p_wxObject(void *x) {
2670 return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
2671 }
2672 static void *_p_wxMouseEventTo_p_wxObject(void *x) {
2673 return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
2674 }
2675 static void *_p_wxEraseEventTo_p_wxObject(void *x) {
2676 return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
2677 }
2678 static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
2679 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
2680 }
2681 static void *_p_wxCommandEventTo_p_wxObject(void *x) {
2682 return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
2683 }
2684 static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
2685 return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
2686 }
2687 static void *_p_wxFocusEventTo_p_wxObject(void *x) {
2688 return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
2689 }
2690 static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
2691 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
2692 }
2693 static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
2694 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2695 }
2696 static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
2697 return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
2698 }
2699 static void *_p_wxValidatorTo_p_wxObject(void *x) {
2700 return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
2701 }
2702 static void *_p_wxControlTo_p_wxWindow(void *x) {
2703 return (void *)((wxWindow *) ((wxControl *) x));
2704 }
2705 static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
2706 return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
2707 }
2708 static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
2709 return (void *)((wxWindow *) ((wxMenuBar *) x));
2710 }
2711 static void *_p_wxGLCanvasTo_p_wxWindow(void *x) {
2712 return (void *)((wxWindow *) ((wxGLCanvas *) x));
2713 }
2714 static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
2715 return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
2716 }
2717 static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
2718 return (void *)((wxEvtHandler *) ((wxWindow *) x));
2719 }
2720 static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
2721 return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
2722 }
2723 static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
2724 return (void *)((wxEvtHandler *) ((wxPyApp *) x));
2725 }
2726 static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
2727 return (void *)((wxEvtHandler *) ((wxValidator *) x));
2728 }
2729 static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
2730 return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
2731 }
2732 static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
2733 return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
2734 }
2735 static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x) {
2736 return (void *)((wxEvtHandler *) (wxWindow *) ((wxGLCanvas *) x));
2737 }
2738 static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
2739 return (void *)((wxEvtHandler *) ((wxMenu *) x));
2740 }
2741 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, 0};
2742 static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, 0};
2743 static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, 0};
2744 static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *|byte *", 0, 0, 0};
2745 static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|time_t *", 0, 0, 0};
2746 static swig_type_info _swigt__p_unsigned_long = {"_p_unsigned_long", "unsigned long *|wxUIntPtr *", 0, 0, 0};
2747 static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, 0};
2748 static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", "wxEvtHandler *", 0, 0, 0};
2749 static swig_type_info _swigt__p_wxControl = {"_p_wxControl", 0, 0, 0, 0};
2750 static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0};
2751 static swig_type_info _swigt__p_wxPyApp = {"_p_wxPyApp", 0, 0, 0, 0};
2752 static swig_type_info _swigt__p_wxMenuBar = {"_p_wxMenuBar", 0, 0, 0, 0};
2753 static swig_type_info _swigt__p_wxValidator = {"_p_wxValidator", 0, 0, 0, 0};
2754 static swig_type_info _swigt__p_wxPyValidator = {"_p_wxPyValidator", 0, 0, 0, 0};
2755 static swig_type_info _swigt__p_wxMenu = {"_p_wxMenu", 0, 0, 0, 0};
2756 static swig_type_info _swigt__p_wxGLCanvas = {"_p_wxGLCanvas", "wxGLCanvas *", 0, 0, 0};
2757 static swig_type_info _swigt__p_wxGLContext = {"_p_wxGLContext", "wxGLContext *", 0, 0, 0};
2758 static swig_type_info _swigt__p_wxObject = {"_p_wxObject", "wxObject *", 0, 0, 0};
2759 static swig_type_info _swigt__p_wxLayoutConstraints = {"_p_wxLayoutConstraints", 0, 0, 0, 0};
2760 static swig_type_info _swigt__p_wxGBSizerItem = {"_p_wxGBSizerItem", 0, 0, 0, 0};
2761 static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", 0, 0, 0, 0};
2762 static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", 0, 0, 0, 0};
2763 static swig_type_info _swigt__p_wxIndividualLayoutConstraint = {"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0};
2764 static swig_type_info _swigt__p_wxStaticBoxSizer = {"_p_wxStaticBoxSizer", 0, 0, 0, 0};
2765 static swig_type_info _swigt__p_wxBoxSizer = {"_p_wxBoxSizer", 0, 0, 0, 0};
2766 static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", 0, 0, 0, 0};
2767 static swig_type_info _swigt__p_wxGridBagSizer = {"_p_wxGridBagSizer", 0, 0, 0, 0};
2768 static swig_type_info _swigt__p_wxUpdateUIEvent = {"_p_wxUpdateUIEvent", 0, 0, 0, 0};
2769 static swig_type_info _swigt__p_wxEvent = {"_p_wxEvent", 0, 0, 0, 0};
2770 static swig_type_info _swigt__p_wxGridSizer = {"_p_wxGridSizer", 0, 0, 0, 0};
2771 static swig_type_info _swigt__p_wxFlexGridSizer = {"_p_wxFlexGridSizer", 0, 0, 0, 0};
2772 static swig_type_info _swigt__p_wxInitDialogEvent = {"_p_wxInitDialogEvent", 0, 0, 0, 0};
2773 static swig_type_info _swigt__p_wxPaintEvent = {"_p_wxPaintEvent", 0, 0, 0, 0};
2774 static swig_type_info _swigt__p_wxNcPaintEvent = {"_p_wxNcPaintEvent", 0, 0, 0, 0};
2775 static swig_type_info _swigt__p_wxPaletteChangedEvent = {"_p_wxPaletteChangedEvent", 0, 0, 0, 0};
2776 static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", 0, 0, 0, 0};
2777 static swig_type_info _swigt__p_wxMouseCaptureChangedEvent = {"_p_wxMouseCaptureChangedEvent", 0, 0, 0, 0};
2778 static swig_type_info _swigt__p_wxSysColourChangedEvent = {"_p_wxSysColourChangedEvent", 0, 0, 0, 0};
2779 static swig_type_info _swigt__p_wxSetCursorEvent = {"_p_wxSetCursorEvent", 0, 0, 0, 0};
2780 static swig_type_info _swigt__p_wxFSFile = {"_p_wxFSFile", 0, 0, 0, 0};
2781 static swig_type_info _swigt__p_wxPySizer = {"_p_wxPySizer", 0, 0, 0, 0};
2782 static swig_type_info _swigt__p_wxPyEvent = {"_p_wxPyEvent", 0, 0, 0, 0};
2783 static swig_type_info _swigt__p_wxNotifyEvent = {"_p_wxNotifyEvent", 0, 0, 0, 0};
2784 static swig_type_info _swigt__p_wxShowEvent = {"_p_wxShowEvent", 0, 0, 0, 0};
2785 static swig_type_info _swigt__p_wxMenuItem = {"_p_wxMenuItem", 0, 0, 0, 0};
2786 static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", 0, 0, 0, 0};
2787 static swig_type_info _swigt__p_wxWindowCreateEvent = {"_p_wxWindowCreateEvent", 0, 0, 0, 0};
2788 static swig_type_info _swigt__p_wxIdleEvent = {"_p_wxIdleEvent", 0, 0, 0, 0};
2789 static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", 0, 0, 0, 0};
2790 static swig_type_info _swigt__p_wxMaximizeEvent = {"_p_wxMaximizeEvent", 0, 0, 0, 0};
2791 static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0, 0};
2792 static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0};
2793 static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0};
2794 static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0};
2795 static swig_type_info _swigt__p_wxPNMHandler = {"_p_wxPNMHandler", 0, 0, 0, 0};
2796 static swig_type_info _swigt__p_wxJPEGHandler = {"_p_wxJPEGHandler", 0, 0, 0, 0};
2797 static swig_type_info _swigt__p_wxPCXHandler = {"_p_wxPCXHandler", 0, 0, 0, 0};
2798 static swig_type_info _swigt__p_wxGIFHandler = {"_p_wxGIFHandler", 0, 0, 0, 0};
2799 static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0};
2800 static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0};
2801 static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0};
2802 static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0};
2803 static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0};
2804 static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0};
2805 static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0};
2806 static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0};
2807 static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0};
2808 static swig_type_info _swigt__p_wxStdDialogButtonSizer = {"_p_wxStdDialogButtonSizer", 0, 0, 0, 0};
2809 static swig_type_info _swigt__p_wxAcceleratorTable = {"_p_wxAcceleratorTable", 0, 0, 0, 0};
2810 static swig_type_info _swigt__p_wxImage = {"_p_wxImage", 0, 0, 0, 0};
2811 static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", 0, 0, 0, 0};
2812 static swig_type_info _swigt__p_wxWindowDestroyEvent = {"_p_wxWindowDestroyEvent", 0, 0, 0, 0};
2813 static swig_type_info _swigt__p_wxNavigationKeyEvent = {"_p_wxNavigationKeyEvent", 0, 0, 0, 0};
2814 static swig_type_info _swigt__p_wxKeyEvent = {"_p_wxKeyEvent", 0, 0, 0, 0};
2815 static swig_type_info _swigt__p_wxFileSystem = {"_p_wxFileSystem", 0, 0, 0, 0};
2816 static swig_type_info _swigt__p_wxContextMenuEvent = {"_p_wxContextMenuEvent", 0, 0, 0, 0};
2817 static swig_type_info _swigt__p_wxMenuEvent = {"_p_wxMenuEvent", 0, 0, 0, 0};
2818 static swig_type_info _swigt__p_wxCloseEvent = {"_p_wxCloseEvent", 0, 0, 0, 0};
2819 static swig_type_info _swigt__p_wxMouseEvent = {"_p_wxMouseEvent", 0, 0, 0, 0};
2820 static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", 0, 0, 0, 0};
2821 static swig_type_info _swigt__p_wxCommandEvent = {"_p_wxCommandEvent", 0, 0, 0, 0};
2822 static swig_type_info _swigt__p_wxPyCommandEvent = {"_p_wxPyCommandEvent", 0, 0, 0, 0};
2823 static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", 0, 0, 0, 0};
2824 static swig_type_info _swigt__p_wxFocusEvent = {"_p_wxFocusEvent", 0, 0, 0, 0};
2825 static swig_type_info _swigt__p_wxChildFocusEvent = {"_p_wxChildFocusEvent", 0, 0, 0, 0};
2826 static swig_type_info _swigt__p_wxPalette = {"_p_wxPalette", "wxPalette *", 0, 0, 0};
2827 static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, 0};
2828 static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, 0};
2829 static swig_type_info _swigt__ptrdiff_t = {"_ptrdiff_t", "ptrdiff_t", 0, 0, 0};
2830 static swig_type_info _swigt__std__ptrdiff_t = {"_std__ptrdiff_t", "std::ptrdiff_t", 0, 0, 0};
2831 static swig_type_info _swigt__unsigned_int = {"_unsigned_int", "unsigned int|std::size_t", 0, 0, 0};
2832
2833 static swig_type_info *swig_type_initial[] = {
2834 &_swigt__p_char,
2835 &_swigt__p_form_ops_t,
2836 &_swigt__p_int,
2837 &_swigt__p_unsigned_char,
2838 &_swigt__p_unsigned_int,
2839 &_swigt__p_unsigned_long,
2840 &_swigt__p_wxANIHandler,
2841 &_swigt__p_wxAcceleratorTable,
2842 &_swigt__p_wxActivateEvent,
2843 &_swigt__p_wxBMPHandler,
2844 &_swigt__p_wxBoxSizer,
2845 &_swigt__p_wxCURHandler,
2846 &_swigt__p_wxChildFocusEvent,
2847 &_swigt__p_wxCloseEvent,
2848 &_swigt__p_wxCommandEvent,
2849 &_swigt__p_wxContextMenuEvent,
2850 &_swigt__p_wxControl,
2851 &_swigt__p_wxControlWithItems,
2852 &_swigt__p_wxDateEvent,
2853 &_swigt__p_wxDisplayChangedEvent,
2854 &_swigt__p_wxDropFilesEvent,
2855 &_swigt__p_wxDuplexMode,
2856 &_swigt__p_wxEraseEvent,
2857 &_swigt__p_wxEvent,
2858 &_swigt__p_wxEvtHandler,
2859 &_swigt__p_wxFSFile,
2860 &_swigt__p_wxFileSystem,
2861 &_swigt__p_wxFlexGridSizer,
2862 &_swigt__p_wxFocusEvent,
2863 &_swigt__p_wxGBSizerItem,
2864 &_swigt__p_wxGIFHandler,
2865 &_swigt__p_wxGLCanvas,
2866 &_swigt__p_wxGLContext,
2867 &_swigt__p_wxGridBagSizer,
2868 &_swigt__p_wxGridSizer,
2869 &_swigt__p_wxICOHandler,
2870 &_swigt__p_wxIconizeEvent,
2871 &_swigt__p_wxIdleEvent,
2872 &_swigt__p_wxImage,
2873 &_swigt__p_wxImageHandler,
2874 &_swigt__p_wxIndividualLayoutConstraint,
2875 &_swigt__p_wxInitDialogEvent,
2876 &_swigt__p_wxJPEGHandler,
2877 &_swigt__p_wxKeyEvent,
2878 &_swigt__p_wxLayoutConstraints,
2879 &_swigt__p_wxMaximizeEvent,
2880 &_swigt__p_wxMenu,
2881 &_swigt__p_wxMenuBar,
2882 &_swigt__p_wxMenuEvent,
2883 &_swigt__p_wxMenuItem,
2884 &_swigt__p_wxMouseCaptureChangedEvent,
2885 &_swigt__p_wxMouseEvent,
2886 &_swigt__p_wxMoveEvent,
2887 &_swigt__p_wxNavigationKeyEvent,
2888 &_swigt__p_wxNcPaintEvent,
2889 &_swigt__p_wxNotifyEvent,
2890 &_swigt__p_wxObject,
2891 &_swigt__p_wxPCXHandler,
2892 &_swigt__p_wxPNGHandler,
2893 &_swigt__p_wxPNMHandler,
2894 &_swigt__p_wxPaintEvent,
2895 &_swigt__p_wxPalette,
2896 &_swigt__p_wxPaletteChangedEvent,
2897 &_swigt__p_wxPaperSize,
2898 &_swigt__p_wxPyApp,
2899 &_swigt__p_wxPyCommandEvent,
2900 &_swigt__p_wxPyEvent,
2901 &_swigt__p_wxPyImageHandler,
2902 &_swigt__p_wxPySizer,
2903 &_swigt__p_wxPyValidator,
2904 &_swigt__p_wxQueryNewPaletteEvent,
2905 &_swigt__p_wxScrollEvent,
2906 &_swigt__p_wxScrollWinEvent,
2907 &_swigt__p_wxSetCursorEvent,
2908 &_swigt__p_wxShowEvent,
2909 &_swigt__p_wxSizeEvent,
2910 &_swigt__p_wxSizer,
2911 &_swigt__p_wxSizerItem,
2912 &_swigt__p_wxStaticBoxSizer,
2913 &_swigt__p_wxStdDialogButtonSizer,
2914 &_swigt__p_wxSysColourChangedEvent,
2915 &_swigt__p_wxTIFFHandler,
2916 &_swigt__p_wxUpdateUIEvent,
2917 &_swigt__p_wxValidator,
2918 &_swigt__p_wxWindow,
2919 &_swigt__p_wxWindowCreateEvent,
2920 &_swigt__p_wxWindowDestroyEvent,
2921 &_swigt__p_wxXPMHandler,
2922 &_swigt__ptrdiff_t,
2923 &_swigt__std__ptrdiff_t,
2924 &_swigt__unsigned_int,
2925 };
2926
2927 static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
2928 static swig_cast_info _swigc__p_form_ops_t[] = { {&_swigt__p_form_ops_t, 0, 0, 0},{0, 0, 0, 0}};
2929 static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
2930 static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
2931 static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
2932 static swig_cast_info _swigc__p_unsigned_long[] = { {&_swigt__p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}};
2933 static swig_cast_info _swigc__p_wxDuplexMode[] = { {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
2934 static swig_cast_info _swigc__p_wxControl[] = {{&_swigt__p_wxControl, 0, 0, 0},{0, 0, 0, 0}};
2935 static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
2936 static swig_cast_info _swigc__p_wxPyApp[] = {{&_swigt__p_wxPyApp, 0, 0, 0},{0, 0, 0, 0}};
2937 static swig_cast_info _swigc__p_wxMenuBar[] = {{&_swigt__p_wxMenuBar, 0, 0, 0},{0, 0, 0, 0}};
2938 static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
2939 static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
2940 static swig_cast_info _swigc__p_wxMenu[] = {{&_swigt__p_wxMenu, 0, 0, 0},{0, 0, 0, 0}};
2941 static swig_cast_info _swigc__p_wxEvtHandler[] = { {&_swigt__p_wxControl, _p_wxControlTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxEvtHandler, 0, 0, 0}, {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxEvtHandler, 0, 0},{0, 0, 0, 0}};
2942 static swig_cast_info _swigc__p_wxGLCanvas[] = { {&_swigt__p_wxGLCanvas, 0, 0, 0},{0, 0, 0, 0}};
2943 static swig_cast_info _swigc__p_wxGLContext[] = { {&_swigt__p_wxGLContext, 0, 0, 0},{0, 0, 0, 0}};
2944 static swig_cast_info _swigc__p_wxLayoutConstraints[] = {{&_swigt__p_wxLayoutConstraints, 0, 0, 0},{0, 0, 0, 0}};
2945 static swig_cast_info _swigc__p_wxGBSizerItem[] = {{&_swigt__p_wxGBSizerItem, 0, 0, 0},{0, 0, 0, 0}};
2946 static swig_cast_info _swigc__p_wxSizerItem[] = {{&_swigt__p_wxSizerItem, 0, 0, 0},{0, 0, 0, 0}};
2947 static swig_cast_info _swigc__p_wxScrollEvent[] = {{&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
2948 static swig_cast_info _swigc__p_wxIndividualLayoutConstraint[] = {{&_swigt__p_wxIndividualLayoutConstraint, 0, 0, 0},{0, 0, 0, 0}};
2949 static swig_cast_info _swigc__p_wxStaticBoxSizer[] = {{&_swigt__p_wxStaticBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
2950 static swig_cast_info _swigc__p_wxBoxSizer[] = {{&_swigt__p_wxBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
2951 static swig_cast_info _swigc__p_wxSizer[] = {{&_swigt__p_wxSizer, 0, 0, 0},{0, 0, 0, 0}};
2952 static swig_cast_info _swigc__p_wxGridBagSizer[] = {{&_swigt__p_wxGridBagSizer, 0, 0, 0},{0, 0, 0, 0}};
2953 static swig_cast_info _swigc__p_wxUpdateUIEvent[] = {{&_swigt__p_wxUpdateUIEvent, 0, 0, 0},{0, 0, 0, 0}};
2954 static swig_cast_info _swigc__p_wxEvent[] = {{&_swigt__p_wxEvent, 0, 0, 0},{0, 0, 0, 0}};
2955 static swig_cast_info _swigc__p_wxGridSizer[] = {{&_swigt__p_wxGridSizer, 0, 0, 0},{0, 0, 0, 0}};
2956 static swig_cast_info _swigc__p_wxFlexGridSizer[] = {{&_swigt__p_wxFlexGridSizer, 0, 0, 0},{0, 0, 0, 0}};
2957 static swig_cast_info _swigc__p_wxInitDialogEvent[] = {{&_swigt__p_wxInitDialogEvent, 0, 0, 0},{0, 0, 0, 0}};
2958 static swig_cast_info _swigc__p_wxPaintEvent[] = {{&_swigt__p_wxPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
2959 static swig_cast_info _swigc__p_wxNcPaintEvent[] = {{&_swigt__p_wxNcPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
2960 static swig_cast_info _swigc__p_wxPaletteChangedEvent[] = {{&_swigt__p_wxPaletteChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
2961 static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {{&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
2962 static swig_cast_info _swigc__p_wxMouseCaptureChangedEvent[] = {{&_swigt__p_wxMouseCaptureChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
2963 static swig_cast_info _swigc__p_wxSysColourChangedEvent[] = {{&_swigt__p_wxSysColourChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
2964 static swig_cast_info _swigc__p_wxSetCursorEvent[] = {{&_swigt__p_wxSetCursorEvent, 0, 0, 0},{0, 0, 0, 0}};
2965 static swig_cast_info _swigc__p_wxFSFile[] = {{&_swigt__p_wxFSFile, 0, 0, 0},{0, 0, 0, 0}};
2966 static swig_cast_info _swigc__p_wxPySizer[] = {{&_swigt__p_wxPySizer, 0, 0, 0},{0, 0, 0, 0}};
2967 static swig_cast_info _swigc__p_wxPyEvent[] = {{&_swigt__p_wxPyEvent, 0, 0, 0},{0, 0, 0, 0}};
2968 static swig_cast_info _swigc__p_wxNotifyEvent[] = {{&_swigt__p_wxNotifyEvent, 0, 0, 0},{0, 0, 0, 0}};
2969 static swig_cast_info _swigc__p_wxShowEvent[] = {{&_swigt__p_wxShowEvent, 0, 0, 0},{0, 0, 0, 0}};
2970 static swig_cast_info _swigc__p_wxMenuItem[] = {{&_swigt__p_wxMenuItem, 0, 0, 0},{0, 0, 0, 0}};
2971 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {{&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
2972 static swig_cast_info _swigc__p_wxWindowCreateEvent[] = {{&_swigt__p_wxWindowCreateEvent, 0, 0, 0},{0, 0, 0, 0}};
2973 static swig_cast_info _swigc__p_wxIdleEvent[] = {{&_swigt__p_wxIdleEvent, 0, 0, 0},{0, 0, 0, 0}};
2974 static swig_cast_info _swigc__p_wxDateEvent[] = {{&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
2975 static swig_cast_info _swigc__p_wxMaximizeEvent[] = {{&_swigt__p_wxMaximizeEvent, 0, 0, 0},{0, 0, 0, 0}};
2976 static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent, 0, 0, 0},{0, 0, 0, 0}};
2977 static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
2978 static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
2979 static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
2980 static swig_cast_info _swigc__p_wxPNMHandler[] = {{&_swigt__p_wxPNMHandler, 0, 0, 0},{0, 0, 0, 0}};
2981 static swig_cast_info _swigc__p_wxJPEGHandler[] = {{&_swigt__p_wxJPEGHandler, 0, 0, 0},{0, 0, 0, 0}};
2982 static swig_cast_info _swigc__p_wxPCXHandler[] = {{&_swigt__p_wxPCXHandler, 0, 0, 0},{0, 0, 0, 0}};
2983 static swig_cast_info _swigc__p_wxGIFHandler[] = {{&_swigt__p_wxGIFHandler, 0, 0, 0},{0, 0, 0, 0}};
2984 static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
2985 static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
2986 static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
2987 static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
2988 static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
2989 static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
2990 static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
2991 static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
2992 static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
2993 static swig_cast_info _swigc__p_wxStdDialogButtonSizer[] = {{&_swigt__p_wxStdDialogButtonSizer, 0, 0, 0},{0, 0, 0, 0}};
2994 static swig_cast_info _swigc__p_wxAcceleratorTable[] = {{&_swigt__p_wxAcceleratorTable, 0, 0, 0},{0, 0, 0, 0}};
2995 static swig_cast_info _swigc__p_wxImage[] = {{&_swigt__p_wxImage, 0, 0, 0},{0, 0, 0, 0}};
2996 static swig_cast_info _swigc__p_wxScrollWinEvent[] = {{&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
2997 static swig_cast_info _swigc__p_wxWindowDestroyEvent[] = {{&_swigt__p_wxWindowDestroyEvent, 0, 0, 0},{0, 0, 0, 0}};
2998 static swig_cast_info _swigc__p_wxNavigationKeyEvent[] = {{&_swigt__p_wxNavigationKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
2999 static swig_cast_info _swigc__p_wxKeyEvent[] = {{&_swigt__p_wxKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
3000 static swig_cast_info _swigc__p_wxFileSystem[] = {{&_swigt__p_wxFileSystem, 0, 0, 0},{0, 0, 0, 0}};
3001 static swig_cast_info _swigc__p_wxContextMenuEvent[] = {{&_swigt__p_wxContextMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
3002 static swig_cast_info _swigc__p_wxMenuEvent[] = {{&_swigt__p_wxMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
3003 static swig_cast_info _swigc__p_wxCloseEvent[] = {{&_swigt__p_wxCloseEvent, 0, 0, 0},{0, 0, 0, 0}};
3004 static swig_cast_info _swigc__p_wxMouseEvent[] = {{&_swigt__p_wxMouseEvent, 0, 0, 0},{0, 0, 0, 0}};
3005 static swig_cast_info _swigc__p_wxEraseEvent[] = {{&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
3006 static swig_cast_info _swigc__p_wxCommandEvent[] = {{&_swigt__p_wxCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
3007 static swig_cast_info _swigc__p_wxPyCommandEvent[] = {{&_swigt__p_wxPyCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
3008 static swig_cast_info _swigc__p_wxDropFilesEvent[] = {{&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
3009 static swig_cast_info _swigc__p_wxFocusEvent[] = {{&_swigt__p_wxFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
3010 static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
3011 static swig_cast_info _swigc__p_wxObject[] = { {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0}, {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0}, {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0}, {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0}, {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0}, {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxGLContext, _p_wxGLContextTo_p_wxObject, 0, 0}, {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxObject, 0, 0}, {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0}, {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0}, {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxObject, 0, 0, 0}, {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0}, {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0}, {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0}, {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0}, {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
3012 static swig_cast_info _swigc__p_wxPalette[] = { {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
3013 static swig_cast_info _swigc__p_wxPaperSize[] = { {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
3014 static swig_cast_info _swigc__p_wxWindow[] = { {&_swigt__p_wxControl, _p_wxControlTo_p_wxWindow, 0, 0}, {&_swigt__p_wxWindow, 0, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxWindow, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxWindow, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxWindow, 0, 0},{0, 0, 0, 0}};
3015 static swig_cast_info _swigc__ptrdiff_t[] = { {&_swigt__ptrdiff_t, 0, 0, 0},{0, 0, 0, 0}};
3016 static swig_cast_info _swigc__std__ptrdiff_t[] = { {&_swigt__std__ptrdiff_t, 0, 0, 0},{0, 0, 0, 0}};
3017 static swig_cast_info _swigc__unsigned_int[] = { {&_swigt__unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
3018
3019 static swig_cast_info *swig_cast_initial[] = {
3020 _swigc__p_char,
3021 _swigc__p_form_ops_t,
3022 _swigc__p_int,
3023 _swigc__p_unsigned_char,
3024 _swigc__p_unsigned_int,
3025 _swigc__p_unsigned_long,
3026 _swigc__p_wxANIHandler,
3027 _swigc__p_wxAcceleratorTable,
3028 _swigc__p_wxActivateEvent,
3029 _swigc__p_wxBMPHandler,
3030 _swigc__p_wxBoxSizer,
3031 _swigc__p_wxCURHandler,
3032 _swigc__p_wxChildFocusEvent,
3033 _swigc__p_wxCloseEvent,
3034 _swigc__p_wxCommandEvent,
3035 _swigc__p_wxContextMenuEvent,
3036 _swigc__p_wxControl,
3037 _swigc__p_wxControlWithItems,
3038 _swigc__p_wxDateEvent,
3039 _swigc__p_wxDisplayChangedEvent,
3040 _swigc__p_wxDropFilesEvent,
3041 _swigc__p_wxDuplexMode,
3042 _swigc__p_wxEraseEvent,
3043 _swigc__p_wxEvent,
3044 _swigc__p_wxEvtHandler,
3045 _swigc__p_wxFSFile,
3046 _swigc__p_wxFileSystem,
3047 _swigc__p_wxFlexGridSizer,
3048 _swigc__p_wxFocusEvent,
3049 _swigc__p_wxGBSizerItem,
3050 _swigc__p_wxGIFHandler,
3051 _swigc__p_wxGLCanvas,
3052 _swigc__p_wxGLContext,
3053 _swigc__p_wxGridBagSizer,
3054 _swigc__p_wxGridSizer,
3055 _swigc__p_wxICOHandler,
3056 _swigc__p_wxIconizeEvent,
3057 _swigc__p_wxIdleEvent,
3058 _swigc__p_wxImage,
3059 _swigc__p_wxImageHandler,
3060 _swigc__p_wxIndividualLayoutConstraint,
3061 _swigc__p_wxInitDialogEvent,
3062 _swigc__p_wxJPEGHandler,
3063 _swigc__p_wxKeyEvent,
3064 _swigc__p_wxLayoutConstraints,
3065 _swigc__p_wxMaximizeEvent,
3066 _swigc__p_wxMenu,
3067 _swigc__p_wxMenuBar,
3068 _swigc__p_wxMenuEvent,
3069 _swigc__p_wxMenuItem,
3070 _swigc__p_wxMouseCaptureChangedEvent,
3071 _swigc__p_wxMouseEvent,
3072 _swigc__p_wxMoveEvent,
3073 _swigc__p_wxNavigationKeyEvent,
3074 _swigc__p_wxNcPaintEvent,
3075 _swigc__p_wxNotifyEvent,
3076 _swigc__p_wxObject,
3077 _swigc__p_wxPCXHandler,
3078 _swigc__p_wxPNGHandler,
3079 _swigc__p_wxPNMHandler,
3080 _swigc__p_wxPaintEvent,
3081 _swigc__p_wxPalette,
3082 _swigc__p_wxPaletteChangedEvent,
3083 _swigc__p_wxPaperSize,
3084 _swigc__p_wxPyApp,
3085 _swigc__p_wxPyCommandEvent,
3086 _swigc__p_wxPyEvent,
3087 _swigc__p_wxPyImageHandler,
3088 _swigc__p_wxPySizer,
3089 _swigc__p_wxPyValidator,
3090 _swigc__p_wxQueryNewPaletteEvent,
3091 _swigc__p_wxScrollEvent,
3092 _swigc__p_wxScrollWinEvent,
3093 _swigc__p_wxSetCursorEvent,
3094 _swigc__p_wxShowEvent,
3095 _swigc__p_wxSizeEvent,
3096 _swigc__p_wxSizer,
3097 _swigc__p_wxSizerItem,
3098 _swigc__p_wxStaticBoxSizer,
3099 _swigc__p_wxStdDialogButtonSizer,
3100 _swigc__p_wxSysColourChangedEvent,
3101 _swigc__p_wxTIFFHandler,
3102 _swigc__p_wxUpdateUIEvent,
3103 _swigc__p_wxValidator,
3104 _swigc__p_wxWindow,
3105 _swigc__p_wxWindowCreateEvent,
3106 _swigc__p_wxWindowDestroyEvent,
3107 _swigc__p_wxXPMHandler,
3108 _swigc__ptrdiff_t,
3109 _swigc__std__ptrdiff_t,
3110 _swigc__unsigned_int,
3111 };
3112
3113
3114 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
3115
3116 static swig_const_info swig_const_table[] = {
3117 {0, 0, 0, 0.0, 0, 0}};
3118
3119 #ifdef __cplusplus
3120 }
3121 #endif
3122 /*************************************************************************
3123 * Type initialization:
3124 * This problem is tough by the requirement that no dynamic
3125 * memory is used. Also, since swig_type_info structures store pointers to
3126 * swig_cast_info structures and swig_cast_info structures store pointers back
3127 * to swig_type_info structures, we need some lookup code at initialization.
3128 * The idea is that swig generates all the structures that are needed.
3129 * The runtime then collects these partially filled structures.
3130 * The SWIG_InitializeModule function takes these initial arrays out of
3131 * swig_module, and does all the lookup, filling in the swig_module.types
3132 * array with the correct data and linking the correct swig_cast_info
3133 * structures together.
3134
3135 * The generated swig_type_info structures are assigned staticly to an initial
3136 * array. We just loop though that array, and handle each type individually.
3137 * First we lookup if this type has been already loaded, and if so, use the
3138 * loaded structure instead of the generated one. Then we have to fill in the
3139 * cast linked list. The cast data is initially stored in something like a
3140 * two-dimensional array. Each row corresponds to a type (there are the same
3141 * number of rows as there are in the swig_type_initial array). Each entry in
3142 * a column is one of the swig_cast_info structures for that type.
3143 * The cast_initial array is actually an array of arrays, because each row has
3144 * a variable number of columns. So to actually build the cast linked list,
3145 * we find the array of casts associated with the type, and loop through it
3146 * adding the casts to the list. The one last trick we need to do is making
3147 * sure the type pointer in the swig_cast_info struct is correct.
3148
3149 * First off, we lookup the cast->type name to see if it is already loaded.
3150 * There are three cases to handle:
3151 * 1) If the cast->type has already been loaded AND the type we are adding
3152 * casting info to has not been loaded (it is in this module), THEN we
3153 * replace the cast->type pointer with the type pointer that has already
3154 * been loaded.
3155 * 2) If BOTH types (the one we are adding casting info to, and the
3156 * cast->type) are loaded, THEN the cast info has already been loaded by
3157 * the previous module so we just ignore it.
3158 * 3) Finally, if cast->type has not already been loaded, then we add that
3159 * swig_cast_info to the linked list (because the cast->type) pointer will
3160 * be correct.
3161 **/
3162
3163 #ifdef __cplusplus
3164 extern "C" {
3165 #if 0
3166 } /* c-mode */
3167 #endif
3168 #endif
3169
3170 #if 0
3171 #define SWIGRUNTIME_DEBUG
3172 #endif
3173
3174 SWIGRUNTIME void
3175 SWIG_InitializeModule(void *clientdata) {
3176 size_t i;
3177 swig_module_info *module_head;
3178 static int init_run = 0;
3179
3180 clientdata = clientdata;
3181
3182 if (init_run) return;
3183 init_run = 1;
3184
3185 /* Initialize the swig_module */
3186 swig_module.type_initial = swig_type_initial;
3187 swig_module.cast_initial = swig_cast_initial;
3188
3189 /* Try and load any already created modules */
3190 module_head = SWIG_GetModule(clientdata);
3191 if (module_head) {
3192 swig_module.next = module_head->next;
3193 module_head->next = &swig_module;
3194 } else {
3195 /* This is the first module loaded */
3196 swig_module.next = &swig_module;
3197 SWIG_SetModule(clientdata, &swig_module);
3198 }
3199
3200 /* Now work on filling in swig_module.types */
3201 #ifdef SWIGRUNTIME_DEBUG
3202 printf("SWIG_InitializeModule: size %d\n", swig_module.size);
3203 #endif
3204 for (i = 0; i < swig_module.size; ++i) {
3205 swig_type_info *type = 0;
3206 swig_type_info *ret;
3207 swig_cast_info *cast;
3208
3209 #ifdef SWIGRUNTIME_DEBUG
3210 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
3211 #endif
3212
3213 /* if there is another module already loaded */
3214 if (swig_module.next != &swig_module) {
3215 type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
3216 }
3217 if (type) {
3218 /* Overwrite clientdata field */
3219 #ifdef SWIGRUNTIME_DEBUG
3220 printf("SWIG_InitializeModule: found type %s\n", type->name);
3221 #endif
3222 if (swig_module.type_initial[i]->clientdata) {
3223 type->clientdata = swig_module.type_initial[i]->clientdata;
3224 #ifdef SWIGRUNTIME_DEBUG
3225 printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
3226 #endif
3227 }
3228 } else {
3229 type = swig_module.type_initial[i];
3230 }
3231
3232 /* Insert casting types */
3233 cast = swig_module.cast_initial[i];
3234 while (cast->type) {
3235 /* Don't need to add information already in the list */
3236 ret = 0;
3237 #ifdef SWIGRUNTIME_DEBUG
3238 printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
3239 #endif
3240 if (swig_module.next != &swig_module) {
3241 ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
3242 #ifdef SWIGRUNTIME_DEBUG
3243 if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
3244 #endif
3245 }
3246 if (ret) {
3247 if (type == swig_module.type_initial[i]) {
3248 #ifdef SWIGRUNTIME_DEBUG
3249 printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
3250 #endif
3251 cast->type = ret;
3252 ret = 0;
3253 } else {
3254 /* Check for casting already in the list */
3255 swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
3256 #ifdef SWIGRUNTIME_DEBUG
3257 if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
3258 #endif
3259 if (!ocast) ret = 0;
3260 }
3261 }
3262
3263 if (!ret) {
3264 #ifdef SWIGRUNTIME_DEBUG
3265 printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
3266 #endif
3267 if (type->cast) {
3268 type->cast->prev = cast;
3269 cast->next = type->cast;
3270 }
3271 type->cast = cast;
3272 }
3273 cast++;
3274 }
3275 /* Set entry in modules->types array equal to the type */
3276 swig_module.types[i] = type;
3277 }
3278 swig_module.types[i] = 0;
3279
3280 #ifdef SWIGRUNTIME_DEBUG
3281 printf("**** SWIG_InitializeModule: Cast List ******\n");
3282 for (i = 0; i < swig_module.size; ++i) {
3283 int j = 0;
3284 swig_cast_info *cast = swig_module.cast_initial[i];
3285 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
3286 while (cast->type) {
3287 printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
3288 cast++;
3289 ++j;
3290 }
3291 printf("---- Total casts: %d\n",j);
3292 }
3293 printf("**** SWIG_InitializeModule: Cast List ******\n");
3294 #endif
3295 }
3296
3297 /* This function will propagate the clientdata field of type to
3298 * any new swig_type_info structures that have been added into the list
3299 * of equivalent types. It is like calling
3300 * SWIG_TypeClientData(type, clientdata) a second time.
3301 */
3302 SWIGRUNTIME void
3303 SWIG_PropagateClientData(void) {
3304 size_t i;
3305 swig_cast_info *equiv;
3306 static int init_run = 0;
3307
3308 if (init_run) return;
3309 init_run = 1;
3310
3311 for (i = 0; i < swig_module.size; i++) {
3312 if (swig_module.types[i]->clientdata) {
3313 equiv = swig_module.types[i]->cast;
3314 while (equiv) {
3315 if (!equiv->converter) {
3316 if (equiv->type && !equiv->type->clientdata)
3317 SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
3318 }
3319 equiv = equiv->next;
3320 }
3321 }
3322 }
3323 }
3324
3325 #ifdef __cplusplus
3326 #if 0
3327 {
3328 /* c-mode */
3329 #endif
3330 }
3331 #endif
3332
3333
3334
3335 #ifdef __cplusplus
3336 extern "C" {
3337 #endif
3338
3339 /* Python-specific SWIG API */
3340 #define SWIG_newvarlink() SWIG_Python_newvarlink()
3341 #define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
3342 #define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
3343
3344 /* -----------------------------------------------------------------------------
3345 * global variable support code.
3346 * ----------------------------------------------------------------------------- */
3347
3348 typedef struct swig_globalvar {
3349 char *name; /* Name of global variable */
3350 PyObject *(*get_attr)(void); /* Return the current value */
3351 int (*set_attr)(PyObject *); /* Set the value */
3352 struct swig_globalvar *next;
3353 } swig_globalvar;
3354
3355 typedef struct swig_varlinkobject {
3356 PyObject_HEAD
3357 swig_globalvar *vars;
3358 } swig_varlinkobject;
3359
3360 SWIGINTERN PyObject *
3361 swig_varlink_repr(swig_varlinkobject *v) {
3362 v = v;
3363 return PyString_FromString("<Swig global variables>");
3364 }
3365
3366 SWIGINTERN int
3367 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) {
3368 swig_globalvar *var;
3369 flags = flags;
3370 fprintf(fp,"Swig global variables { ");
3371 for (var = v->vars; var; var=var->next) {
3372 fprintf(fp,"%s", var->name);
3373 if (var->next) fprintf(fp,", ");
3374 }
3375 fprintf(fp," }\n");
3376 return 0;
3377 }
3378
3379 SWIGINTERN PyObject *
3380 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
3381 swig_globalvar *var = v->vars;
3382 while (var) {
3383 if (strcmp(var->name,n) == 0) {
3384 return (*var->get_attr)();
3385 }
3386 var = var->next;
3387 }
3388 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
3389 return NULL;
3390 }
3391
3392 SWIGINTERN int
3393 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
3394 swig_globalvar *var = v->vars;
3395 while (var) {
3396 if (strcmp(var->name,n) == 0) {
3397 return (*var->set_attr)(p);
3398 }
3399 var = var->next;
3400 }
3401 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
3402 return 1;
3403 }
3404
3405 SWIGINTERN PyTypeObject*
3406 swig_varlink_type(void) {
3407 static char varlink__doc__[] = "Swig var link object";
3408 static PyTypeObject varlink_type
3409 #if !defined(__cplusplus)
3410 ;
3411 static int type_init = 0;
3412 if (!type_init) {
3413 PyTypeObject tmp
3414 #endif
3415 = {
3416 PyObject_HEAD_INIT(&PyType_Type)
3417 0, /* Number of items in variable part (ob_size) */
3418 (char *)"swigvarlink", /* Type name (tp_name) */
3419 sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */
3420 0, /* Itemsize (tp_itemsize) */
3421 0, /* Deallocator (tp_dealloc) */
3422 (printfunc) swig_varlink_print, /* Print (tp_print) */
3423 (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
3424 (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
3425 0, /* tp_compare */
3426 (reprfunc) swig_varlink_repr, /* tp_repr */
3427 0, /* tp_as_number */
3428 0, /* tp_as_sequence */
3429 0, /* tp_as_mapping */
3430 0, /* tp_hash */
3431 0, /* tp_call */
3432 0, /* tp_str */
3433 0, /* tp_getattro */
3434 0, /* tp_setattro */
3435 0, /* tp_as_buffer */
3436 0, /* tp_flags */
3437 varlink__doc__, /* tp_doc */
3438 #if PY_VERSION_HEX >= 0x02000000
3439 0, /* tp_traverse */
3440 0, /* tp_clear */
3441 #endif
3442 #if PY_VERSION_HEX >= 0x02010000
3443 0, /* tp_richcompare */
3444 0, /* tp_weaklistoffset */
3445 #endif
3446 #if PY_VERSION_HEX >= 0x02020000
3447 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
3448 #endif
3449 #if PY_VERSION_HEX >= 0x02030000
3450 0, /* tp_del */
3451 #endif
3452 #ifdef COUNT_ALLOCS
3453 0,0,0,0 /* tp_alloc -> tp_next */
3454 #endif
3455 };
3456 #if !defined(__cplusplus)
3457 varlink_type = tmp;
3458 type_init = 1;
3459 }
3460 #endif
3461 return &varlink_type;
3462 }
3463
3464 /* Create a variable linking object for use later */
3465 SWIGINTERN PyObject *
3466 SWIG_Python_newvarlink(void) {
3467 swig_varlinkobject *result = PyObject_NEW(swig_varlinkobject, swig_varlink_type());
3468 if (result) {
3469 result->vars = 0;
3470 }
3471 return ((PyObject*) result);
3472 }
3473
3474 SWIGINTERN void
3475 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
3476 swig_varlinkobject *v = (swig_varlinkobject *) p;
3477 swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
3478 if (gv) {
3479 size_t size = strlen(name)+1;
3480 gv->name = (char *)malloc(size);
3481 if (gv->name) {
3482 strncpy(gv->name,name,size);
3483 gv->get_attr = get_attr;
3484 gv->set_attr = set_attr;
3485 gv->next = v->vars;
3486 }
3487 }
3488 v->vars = gv;
3489 }
3490
3491 /* -----------------------------------------------------------------------------
3492 * constants/methods manipulation
3493 * ----------------------------------------------------------------------------- */
3494
3495 /* Install Constants */
3496 SWIGINTERN void
3497 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
3498 PyObject *obj = 0;
3499 size_t i;
3500 for (i = 0; constants[i].type; ++i) {
3501 switch(constants[i].type) {
3502 case SWIG_PY_INT:
3503 obj = PyInt_FromLong(constants[i].lvalue);
3504 break;
3505 case SWIG_PY_FLOAT:
3506 obj = PyFloat_FromDouble(constants[i].dvalue);
3507 break;
3508 case SWIG_PY_STRING:
3509 if (constants[i].pvalue) {
3510 obj = PyString_FromString((char *) constants[i].pvalue);
3511 } else {
3512 Py_INCREF(Py_None);
3513 obj = Py_None;
3514 }
3515 break;
3516 case SWIG_PY_POINTER:
3517 obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
3518 break;
3519 case SWIG_PY_BINARY:
3520 obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
3521 break;
3522 default:
3523 obj = 0;
3524 break;
3525 }
3526 if (obj) {
3527 PyDict_SetItemString(d,constants[i].name,obj);
3528 Py_DECREF(obj);
3529 }
3530 }
3531 }
3532
3533 /* -----------------------------------------------------------------------------*/
3534 /* Fix SwigMethods to carry the callback ptrs when needed */
3535 /* -----------------------------------------------------------------------------*/
3536
3537 SWIGINTERN void
3538 SWIG_Python_FixMethods(PyMethodDef *methods,
3539 swig_const_info *const_table,
3540 swig_type_info **types,
3541 swig_type_info **types_initial) {
3542 size_t i;
3543 for (i = 0; methods[i].ml_name; ++i) {
3544 char *c = methods[i].ml_doc;
3545 if (c && (c = strstr(c, "swig_ptr: "))) {
3546 int j;
3547 swig_const_info *ci = 0;
3548 char *name = c + 10;
3549 for (j = 0; const_table[j].type; ++j) {
3550 if (strncmp(const_table[j].name, name,
3551 strlen(const_table[j].name)) == 0) {
3552 ci = &(const_table[j]);
3553 break;
3554 }
3555 }
3556 if (ci) {
3557 size_t shift = (ci->ptype) - types;
3558 swig_type_info *ty = types_initial[shift];
3559 size_t ldoc = (c - methods[i].ml_doc);
3560 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
3561 char *ndoc = (char*)malloc(ldoc + lptr + 10);
3562 if (ndoc) {
3563 char *buff = ndoc;
3564 void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue : 0;
3565 if (ptr) {
3566 strncpy(buff, methods[i].ml_doc, ldoc);
3567 buff += ldoc;
3568 strncpy(buff, "swig_ptr: ", 10);
3569 buff += 10;
3570 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
3571 methods[i].ml_doc = ndoc;
3572 }
3573 }
3574 }
3575 }
3576 }
3577 }
3578
3579 /* -----------------------------------------------------------------------------*
3580 * Initialize type list
3581 * -----------------------------------------------------------------------------*/
3582
3583 #ifdef __cplusplus
3584 }
3585 #endif
3586
3587 /* -----------------------------------------------------------------------------*
3588 * Partial Init method
3589 * -----------------------------------------------------------------------------*/
3590
3591 #ifdef __cplusplus
3592 extern "C"
3593 #endif
3594 SWIGEXPORT void SWIG_init(void) {
3595 static PyObject *SWIG_globals = 0;
3596 PyObject *m, *d;
3597 if (!SWIG_globals) SWIG_globals = SWIG_newvarlink();
3598
3599 /* Fix SwigMethods to carry the callback ptrs when needed */
3600 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial);
3601
3602 m = Py_InitModule((char *) SWIG_name, SwigMethods);
3603 d = PyModule_GetDict(m);
3604
3605 SWIG_InitializeModule(0);
3606 SWIG_InstallConstants(d,swig_const_table);
3607
3608 PyDict_SetItemString(d,(char*)"cvar", SWIG_globals);
3609 SWIG_addvarlink(SWIG_globals,(char*)"GLCanvasNameStr",_wrap_GLCanvasNameStr_get, _wrap_GLCanvasNameStr_set);
3610 {
3611 PyDict_SetItemString(d,"WX_GL_RGBA", SWIG_From_int(static_cast<int >(WX_GL_RGBA)));
3612 }
3613 {
3614 PyDict_SetItemString(d,"WX_GL_BUFFER_SIZE", SWIG_From_int(static_cast<int >(WX_GL_BUFFER_SIZE)));
3615 }
3616 {
3617 PyDict_SetItemString(d,"WX_GL_LEVEL", SWIG_From_int(static_cast<int >(WX_GL_LEVEL)));
3618 }
3619 {
3620 PyDict_SetItemString(d,"WX_GL_DOUBLEBUFFER", SWIG_From_int(static_cast<int >(WX_GL_DOUBLEBUFFER)));
3621 }
3622 {
3623 PyDict_SetItemString(d,"WX_GL_STEREO", SWIG_From_int(static_cast<int >(WX_GL_STEREO)));
3624 }
3625 {
3626 PyDict_SetItemString(d,"WX_GL_AUX_BUFFERS", SWIG_From_int(static_cast<int >(WX_GL_AUX_BUFFERS)));
3627 }
3628 {
3629 PyDict_SetItemString(d,"WX_GL_MIN_RED", SWIG_From_int(static_cast<int >(WX_GL_MIN_RED)));
3630 }
3631 {
3632 PyDict_SetItemString(d,"WX_GL_MIN_GREEN", SWIG_From_int(static_cast<int >(WX_GL_MIN_GREEN)));
3633 }
3634 {
3635 PyDict_SetItemString(d,"WX_GL_MIN_BLUE", SWIG_From_int(static_cast<int >(WX_GL_MIN_BLUE)));
3636 }
3637 {
3638 PyDict_SetItemString(d,"WX_GL_MIN_ALPHA", SWIG_From_int(static_cast<int >(WX_GL_MIN_ALPHA)));
3639 }
3640 {
3641 PyDict_SetItemString(d,"WX_GL_DEPTH_SIZE", SWIG_From_int(static_cast<int >(WX_GL_DEPTH_SIZE)));
3642 }
3643 {
3644 PyDict_SetItemString(d,"WX_GL_STENCIL_SIZE", SWIG_From_int(static_cast<int >(WX_GL_STENCIL_SIZE)));
3645 }
3646 {
3647 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_RED", SWIG_From_int(static_cast<int >(WX_GL_MIN_ACCUM_RED)));
3648 }
3649 {
3650 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_GREEN", SWIG_From_int(static_cast<int >(WX_GL_MIN_ACCUM_GREEN)));
3651 }
3652 {
3653 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_BLUE", SWIG_From_int(static_cast<int >(WX_GL_MIN_ACCUM_BLUE)));
3654 }
3655 {
3656 PyDict_SetItemString(d,"WX_GL_MIN_ACCUM_ALPHA", SWIG_From_int(static_cast<int >(WX_GL_MIN_ACCUM_ALPHA)));
3657 }
3658
3659
3660
3661 }
3662