]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/media_wrap.cpp
reSWIGged
[wxWidgets.git] / wxPython / src / mac / media_wrap.cpp
index 4996b4eb2c7a9d3ced05960b957add937d00036c..3757687f012f585431e30b6c95cc596ae125642b 100644 (file)
@@ -1,6 +1,6 @@
 /* ----------------------------------------------------------------------------
  * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 1.3.22
+ * Version 1.3.24
  * 
  * This file is not intended to be easily readable and contains a number of 
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -9,7 +9,6 @@
  * ----------------------------------------------------------------------------- */
 
 #define SWIGPYTHON
-#define SWIG_NOINCLUDE
 
 #ifdef __cplusplus
 template<class T> class SwigValueWrapper {
@@ -24,71 +23,65 @@ public:
     T *operator&() { return tt; }
 private:
     SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
-};                                                    
+};
 #endif
 
 
-#include "Python.h"
-
-/*************************************************************** -*- c -*-
- * python/precommon.swg
- *
- * Rename all exported symbols from common.swg, to avoid symbol
- * clashes if multiple interpreters are included
- *
- ************************************************************************/
+#ifndef SWIG_TEMPLATE_DISAMBIGUATOR
+#  if defined(__SUNPRO_CC) 
+#    define SWIG_TEMPLATE_DISAMBIGUATOR template
+#  else
+#    define SWIG_TEMPLATE_DISAMBIGUATOR 
+#  endif
+#endif
 
-#define SWIG_TypeRegister    SWIG_Python_TypeRegister
-#define SWIG_TypeCheck       SWIG_Python_TypeCheck
-#define SWIG_TypeCast        SWIG_Python_TypeCast
-#define SWIG_TypeDynamicCast SWIG_Python_TypeDynamicCast
-#define SWIG_TypeName        SWIG_Python_TypeName
-#define SWIG_TypePrettyName  SWIG_Python_TypePrettyName
-#define SWIG_TypeQuery       SWIG_Python_TypeQuery
-#define SWIG_TypeClientData  SWIG_Python_TypeClientData
-#define SWIG_PackData        SWIG_Python_PackData 
-#define SWIG_UnpackData      SWIG_Python_UnpackData 
 
+#include <Python.h>
 
 /***********************************************************************
- * common.swg for wxPython
+ * swigrun.swg
  *
- * Include only the function prototypes and such from SWIG's common.swg,
- * but not the runtime functions themselves.  This helps keep the
- * wrapper files clean of unnecessary stuff that is in the libpy.c file
- * anyway.
+ *     This file contains generic CAPI SWIG runtime support for pointer
+ *     type checking.
  *
  ************************************************************************/
 
-#include <string.h>
+/* This should only be incremented when either the layout of swig_type_info changes,
+   or for whatever reason, the runtime changes incompatibly */
+#define SWIG_RUNTIME_VERSION "1"
 
-#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
-#  if defined(_MSC_VER) || defined(__GNUC__)
-#    if defined(STATIC_LINKED)
-#      define SWIGEXPORT(a) a
-#      define SWIGIMPORT(a) extern a
-#    else
-#      define SWIGEXPORT(a) __declspec(dllexport) a
-#      define SWIGIMPORT(a) extern a
-#    endif
-#  else
-#    if defined(__BORLANDC__)
-#      define SWIGEXPORT(a) a _export
-#      define SWIGIMPORT(a) a _export
-#    else
-#      define SWIGEXPORT(a) a
-#      define SWIGIMPORT(a) a
-#    endif
-#  endif
+/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
+#ifdef SWIG_TYPE_TABLE
+#define SWIG_QUOTE_STRING(x) #x
+#define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
+#define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
 #else
-#  define SWIGEXPORT(a) a
-#  define SWIGIMPORT(a) a
+#define SWIG_TYPE_TABLE_NAME
 #endif
 
-#ifdef SWIG_GLOBAL
-#  define SWIGRUNTIME(a) SWIGEXPORT(a)
+#include <string.h>
+
+#ifndef SWIGINLINE
+#if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
+#  define SWIGINLINE inline
 #else
-#  define SWIGRUNTIME(a) static a
+#  define SWIGINLINE
+#endif
+#endif
+
+/*
+  You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
+  creating a static or dynamic library from the swig runtime code.
+  In 99.9% of the cases, swig just needs to declare them as 'static'.
+  
+  But only do this if is strictly necessary, ie, if you have problems
+  with your compiler or so.
+*/
+#ifndef SWIGRUNTIME
+#define SWIGRUNTIME static
+#endif
+#ifndef SWIGRUNTIMEINLINE
+#define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
 #endif
 
 #ifdef __cplusplus
@@ -108,52 +101,461 @@ typedef struct swig_type_info {
   struct swig_type_info  *prev;
 } swig_type_info;
 
+/* 
+  Compare two type names skipping the space characters, therefore
+  "char*" == "char *" and "Class<int>" == "Class<int >", etc.
+
+  Return 0 when the two name types are equivalent, as in
+  strncmp, but skipping ' '.
+*/
+SWIGRUNTIME int
+SWIG_TypeNameComp(const char *f1, const char *l1,
+                 const char *f2, const char *l2) {
+  for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
+    while ((*f1 == ' ') && (f1 != l1)) ++f1;
+    while ((*f2 == ' ') && (f2 != l2)) ++f2;
+    if (*f1 != *f2) return *f1 - *f2;
+  }
+  return (l1 - f1) - (l2 - f2);
+}
+
+/*
+  Check type equivalence in a name list like <name1>|<name2>|...
+*/
+SWIGRUNTIME int
+SWIG_TypeEquiv(const char *nb, const char *tb) {
+  int equiv = 0;
+  const char* te = tb + strlen(tb);
+  const char* ne = nb;
+  while (!equiv && *ne) {
+    for (nb = ne; *ne; ++ne) {
+      if (*ne == '|') break;
+    }
+    equiv = SWIG_TypeNameComp(nb, ne, tb, te) == 0;
+    if (*ne) ++ne;
+  }
+  return equiv;
+}
+
+/*
+  Register a type mapping with the type-checking
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeRegisterTL(swig_type_info **tl, swig_type_info *ti) {
+  swig_type_info *tc, *head, *ret, *next;
+  /* Check to see if this type has already been registered */
+  tc = *tl;
+  while (tc) {
+    /* check simple type equivalence */
+    int typeequiv = (strcmp(tc->name, ti->name) == 0);   
+    /* check full type equivalence, resolving typedefs */
+    if (!typeequiv) {
+      /* only if tc is not a typedef (no '|' on it) */
+      if (tc->str && ti->str && !strstr(tc->str,"|")) {
+       typeequiv = SWIG_TypeEquiv(ti->str,tc->str);
+      }
+    }
+    if (typeequiv) {
+      /* Already exists in the table.  Just add additional types to the list */
+      if (ti->clientdata) tc->clientdata = ti->clientdata;
+      head = tc;
+      next = tc->next;
+      goto l1;
+    }
+    tc = tc->prev;
+  }
+  head = ti;
+  next = 0;
+
+  /* Place in list */
+  ti->prev = *tl;
+  *tl = ti;
+
+  /* Build linked lists */
+  l1:
+  ret = head;
+  tc = ti + 1;
+  /* Patch up the rest of the links */
+  while (tc->name) {
+    head->next = tc;
+    tc->prev = head;
+    head = tc;
+    tc++;
+  }
+  if (next) next->prev = head;
+  head->next = next;
+
+  return ret;
+}
+
+/*
+  Check the typename
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeCheck(const char *c, swig_type_info *ty) {
+  swig_type_info *s;
+  if (!ty) return 0;        /* Void pointer */
+  s = ty->next;             /* First element always just a name */
+  do {
+    if (strcmp(s->name,c) == 0) {
+      if (s == ty->next) return s;
+      /* Move s to the top of the linked list */
+      s->prev->next = s->next;
+      if (s->next) {
+        s->next->prev = s->prev;
+      }
+      /* Insert s as second element in the list */
+      s->next = ty->next;
+      if (ty->next) ty->next->prev = s;
+      ty->next = s;
+      s->prev = ty;
+      return s;
+    }
+    s = s->next;
+  } while (s && (s != ty->next));
+  return 0;
+}
+
+/*
+  Cast a pointer up an inheritance hierarchy
+*/
+SWIGRUNTIMEINLINE void *
+SWIG_TypeCast(swig_type_info *ty, void *ptr) {
+  return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
+}
+
+/* 
+   Dynamic pointer casting. Down an inheritance hierarchy
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
+  swig_type_info *lastty = ty;
+  if (!ty || !ty->dcast) return ty;
+  while (ty && (ty->dcast)) {
+    ty = (*ty->dcast)(ptr);
+    if (ty) lastty = ty;
+  }
+  return lastty;
+}
+
+/*
+  Return the name associated with this type
+*/
+SWIGRUNTIMEINLINE const char *
+SWIG_TypeName(const swig_type_info *ty) {
+  return ty->name;
+}
+
+/*
+  Return the pretty name associated with this type,
+  that is an unmangled type name in a form presentable to the user.
+*/
+SWIGRUNTIME const char *
+SWIG_TypePrettyName(const swig_type_info *type) {
+  /* The "str" field contains the equivalent pretty names of the
+     type, separated by vertical-bar characters.  We choose
+     to print the last name, as it is often (?) the most
+     specific. */
+  if (type->str != NULL) {
+    const char *last_name = type->str;
+    const char *s;
+    for (s = type->str; *s; s++)
+      if (*s == '|') last_name = s+1;
+    return last_name;
+  }
+  else
+    return type->name;
+}
+
+/*
+  Search for a swig_type_info structure
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeQueryTL(swig_type_info *tl, const char *name) {
+  swig_type_info *ty = tl;
+  while (ty) {
+    if (ty->str && (SWIG_TypeEquiv(ty->str,name))) return ty;
+    if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
+    ty = ty->prev;
+  }
+  return 0;
+}
+
+/* 
+   Set the clientdata field for a type
+*/
+SWIGRUNTIME void
+SWIG_TypeClientDataTL(swig_type_info *tl, swig_type_info *ti, void *clientdata) {
+  swig_type_info *tc, *equiv;
+  if (ti->clientdata) return;
+  /* if (ti->clientdata == clientdata) return; */
+  ti->clientdata = clientdata;
+  equiv = ti->next;
+  while (equiv) {
+    if (!equiv->converter) {
+      tc = tl;
+      while (tc) {
+        if ((strcmp(tc->name, equiv->name) == 0))
+          SWIG_TypeClientDataTL(tl,tc,clientdata);
+        tc = tc->prev;
+      }
+    }
+    equiv = equiv->next;
+  }
+}
+
+/* 
+   Pack binary data into a string
+*/
+SWIGRUNTIME char *
+SWIG_PackData(char *c, void *ptr, size_t sz) {
+  static char hex[17] = "0123456789abcdef";
+  unsigned char *u = (unsigned char *) ptr;
+  const unsigned char *eu =  u + sz;
+  register unsigned char uu;
+  for (; u != eu; ++u) {
+    uu = *u;
+    *(c++) = hex[(uu & 0xf0) >> 4];
+    *(c++) = hex[uu & 0xf];
+  }
+  return c;
+}
+
+/* 
+   Unpack binary data from a string
+*/
+SWIGRUNTIME const char *
+SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
+  register unsigned char *u = (unsigned char *) ptr;
+  register const unsigned char *eu =  u + sz;
+  for (; u != eu; ++u) {
+    register int d = *(c++);
+    register unsigned char uu = 0;
+    if ((d >= '0') && (d <= '9'))
+      uu = ((d - '0') << 4);
+    else if ((d >= 'a') && (d <= 'f'))
+      uu = ((d - ('a'-10)) << 4);
+    else 
+      return (char *) 0;
+    d = *(c++);
+    if ((d >= '0') && (d <= '9'))
+      uu |= (d - '0');
+    else if ((d >= 'a') && (d <= 'f'))
+      uu |= (d - ('a'-10));
+    else 
+      return (char *) 0;
+    *u = uu;
+  }
+  return c;
+}
+
+/*
+  This function will propagate the clientdata field of type to any new
+  swig_type_info structures that have been added into the list of
+  equivalent types.  It is like calling SWIG_TypeClientData(type,
+  clientdata) a second time.
+*/
+SWIGRUNTIME void
+SWIG_PropagateClientDataTL(swig_type_info *tl, swig_type_info *type) {
+  swig_type_info *equiv = type->next;
+  swig_type_info *tc;
+  if (!type->clientdata) return;
+  while (equiv) {
+    if (!equiv->converter) {
+      tc = tl;
+      while (tc) {
+        if ((strcmp(tc->name, equiv->name) == 0) && !tc->clientdata)
+          SWIG_TypeClientDataTL(tl,tc, type->clientdata);
+        tc = tc->prev;
+      }
+    }
+    equiv = equiv->next;
+  }
+}
 
-SWIGIMPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *);
-SWIGIMPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *);
-SWIGIMPORT(void *)           SWIG_TypeCast(swig_type_info *, void *);
-SWIGIMPORT(swig_type_info *) SWIG_TypeDynamicCast(swig_type_info *, void **);
-SWIGIMPORT(const char *)     SWIG_TypeName(const swig_type_info *);
-SWIGIMPORT(const char *)     SWIG_TypePrettyName(const swig_type_info *);
-SWIGIMPORT(swig_type_info *) SWIG_TypeQuery(const char *);
-SWIGIMPORT(void)             SWIG_TypeClientData(swig_type_info *, void *);
-SWIGIMPORT(char *)           SWIG_PackData(char *, void *, int);
-SWIGIMPORT(char *)           SWIG_UnpackData(char *, void *, int);
+/* 
+   Pack 'void *' into a string buffer.
+*/
+SWIGRUNTIME char *
+SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
+  char *r = buff;
+  if ((2*sizeof(void *) + 2) > bsz) return 0;
+  *(r++) = '_';
+  r = SWIG_PackData(r,&ptr,sizeof(void *));
+  if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
+  strcpy(r,name);
+  return buff;
+}
+
+SWIGRUNTIME const char *
+SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
+  if (*c != '_') {
+    if (strcmp(c,"NULL") == 0) {
+      *ptr = (void *) 0;
+      return name;
+    } else {
+      return 0;
+    }
+  }
+  return SWIG_UnpackData(++c,ptr,sizeof(void *));
+}
+
+SWIGRUNTIME char *
+SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
+  char *r = buff;
+  size_t lname = (name ? strlen(name) : 0);
+  if ((2*sz + 2 + lname) > bsz) return 0;
+  *(r++) = '_';
+  r = SWIG_PackData(r,ptr,sz);
+  if (lname) {
+    strncpy(r,name,lname+1);
+  } else {
+    *r = 0;
+  }
+  return buff;
+}
 
+SWIGRUNTIME const char *
+SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
+  if (*c != '_') {
+    if (strcmp(c,"NULL") == 0) {
+      memset(ptr,0,sz);
+      return name;
+    } else {
+      return 0;
+    }
+  }
+  return SWIG_UnpackData(++c,ptr,sz);
+}
 
 #ifdef __cplusplus
 }
 #endif
 
-
 /***********************************************************************
- * pyrun.swg for wxPython
+ * common.swg
+ *
+ *     This file contains generic SWIG runtime support for pointer
+ *     type checking as well as a few commonly used macros to control
+ *     external linkage.
  *
- * Include only the function prototypes and such from SWIG's pyrun.swg,
- * but not the runtime functions themselves.  This helps keep the
- * wrapper files clean of unnecessary stuff that is in the libpy.c file
- * anyway.
+ * Author : David Beazley (beazley@cs.uchicago.edu)
  *
+ * Copyright (c) 1999-2000, The University of Chicago
+ * 
+ * This file may be freely redistributed without license or fee provided
+ * this copyright message remains intact.
  ************************************************************************/
 
+
+#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
+#  if !defined(STATIC_LINKED)
+#    define SWIGEXPORT(a) __declspec(dllexport) a
+#  else
+#    define SWIGEXPORT(a) a
+#  endif
+#else
+#  define SWIGEXPORT(a) a
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/*************************************************************************/
+
+
+/* The static type info list */
+
+static swig_type_info *swig_type_list = 0;
+static swig_type_info **swig_type_list_handle = &swig_type_list;
+  
+
+/* Register a type mapping with the type-checking */
+static swig_type_info *
+SWIG_TypeRegister(swig_type_info *ti) {
+  return SWIG_TypeRegisterTL(swig_type_list_handle, ti);
+}
+
+/* Search for a swig_type_info structure */
+static swig_type_info *
+SWIG_TypeQuery(const char *name) {
+  return SWIG_TypeQueryTL(*swig_type_list_handle, name);
+}
+
+/* Set the clientdata field for a type */
+static void
+SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
+  SWIG_TypeClientDataTL(*swig_type_list_handle, ti, clientdata);
+}
+
+/* This function will propagate the clientdata field of type to
+* any new swig_type_info structures that have been added into the list
+* of equivalent types.  It is like calling
+* SWIG_TypeClientData(type, clientdata) a second time.
+*/
+static void
+SWIG_PropagateClientData(swig_type_info *type) {
+  SWIG_PropagateClientDataTL(*swig_type_list_handle, type);
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+/* -----------------------------------------------------------------------------
+ * SWIG API. Portion that goes into the runtime
+ * ----------------------------------------------------------------------------- */
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+/* -----------------------------------------------------------------------------
+ * for internal method declarations
+ * ----------------------------------------------------------------------------- */
+
+#ifndef SWIGINTERN
+#define SWIGINTERN static 
+#endif
+
+#ifndef SWIGINTERNSHORT
+#ifdef __cplusplus
+#define SWIGINTERNSHORT static inline 
+#else /* C case */
+#define SWIGINTERNSHORT static 
+#endif /* __cplusplus */
+#endif
+
+
+/*
+  Exception handling in wrappers
+*/
+#define SWIG_fail                goto fail
+#define SWIG_arg_fail(arg)       SWIG_Python_ArgFail(arg)
+#define SWIG_append_errmsg(msg)   SWIG_Python_AddErrMesg(msg,0)
+#define SWIG_preppend_errmsg(msg) SWIG_Python_AddErrMesg(msg,1)
+#define SWIG_type_error(type,obj) SWIG_Python_TypeError(type,obj)
+#define SWIG_null_ref(type)       SWIG_Python_NullRef(type)
+
+/*
+  Contract support
+*/
+#define SWIG_contract_assert(expr, msg) \
+ if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else
+
+/* -----------------------------------------------------------------------------
+ * Constant declarations
+ * ----------------------------------------------------------------------------- */
+
+/* Constant Types */
 #define SWIG_PY_INT     1
 #define SWIG_PY_FLOAT   2
 #define SWIG_PY_STRING  3
 #define SWIG_PY_POINTER 4
 #define SWIG_PY_BINARY  5
 
-/* Flags for pointer conversion */
-
-#define SWIG_POINTER_EXCEPTION     0x1
-#define SWIG_POINTER_DISOWN        0x2
-
-/* Exception handling in wrappers */
-#define SWIG_fail   goto fail
-
 /* Constant information structure */
 typedef struct swig_const_info {
     int type;
@@ -164,233 +566,891 @@ typedef struct swig_const_info {
     swig_type_info **ptype;
 } swig_const_info;
 
-/* Common SWIG API */
-#define SWIG_ConvertPtr(obj, pp, type, flags) \
-  SWIG_Python_ConvertPtr(obj, pp, type, flags)
-#define SWIG_NewPointerObj(p, type, flags) \
-  SWIG_Python_NewPointerObj(p, type, flags)
-#define SWIG_MustGetPtr(p, type, argnum, flags) \
-  SWIG_Python_MustGetPtr(p, type, argnum, flags)
-/* Python-specific SWIG API */
-#define SWIG_newvarlink() \
-  SWIG_Python_newvarlink()
-#define SWIG_addvarlink(p, name, get_attr, set_attr) \
-  SWIG_Python_addvarlink(p, name, get_attr, set_attr)
-#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags) \
-  SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)
-#define SWIG_NewPackedObj(ptr, sz, type) \
-  SWIG_Python_NewPackedObj(ptr, sz, type)
-#define SWIG_InstallConstants(d, constants) \
-  SWIG_Python_InstallConstants(d, constants)
-
-typedef double (*py_objasdbl_conv)(PyObject *obj);
-
-SWIGIMPORT(int)               SWIG_Python_ConvertPtr(PyObject *, void **, swig_type_info *, int);
-SWIGIMPORT(PyObject *)        SWIG_Python_NewPointerObj(void *, swig_type_info *,int own);
-SWIGIMPORT(void *)            SWIG_Python_MustGetPtr(PyObject *, swig_type_info *, int, int);
-SWIGIMPORT(PyObject *)        SWIG_Python_newvarlink(void);
-SWIGIMPORT(void)              SWIG_Python_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *));
-SWIGIMPORT(int)               SWIG_Python_ConvertPacked(PyObject *, void *, int sz, swig_type_info *, int);
-SWIGIMPORT(PyObject *)        SWIG_Python_NewPackedObj(void *, int sz, swig_type_info *);
-SWIGIMPORT(void)              SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]);
-
-
-/* Contract support */
 
-#define SWIG_contract_assert(expr, msg) if (!(expr)) { PyErr_SetString(PyExc_RuntimeError, (char *) msg ); goto fail; } else
+/* -----------------------------------------------------------------------------
+ * Alloc. memory flags
+ * ----------------------------------------------------------------------------- */
+#define SWIG_OLDOBJ  1
+#define SWIG_NEWOBJ  SWIG_OLDOBJ + 1
+#define SWIG_PYSTR   SWIG_NEWOBJ + 1
 
 #ifdef __cplusplus
 }
 #endif
 
 
+/***********************************************************************
+ * pyrun.swg
+ *
+ *     This file contains the runtime support for Python modules
+ *     and includes code for managing global variables and pointer
+ *     type checking.
+ *
+ * Author : David Beazley (beazley@cs.uchicago.edu)
+ ************************************************************************/
 
-/* -------- TYPES TABLE (BEGIN) -------- */
-
-#define  SWIGTYPE_p_wxLongLong swig_types[0] 
-#define  SWIGTYPE_p_wxControl swig_types[1] 
-#define  SWIGTYPE_p_wxWindow swig_types[2] 
-#define  SWIGTYPE_p_wxEvent swig_types[3] 
-#define  SWIGTYPE_p_wxObject swig_types[4] 
-#define  SWIGTYPE_p_wxEvtHandler swig_types[5] 
-#define  SWIGTYPE_p_char swig_types[6] 
-#define  SWIGTYPE_p_wxMediaCtrl swig_types[7] 
-#define  SWIGTYPE_p_wxValidator swig_types[8] 
-#define  SWIGTYPE_p_wxNotifyEvent swig_types[9] 
-#define  SWIGTYPE_p_wxCommandEvent swig_types[10] 
-#define  SWIGTYPE_p_wxMediaEvent swig_types[11] 
-static swig_type_info *swig_types[13];
-
-/* -------- TYPES TABLE (END) -------- */
+/* Common SWIG API */
+#define SWIG_ConvertPtr(obj, pp, type, flags)    SWIG_Python_ConvertPtr(obj, pp, type, flags)
+#define SWIG_NewPointerObj(p, type, flags)       SWIG_Python_NewPointerObj(p, type, flags)
+#define SWIG_MustGetPtr(p, type, argnum, flags)  SWIG_Python_MustGetPtr(p, type, argnum, flags)
 
+/* Python-specific SWIG API */
+#define SWIG_ConvertPacked(obj, ptr, sz, ty, flags)   SWIG_Python_ConvertPacked(obj, ptr, sz, ty, flags)
+#define SWIG_NewPackedObj(ptr, sz, type)              SWIG_Python_NewPackedObj(ptr, sz, type)
 
-/*-----------------------------------------------
-              @(target):= _media.so
-  ------------------------------------------------*/
-#define SWIG_init    init_media
 
-#define SWIG_name    "_media"
+/* -----------------------------------------------------------------------------
+ * Pointer declarations
+ * ----------------------------------------------------------------------------- */
+/*
+  Use SWIG_NO_COBJECT_TYPES to force the use of strings to represent
+  C/C++ pointers in the python side. Very useful for debugging, but
+  not always safe.
+*/
+#if !defined(SWIG_NO_COBJECT_TYPES) && !defined(SWIG_COBJECT_TYPES)
+#  define SWIG_COBJECT_TYPES
+#endif
 
-/* Auxiliar swig  macros that appear in the header */
+/* Flags for pointer conversion */
+#define SWIG_POINTER_EXCEPTION     0x1
+#define SWIG_POINTER_DISOWN        0x2
 
-#define SWIG_OLDOBJ  1
-#define SWIG_NEWOBJ  SWIG_OLDOBJ + 1
-#define SWIG_PYSTR   SWIG_NEWOBJ + 1
 
 #ifdef __cplusplus
-#define SWIGSTATICINLINE(a) static inline a
-#define SWIGSTATIC(a) static a
-#define swig_new_array(size,Type) (new Type[(size)])
-#define swig_delete(cptr) delete cptr
-#define swig_delete_array(cptr) delete[] cptr
-#define swig_const_cast(a,Type) const_cast<Type >(a)
-#define swig_static_cast(a,Type) static_cast<Type >(a)
-#define swig_reinterpret_cast(a,Type) reinterpret_cast<Type >(a)
-#define swig_new_copy(ptr,Type) (new Type(*ptr))
-#define swig_numeric_cast(a,Type) static_cast<Type >(a)
-
-#else /* C case */
+extern "C" {
+#endif
 
-#define SWIGSTATICINLINE(a) static a
-#define SWIGSTATIC(a) static a
-#define swig_new_array(size,Type) ((Type*) malloc((size)*sizeof(Type)))
-#define swig_delete(cptr) free((char*)cptr)
-#define swig_delete_array(cptr) free((char*)cptr)
-#define swig_const_cast(a,Type) (Type)(a)
-#define swig_static_cast(a,Type) (Type)(a)
-#define swig_reinterpret_cast(a,Type) (Type)(a)
-#define swig_numeric_cast(a,Type) (Type)(a)
-#define swig_new_copy(ptr,Type)  ((Type*)memcpy(malloc(sizeof(Type)),ptr,sizeof(Type)))
+/* -----------------------------------------------------------------------------
+ * Create a new pointer string 
+ * ----------------------------------------------------------------------------- */
 
-#endif /* __cplusplus */
+#ifndef SWIG_BUFFER_SIZE
+#define SWIG_BUFFER_SIZE 1024
+#endif
 
+#if defined(SWIG_COBJECT_TYPES)
+#if !defined(SWIG_COBJECT_PYTHON)
+/* -----------------------------------------------------------------------------
+ * Implements a simple Swig Object type, and use it instead of PyCObject
+ * ----------------------------------------------------------------------------- */
 
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_signed_SS_char PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_unsigned_SS_char PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_short PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_unsigned_SS_short PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_int PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_long PyInt_FromLong
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_float PyFloat_FromDouble
-/*@@*/
-/*@/opt/swig/share/swig/1.3.22/python/pymacros.swg,63,SWIG_define@*/
-#define SWIG_From_double PyFloat_FromDouble
-/*@@*/
+typedef struct {
+  PyObject_HEAD
+  void *ptr;
+  const char *desc;
+} PySwigObject;
 
+/* Declarations for objects of type PySwigObject */
 
-#include "wx/wxPython/wxPython.h"
-#include "wx/wxPython/pyclasses.h"
+SWIGRUNTIME int
+PySwigObject_print(PySwigObject *v, FILE *fp, int flags)
+{
+  char result[SWIG_BUFFER_SIZE];
+  if (SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result))) {
+    fputs("<Swig Object at ", fp); fputs(result, fp); fputs(">", fp);
+    return 0; 
+  } else {
+    return 1; 
+  }
+}
+  
+SWIGRUNTIME PyObject *
+PySwigObject_repr(PySwigObject *v)
+{
+  char result[SWIG_BUFFER_SIZE];
+  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
+    PyString_FromFormat("<Swig Object at %s>", result) : 0;
+}
 
-#include <wx/mediactrl.h>
-#include <wx/uri.h>
+SWIGRUNTIME PyObject *
+PySwigObject_str(PySwigObject *v)
+{
+  char result[SWIG_BUFFER_SIZE];
+  return SWIG_PackVoidPtr(result, v->ptr, v->desc, sizeof(result)) ?
+    PyString_FromString(result) : 0;
+}
 
+SWIGRUNTIME PyObject *
+PySwigObject_long(PySwigObject *v)
+{
+  return PyLong_FromUnsignedLong((unsigned long) v->ptr);
+}
 
-#if !wxUSE_MEDIACTRL
-enum wxMediaState
+SWIGRUNTIME PyObject *
+PySwigObject_oct(PySwigObject *v)
 {
-    wxMEDIASTATE_STOPPED=0,
-    wxMEDIASTATE_PAUSED=0,
-    wxMEDIASTATE_PLAYING=0
-};
+  char buf[100];
+  unsigned long x = (unsigned long)v->ptr;
+  if (x == 0)
+    strcpy(buf, "0");
+  else
+    PyOS_snprintf(buf, sizeof(buf), "0%lo", x);
+  return PyString_FromString(buf);
+}
 
-enum wxMediaTimeFormat
+SWIGRUNTIME PyObject *
+PySwigObject_hex(PySwigObject *v)
 {
-    wxMEDIATIMEFORMAT_TIME=0
-};
+  char buf[100];
+  PyOS_snprintf(buf, sizeof(buf), "0x%lx", (unsigned long)v->ptr);
+  return PyString_FromString(buf);
+}
 
-class WXDLLIMPEXP_MEDIA wxMediaEvent : public wxNotifyEvent
+SWIGRUNTIME int
+PySwigObject_compare(PySwigObject *v, PySwigObject *w)
 {
-public:
-    wxMediaEvent(wxEventType, int )    { wxPyRaiseNotImplemented(); }
-};
+  int c = strcmp(v->desc, w->desc);
+  if (c) {
+    return c;
+  } else {
+    void *i = v->ptr;
+    void *j = w->ptr;
+    return (i < j) ? -1 : (i > j) ? 1 : 0;
+  }
+}
 
-class wxMediaCtrl : public wxControl
+SWIGRUNTIME void
+PySwigObject_dealloc(PySwigObject *self)
 {
-public:
-      wxMediaCtrl()    { wxPyRaiseNotImplemented(); }
+  PyObject_DEL(self);
+}
 
-    wxMediaCtrl(wxWindow* , wxWindowID ,
-                const wxString& ,
-                const wxPoint& ,
-                const wxSize& ,
-                long style ,
-                const wxString& ,
-                const wxValidator& ,
-                const wxString& ) { wxPyRaiseNotImplemented(); }
+SWIGRUNTIME PyTypeObject*
+PySwigObject_GetType() {
+  static char PySwigObject_Type__doc__[] = 
+    "Swig object carries a C/C++ instance pointer";
+  
+  static PyNumberMethods PySwigObject_as_number = {
+    (binaryfunc)0, /*nb_add*/
+    (binaryfunc)0, /*nb_subtract*/
+    (binaryfunc)0, /*nb_multiply*/
+    (binaryfunc)0, /*nb_divide*/
+    (binaryfunc)0, /*nb_remainder*/
+    (binaryfunc)0, /*nb_divmod*/
+    (ternaryfunc)0,/*nb_power*/
+    (unaryfunc)0,  /*nb_negative*/
+    (unaryfunc)0,  /*nb_positive*/
+    (unaryfunc)0,  /*nb_absolute*/
+    (inquiry)0,    /*nb_nonzero*/
+    0,            /*nb_invert*/
+    0,            /*nb_lshift*/
+    0,            /*nb_rshift*/
+    0,            /*nb_and*/
+    0,            /*nb_xor*/
+    0,            /*nb_or*/
+    (coercion)0,   /*nb_coerce*/
+    (unaryfunc)PySwigObject_long, /*nb_int*/
+    (unaryfunc)PySwigObject_long, /*nb_long*/
+    (unaryfunc)0,                 /*nb_float*/
+    (unaryfunc)PySwigObject_oct,  /*nb_oct*/
+    (unaryfunc)PySwigObject_hex,  /*nb_hex*/
+#if PY_VERSION_HEX >= 0x02000000
+    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */ 
+#endif
+  };
+
+  static int type_init = 0;  
+  static PyTypeObject PySwigObject_Type;
+
+  if (!type_init) {
+    PyTypeObject tmp = {
+    PyObject_HEAD_INIT(&PyType_Type)
+    0,                                 /*ob_size*/
+    "PySwigObject",                    /*tp_name*/
+    sizeof(PySwigObject),              /*tp_basicsize*/
+    0,                                 /*tp_itemsize*/
+    /* methods */
+    (destructor)PySwigObject_dealloc,  /*tp_dealloc*/
+    (printfunc)PySwigObject_print,     /*tp_print*/
+    (getattrfunc)0,                    /*tp_getattr*/
+    (setattrfunc)0,                    /*tp_setattr*/
+    (cmpfunc)PySwigObject_compare,     /*tp_compare*/
+    (reprfunc)PySwigObject_repr,       /*tp_repr*/
+    &PySwigObject_as_number,           /*tp_as_number*/
+    0,                                 /*tp_as_sequence*/
+    0,                                 /*tp_as_mapping*/
+    (hashfunc)0,                       /*tp_hash*/
+    (ternaryfunc)0,                    /*tp_call*/
+    (reprfunc)PySwigObject_str,                /*tp_str*/
+    /* Space for future expansion */
+    0L,0L,0L,0L,
+    PySwigObject_Type__doc__,          /* Documentation string */
+#if PY_VERSION_HEX >= 0x02000000
+    0,                                  /* tp_traverse */
+    0,                                  /* tp_clear */
+#endif
+#if PY_VERSION_HEX >= 0x02010000
+    0,                                  /* tp_richcompare */
+    0,                                  /* tp_weaklistoffset */
+#endif
+#if PY_VERSION_HEX >= 0x02020000
+    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
+#endif
+#if PY_VERSION_HEX >= 0x02030000
+    0,                                  /* tp_del */
+#endif
+#ifdef COUNT_ALLOCS
+    0,0,0,0                             /* tp_alloc -> tp_next */
+#endif
+    };
 
-    wxMediaCtrl(wxWindow* ,
-                wxWindowID ,
-                const wxURI& ,
-                const wxPoint&,
-                const wxSize& ,
-                long style,
-                const wxString& ,
-                const wxValidator& ,
-                const wxString& ) { wxPyRaiseNotImplemented(); }
+    PySwigObject_Type = tmp;
+    type_init = 1;
+  }
 
-    bool Create(wxWindow* , wxWindowID ,
-                const wxString& ,
-                const wxPoint& ,
-                const wxSize& ,
-                long style ,
-                const wxString& ,
-                const wxValidator& ,
-                const wxString& ) { return false; }
+  return &PySwigObject_Type;
+}
 
-    bool Create(wxWindow* ,
-                wxWindowID ,
-                const wxURI& ,
-                const wxPoint&,
-                const wxSize& ,
-                long style,
-                const wxString& ,
-                const wxValidator& ,
-                const wxString& ) { return false; }
-    
-    bool Play() { return false; }
-    bool Pause() { return false; }
-    bool Stop() { return false; }
+SWIGRUNTIME PyObject *
+PySwigObject_FromVoidPtrAndDesc(void *ptr, const char *desc)
+{
+  PySwigObject *self = PyObject_NEW(PySwigObject, PySwigObject_GetType());
+  if (self == NULL) return NULL;
+  self->ptr = ptr;
+  self->desc = desc;
+  return (PyObject *)self;
+}
 
-    bool Load(const wxString& fileName) { return false; }
-    bool Load(const wxURI& location) { return false; }
+SWIGRUNTIMEINLINE void *
+PySwigObject_AsVoidPtr(PyObject *self)
+{
+  return ((PySwigObject *)self)->ptr;
+}
 
-    void Loop(bool bLoop = true) {}
-    bool IsLooped() { return false; }
+SWIGRUNTIMEINLINE const char *
+PySwigObject_GetDesc(PyObject *self)
+{
+  return ((PySwigObject *)self)->desc;
+}
 
-    wxMediaState GetState() { return wxMEDIASTATE_STOPPED; }
+SWIGRUNTIMEINLINE int
+PySwigObject_Check(PyObject *op) {
+  return ((op)->ob_type == PySwigObject_GetType()) 
+    || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);
+}
 
-    double GetPlaybackRate() { return 0.0; };
-    bool SetPlaybackRate(double dRate) { return false; }
+/* -----------------------------------------------------------------------------
+ * Implements a simple Swig Packed type, and use it instead of string
+ * ----------------------------------------------------------------------------- */
 
-    bool SetPosition(wxLongLong where) { return false; }
-    wxLongLong GetPosition() { return 0; }
-    wxLongLong GetDuration() { return 0; }
-};
+typedef struct {
+  PyObject_HEAD
+  void *pack;
+  const char *desc;
+  size_t size;
+} PySwigPacked;
 
-const wxEventType wxEVT_MEDIA_FINISHED = 0;
-const wxEventType wxEVT_MEDIA_STOP = 0;
+SWIGRUNTIME int
+PySwigPacked_print(PySwigPacked *v, FILE *fp, int flags)
+{
+  char result[SWIG_BUFFER_SIZE];
+  fputs("<Swig Packed ", fp); 
+  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
+    fputs("at ", fp); 
+    fputs(result, fp); 
+  }
+  fputs(v->desc,fp); 
+  fputs(">", fp);
+  return 0; 
+}
+  
+SWIGRUNTIME PyObject *
+PySwigPacked_repr(PySwigPacked *v)
+{
+  char result[SWIG_BUFFER_SIZE];
+  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
+    return PyString_FromFormat("<Swig Packed at %s%s>", result, v->desc);
+  } else {
+    return PyString_FromFormat("<Swig Packed %s>", v->desc);
+  }  
+}
 
-#endif
+SWIGRUNTIME PyObject *
+PySwigPacked_str(PySwigPacked *v)
+{
+  char result[SWIG_BUFFER_SIZE];
+  if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
+    return PyString_FromFormat("%s%s", result, v->desc);
+  } else {
+    return PyString_FromFormat("%s", v->desc);
+  }  
+}
+
+SWIGRUNTIME int
+PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
+{
+  int c = strcmp(v->desc, w->desc);
+  if (c) {
+    return c;
+  } else {
+    size_t i = v->size;
+    size_t j = w->size;
+    int s = (i < j) ? -1 : (i > j) ? 1 : 0;
+    return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
+  }
+}
+
+SWIGRUNTIME void
+PySwigPacked_dealloc(PySwigPacked *self)
+{
+  free(self->pack);
+  PyObject_DEL(self);
+}
+
+SWIGRUNTIME PyTypeObject*
+PySwigPacked_GetType() {
+  static char PySwigPacked_Type__doc__[] = 
+    "Swig object carries a C/C++ instance pointer";
+  static int type_init = 0;
+  
+  static PyTypeObject PySwigPacked_Type;
+  if (!type_init) {
+    PyTypeObject tmp = {
+    PyObject_HEAD_INIT(&PyType_Type)
+    0,                                 /*ob_size*/
+    "PySwigPacked",                    /*tp_name*/
+    sizeof(PySwigPacked),              /*tp_basicsize*/
+    0,                                 /*tp_itemsize*/
+    /* methods */
+    (destructor)PySwigPacked_dealloc,  /*tp_dealloc*/
+    (printfunc)PySwigPacked_print,     /*tp_print*/
+    (getattrfunc)0,                    /*tp_getattr*/
+    (setattrfunc)0,                    /*tp_setattr*/
+    (cmpfunc)PySwigPacked_compare,     /*tp_compare*/
+    (reprfunc)PySwigPacked_repr,       /*tp_repr*/
+    0,                                 /*tp_as_number*/
+    0,                                 /*tp_as_sequence*/
+    0,                                 /*tp_as_mapping*/
+    (hashfunc)0,                       /*tp_hash*/
+    (ternaryfunc)0,                    /*tp_call*/
+    (reprfunc)PySwigPacked_str,                /*tp_str*/
+    /* Space for future expansion */
+    0L,0L,0L,0L,
+    PySwigPacked_Type__doc__,          /* Documentation string */
+#if PY_VERSION_HEX >= 0x02000000
+    0,                                  /* tp_traverse */
+    0,                                  /* tp_clear */
+#endif
+#if PY_VERSION_HEX >= 0x02010000
+    0,                                  /* tp_richcompare */
+    0,                                  /* tp_weaklistoffset */
+#endif
+#if PY_VERSION_HEX >= 0x02020000         
+    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
+#endif
+#if PY_VERSION_HEX >= 0x02030000
+    0,                                  /* tp_del */
+#endif
+#ifdef COUNT_ALLOCS
+    0,0,0,0                             /* tp_alloc -> tp_next */
+#endif
+    };
+
+    PySwigPacked_Type = tmp;
+    type_init = 1;
+  }
+  
+      
+
+  return &PySwigPacked_Type;
+}
+
+SWIGRUNTIME PyObject *
+PySwigPacked_FromDataAndDesc(void *ptr, size_t size, const char *desc)
+{
+  PySwigPacked *self = PyObject_NEW(PySwigPacked, PySwigPacked_GetType());
+  if (self == NULL) {
+    return NULL;
+  } else {
+    void *pack = malloc(size);
+    memcpy(pack, ptr, size);
+    self->pack = pack;
+    self->desc = desc;
+    self->size = size;
+    return (PyObject *) self;
+  }
+}
+
+SWIGRUNTIMEINLINE const char *
+PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
+{
+  PySwigPacked *self = (PySwigPacked *)obj;
+  if (self->size != size) return 0;
+  memcpy(ptr, self->pack, size);
+  return self->desc;
+}
+
+SWIGRUNTIMEINLINE const char *
+PySwigPacked_GetDesc(PyObject *self)
+{
+  return ((PySwigPacked *)self)->desc;
+}
+
+SWIGRUNTIMEINLINE int
+PySwigPacked_Check(PyObject *op) {
+  return ((op)->ob_type == PySwigPacked_GetType()) 
+    || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
+}
+
+#else
+/* -----------------------------------------------------------------------------
+ * Use the old Python PyCObject instead of PySwigObject
+ * ----------------------------------------------------------------------------- */
+
+#define PySwigObject_GetDesc(obj)                 PyCObject_GetDesc(obj)
+#define PySwigObject_Check(obj)                   PyCObject_Check(obj)
+#define PySwigObject_AsVoidPtr(obj)       PyCObject_AsVoidPtr(obj)
+#define PySwigObject_FromVoidPtrAndDesc(p, d)  PyCObject_FromVoidPtrAndDesc(p, d, NULL)
+
+#endif
+
+#endif
+
+/* -----------------------------------------------------------------------------
+ * errors manipulation
+ * ----------------------------------------------------------------------------- */
+
+SWIGRUNTIME void
+SWIG_Python_TypeError(const char *type, PyObject *obj)
+{
+  if (type) {
+#if defined(SWIG_COBJECT_TYPES)
+    if (PySwigObject_Check(obj)) {
+      const char *otype = (const char *) PySwigObject_GetDesc(obj);
+      if (otype) {
+       PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
+                    type, otype);
+       return;
+      }
+    } else 
+#endif      
+    {
+      const char *otype = (obj ? obj->ob_type->tp_name : 0); 
+      if (otype) {
+       PyObject *str = PyObject_Str(obj);
+       const char *cstr = str ? PyString_AsString(str) : 0;
+       if (cstr) {
+         PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
+                      type, otype, cstr);
+       } else {
+         PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
+                      type, otype);
+       }
+       Py_DECREF(str);
+       return;
+      }
+    }   
+    PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
+  } else {
+    PyErr_Format(PyExc_TypeError, "unexpected type is received");
+  }
+}
+
+SWIGRUNTIMEINLINE void
+SWIG_Python_NullRef(const char *type)
+{
+  if (type) {
+    PyErr_Format(PyExc_TypeError, "null reference of type '%s' was received",type);
+  } else {
+    PyErr_Format(PyExc_TypeError, "null reference was received");
+  }
+}
+
+SWIGRUNTIME int
+SWIG_Python_AddErrMesg(const char* mesg, int infront)
+{
+  if (PyErr_Occurred()) {
+    PyObject *type = 0;
+    PyObject *value = 0;
+    PyObject *traceback = 0;
+    PyErr_Fetch(&type, &value, &traceback);
+    if (value) {
+      PyObject *old_str = PyObject_Str(value);
+      Py_XINCREF(type);
+      PyErr_Clear();
+      if (infront) {
+       PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
+      } else {
+       PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
+      }
+      Py_DECREF(old_str);
+    }
+    return 1;
+  } else {
+    return 0;
+  }
+}
+
+SWIGRUNTIME int
+SWIG_Python_ArgFail(int argnum)
+{
+  if (PyErr_Occurred()) {
+    /* add information about failing argument */
+    char mesg[256];
+    sprintf(mesg, "argument number %d:", argnum);
+    return SWIG_Python_AddErrMesg(mesg, 1);
+  } else {
+    return 0;
+  }
+}
+
+
+/* -----------------------------------------------------------------------------
+ * pointers/data manipulation
+ * ----------------------------------------------------------------------------- */
+
+/* Convert a pointer value */
+SWIGRUNTIME int
+SWIG_Python_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) {
+  swig_type_info *tc;
+  const char *c = 0;
+  static PyObject *SWIG_this = 0;
+  int    newref = 0;
+  PyObject  *pyobj = 0;
+  void *vptr;
+  
+  if (!obj) return 0;
+  if (obj == Py_None) {
+    *ptr = 0;
+    return 0;
+  }
+
+#ifdef SWIG_COBJECT_TYPES
+  if (!(PySwigObject_Check(obj))) {
+    if (!SWIG_this)
+      SWIG_this = PyString_FromString("this");
+    pyobj = obj;
+    obj = PyObject_GetAttr(obj,SWIG_this);
+    newref = 1;
+    if (!obj) goto type_error;
+    if (!PySwigObject_Check(obj)) {
+      Py_DECREF(obj);
+      goto type_error;
+    }
+  }  
+  vptr = PySwigObject_AsVoidPtr(obj);
+  c = (const char *) PySwigObject_GetDesc(obj);
+  if (newref) { Py_DECREF(obj); }
+  goto type_check;
+#else
+  if (!(PyString_Check(obj))) {
+    if (!SWIG_this)
+      SWIG_this = PyString_FromString("this");
+    pyobj = obj;
+    obj = PyObject_GetAttr(obj,SWIG_this);
+    newref = 1;
+    if (!obj) goto type_error;
+    if (!PyString_Check(obj)) {
+      Py_DECREF(obj);
+      goto type_error;
+    }
+  } 
+  c = PyString_AS_STRING(obj);
+  /* Pointer values must start with leading underscore */
+  c = SWIG_UnpackVoidPtr(c, &vptr, ty->name);
+  if (newref) { Py_DECREF(obj); }
+  if (!c) goto type_error;
+#endif
+
+type_check:
+
+  if (ty) {
+    tc = SWIG_TypeCheck(c,ty);
+    if (!tc) goto type_error;
+    *ptr = SWIG_TypeCast(tc,vptr);
+  } else {
+    *ptr = vptr;
+  }
+
+  if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) {
+    PyObject_SetAttrString(pyobj,(char*)"thisown",Py_False);
+  }
+  return 0;
+
+type_error:
+  PyErr_Clear();
+  if (pyobj && !obj) {    
+    obj = pyobj;
+    if (PyCFunction_Check(obj)) {
+      /* here we get the method pointer for callbacks */
+      char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
+      c = doc ? strstr(doc, "swig_ptr: ") : 0;
+      if (c) {
+       c = SWIG_UnpackVoidPtr(c + 10, &vptr, ty->name);
+       if (!c) goto type_error;
+       goto type_check;
+      }
+    }
+  }
+  if (flags & SWIG_POINTER_EXCEPTION) {
+    if (ty) {
+      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
+    } else {
+      SWIG_Python_TypeError("C/C++ pointer", obj);
+    }
+  }
+  return -1;
+}
+
+/* Convert a pointer value, signal an exception on a type mismatch */
+SWIGRUNTIME void *
+SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
+  void *result;
+  if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
+    PyErr_Clear();
+    if (flags & SWIG_POINTER_EXCEPTION) {
+      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
+      SWIG_Python_ArgFail(argnum);
+    }
+  }
+  return result;
+}
+
+/* Convert a packed value value */
+SWIGRUNTIME int
+SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty, int flags) {
+  swig_type_info *tc;
+  const char *c = 0;
+
+#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
+  c = PySwigPacked_UnpackData(obj, ptr, sz);
+#else
+  if ((!obj) || (!PyString_Check(obj))) goto type_error;
+  c = PyString_AS_STRING(obj);
+  /* Pointer values must start with leading underscore */
+  c = SWIG_UnpackDataName(c, ptr, sz, ty->name);
+#endif
+  if (!c) goto type_error;
+  if (ty) {
+    tc = SWIG_TypeCheck(c,ty);
+    if (!tc) goto type_error;
+  }
+  return 0;
+
+type_error:
+  PyErr_Clear();
+  if (flags & SWIG_POINTER_EXCEPTION) {
+    if (ty) {
+      SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
+    } else {
+      SWIG_Python_TypeError("C/C++ packed data", obj);
+    }
+  }
+  return -1;
+}  
+
+/* Create a new array object */
+SWIGRUNTIME PyObject *
+SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int own) {
+  PyObject *robj = 0;
+  if (!ptr) {
+    Py_INCREF(Py_None);
+    return Py_None;
+  }
+#ifdef SWIG_COBJECT_TYPES
+  robj = PySwigObject_FromVoidPtrAndDesc((void *) ptr, (char *)type->name);
+#else
+  {
+    char result[SWIG_BUFFER_SIZE];
+    robj = SWIG_PackVoidPtr(result, ptr, type->name, sizeof(result)) ?
+      PyString_FromString(result) : 0;
+  }
+#endif
+  if (!robj || (robj == Py_None)) return robj;
+  if (type->clientdata) {
+    PyObject *inst;
+    PyObject *args = Py_BuildValue((char*)"(O)", robj);
+    Py_DECREF(robj);
+    inst = PyObject_CallObject((PyObject *) type->clientdata, args);
+    Py_DECREF(args);
+    if (inst) {
+      if (own) {
+        PyObject_SetAttrString(inst,(char*)"thisown",Py_True);
+      }
+      robj = inst;
+    }
+  }
+  return robj;
+}
+
+SWIGRUNTIME PyObject *
+SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
+  PyObject *robj = 0;
+  if (!ptr) {
+    Py_INCREF(Py_None);
+    return Py_None;
+  }
+#if defined(SWIG_COBJECT_TYPES) && !defined(SWIG_COBJECT_PYTHON)
+  robj = PySwigPacked_FromDataAndDesc((void *) ptr, sz, (char *)type->name);
+#else
+  {
+    char result[SWIG_BUFFER_SIZE];
+    robj = SWIG_PackDataName(result, ptr, sz, type->name, sizeof(result)) ?
+      PyString_FromString(result) : 0;
+  }
+#endif
+  return robj;
+}
+
+/* -----------------------------------------------------------------------------*
+ *  Get type list 
+ * -----------------------------------------------------------------------------*/
+
+#ifdef SWIG_LINK_RUNTIME
+void *SWIG_ReturnGlobalTypeList(void *);
+#endif
+
+SWIGRUNTIME swig_type_info **
+SWIG_Python_GetTypeListHandle() {
+  static void *type_pointer = (void *)0;
+  /* first check if module already created */
+  if (!type_pointer) {
+#ifdef SWIG_LINK_RUNTIME
+    type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
+#else
+    type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
+                                   (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
+    if (PyErr_Occurred()) {
+      PyErr_Clear();
+      type_pointer = (void *)0;
+    }
+  }
+#endif
+  return (swig_type_info **) type_pointer;
+}
+
+/*
+  Search for a swig_type_info structure
+ */
+SWIGRUNTIMEINLINE swig_type_info *
+SWIG_Python_GetTypeList() {
+  swig_type_info **tlh = SWIG_Python_GetTypeListHandle();
+  return tlh ? *tlh : (swig_type_info*)0;
+}
+
+#define SWIG_Runtime_GetTypeList SWIG_Python_GetTypeList 
+
+#ifdef __cplusplus
+}
+#endif
+
+
+/* -------- TYPES TABLE (BEGIN) -------- */
+
+#define  SWIGTYPE_p_wxObject swig_types[0] 
+#define  SWIGTYPE_p_unsigned_char swig_types[1] 
+#define  SWIGTYPE_p_wxMediaEvent swig_types[2] 
+#define  SWIGTYPE_p_wxWindow swig_types[3] 
+#define  SWIGTYPE_p_wxValidator swig_types[4] 
+#define  SWIGTYPE_p_wxCommandEvent swig_types[5] 
+#define  SWIGTYPE_p_unsigned_long swig_types[6] 
+#define  SWIGTYPE_p_unsigned_int swig_types[7] 
+#define  SWIGTYPE_unsigned_int swig_types[8] 
+#define  SWIGTYPE_p_form_ops_t swig_types[9] 
+#define  SWIGTYPE_p_wxDuplexMode swig_types[10] 
+#define  SWIGTYPE_p_char swig_types[11] 
+#define  SWIGTYPE_p_wxFileOffset swig_types[12] 
+#define  SWIGTYPE_p_wxEvtHandler swig_types[13] 
+#define  SWIGTYPE_std__ptrdiff_t swig_types[14] 
+#define  SWIGTYPE_ptrdiff_t swig_types[15] 
+#define  SWIGTYPE_p_wxNotifyEvent swig_types[16] 
+#define  SWIGTYPE_p_wxControl swig_types[17] 
+#define  SWIGTYPE_p_wxMediaCtrl swig_types[18] 
+#define  SWIGTYPE_p_wxEvent swig_types[19] 
+#define  SWIGTYPE_p_wxPaperSize swig_types[20] 
+#define  SWIGTYPE_p_int swig_types[21] 
+static swig_type_info *swig_types[23];
+
+/* -------- TYPES TABLE (END) -------- */
+
+
+/*-----------------------------------------------
+              @(target):= _media.so
+  ------------------------------------------------*/
+#define SWIG_init    init_media
+
+#define SWIG_name    "_media"
+
+#include "wx/wxPython/wxPython.h"
+#include "wx/wxPython/pyclasses.h"
+
+#include <wx/mediactrl.h>
+#include <wx/uri.h>
+
+
+#if !wxUSE_MEDIACTRL
+enum wxMediaState
+{
+    wxMEDIASTATE_STOPPED=0,
+    wxMEDIASTATE_PAUSED=0,
+    wxMEDIASTATE_PLAYING=0
+};
+
+
+class wxMediaEvent : public wxNotifyEvent
+{
+public:
+    wxMediaEvent(wxEventType, int )    { wxPyRaiseNotImplemented(); }
+};
+
+class wxMediaCtrl : public wxControl
+{
+public:
+      wxMediaCtrl()    { wxPyRaiseNotImplemented(); }
+
+    wxMediaCtrl(wxWindow* , wxWindowID ,
+                const wxString& ,
+                const wxPoint& ,
+                const wxSize& ,
+                long style ,
+                const wxString& ,
+                const wxValidator& ,
+                const wxString& ) { wxPyRaiseNotImplemented(); }
+
+    bool Create(wxWindow* , wxWindowID ,
+                const wxString& ,
+                const wxPoint& ,
+                const wxSize& ,
+                long style ,
+                const wxString& ,
+                const wxValidator& ,
+                const wxString& ) { return false; }
+
+    bool Play() { return false; }
+    bool Pause() { return false; }
+    bool Stop() { return false; }
+
+    bool Load(const wxString& fileName) { return false; }
+    bool Load(const wxURI& location) { return false; }
+
+    wxMediaState GetState() { return wxMEDIASTATE_STOPPED; }
+
+    double GetPlaybackRate()  { return 0.0; }
+    bool SetPlaybackRate(double dRate) { return false; }
+
+    wxFileOffset Seek(wxFileOffset where, wxSeekMode mode = wxFromStart)
+    { return 0; }
+    
+    wxFileOffset Tell()    { return 0; }
+    wxFileOffset Length()    { return 0; }
+};
+
+const wxEventType wxEVT_MEDIA_FINISHED = 0;
+const wxEventType wxEVT_MEDIA_STOP = 0;
+
+#endif
+
+
+  /*@/opt/swig/share/swig/1.3.24/python/pymacros.swg,66,SWIG_define@*/
+#define SWIG_From_int PyInt_FromLong
+/*@@*/
 
 
 #include <limits.h>
 
 
-SWIGSTATICINLINE(int)
+SWIGINTERN int
   SWIG_CheckLongInRange(long value, long min_value, long max_value,
                        const char *errmsg)
 {
@@ -413,8 +1473,7 @@ SWIGSTATICINLINE(int)
 }
 
 
-// See my_fragments.i
-SWIGSTATICINLINE(int)
+SWIGINTERN int
 SWIG_AsVal_long(PyObject* obj, long* val)
 {
     if (PyNumber_Check(obj)) {
@@ -422,24 +1481,21 @@ SWIG_AsVal_long(PyObject* obj, long* val)
         return 1;
     }
     else {
-        PyObject* errmsg = PyString_FromFormat("Expected number, got %s",
-                                               obj->ob_type->tp_name);
-        PyErr_SetObject(PyExc_TypeError, errmsg);
-        Py_DECREF(errmsg);
+        SWIG_type_error("number", obj);
     }
     return 0;
 }
 
 
 #if INT_MAX != LONG_MAX
-SWIGSTATICINLINE(int)
+SWIGINTERN int
   SWIG_AsVal_int(PyObject *obj, int *val)
 { 
-  const char* errmsg = val ? "int" : 0;
+  const char* errmsg = val ? "int" : (char*)0;
   long v;
   if (SWIG_AsVal_long(obj, &v)) {
     if (SWIG_CheckLongInRange(v, INT_MIN,INT_MAX, errmsg)) {
-      if (val) *val = swig_numeric_cast(v, int);
+      if (val) *val = (int)(v);
       return 1;
     } else {
       return 0;
@@ -448,12 +1504,12 @@ SWIGSTATICINLINE(int)
     PyErr_Clear();
   }
   if (val) {
-    PyErr_SetString(PyExc_TypeError, "an int is expected");
+    SWIG_type_error(errmsg, obj);
   }
   return 0;    
 }
 #else
-SWIGSTATICINLINE(int)
+SWIGINTERNSHORT int
   SWIG_AsVal_int(PyObject *obj, int *val)
 {
   return SWIG_AsVal_long(obj,(long*)val);
@@ -461,15 +1517,13 @@ SWIGSTATICINLINE(int)
 #endif
 
 
-SWIGSTATICINLINE(int)
+SWIGINTERNSHORT int
 SWIG_As_int(PyObject* obj)
 {
   int v;
   if (!SWIG_AsVal_int(obj, &v)) {
     /*
-      this is needed to make valgrind/purify happier.  the other
-      solution is throw an exception, but since this code should work
-      with plain C ....
+      this is needed to make valgrind/purify happier. 
      */
     memset((void*)&v, 0, sizeof(int));
   }
@@ -477,7 +1531,7 @@ SWIG_As_int(PyObject* obj)
 }
 
   
-SWIGSTATICINLINE(int)
+SWIGINTERNSHORT int
 SWIG_Check_int(PyObject* obj)
 {
   return SWIG_AsVal_int(obj, (int*)0);
@@ -486,15 +1540,13 @@ SWIG_Check_int(PyObject* obj)
  static const wxString wxPyEmptyString(wxEmptyString); 
  static const wxString wxPyMediaCtrlNameStr(wxT("mediaCtrl")); 
 
-SWIGSTATICINLINE(long)
+SWIGINTERNSHORT long
 SWIG_As_long(PyObject* obj)
 {
   long v;
   if (!SWIG_AsVal_long(obj, &v)) {
     /*
-      this is needed to make valgrind/purify happier.  the other
-      solution is throw an exception, but since this code should work
-      with plain C ....
+      this is needed to make valgrind/purify happier. 
      */
     memset((void*)&v, 0, sizeof(long));
   }
@@ -502,73 +1554,22 @@ SWIG_As_long(PyObject* obj)
 }
 
   
-SWIGSTATICINLINE(int)
+SWIGINTERNSHORT int
 SWIG_Check_long(PyObject* obj)
 {
   return SWIG_AsVal_long(obj, (long*)0);
 }
 
-wxMediaCtrl *new_wxMediaCtrl(wxWindow *parent,int id,wxString const &location,wxPoint const &pos,wxSize const &size,long style,wxString const &szBackend,wxValidator const &validator,wxString const &name){
-            return new wxMediaCtrl(parent, id, wxURI(location),
-                                   pos, size, style, szBackend, validator, name);
-        }
-bool wxMediaCtrl_CreateFromURI(wxMediaCtrl *self,wxWindow *parent,int id,wxString const &location,wxPoint const &pos,wxSize const &size,long style,wxString const &szBackend,wxValidator const &validator,wxString const &name){
-            return self->Create(parent, id, wxURI(location),
-                                pos, size, style, szBackend, validator, name);
-        }
-bool wxMediaCtrl_LoadFromURI(wxMediaCtrl *self,wxString const &location){
+static bool wxMediaCtrl_LoadFromURI(wxMediaCtrl *self,wxString const &location){
             return self->Load(wxURI(location));
         }
 
-SWIGSTATICINLINE(int)
-  SWIG_AsVal_bool(PyObject *obj, bool *val)
-{
-  /*  if (val) *val = PyObject_IsTrue(obj); return 1; */
-  if (obj == Py_True) {
-    if (val) *val = true;
-    return 1;
-  }
-  if (obj == Py_False) {
-    if (val) *val = false;
-    return 1;
-  }
-  int res = 0;
-  if (SWIG_AsVal_int(obj, &res)) {    
-    if (val) *val = (bool)res;
-    return 1;
-  }
-  if (val) {
-    PyErr_SetString(PyExc_TypeError, "a bool is expected");
-  }
-  return 0;
-}
-
-
-SWIGSTATICINLINE(bool)
-SWIG_As_bool(PyObject* obj)
-{
-  bool v;
-  if (!SWIG_AsVal_bool(obj, &v)) {
-    /*
-      this is needed to make valgrind/purify happier.  the other
-      solution is throw an exception, but since this code should work
-      with plain C ....
-     */
-    memset((void*)&v, 0, sizeof(bool));
-  }
-  return v;
-}
-
-  
-SWIGSTATICINLINE(int)
-SWIG_Check_bool(PyObject* obj)
-{
-  return SWIG_AsVal_bool(obj, (bool*)0);
-}
+  /*@/opt/swig/share/swig/1.3.24/python/pymacros.swg,66,SWIG_define@*/
+#define SWIG_From_double PyFloat_FromDouble
+/*@@*/
 
 
-// See my_fragments.i
-SWIGSTATICINLINE(int)
+SWIGINTERN int
 SWIG_AsVal_double(PyObject *obj, double* val)
 {
     if (PyNumber_Check(obj)) {
@@ -576,24 +1577,19 @@ SWIG_AsVal_double(PyObject *obj, double* val)
         return 1;
     }
     else {
-        PyObject* errmsg = PyString_FromFormat("Expected number, got %s",
-                                               obj->ob_type->tp_name);
-        PyErr_SetObject(PyExc_TypeError, errmsg);
-        Py_DECREF(errmsg);
+        SWIG_type_error("number", obj);
     }
     return 0;
 }
 
 
-SWIGSTATICINLINE(double)
+SWIGINTERNSHORT double
 SWIG_As_double(PyObject* obj)
 {
   double v;
   if (!SWIG_AsVal_double(obj, &v)) {
     /*
-      this is needed to make valgrind/purify happier.  the other
-      solution is throw an exception, but since this code should work
-      with plain C ....
+      this is needed to make valgrind/purify happier. 
      */
     memset((void*)&v, 0, sizeof(double));
   }
@@ -601,7 +1597,7 @@ SWIG_As_double(PyObject* obj)
 }
 
   
-SWIGSTATICINLINE(int)
+SWIGINTERNSHORT int
 SWIG_Check_double(PyObject* obj)
 {
   return SWIG_AsVal_double(obj, (double*)0);
@@ -623,12 +1619,16 @@ static PyObject *_wrap_new_MediaEvent(PyObject *, PyObject *args, PyObject *kwar
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"|OO:new_MediaEvent",kwnames,&obj0,&obj1)) goto fail;
     if (obj0) {
-        arg1 = (wxEventType)SWIG_As_int(obj0); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg1 = (wxEventType)(SWIG_As_int(obj0)); 
+            if (SWIG_arg_fail(1)) SWIG_fail;
+        }
     }
     if (obj1) {
-        arg2 = (int)SWIG_As_int(obj1); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg2 = (int)(SWIG_As_int(obj1)); 
+            if (SWIG_arg_fail(2)) SWIG_fail;
+        }
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
@@ -657,7 +1657,7 @@ static int _wrap_MediaCtrlNameStr_set(PyObject *) {
 }
 
 
-static PyObject *_wrap_MediaCtrlNameStr_get() {
+static PyObject *_wrap_MediaCtrlNameStr_get(void) {
     PyObject *pyobj;
     
     {
@@ -708,11 +1708,13 @@ static PyObject *_wrap_new_MediaCtrl(PyObject *, PyObject *args, PyObject *kwarg
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_MediaCtrl",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxWindow,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     if (obj1) {
-        arg2 = (int)SWIG_As_int(obj1); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg2 = (int)(SWIG_As_int(obj1)); 
+            if (SWIG_arg_fail(2)) SWIG_fail;
+        }
     }
     if (obj2) {
         {
@@ -734,8 +1736,10 @@ static PyObject *_wrap_new_MediaCtrl(PyObject *, PyObject *args, PyObject *kwarg
         }
     }
     if (obj5) {
-        arg6 = (long)SWIG_As_long(obj5); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg6 = (long)(SWIG_As_long(obj5)); 
+            if (SWIG_arg_fail(6)) SWIG_fail;
+        }
     }
     if (obj6) {
         {
@@ -745,12 +1749,13 @@ static PyObject *_wrap_new_MediaCtrl(PyObject *, PyObject *args, PyObject *kwarg
         }
     }
     if (obj7) {
-        if ((SWIG_ConvertPtr(obj7,(void **)(&arg8),SWIGTYPE_p_wxValidator,
-        SWIG_POINTER_EXCEPTION | 0)) == -1)
-        SWIG_fail;
-        if (arg8 == NULL) {
-            PyErr_SetString(PyExc_TypeError,"null reference");
-            SWIG_fail;
+        {
+            SWIG_Python_ConvertPtr(obj7, (void **)&arg8, SWIGTYPE_p_wxValidator, SWIG_POINTER_EXCEPTION | 0);
+            if (SWIG_arg_fail(8)) SWIG_fail;
+            if (arg8 == NULL) {
+                SWIG_null_ref("wxValidator");
+            }
+            if (SWIG_arg_fail(8)) SWIG_fail;
         }
     }
     if (obj8) {
@@ -822,267 +1827,6 @@ static PyObject *_wrap_new_PreMediaCtrl(PyObject *, PyObject *args, PyObject *kw
 }
 
 
-static PyObject *_wrap_new_MediaCtrlFromURI(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxWindow *arg1 = (wxWindow *) 0 ;
-    int arg2 = (int) -1 ;
-    wxString const &arg3_defvalue = wxPyEmptyString ;
-    wxString *arg3 = (wxString *) &arg3_defvalue ;
-    wxPoint const &arg4_defvalue = wxDefaultPosition ;
-    wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
-    wxSize const &arg5_defvalue = wxDefaultSize ;
-    wxSize *arg5 = (wxSize *) &arg5_defvalue ;
-    long arg6 = (long) 0 ;
-    wxString const &arg7_defvalue = wxPyEmptyString ;
-    wxString *arg7 = (wxString *) &arg7_defvalue ;
-    wxValidator const &arg8_defvalue = wxDefaultValidator ;
-    wxValidator *arg8 = (wxValidator *) &arg8_defvalue ;
-    wxString const &arg9_defvalue = wxPyMediaCtrlNameStr ;
-    wxString *arg9 = (wxString *) &arg9_defvalue ;
-    wxMediaCtrl *result;
-    bool temp3 = false ;
-    wxPoint temp4 ;
-    wxSize temp5 ;
-    bool temp7 = false ;
-    bool temp9 = false ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
-    PyObject * obj3 = 0 ;
-    PyObject * obj4 = 0 ;
-    PyObject * obj5 = 0 ;
-    PyObject * obj6 = 0 ;
-    PyObject * obj7 = 0 ;
-    PyObject * obj8 = 0 ;
-    char *kwnames[] = {
-        (char *) "parent",(char *) "id",(char *) "location",(char *) "pos",(char *) "size",(char *) "style",(char *) "szBackend",(char *) "validator",(char *) "name", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_MediaCtrlFromURI",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxWindow,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if (obj1) {
-        arg2 = (int)SWIG_As_int(obj1); 
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    if (obj2) {
-        {
-            arg3 = wxString_in_helper(obj2);
-            if (arg3 == NULL) SWIG_fail;
-            temp3 = true;
-        }
-    }
-    if (obj3) {
-        {
-            arg4 = &temp4;
-            if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
-        }
-    }
-    if (obj4) {
-        {
-            arg5 = &temp5;
-            if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
-        }
-    }
-    if (obj5) {
-        arg6 = (long)SWIG_As_long(obj5); 
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    if (obj6) {
-        {
-            arg7 = wxString_in_helper(obj6);
-            if (arg7 == NULL) SWIG_fail;
-            temp7 = true;
-        }
-    }
-    if (obj7) {
-        if ((SWIG_ConvertPtr(obj7,(void **)(&arg8),SWIGTYPE_p_wxValidator,
-        SWIG_POINTER_EXCEPTION | 0)) == -1)
-        SWIG_fail;
-        if (arg8 == NULL) {
-            PyErr_SetString(PyExc_TypeError,"null reference");
-            SWIG_fail;
-        }
-    }
-    if (obj8) {
-        {
-            arg9 = wxString_in_helper(obj8);
-            if (arg9 == NULL) SWIG_fail;
-            temp9 = true;
-        }
-    }
-    {
-        if (!wxPyCheckForApp()) SWIG_fail;
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (wxMediaCtrl *)new_wxMediaCtrl(arg1,arg2,(wxString const &)*arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,(wxValidator const &)*arg8,(wxString const &)*arg9);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    resultobj = SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_wxMediaCtrl, 1);
-    {
-        if (temp3)
-        delete arg3;
-    }
-    {
-        if (temp7)
-        delete arg7;
-    }
-    {
-        if (temp9)
-        delete arg9;
-    }
-    return resultobj;
-    fail:
-    {
-        if (temp3)
-        delete arg3;
-    }
-    {
-        if (temp7)
-        delete arg7;
-    }
-    {
-        if (temp9)
-        delete arg9;
-    }
-    return NULL;
-}
-
-
-static PyObject *_wrap_MediaCtrl_CreateFromURI(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    wxWindow *arg2 = (wxWindow *) 0 ;
-    int arg3 = (int) -1 ;
-    wxString const &arg4_defvalue = wxPyEmptyString ;
-    wxString *arg4 = (wxString *) &arg4_defvalue ;
-    wxPoint const &arg5_defvalue = wxDefaultPosition ;
-    wxPoint *arg5 = (wxPoint *) &arg5_defvalue ;
-    wxSize const &arg6_defvalue = wxDefaultSize ;
-    wxSize *arg6 = (wxSize *) &arg6_defvalue ;
-    long arg7 = (long) 0 ;
-    wxString const &arg8_defvalue = wxPyEmptyString ;
-    wxString *arg8 = (wxString *) &arg8_defvalue ;
-    wxValidator const &arg9_defvalue = wxDefaultValidator ;
-    wxValidator *arg9 = (wxValidator *) &arg9_defvalue ;
-    wxString const &arg10_defvalue = wxPyMediaCtrlNameStr ;
-    wxString *arg10 = (wxString *) &arg10_defvalue ;
-    bool result;
-    bool temp4 = false ;
-    wxPoint temp5 ;
-    wxSize temp6 ;
-    bool temp8 = false ;
-    bool temp10 = false ;
-    PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
-    PyObject * obj3 = 0 ;
-    PyObject * obj4 = 0 ;
-    PyObject * obj5 = 0 ;
-    PyObject * obj6 = 0 ;
-    PyObject * obj7 = 0 ;
-    PyObject * obj8 = 0 ;
-    PyObject * obj9 = 0 ;
-    char *kwnames[] = {
-        (char *) "self",(char *) "parent",(char *) "id",(char *) "location",(char *) "pos",(char *) "size",(char *) "style",(char *) "szBackend",(char *) "validator",(char *) "name", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OOOOOOOO:MediaCtrl_CreateFromURI",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxWindow,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if (obj2) {
-        arg3 = (int)SWIG_As_int(obj2); 
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    if (obj3) {
-        {
-            arg4 = wxString_in_helper(obj3);
-            if (arg4 == NULL) SWIG_fail;
-            temp4 = true;
-        }
-    }
-    if (obj4) {
-        {
-            arg5 = &temp5;
-            if ( ! wxPoint_helper(obj4, &arg5)) SWIG_fail;
-        }
-    }
-    if (obj5) {
-        {
-            arg6 = &temp6;
-            if ( ! wxSize_helper(obj5, &arg6)) SWIG_fail;
-        }
-    }
-    if (obj6) {
-        arg7 = (long)SWIG_As_long(obj6); 
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    if (obj7) {
-        {
-            arg8 = wxString_in_helper(obj7);
-            if (arg8 == NULL) SWIG_fail;
-            temp8 = true;
-        }
-    }
-    if (obj8) {
-        if ((SWIG_ConvertPtr(obj8,(void **)(&arg9),SWIGTYPE_p_wxValidator,
-        SWIG_POINTER_EXCEPTION | 0)) == -1)
-        SWIG_fail;
-        if (arg9 == NULL) {
-            PyErr_SetString(PyExc_TypeError,"null reference");
-            SWIG_fail;
-        }
-    }
-    if (obj9) {
-        {
-            arg10 = wxString_in_helper(obj9);
-            if (arg10 == NULL) SWIG_fail;
-            temp10 = true;
-        }
-    }
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)wxMediaCtrl_CreateFromURI(arg1,arg2,arg3,(wxString const &)*arg4,(wxPoint const &)*arg5,(wxSize const &)*arg6,arg7,(wxString const &)*arg8,(wxValidator const &)*arg9,(wxString const &)*arg10);
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
-    }
-    {
-        if (temp4)
-        delete arg4;
-    }
-    {
-        if (temp8)
-        delete arg8;
-    }
-    {
-        if (temp10)
-        delete arg10;
-    }
-    return resultobj;
-    fail:
-    {
-        if (temp4)
-        delete arg4;
-    }
-    {
-        if (temp8)
-        delete arg8;
-    }
-    {
-        if (temp10)
-        delete arg10;
-    }
-    return NULL;
-}
-
-
 static PyObject *_wrap_MediaCtrl_Create(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
@@ -1122,13 +1866,15 @@ static PyObject *_wrap_MediaCtrl_Create(PyObject *, PyObject *args, PyObject *kw
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OOOOOOOO:MediaCtrl_Create",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8,&obj9)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj1,(void **)(&arg2),SWIGTYPE_p_wxWindow,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj1, (void **)&arg2, SWIGTYPE_p_wxWindow, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(2)) SWIG_fail;
     if (obj2) {
-        arg3 = (int)SWIG_As_int(obj2); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg3 = (int)(SWIG_As_int(obj2)); 
+            if (SWIG_arg_fail(3)) SWIG_fail;
+        }
     }
     if (obj3) {
         {
@@ -1150,8 +1896,10 @@ static PyObject *_wrap_MediaCtrl_Create(PyObject *, PyObject *args, PyObject *kw
         }
     }
     if (obj6) {
-        arg7 = (long)SWIG_As_long(obj6); 
-        if (PyErr_Occurred()) SWIG_fail;
+        {
+            arg7 = (long)(SWIG_As_long(obj6)); 
+            if (SWIG_arg_fail(7)) SWIG_fail;
+        }
     }
     if (obj7) {
         {
@@ -1161,12 +1909,13 @@ static PyObject *_wrap_MediaCtrl_Create(PyObject *, PyObject *args, PyObject *kw
         }
     }
     if (obj8) {
-        if ((SWIG_ConvertPtr(obj8,(void **)(&arg9),SWIGTYPE_p_wxValidator,
-        SWIG_POINTER_EXCEPTION | 0)) == -1)
-        SWIG_fail;
-        if (arg9 == NULL) {
-            PyErr_SetString(PyExc_TypeError,"null reference");
-            SWIG_fail;
+        {
+            SWIG_Python_ConvertPtr(obj8, (void **)&arg9, SWIGTYPE_p_wxValidator, SWIG_POINTER_EXCEPTION | 0);
+            if (SWIG_arg_fail(9)) SWIG_fail;
+            if (arg9 == NULL) {
+                SWIG_null_ref("wxValidator");
+            }
+            if (SWIG_arg_fail(9)) SWIG_fail;
         }
     }
     if (obj9) {
@@ -1226,8 +1975,8 @@ static PyObject *_wrap_MediaCtrl_Play(PyObject *, PyObject *args, PyObject *kwar
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_Play",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         result = (bool)(arg1)->Play();
@@ -1254,8 +2003,8 @@ static PyObject *_wrap_MediaCtrl_Pause(PyObject *, PyObject *args, PyObject *kwa
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_Pause",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         result = (bool)(arg1)->Pause();
@@ -1282,8 +2031,8 @@ static PyObject *_wrap_MediaCtrl_Stop(PyObject *, PyObject *args, PyObject *kwar
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_Stop",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         result = (bool)(arg1)->Stop();
@@ -1313,8 +2062,8 @@ static PyObject *_wrap_MediaCtrl_Load(PyObject *, PyObject *args, PyObject *kwar
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:MediaCtrl_Load",kwnames,&obj0,&obj1)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
@@ -1357,8 +2106,8 @@ static PyObject *_wrap_MediaCtrl_LoadFromURI(PyObject *, PyObject *args, PyObjec
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:MediaCtrl_LoadFromURI",kwnames,&obj0,&obj1)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         arg2 = wxString_in_helper(obj1);
         if (arg2 == NULL) SWIG_fail;
@@ -1388,58 +2137,53 @@ static PyObject *_wrap_MediaCtrl_LoadFromURI(PyObject *, PyObject *args, PyObjec
 }
 
 
-static PyObject *_wrap_MediaCtrl_Loop(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_GetState(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    bool arg2 = (bool) true ;
+    wxMediaState result;
     PyObject * obj0 = 0 ;
-    PyObject * obj1 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "bLoop", NULL 
+        (char *) "self", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:MediaCtrl_Loop",kwnames,&obj0,&obj1)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if (obj1) {
-        arg2 = (bool)SWIG_As_bool(obj1); 
-        if (PyErr_Occurred()) SWIG_fail;
-    }
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetState",kwnames,&obj0)) goto fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->Loop(arg2);
+        result = (wxMediaState)(arg1)->GetState();
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
-    Py_INCREF(Py_None); resultobj = Py_None;
+    resultobj = SWIG_From_int((result));
     return resultobj;
     fail:
     return NULL;
 }
 
 
-static PyObject *_wrap_MediaCtrl_IsLooped(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_GetPlaybackRate(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    bool result;
+    double result;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "self", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_IsLooped",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetPlaybackRate",kwnames,&obj0)) goto fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->IsLooped();
+        result = (double)(arg1)->GetPlaybackRate();
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+        resultobj = SWIG_From_double((double)(result)); 
     }
     return resultobj;
     fail:
@@ -1447,59 +2191,7 @@ static PyObject *_wrap_MediaCtrl_IsLooped(PyObject *, PyObject *args, PyObject *
 }
 
 
-static PyObject *_wrap_MediaCtrl_GetState(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    int result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetState",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (int)(arg1)->GetState();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    resultobj = SWIG_From_int((int)result);
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_MediaCtrl_GetPlaybackRate(PyObject *, PyObject *args, PyObject *kwargs) {
-    PyObject *resultobj;
-    wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    double result;
-    PyObject * obj0 = 0 ;
-    char *kwnames[] = {
-        (char *) "self", NULL 
-    };
-    
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetPlaybackRate",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    {
-        PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (double)(arg1)->GetPlaybackRate();
-        
-        wxPyEndAllowThreads(__tstate);
-        if (PyErr_Occurred()) SWIG_fail;
-    }
-    resultobj = SWIG_From_double((double)result);
-    return resultobj;
-    fail:
-    return NULL;
-}
-
-
-static PyObject *_wrap_MediaCtrl_SetPlaybackRate(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_SetPlaybackRate(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
     double arg2 ;
@@ -1511,10 +2203,12 @@ static PyObject *_wrap_MediaCtrl_SetPlaybackRate(PyObject *, PyObject *args, PyO
     };
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:MediaCtrl_SetPlaybackRate",kwnames,&obj0,&obj1)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (double)SWIG_As_double(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
+    {
+        arg2 = (double)(SWIG_As_double(obj1)); 
+        if (SWIG_arg_fail(2)) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         result = (bool)(arg1)->SetPlaybackRate(arg2);
@@ -1531,32 +2225,46 @@ static PyObject *_wrap_MediaCtrl_SetPlaybackRate(PyObject *, PyObject *args, PyO
 }
 
 
-static PyObject *_wrap_MediaCtrl_SetMediaPosition(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_Seek(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    wxLongLong arg2 ;
-    bool result;
+    wxFileOffset arg2 ;
+    wxSeekMode arg3 = (wxSeekMode) wxFromStart ;
+    wxFileOffset result;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "where", NULL 
+        (char *) "self",(char *) "where",(char *) "mode", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:MediaCtrl_SetMediaPosition",kwnames,&obj0,&obj1)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:MediaCtrl_Seek",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
+        if (sizeof(wxFileOffset) > sizeof(long))
         arg2 = PyLong_AsLongLong(obj1);
+        else
+        arg2 = PyInt_AsLong(obj1);
+    }
+    if (obj2) {
+        {
+            arg3 = (wxSeekMode)(SWIG_As_int(obj2)); 
+            if (SWIG_arg_fail(3)) SWIG_fail;
+        }
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (bool)(arg1)->SetPosition(arg2);
+        result = (arg1)->Seek(arg2,(wxSeekMode )arg3);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
+        if (sizeof(wxFileOffset) > sizeof(long))
+        resultobj = PyLong_FromLongLong(result);
+        else
+        resultobj = PyInt_FromLong(result);
     }
     return resultobj;
     fail:
@@ -1564,27 +2272,30 @@ static PyObject *_wrap_MediaCtrl_SetMediaPosition(PyObject *, PyObject *args, Py
 }
 
 
-static PyObject *_wrap_MediaCtrl_GetMediaPosition(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_Tell(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    wxLongLong result;
+    wxFileOffset result;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "self", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetMediaPosition",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_Tell",kwnames,&obj0)) goto fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (arg1)->GetPosition();
+        result = (arg1)->Tell();
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = PyLong_FromLongLong((&result)->GetValue());
+        if (sizeof(wxFileOffset) > sizeof(long))
+        resultobj = PyLong_FromLongLong(result);
+        else
+        resultobj = PyInt_FromLong(result);
     }
     return resultobj;
     fail:
@@ -1592,27 +2303,30 @@ static PyObject *_wrap_MediaCtrl_GetMediaPosition(PyObject *, PyObject *args, Py
 }
 
 
-static PyObject *_wrap_MediaCtrl_GetMediaDuration(PyObject *, PyObject *args, PyObject *kwargs) {
+static PyObject *_wrap_MediaCtrl_Length(PyObject *, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxMediaCtrl *arg1 = (wxMediaCtrl *) 0 ;
-    wxLongLong result;
+    wxFileOffset result;
     PyObject * obj0 = 0 ;
     char *kwnames[] = {
         (char *) "self", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_GetMediaDuration",kwnames,&obj0)) goto fail;
-    if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxMediaCtrl,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O:MediaCtrl_Length",kwnames,&obj0)) goto fail;
+    SWIG_Python_ConvertPtr(obj0, (void **)&arg1, SWIGTYPE_p_wxMediaCtrl, SWIG_POINTER_EXCEPTION | 0);
+    if (SWIG_arg_fail(1)) SWIG_fail;
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        result = (arg1)->GetDuration();
+        result = (arg1)->Length();
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = PyLong_FromLongLong((&result)->GetValue());
+        if (sizeof(wxFileOffset) > sizeof(long))
+        resultobj = PyLong_FromLongLong(result);
+        else
+        resultobj = PyInt_FromLong(result);
     }
     return resultobj;
     fail:
@@ -1628,159 +2342,29 @@ static PyObject * MediaCtrl_swigregister(PyObject *, PyObject *args) {
     return Py_BuildValue((char *)"");
 }
 static PyMethodDef SwigMethods[] = {
-        { (char *)"new_MediaEvent", (PyCFunction) _wrap_new_MediaEvent, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaEvent_swigregister", MediaEvent_swigregister, METH_VARARGS, NULL },
-        { (char *)"new_MediaCtrl", (PyCFunction) _wrap_new_MediaCtrl, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"new_PreMediaCtrl", (PyCFunction) _wrap_new_PreMediaCtrl, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"new_MediaCtrlFromURI", (PyCFunction) _wrap_new_MediaCtrlFromURI, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_CreateFromURI", (PyCFunction) _wrap_MediaCtrl_CreateFromURI, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Create", (PyCFunction) _wrap_MediaCtrl_Create, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Play", (PyCFunction) _wrap_MediaCtrl_Play, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Pause", (PyCFunction) _wrap_MediaCtrl_Pause, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Stop", (PyCFunction) _wrap_MediaCtrl_Stop, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Load", (PyCFunction) _wrap_MediaCtrl_Load, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_LoadFromURI", (PyCFunction) _wrap_MediaCtrl_LoadFromURI, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_Loop", (PyCFunction) _wrap_MediaCtrl_Loop, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_IsLooped", (PyCFunction) _wrap_MediaCtrl_IsLooped, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_GetState", (PyCFunction) _wrap_MediaCtrl_GetState, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_GetPlaybackRate", (PyCFunction) _wrap_MediaCtrl_GetPlaybackRate, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_SetPlaybackRate", (PyCFunction) _wrap_MediaCtrl_SetPlaybackRate, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_SetMediaPosition", (PyCFunction) _wrap_MediaCtrl_SetMediaPosition, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_GetMediaPosition", (PyCFunction) _wrap_MediaCtrl_GetMediaPosition, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_GetMediaDuration", (PyCFunction) _wrap_MediaCtrl_GetMediaDuration, METH_VARARGS | METH_KEYWORDS, NULL },
-        { (char *)"MediaCtrl_swigregister", MediaCtrl_swigregister, METH_VARARGS, NULL },
+        { (char *)"new_MediaEvent", (PyCFunction) _wrap_new_MediaEvent, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaEvent_swigregister", MediaEvent_swigregister, METH_VARARGS, NULL},
+        { (char *)"new_MediaCtrl", (PyCFunction) _wrap_new_MediaCtrl, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"new_PreMediaCtrl", (PyCFunction) _wrap_new_PreMediaCtrl, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Create", (PyCFunction) _wrap_MediaCtrl_Create, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Play", (PyCFunction) _wrap_MediaCtrl_Play, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Pause", (PyCFunction) _wrap_MediaCtrl_Pause, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Stop", (PyCFunction) _wrap_MediaCtrl_Stop, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Load", (PyCFunction) _wrap_MediaCtrl_Load, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_LoadFromURI", (PyCFunction) _wrap_MediaCtrl_LoadFromURI, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_GetState", (PyCFunction) _wrap_MediaCtrl_GetState, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_GetPlaybackRate", (PyCFunction) _wrap_MediaCtrl_GetPlaybackRate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_SetPlaybackRate", (PyCFunction) _wrap_MediaCtrl_SetPlaybackRate, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Seek", (PyCFunction) _wrap_MediaCtrl_Seek, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Tell", (PyCFunction) _wrap_MediaCtrl_Tell, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_Length", (PyCFunction) _wrap_MediaCtrl_Length, METH_VARARGS | METH_KEYWORDS, NULL},
+        { (char *)"MediaCtrl_swigregister", MediaCtrl_swigregister, METH_VARARGS, NULL},
         { NULL, NULL, 0, NULL }
 };
 
 
 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
 
-static void *_p_wxControlWithItemsTo_p_wxControl(void *x) {
-    return (void *)((wxControl *)  ((wxControlWithItems *) x));
-}
-static void *_p_wxMediaCtrlTo_p_wxControl(void *x) {
-    return (void *)((wxControl *)  ((wxMediaCtrl *) x));
-}
-static void *_p_wxControlTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *)  ((wxControl *) x));
-}
-static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
-}
-static void *_p_wxMediaCtrlTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *) (wxControl *) ((wxMediaCtrl *) x));
-}
-static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
-    return (void *)((wxWindow *)  ((wxMenuBar *) x));
-}
-static void *_p_wxContextMenuEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxContextMenuEvent *) x));
-}
-static void *_p_wxMenuEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMenuEvent *) x));
-}
-static void *_p_wxCloseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxCloseEvent *) x));
-}
-static void *_p_wxMouseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMouseEvent *) x));
-}
-static void *_p_wxEraseEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxEraseEvent *) x));
-}
-static void *_p_wxSetCursorEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSetCursorEvent *) x));
-}
-static void *_p_wxInitDialogEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxInitDialogEvent *) x));
-}
-static void *_p_wxScrollEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxScrollEvent *) x));
-}
-static void *_p_wxPyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPyEvent *) x));
-}
-static void *_p_wxNotifyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxNotifyEvent *) x));
-}
-static void *_p_wxIdleEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxIdleEvent *) x));
-}
-static void *_p_wxWindowCreateEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowCreateEvent *) x));
-}
-static void *_p_wxQueryNewPaletteEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxQueryNewPaletteEvent *) x));
-}
-static void *_p_wxMaximizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMaximizeEvent *) x));
-}
-static void *_p_wxIconizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxIconizeEvent *) x));
-}
-static void *_p_wxActivateEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxActivateEvent *) x));
-}
-static void *_p_wxSizeEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSizeEvent *) x));
-}
-static void *_p_wxMoveEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMoveEvent *) x));
-}
-static void *_p_wxPaintEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPaintEvent *) x));
-}
-static void *_p_wxNcPaintEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxNcPaintEvent *) x));
-}
-static void *_p_wxUpdateUIEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxUpdateUIEvent *) x));
-}
-static void *_p_wxPaletteChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxPaletteChangedEvent *) x));
-}
-static void *_p_wxDisplayChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxDisplayChangedEvent *) x));
-}
-static void *_p_wxMouseCaptureChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxMouseCaptureChangedEvent *) x));
-}
-static void *_p_wxSysColourChangedEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxSysColourChangedEvent *) x));
-}
-static void *_p_wxDropFilesEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxDropFilesEvent *) x));
-}
-static void *_p_wxFocusEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxFocusEvent *) x));
-}
-static void *_p_wxChildFocusEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxChildFocusEvent *) x));
-}
-static void *_p_wxShowEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxShowEvent *) x));
-}
-static void *_p_wxCommandEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxCommandEvent *) x));
-}
-static void *_p_wxPyCommandEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxPyCommandEvent *) x));
-}
-static void *_p_wxWindowDestroyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowDestroyEvent *) x));
-}
-static void *_p_wxNavigationKeyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxNavigationKeyEvent *) x));
-}
-static void *_p_wxKeyEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxKeyEvent *) x));
-}
-static void *_p_wxMediaEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *) (wxCommandEvent *)(wxNotifyEvent *) ((wxMediaEvent *) x));
-}
-static void *_p_wxScrollWinEventTo_p_wxEvent(void *x) {
-    return (void *)((wxEvent *)  ((wxScrollWinEvent *) x));
-}
 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxLayoutConstraints *) x));
 }
@@ -1850,12 +2434,12 @@ static void *_p_wxControlTo_p_wxObject(void *x) {
 static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
 }
-static void *_p_wxMediaEventTo_p_wxObject(void *x) {
-    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *)(wxNotifyEvent *) ((wxMediaEvent *) x));
-}
 static void *_p_wxFSFileTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxFSFile *) x));
 }
+static void *_p_wxMediaEventTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *)(wxNotifyEvent *) ((wxMediaEvent *) x));
+}
 static void *_p_wxPySizerTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
 }
@@ -1871,6 +2455,9 @@ static void *_p_wxShowEventTo_p_wxObject(void *x) {
 static void *_p_wxMenuItemTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxMenuItem *) x));
 }
+static void *_p_wxDateEventTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
+}
 static void *_p_wxIdleEventTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
 }
@@ -1934,6 +2521,9 @@ static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
 static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxEvtHandler *) x));
 }
+static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
+    return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
+}
 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
     return (void *)((wxObject *)  ((wxAcceleratorTable *) x));
 }
@@ -2006,6 +2596,51 @@ static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
 static void *_p_wxValidatorTo_p_wxObject(void *x) {
     return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
 }
+static void *_p_wxControlTo_p_wxWindow(void *x) {
+    return (void *)((wxWindow *)  ((wxControl *) x));
+}
+static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
+    return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
+}
+static void *_p_wxMediaCtrlTo_p_wxWindow(void *x) {
+    return (void *)((wxWindow *) (wxControl *) ((wxMediaCtrl *) x));
+}
+static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
+    return (void *)((wxWindow *)  ((wxMenuBar *) x));
+}
+static void *_p_wxPyValidatorTo_p_wxValidator(void *x) {
+    return (void *)((wxValidator *)  ((wxPyValidator *) x));
+}
+static void *_p_wxChildFocusEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxChildFocusEvent *) x));
+}
+static void *_p_wxScrollEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxScrollEvent *) x));
+}
+static void *_p_wxWindowCreateEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxWindowCreateEvent *) x));
+}
+static void *_p_wxDateEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxDateEvent *) x));
+}
+static void *_p_wxUpdateUIEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxUpdateUIEvent *) x));
+}
+static void *_p_wxWindowDestroyEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxWindowDestroyEvent *) x));
+}
+static void *_p_wxContextMenuEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxContextMenuEvent *) x));
+}
+static void *_p_wxNotifyEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxNotifyEvent *) x));
+}
+static void *_p_wxPyCommandEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *)  ((wxPyCommandEvent *) x));
+}
+static void *_p_wxMediaEventTo_p_wxCommandEvent(void *x) {
+    return (void *)((wxCommandEvent *) (wxNotifyEvent *) ((wxMediaEvent *) x));
+}
 static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
     return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
 }
@@ -2033,65 +2668,172 @@ static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
 static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
     return (void *)((wxEvtHandler *)  ((wxMenu *) x));
 }
-static void *_p_wxPyValidatorTo_p_wxValidator(void *x) {
-    return (void *)((wxValidator *)  ((wxPyValidator *) x));
-}
 static void *_p_wxMediaEventTo_p_wxNotifyEvent(void *x) {
     return (void *)((wxNotifyEvent *)  ((wxMediaEvent *) x));
 }
-static void *_p_wxChildFocusEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxChildFocusEvent *) x));
+static void *_p_wxControlWithItemsTo_p_wxControl(void *x) {
+    return (void *)((wxControl *)  ((wxControlWithItems *) x));
 }
-static void *_p_wxScrollEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxScrollEvent *) x));
+static void *_p_wxMediaCtrlTo_p_wxControl(void *x) {
+    return (void *)((wxControl *)  ((wxMediaCtrl *) x));
 }
-static void *_p_wxWindowCreateEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxWindowCreateEvent *) x));
+static void *_p_wxContextMenuEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxContextMenuEvent *) x));
 }
-static void *_p_wxUpdateUIEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxUpdateUIEvent *) x));
+static void *_p_wxMenuEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxMenuEvent *) x));
 }
-static void *_p_wxWindowDestroyEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxWindowDestroyEvent *) x));
+static void *_p_wxCloseEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxCloseEvent *) x));
 }
-static void *_p_wxContextMenuEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxContextMenuEvent *) x));
+static void *_p_wxMouseEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxMouseEvent *) x));
 }
-static void *_p_wxNotifyEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxNotifyEvent *) x));
+static void *_p_wxEraseEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxEraseEvent *) x));
 }
-static void *_p_wxPyCommandEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *)  ((wxPyCommandEvent *) x));
+static void *_p_wxSetCursorEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxSetCursorEvent *) x));
 }
-static void *_p_wxMediaEventTo_p_wxCommandEvent(void *x) {
-    return (void *)((wxCommandEvent *) (wxNotifyEvent *) ((wxMediaEvent *) x));
+static void *_p_wxInitDialogEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxInitDialogEvent *) x));
 }
-static swig_type_info _swigt__p_wxLongLong[] = {{"_p_wxLongLong", 0, "wxLongLong *", 0, 0, 0, 0},{"_p_wxLongLong", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxControl[] = {{"_p_wxControl", 0, "wxControl *", 0, 0, 0, 0},{"_p_wxControl", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxControl, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxControl, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static void *_p_wxScrollEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxScrollEvent *) x));
+}
+static void *_p_wxPyEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxPyEvent *) x));
+}
+static void *_p_wxNotifyEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxNotifyEvent *) x));
+}
+static void *_p_wxIdleEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxIdleEvent *) x));
+}
+static void *_p_wxWindowCreateEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowCreateEvent *) x));
+}
+static void *_p_wxQueryNewPaletteEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxQueryNewPaletteEvent *) x));
+}
+static void *_p_wxMaximizeEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxMaximizeEvent *) x));
+}
+static void *_p_wxIconizeEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxIconizeEvent *) x));
+}
+static void *_p_wxActivateEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxActivateEvent *) x));
+}
+static void *_p_wxSizeEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxSizeEvent *) x));
+}
+static void *_p_wxMoveEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxMoveEvent *) x));
+}
+static void *_p_wxDateEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxDateEvent *) x));
+}
+static void *_p_wxPaintEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxPaintEvent *) x));
+}
+static void *_p_wxNcPaintEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxNcPaintEvent *) x));
+}
+static void *_p_wxUpdateUIEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxUpdateUIEvent *) x));
+}
+static void *_p_wxPaletteChangedEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxPaletteChangedEvent *) x));
+}
+static void *_p_wxDisplayChangedEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxDisplayChangedEvent *) x));
+}
+static void *_p_wxMouseCaptureChangedEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxMouseCaptureChangedEvent *) x));
+}
+static void *_p_wxSysColourChangedEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxSysColourChangedEvent *) x));
+}
+static void *_p_wxDropFilesEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxDropFilesEvent *) x));
+}
+static void *_p_wxFocusEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxFocusEvent *) x));
+}
+static void *_p_wxChildFocusEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxChildFocusEvent *) x));
+}
+static void *_p_wxShowEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxShowEvent *) x));
+}
+static void *_p_wxCommandEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxCommandEvent *) x));
+}
+static void *_p_wxPyCommandEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxPyCommandEvent *) x));
+}
+static void *_p_wxWindowDestroyEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *) ((wxWindowDestroyEvent *) x));
+}
+static void *_p_wxNavigationKeyEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxNavigationKeyEvent *) x));
+}
+static void *_p_wxKeyEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxKeyEvent *) x));
+}
+static void *_p_wxMediaEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *) (wxCommandEvent *)(wxNotifyEvent *) ((wxMediaEvent *) x));
+}
+static void *_p_wxScrollWinEventTo_p_wxEvent(void *x) {
+    return (void *)((wxEvent *)  ((wxScrollWinEvent *) x));
+}
+static swig_type_info _swigt__p_wxObject[] = {{"_p_wxObject", 0, "wxObject *", 0, 0, 0, 0},{"_p_wxLayoutConstraints", _p_wxLayoutConstraintsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizerItem", _p_wxSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizer", _p_wxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvent", _p_wxEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFSFile", _p_wxFSFileTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuItem", _p_wxMenuItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxXPMHandler", _p_wxXPMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNMHandler", _p_wxPNMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxJPEGHandler", _p_wxJPEGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPCXHandler", _p_wxPCXHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFHandler", _p_wxGIFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNGHandler", _p_wxPNGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxANIHandler", _p_wxANIHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCURHandler", _p_wxCURHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxICOHandler", _p_wxICOHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBMPHandler", _p_wxBMPHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImageHandler", _p_wxImageHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxTIFFHandler", _p_wxTIFFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", _p_wxEvtHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStdDialogButtonSizer", _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAcceleratorTable", _p_wxAcceleratorTableTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImage", _p_wxImageTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxObject", 0, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFileSystem", _p_wxFileSystemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_unsigned_char[] = {{"_p_unsigned_char", 0, "unsigned char *|byte *", 0, 0, 0, 0},{"_p_unsigned_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxMediaEvent[] = {{"_p_wxMediaEvent", 0, "wxMediaEvent *", 0, 0, 0, 0},{"_p_wxMediaEvent", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxWindow[] = {{"_p_wxWindow", 0, "wxWindow *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxWindow", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxWindow, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxWindow, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxEvent[] = {{"_p_wxEvent", 0, "wxEvent *", 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEvent", 0, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxObject[] = {{"_p_wxObject", 0, "wxObject *", 0, 0, 0, 0},{"_p_wxLayoutConstraints", _p_wxLayoutConstraintsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGBSizerItem", _p_wxGBSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizerItem", _p_wxSizerItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIndividualLayoutConstraint", _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxStaticBoxSizer", _p_wxStaticBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBoxSizer", _p_wxBoxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizer", _p_wxSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridBagSizer", _p_wxGridBagSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvent", _p_wxEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFlexGridSizer", _p_wxFlexGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGridSizer", _p_wxGridSizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFSFile", _p_wxFSFileTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPySizer", _p_wxPySizerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuItem", _p_wxMenuItemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxXPMHandler", _p_wxXPMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNMHandler", _p_wxPNMHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxJPEGHandler", _p_wxJPEGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPCXHandler", _p_wxPCXHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxGIFHandler", _p_wxGIFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPNGHandler", _p_wxPNGHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxANIHandler", _p_wxANIHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCURHandler", _p_wxCURHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxICOHandler", _p_wxICOHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxBMPHandler", _p_wxBMPHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImageHandler", _p_wxImageHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxTIFFHandler", _p_wxTIFFHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", _p_wxEvtHandlerTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxAcceleratorTable", _p_wxAcceleratorTableTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxImage", _p_wxImageTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxObject", 0, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFileSystem", _p_wxFileSystemTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxObject, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxEvtHandler[] = {{"_p_wxEvtHandler", 0, "wxEvtHandler *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", 0, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0, 0, 0, 0},{"_p_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxMediaCtrl[] = {{"_p_wxMediaCtrl", 0, "wxMediaCtrl *", 0, 0, 0, 0},{"_p_wxMediaCtrl", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxValidator[] = {{"_p_wxValidator", 0, "wxValidator *", 0, 0, 0, 0},{"_p_wxValidator", 0, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxValidator, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxCommandEvent[] = {{"_p_wxCommandEvent", 0, "wxCommandEvent *", 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", 0, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *|wxUIntPtr *", 0, 0, 0, 0},{"_p_unsigned_long", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_unsigned_int[] = {{"_p_unsigned_int", 0, "unsigned int *|time_t *", 0, 0, 0, 0},{"_p_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__unsigned_int[] = {{"_unsigned_int", 0, "unsigned int|std::size_t", 0, 0, 0, 0},{"_unsigned_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_form_ops_t[] = {{"_p_form_ops_t", 0, "enum form_ops_t *|form_ops_t *", 0, 0, 0, 0},{"_p_form_ops_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxDuplexMode[] = {{"_p_wxDuplexMode", 0, "enum wxDuplexMode *|wxDuplexMode *", 0, 0, 0, 0},{"_p_wxDuplexMode", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0, 0, 0, 0},{"_p_char", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxFileOffset[] = {{"_p_wxFileOffset", 0, "wxFileOffset *", 0, 0, 0, 0},{"_p_wxFileOffset", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxEvtHandler[] = {{"_p_wxEvtHandler", 0, "wxEvtHandler *", 0, 0, 0, 0},{"_p_wxControl", _p_wxControlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxWindow", _p_wxWindowTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxEvtHandler", 0, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyApp", _p_wxPyAppTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenuBar", _p_wxMenuBarTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxValidator", _p_wxValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxPyValidator", _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{"_p_wxMenu", _p_wxMenuTo_p_wxEvtHandler, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__std__ptrdiff_t[] = {{"_std__ptrdiff_t", 0, "std::ptrdiff_t", 0, 0, 0, 0},{"_std__ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__ptrdiff_t[] = {{"_ptrdiff_t", 0, "ptrdiff_t", 0, 0, 0, 0},{"_ptrdiff_t", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 static swig_type_info _swigt__p_wxNotifyEvent[] = {{"_p_wxNotifyEvent", 0, "wxNotifyEvent *", 0, 0, 0, 0},{"_p_wxNotifyEvent", 0, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxNotifyEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxCommandEvent[] = {{"_p_wxCommandEvent", 0, "wxCommandEvent *", 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", 0, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxCommandEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
-static swig_type_info _swigt__p_wxMediaEvent[] = {{"_p_wxMediaEvent", 0, "wxMediaEvent *", 0, 0, 0, 0},{"_p_wxMediaEvent", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxControl[] = {{"_p_wxControl", 0, "wxControl *", 0, 0, 0, 0},{"_p_wxControl", 0, 0, 0, 0, 0, 0},{"_p_wxControlWithItems", _p_wxControlWithItemsTo_p_wxControl, 0, 0, 0, 0, 0},{"_p_wxMediaCtrl", _p_wxMediaCtrlTo_p_wxControl, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxMediaCtrl[] = {{"_p_wxMediaCtrl", 0, "wxMediaCtrl *", 0, 0, 0, 0},{"_p_wxMediaCtrl", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxEvent[] = {{"_p_wxEvent", 0, "wxEvent *", 0, 0, 0, 0},{"_p_wxContextMenuEvent", _p_wxContextMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMenuEvent", _p_wxMenuEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCloseEvent", _p_wxCloseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseEvent", _p_wxMouseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEraseEvent", _p_wxEraseEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSetCursorEvent", _p_wxSetCursorEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxInitDialogEvent", _p_wxInitDialogEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollEvent", _p_wxScrollEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyEvent", _p_wxPyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNotifyEvent", _p_wxNotifyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxEvent", 0, 0, 0, 0, 0, 0},{"_p_wxQueryNewPaletteEvent", _p_wxQueryNewPaletteEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxWindowCreateEvent", _p_wxWindowCreateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIdleEvent", _p_wxIdleEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMaximizeEvent", _p_wxMaximizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxIconizeEvent", _p_wxIconizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxActivateEvent", _p_wxActivateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSizeEvent", _p_wxSizeEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDateEvent", _p_wxDateEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMoveEvent", _p_wxMoveEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaintEvent", _p_wxPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNcPaintEvent", _p_wxNcPaintEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxUpdateUIEvent", _p_wxUpdateUIEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPaletteChangedEvent", _p_wxPaletteChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDisplayChangedEvent", _p_wxDisplayChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMouseCaptureChangedEvent", _p_wxMouseCaptureChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxSysColourChangedEvent", _p_wxSysColourChangedEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxDropFilesEvent", _p_wxDropFilesEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxFocusEvent", _p_wxFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxChildFocusEvent", _p_wxChildFocusEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxShowEvent", _p_wxShowEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxCommandEvent", _p_wxCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxPyCommandEvent", _p_wxPyCommandEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxWindowDestroyEvent", _p_wxWindowDestroyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxNavigationKeyEvent", _p_wxNavigationKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxKeyEvent", _p_wxKeyEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxMediaEvent", _p_wxMediaEventTo_p_wxEvent, 0, 0, 0, 0, 0},{"_p_wxScrollWinEvent", _p_wxScrollWinEventTo_p_wxEvent, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_wxPaperSize[] = {{"_p_wxPaperSize", 0, "enum wxPaperSize *|wxPaperSize *", 0, 0, 0, 0},{"_p_wxPaperSize", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
+static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *|wxEventType *", 0, 0, 0, 0},{"_p_int", 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0}};
 
 static swig_type_info *swig_types_initial[] = {
-_swigt__p_wxLongLong, 
-_swigt__p_wxControl, 
-_swigt__p_wxWindow, 
-_swigt__p_wxEvent, 
 _swigt__p_wxObject, 
-_swigt__p_wxEvtHandler, 
-_swigt__p_char
-_swigt__p_wxMediaCtrl
+_swigt__p_unsigned_char, 
+_swigt__p_wxMediaEvent
+_swigt__p_wxWindow
 _swigt__p_wxValidator, 
-_swigt__p_wxNotifyEvent, 
 _swigt__p_wxCommandEvent, 
-_swigt__p_wxMediaEvent, 
+_swigt__p_unsigned_long, 
+_swigt__p_unsigned_int, 
+_swigt__unsigned_int, 
+_swigt__p_form_ops_t, 
+_swigt__p_wxDuplexMode, 
+_swigt__p_char, 
+_swigt__p_wxFileOffset, 
+_swigt__p_wxEvtHandler, 
+_swigt__std__ptrdiff_t, 
+_swigt__ptrdiff_t, 
+_swigt__p_wxNotifyEvent, 
+_swigt__p_wxControl, 
+_swigt__p_wxMediaCtrl, 
+_swigt__p_wxEvent, 
+_swigt__p_wxPaperSize, 
+_swigt__p_int, 
 0
 };
 
@@ -2105,6 +2847,312 @@ static swig_const_info swig_const_table[] = {
 }
 #endif
 
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+    
+    /* Python-specific SWIG API */
+#define SWIG_newvarlink()                             SWIG_Python_newvarlink()
+#define SWIG_addvarlink(p, name, get_attr, set_attr)  SWIG_Python_addvarlink(p, name, get_attr, set_attr)
+#define SWIG_InstallConstants(d, constants)           SWIG_Python_InstallConstants(d, constants)
+    
+    /* -----------------------------------------------------------------------------
+     * global variable support code.
+     * ----------------------------------------------------------------------------- */
+    
+    typedef struct swig_globalvar {
+        char       *name;                  /* Name of global variable */
+        PyObject *(*get_attr)();           /* Return the current value */
+        int       (*set_attr)(PyObject *); /* Set the value */
+        struct swig_globalvar *next;
+    } swig_globalvar;
+    
+    typedef struct swig_varlinkobject {
+        PyObject_HEAD
+        swig_globalvar *vars;
+    } swig_varlinkobject;
+    
+    static PyObject *
+    swig_varlink_repr(swig_varlinkobject *v) {
+        v = v;
+        return PyString_FromString("<Swig global variables>");
+    }
+    
+    static int
+    swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) {
+        swig_globalvar  *var;
+        flags = flags;
+        fprintf(fp,"Swig global variables { ");
+        for (var = v->vars; var; var=var->next) {
+            fprintf(fp,"%s", var->name);
+            if (var->next) fprintf(fp,", ");
+        }
+        fprintf(fp," }\n");
+        return 0;
+    }
+    
+    static PyObject *
+    swig_varlink_getattr(swig_varlinkobject *v, char *n) {
+        swig_globalvar *var = v->vars;
+        while (var) {
+            if (strcmp(var->name,n) == 0) {
+                return (*var->get_attr)();
+            }
+            var = var->next;
+        }
+        PyErr_SetString(PyExc_NameError,"Unknown C global variable");
+        return NULL;
+    }
+    
+    static int
+    swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
+        swig_globalvar *var = v->vars;
+        while (var) {
+            if (strcmp(var->name,n) == 0) {
+                return (*var->set_attr)(p);
+            }
+            var = var->next;
+        }
+        PyErr_SetString(PyExc_NameError,"Unknown C global variable");
+        return 1;
+    }
+    
+    static PyTypeObject varlinktype = {
+        PyObject_HEAD_INIT(0)              
+        0,                                  /* Number of items in variable part (ob_size) */
+        (char *)"swigvarlink",              /* Type name (tp_name) */
+        sizeof(swig_varlinkobject),         /* Basic size (tp_basicsize) */
+        0,                                  /* Itemsize (tp_itemsize) */
+        0,                                  /* Deallocator (tp_dealloc) */ 
+        (printfunc) swig_varlink_print,     /* Print (tp_print) */
+        (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
+        (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
+        0,                                  /* tp_compare */
+        (reprfunc) swig_varlink_repr,       /* tp_repr */
+        0,                                  /* tp_as_number */
+        0,                                  /* tp_as_sequence */
+        0,                                  /* tp_as_mapping */
+        0,                                  /* tp_hash */
+        0,                                  /* tp_call */
+        0,                                  /* tp_str */
+        0,                                  /* tp_getattro */
+        0,                                  /* tp_setattro */
+        0,                                  /* tp_as_buffer */
+        0,                                  /* tp_flags */
+        0,                                  /* tp_doc */
+#if PY_VERSION_HEX >= 0x02000000
+        0,                                  /* tp_traverse */
+        0,                                  /* tp_clear */
+#endif
+#if PY_VERSION_HEX >= 0x02010000
+        0,                                  /* tp_richcompare */
+        0,                                  /* tp_weaklistoffset */
+#endif
+#if PY_VERSION_HEX >= 0x02020000
+        0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
+#endif
+#if PY_VERSION_HEX >= 0x02030000
+        0,                                  /* tp_del */
+#endif
+#ifdef COUNT_ALLOCS
+        0,0,0,0                             /* tp_alloc -> tp_next */
+#endif
+    };
+    
+    /* Create a variable linking object for use later */
+    static PyObject *
+    SWIG_Python_newvarlink(void) {
+        swig_varlinkobject *result = 0;
+        result = PyMem_NEW(swig_varlinkobject,1);
+        varlinktype.ob_type = &PyType_Type;    /* Patch varlinktype into a PyType */
+        result->ob_type = &varlinktype;
+        result->vars = 0;
+        result->ob_refcnt = 0;
+        Py_XINCREF((PyObject *) result);
+        return ((PyObject*) result);
+    }
+    
+    static void
+    SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
+        swig_varlinkobject *v;
+        swig_globalvar *gv;
+        v= (swig_varlinkobject *) p;
+        gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
+        gv->name = (char *) malloc(strlen(name)+1);
+        strcpy(gv->name,name);
+        gv->get_attr = get_attr;
+        gv->set_attr = set_attr;
+        gv->next = v->vars;
+        v->vars = gv;
+    }
+    
+    /* -----------------------------------------------------------------------------
+     * constants/methods manipulation
+     * ----------------------------------------------------------------------------- */
+    
+    /* Install Constants */
+    static void
+    SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
+        PyObject *obj = 0;
+        size_t i;
+        for (i = 0; constants[i].type; i++) {
+            switch(constants[i].type) {
+                case SWIG_PY_INT:
+                obj = PyInt_FromLong(constants[i].lvalue);
+                break;
+                case SWIG_PY_FLOAT:
+                obj = PyFloat_FromDouble(constants[i].dvalue);
+                break;
+                case SWIG_PY_STRING:
+                if (constants[i].pvalue) {
+                    obj = PyString_FromString((char *) constants[i].pvalue);
+                } else {
+                    Py_INCREF(Py_None);
+                    obj = Py_None;
+                }
+                break;
+                case SWIG_PY_POINTER:
+                obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
+                break;
+                case SWIG_PY_BINARY:
+                obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
+                break;
+                default:
+                obj = 0;
+                break;
+            }
+            if (obj) {
+                PyDict_SetItemString(d,constants[i].name,obj);
+                Py_DECREF(obj);
+            }
+        }
+    }
+    
+    /* -----------------------------------------------------------------------------*/
+    /* Fix SwigMethods to carry the callback ptrs when needed */
+    /* -----------------------------------------------------------------------------*/
+    
+    static void
+    SWIG_Python_FixMethods(PyMethodDef *methods,
+    swig_const_info *const_table,
+    swig_type_info **types,
+    swig_type_info **types_initial) {
+        size_t i;
+        for (i = 0; methods[i].ml_name; ++i) {
+            char *c = methods[i].ml_doc;
+            if (c && (c = strstr(c, "swig_ptr: "))) {
+                int j;
+                swig_const_info *ci = 0;
+                char *name = c + 10;
+                for (j = 0; const_table[j].type; j++) {
+                    if (strncmp(const_table[j].name, name, 
+                    strlen(const_table[j].name)) == 0) {
+                        ci = &(const_table[j]);
+                        break;
+                    }
+                }
+                if (ci) {
+                    size_t shift = (ci->ptype) - types;
+                    swig_type_info *ty = types_initial[shift];
+                    size_t ldoc = (c - methods[i].ml_doc);
+                    size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
+                    char *ndoc = (char*)malloc(ldoc + lptr + 10);
+                    char *buff = ndoc;
+                    void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue: (void *)(ci->lvalue);
+                    strncpy(buff, methods[i].ml_doc, ldoc);
+                    buff += ldoc;
+                    strncpy(buff, "swig_ptr: ", 10);
+                    buff += 10;
+                    SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
+                    methods[i].ml_doc = ndoc;
+                }
+            }
+        }
+    }
+    
+    /* -----------------------------------------------------------------------------*
+     *  Initialize type list
+     * -----------------------------------------------------------------------------*/
+    
+#if PY_MAJOR_VERSION < 2
+    /* PyModule_AddObject function was introduced in Python 2.0.  The following function
+    is copied out of Python/modsupport.c in python version 2.3.4 */
+    static int
+    PyModule_AddObject(PyObject *m, char *name, PyObject *o)
+    {
+        PyObject *dict;
+        if (!PyModule_Check(m)) {
+            PyErr_SetString(PyExc_TypeError,
+            "PyModule_AddObject() needs module as first arg");
+            return -1;
+        }
+        if (!o) {
+            PyErr_SetString(PyExc_TypeError,
+            "PyModule_AddObject() needs non-NULL value");
+            return -1;
+        }
+        
+        dict = PyModule_GetDict(m);
+        if (dict == NULL) {
+            /* Internal error -- modules must have a dict! */
+            PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
+            PyModule_GetName(m));
+            return -1;
+        }
+        if (PyDict_SetItemString(dict, name, o))
+        return -1;
+        Py_DECREF(o);
+        return 0;
+    }
+#endif
+    
+    static swig_type_info **
+    SWIG_Python_SetTypeListHandle(swig_type_info **type_list_handle) {
+        static PyMethodDef swig_empty_runtime_method_table[] = {
+            {
+                NULL, NULL, 0, NULL
+            } 
+        };/* Sentinel */
+        
+        PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
+        swig_empty_runtime_method_table);
+        PyObject *pointer = PyCObject_FromVoidPtr((void *) type_list_handle, NULL);
+        if (pointer && module) {
+            PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
+        }
+        return type_list_handle;
+    } 
+    
+    static swig_type_info **
+    SWIG_Python_LookupTypePointer(swig_type_info **type_list_handle) {
+        swig_type_info **type_pointer;
+        
+        /* first check if module already created */
+        type_pointer = SWIG_Python_GetTypeListHandle();
+        if (type_pointer) {
+            return type_pointer;
+        } else {
+            /* create a new module and variable */
+            return SWIG_Python_SetTypeListHandle(type_list_handle);
+        }
+    }
+    
+#ifdef __cplusplus
+}
+#endif
+
+/* -----------------------------------------------------------------------------*
+ *  Partial Init method
+ * -----------------------------------------------------------------------------*/
+
+#ifdef SWIG_LINK_RUNTIME
+#ifdef __cplusplus
+extern "C"
+#endif
+SWIGEXPORT(void *) SWIG_ReturnGlobalTypeList(void *);
+#endif
+
 #ifdef __cplusplus
 extern "C"
 #endif
@@ -2114,10 +3162,21 @@ SWIGEXPORT(void) SWIG_init(void) {
     PyObject *m, *d;
     int       i;
     if (!SWIG_globals) SWIG_globals = SWIG_newvarlink();
+    
+    /* Fix SwigMethods to carry the callback ptrs when needed */
+    SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_types_initial);
+    
     m = Py_InitModule((char *) SWIG_name, SwigMethods);
     d = PyModule_GetDict(m);
     
     if (!typeinit) {
+#ifdef SWIG_LINK_RUNTIME
+        swig_type_list_handle = (swig_type_info **) SWIG_ReturnGlobalTypeList(swig_type_list_handle);
+#else
+#  ifndef SWIG_STATIC_RUNTIME
+        swig_type_list_handle = SWIG_Python_LookupTypePointer(swig_type_list_handle);
+#  endif
+#endif
         for (i = 0; swig_types_initial[i]; i++) {
             swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
         }
@@ -2125,10 +3184,15 @@ SWIGEXPORT(void) SWIG_init(void) {
     }
     SWIG_InstallConstants(d,swig_const_table);
     
-    PyDict_SetItemString(d,"MEDIASTATE_STOPPED", SWIG_From_int((int)wxMEDIASTATE_STOPPED));
-    PyDict_SetItemString(d,"MEDIASTATE_PAUSED", SWIG_From_int((int)wxMEDIASTATE_PAUSED));
-    PyDict_SetItemString(d,"MEDIASTATE_PLAYING", SWIG_From_int((int)wxMEDIASTATE_PLAYING));
-    PyDict_SetItemString(d,"MEDIATIMEFORMAT_TIME", SWIG_From_int((int)wxMEDIATIMEFORMAT_TIME));
+    {
+        PyDict_SetItemString(d,"MEDIASTATE_STOPPED", SWIG_From_int((int)(wxMEDIASTATE_STOPPED))); 
+    }
+    {
+        PyDict_SetItemString(d,"MEDIASTATE_PAUSED", SWIG_From_int((int)(wxMEDIASTATE_PAUSED))); 
+    }
+    {
+        PyDict_SetItemString(d,"MEDIASTATE_PLAYING", SWIG_From_int((int)(wxMEDIASTATE_PLAYING))); 
+    }
     PyDict_SetItemString(d,(char*)"cvar", SWIG_globals);
     SWIG_addvarlink(SWIG_globals,(char*)"MediaCtrlNameStr",_wrap_MediaCtrlNameStr_get, _wrap_MediaCtrlNameStr_set);
     PyDict_SetItemString(d, "wxEVT_MEDIA_FINISHED", PyInt_FromLong(wxEVT_MEDIA_FINISHED));