]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/_core.py
reSWIGged
[wxWidgets.git] / wxPython / src / mac / _core.py
index f7ad0825f666206a2a6a10b332cb895e27f9b507..0d380a49b215ce9337579f7b5bd371a6b19fd6a7 100644 (file)
@@ -1,18 +1,18 @@
-# This file was created automatically by SWIG 1.3.27.
+# This file was created automatically by SWIG 1.3.29.
 # Don't modify this file, modify the SWIG interface instead.
 
 import _core_
 # Don't modify this file, modify the SWIG interface instead.
 
 import _core_
-
+import new
+new_instancemethod = new.instancemethod
 def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
 def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
+    if (name == "thisown"): return self.this.own(value)
     if (name == "this"):
     if (name == "this"):
-        if isinstance(value, class_type):
-            self.__dict__[name] = value.this
-            if hasattr(value,"thisown"): self.__dict__["thisown"] = value.thisown
-            del value.thisown
+        if type(value).__name__ == 'PySwigObject':
+            self.__dict__[name] = value
             return
     method = class_type.__swig_setmethods__.get(name,None)
     if method: return method(self,value)
             return
     method = class_type.__swig_setmethods__.get(name,None)
     if method: return method(self,value)
-    if (not static) or hasattr(self,name) or (name == "thisown"):
+    if (not static) or hasattr(self,name):
         self.__dict__[name] = value
     else:
         raise AttributeError("You cannot add attributes to %s" % self)
         self.__dict__[name] = value
     else:
         raise AttributeError("You cannot add attributes to %s" % self)
@@ -21,10 +21,16 @@ def _swig_setattr(self,class_type,name,value):
     return _swig_setattr_nondynamic(self,class_type,name,value,0)
 
 def _swig_getattr(self,class_type,name):
     return _swig_setattr_nondynamic(self,class_type,name,value,0)
 
 def _swig_getattr(self,class_type,name):
+    if (name == "thisown"): return self.this.own()
     method = class_type.__swig_getmethods__.get(name,None)
     if method: return method(self)
     raise AttributeError,name
 
     method = class_type.__swig_getmethods__.get(name,None)
     if method: return method(self)
     raise AttributeError,name
 
+def _swig_repr(self):
+    try: strthis = "proxy of " + self.this.__repr__()
+    except: strthis = ""
+    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
+
 import types
 try:
     _object = types.ObjectType
 import types
 try:
     _object = types.ObjectType
@@ -37,7 +43,8 @@ del types
 
 def _swig_setattr_nondynamic_method(set):
     def set_attr(self,name,value):
 
 def _swig_setattr_nondynamic_method(set):
     def set_attr(self,name,value):
-        if hasattr(self,name) or (name in ("this", "thisown")):
+        if (name == "thisown"): return self.this.own(value)
+        if hasattr(self,name) or (name == "this"):
             set(self,name,value)
         else:
             raise AttributeError("You cannot add attributes to %s" % self)
             set(self,name,value)
         else:
             raise AttributeError("You cannot add attributes to %s" % self)
@@ -95,6 +102,7 @@ CENTRE_ON_SCREEN = _core_.CENTRE_ON_SCREEN
 CENTER_ON_SCREEN = _core_.CENTER_ON_SCREEN
 CLIP_CHILDREN = _core_.CLIP_CHILDREN
 CLIP_SIBLINGS = _core_.CLIP_SIBLINGS
 CENTER_ON_SCREEN = _core_.CENTER_ON_SCREEN
 CLIP_CHILDREN = _core_.CLIP_CHILDREN
 CLIP_SIBLINGS = _core_.CLIP_SIBLINGS
+WINDOW_STYLE_MASK = _core_.WINDOW_STYLE_MASK
 ALWAYS_SHOW_SB = _core_.ALWAYS_SHOW_SB
 RETAINED = _core_.RETAINED
 BACKINGSTORE = _core_.BACKINGSTORE
 ALWAYS_SHOW_SB = _core_.ALWAYS_SHOW_SB
 RETAINED = _core_.RETAINED
 BACKINGSTORE = _core_.BACKINGSTORE
@@ -126,6 +134,8 @@ SB_VERTICAL = _core_.SB_VERTICAL
 RB_USE_CHECKBOX = _core_.RB_USE_CHECKBOX
 ST_SIZEGRIP = _core_.ST_SIZEGRIP
 ST_NO_AUTORESIZE = _core_.ST_NO_AUTORESIZE
 RB_USE_CHECKBOX = _core_.RB_USE_CHECKBOX
 ST_SIZEGRIP = _core_.ST_SIZEGRIP
 ST_NO_AUTORESIZE = _core_.ST_NO_AUTORESIZE
+ST_DOTS_MIDDLE = _core_.ST_DOTS_MIDDLE
+ST_DOTS_END = _core_.ST_DOTS_END
 FLOOD_SURFACE = _core_.FLOOD_SURFACE
 FLOOD_BORDER = _core_.FLOOD_BORDER
 ODDEVEN_RULE = _core_.ODDEVEN_RULE
 FLOOD_SURFACE = _core_.FLOOD_SURFACE
 FLOOD_BORDER = _core_.FLOOD_BORDER
 ODDEVEN_RULE = _core_.ODDEVEN_RULE
@@ -262,13 +272,6 @@ ID_ZOOM_OUT = _core_.ID_ZOOM_OUT
 ID_UNDELETE = _core_.ID_UNDELETE
 ID_REVERT_TO_SAVED = _core_.ID_REVERT_TO_SAVED
 ID_HIGHEST = _core_.ID_HIGHEST
 ID_UNDELETE = _core_.ID_UNDELETE
 ID_REVERT_TO_SAVED = _core_.ID_REVERT_TO_SAVED
 ID_HIGHEST = _core_.ID_HIGHEST
-OPEN = _core_.OPEN
-SAVE = _core_.SAVE
-HIDE_READONLY = _core_.HIDE_READONLY
-OVERWRITE_PROMPT = _core_.OVERWRITE_PROMPT
-FILE_MUST_EXIST = _core_.FILE_MUST_EXIST
-MULTIPLE = _core_.MULTIPLE
-CHANGE_DIR = _core_.CHANGE_DIR
 ACCEL_ALT = _core_.ACCEL_ALT
 ACCEL_CTRL = _core_.ACCEL_CTRL
 ACCEL_SHIFT = _core_.ACCEL_SHIFT
 ACCEL_ALT = _core_.ACCEL_ALT
 ACCEL_CTRL = _core_.ACCEL_CTRL
 ACCEL_SHIFT = _core_.ACCEL_SHIFT
@@ -281,8 +284,6 @@ PD_ESTIMATED_TIME = _core_.PD_ESTIMATED_TIME
 PD_REMAINING_TIME = _core_.PD_REMAINING_TIME
 PD_SMOOTH = _core_.PD_SMOOTH
 PD_CAN_SKIP = _core_.PD_CAN_SKIP
 PD_REMAINING_TIME = _core_.PD_REMAINING_TIME
 PD_SMOOTH = _core_.PD_SMOOTH
 PD_CAN_SKIP = _core_.PD_CAN_SKIP
-DD_NEW_DIR_BUTTON = _core_.DD_NEW_DIR_BUTTON
-DD_DEFAULT_STYLE = _core_.DD_DEFAULT_STYLE
 MENU_TEAROFF = _core_.MENU_TEAROFF
 MB_DOCKABLE = _core_.MB_DOCKABLE
 NO_FULL_REPAINT_ON_RESIZE = _core_.NO_FULL_REPAINT_ON_RESIZE
 MENU_TEAROFF = _core_.MENU_TEAROFF
 MB_DOCKABLE = _core_.MB_DOCKABLE
 NO_FULL_REPAINT_ON_RESIZE = _core_.NO_FULL_REPAINT_ON_RESIZE
@@ -691,9 +692,9 @@ class Object(object):
     The base class for most wx objects, although in wxPython not
     much functionality is needed nor exposed.
     """
     The base class for most wx objects, although in wxPython not
     much functionality is needed nor exposed.
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxObject instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def GetClassName(*args, **kwargs):
         """
         GetClassName(self) -> String
     def GetClassName(*args, **kwargs):
         """
         GetClassName(self) -> String
@@ -708,19 +709,12 @@ class Object(object):
 
         Deletes the C++ object this Python object is a proxy for.
         """
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        return _core_.Object_Destroy(*args, **kwargs)
-
+        val = _core_.Object_Destroy(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
 
-class ObjectPtr(Object):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Object
-_core_.Object_swigregister(ObjectPtr)
+_core_.Object_swigregister(Object)
 _wxPySetDictionary = _core_._wxPySetDictionary
 _wxPySetDictionary = _core_._wxPySetDictionary
-
-_wxPyFixStockObjects = _core_._wxPyFixStockObjects
-
 cvar = _core_.cvar
 EmptyString = cvar.EmptyString
 
 cvar = _core_.cvar
 EmptyString = cvar.EmptyString
 
@@ -782,34 +776,27 @@ CURSOR_MAX = _core_.CURSOR_MAX
 class Size(object):
     """
     wx.Size is a useful data structure used to represent the size of
 class Size(object):
     """
     wx.Size is a useful data structure used to represent the size of
-    something.  It simply contians integer width and height
-    proprtites.  In most places in wxPython where a wx.Size is
+    something.  It simply contains integer width and height
+    properties.  In most places in wxPython where a wx.Size is
     expected a (width, height) tuple can be used instead.
     """
     expected a (width, height) tuple can be used instead.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSize instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
     width = property(_core_.Size_width_get, _core_.Size_width_set)
     height = property(_core_.Size_height_get, _core_.Size_height_set)
     x = width; y = height 
     width = property(_core_.Size_width_get, _core_.Size_width_set)
     height = property(_core_.Size_height_get, _core_.Size_height_set)
     x = width; y = height 
-    def __init__(self, *args, **kwargs):
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int w=0, int h=0) -> Size
 
         Creates a size object.
         """
         """
         __init__(self, int w=0, int h=0) -> Size
 
         Creates a size object.
         """
-        newobj = _core_.new_Size(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_Size):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.Size_swiginit(self,_core_.new_Size(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Size
+    __del__ = lambda self : None;
     def __eq__(*args, **kwargs):
         """
     def __eq__(*args, **kwargs):
         """
-        __eq__(self, Size sz) -> bool
+        __eq__(self, PyObject other) -> bool
 
         Test for equality of wx.Size objects.
         """
 
         Test for equality of wx.Size objects.
         """
@@ -817,9 +804,9 @@ class Size(object):
 
     def __ne__(*args, **kwargs):
         """
 
     def __ne__(*args, **kwargs):
         """
-        __ne__(self, Size sz) -> bool
+        __ne__(self, PyObject other) -> bool
 
 
-        Test for inequality.
+        Test for inequality of wx.Size objects.
         """
         return _core_.Size___ne__(*args, **kwargs)
 
         """
         return _core_.Size___ne__(*args, **kwargs)
 
@@ -919,13 +906,7 @@ class Size(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Size, self.Get())
 
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Size, self.Get())
 
-
-class SizePtr(Size):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Size
-_core_.Size_swigregister(SizePtr)
+_core_.Size_swigregister(Size)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -935,29 +916,22 @@ class RealPoint(object):
     point x and y properties.  In wxPython most places that expect a
     wx.RealPoint can also accept a (x,y) tuple.
     """
     point x and y properties.  In wxPython most places that expect a
     wx.RealPoint can also accept a (x,y) tuple.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxRealPoint instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
     x = property(_core_.RealPoint_x_get, _core_.RealPoint_x_set)
     y = property(_core_.RealPoint_y_get, _core_.RealPoint_y_set)
     x = property(_core_.RealPoint_x_get, _core_.RealPoint_x_set)
     y = property(_core_.RealPoint_y_get, _core_.RealPoint_y_set)
-    def __init__(self, *args, **kwargs):
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, double x=0.0, double y=0.0) -> RealPoint
 
         Create a wx.RealPoint object
         """
         """
         __init__(self, double x=0.0, double y=0.0) -> RealPoint
 
         Create a wx.RealPoint object
         """
-        newobj = _core_.new_RealPoint(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_RealPoint):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.RealPoint_swiginit(self,_core_.new_RealPoint(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_RealPoint
+    __del__ = lambda self : None;
     def __eq__(*args, **kwargs):
         """
     def __eq__(*args, **kwargs):
         """
-        __eq__(self, RealPoint pt) -> bool
+        __eq__(self, PyObject other) -> bool
 
         Test for equality of wx.RealPoint objects.
         """
 
         Test for equality of wx.RealPoint objects.
         """
@@ -965,7 +939,7 @@ class RealPoint(object):
 
     def __ne__(*args, **kwargs):
         """
 
     def __ne__(*args, **kwargs):
         """
-        __ne__(self, RealPoint pt) -> bool
+        __ne__(self, PyObject other) -> bool
 
         Test for inequality of wx.RealPoint objects.
         """
 
         Test for inequality of wx.RealPoint objects.
         """
@@ -1016,13 +990,7 @@ class RealPoint(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.RealPoint, self.Get())
 
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.RealPoint, self.Get())
 
-
-class RealPointPtr(RealPoint):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = RealPoint
-_core_.RealPoint_swigregister(RealPointPtr)
+_core_.RealPoint_swigregister(RealPoint)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -1032,29 +1000,22 @@ class Point(object):
     and y properties.  Most places in wxPython that expect a wx.Point can
     also accept a (x,y) tuple.
     """
     and y properties.  Most places in wxPython that expect a wx.Point can
     also accept a (x,y) tuple.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPoint instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
     x = property(_core_.Point_x_get, _core_.Point_x_set)
     y = property(_core_.Point_y_get, _core_.Point_y_set)
     x = property(_core_.Point_x_get, _core_.Point_x_set)
     y = property(_core_.Point_y_get, _core_.Point_y_set)
-    def __init__(self, *args, **kwargs):
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int x=0, int y=0) -> Point
 
         Create a wx.Point object
         """
         """
         __init__(self, int x=0, int y=0) -> Point
 
         Create a wx.Point object
         """
-        newobj = _core_.new_Point(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_Point):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.Point_swiginit(self,_core_.new_Point(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Point
+    __del__ = lambda self : None;
     def __eq__(*args, **kwargs):
         """
     def __eq__(*args, **kwargs):
         """
-        __eq__(self, Point pt) -> bool
+        __eq__(self, PyObject other) -> bool
 
         Test for equality of wx.Point objects.
         """
 
         Test for equality of wx.Point objects.
         """
@@ -1062,7 +1023,7 @@ class Point(object):
 
     def __ne__(*args, **kwargs):
         """
 
     def __ne__(*args, **kwargs):
         """
-        __ne__(self, Point pt) -> bool
+        __ne__(self, PyObject other) -> bool
 
         Test for inequality of wx.Point objects.
         """
 
         Test for inequality of wx.Point objects.
         """
@@ -1129,13 +1090,7 @@ class Point(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Point, self.Get())
 
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Point, self.Get())
 
-
-class PointPtr(Point):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Point
-_core_.Point_swigregister(PointPtr)
+_core_.Point_swigregister(Point)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -1145,24 +1100,17 @@ class Rect(object):
     width and height properties.  In wxPython most palces that expect a
     wx.Rect can also accept a (x,y,width,height) tuple.
     """
     width and height properties.  In wxPython most palces that expect a
     wx.Rect can also accept a (x,y,width,height) tuple.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxRect instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int x=0, int y=0, int width=0, int height=0) -> Rect
 
         Create a new Rect object.
         """
         """
         __init__(self, int x=0, int y=0, int width=0, int height=0) -> Rect
 
         Create a new Rect object.
         """
-        newobj = _core_.new_Rect(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_Rect):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.Rect_swiginit(self,_core_.new_Rect(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Rect
+    __del__ = lambda self : None;
     def GetX(*args, **kwargs):
         """GetX(self) -> int"""
         return _core_.Rect_GetX(*args, **kwargs)
     def GetX(*args, **kwargs):
         """GetX(self) -> int"""
         return _core_.Rect_GetX(*args, **kwargs)
@@ -1319,7 +1267,7 @@ class Rect(object):
         """
         Offset(self, Point pt)
 
         """
         Offset(self, Point pt)
 
-        Same as OffsetXY but uses dx,dy from Point
+        Same as `OffsetXY` but uses dx,dy from Point
         """
         return _core_.Rect_Offset(*args, **kwargs)
 
         """
         return _core_.Rect_Offset(*args, **kwargs)
 
@@ -1357,17 +1305,17 @@ class Rect(object):
 
     def __eq__(*args, **kwargs):
         """
 
     def __eq__(*args, **kwargs):
         """
-        __eq__(self, Rect rect) -> bool
+        __eq__(self, PyObject other) -> bool
 
 
-        Test for equality.
+        Test for equality of wx.Rect objects.
         """
         return _core_.Rect___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         """
         """
         return _core_.Rect___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         """
-        __ne__(self, Rect rect) -> bool
+        __ne__(self, PyObject other) -> bool
 
 
-        Test for inequality.
+        Test for inequality of wx.Rect objects.
         """
         return _core_.Rect___ne__(*args, **kwargs)
 
         """
         return _core_.Rect___ne__(*args, **kwargs)
 
@@ -1395,6 +1343,16 @@ class Rect(object):
         """
         return _core_.Rect_Intersects(*args, **kwargs)
 
         """
         return _core_.Rect_Intersects(*args, **kwargs)
 
+    def CenterIn(*args, **kwargs):
+        """
+        CenterIn(self, Rect r, int dir=BOTH) -> Rect
+
+        Center this rectangle within the one passed to the method, which is
+        usually, but not necessarily, the larger one.
+        """
+        return _core_.Rect_CenterIn(*args, **kwargs)
+
+    CentreIn = CenterIn 
     x = property(_core_.Rect_x_get, _core_.Rect_x_set)
     y = property(_core_.Rect_y_get, _core_.Rect_y_set)
     width = property(_core_.Rect_width_get, _core_.Rect_width_set)
     x = property(_core_.Rect_x_get, _core_.Rect_x_set)
     y = property(_core_.Rect_y_get, _core_.Rect_y_set)
     width = property(_core_.Rect_width_get, _core_.Rect_width_set)
@@ -1430,13 +1388,7 @@ class Rect(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Rect, self.Get())
 
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Rect, self.Get())
 
-
-class RectPtr(Rect):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Rect
-_core_.Rect_swigregister(RectPtr)
+_core_.Rect_swigregister(Rect)
 
 def RectPP(*args, **kwargs):
     """
 
 def RectPP(*args, **kwargs):
     """
@@ -1445,7 +1397,6 @@ def RectPP(*args, **kwargs):
     Create a new Rect object from Points representing two corners.
     """
     val = _core_.new_RectPP(*args, **kwargs)
     Create a new Rect object from Points representing two corners.
     """
     val = _core_.new_RectPP(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def RectPS(*args, **kwargs):
     return val
 
 def RectPS(*args, **kwargs):
@@ -1455,7 +1406,6 @@ def RectPS(*args, **kwargs):
     Create a new Rect from a position and size.
     """
     val = _core_.new_RectPS(*args, **kwargs)
     Create a new Rect from a position and size.
     """
     val = _core_.new_RectPS(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def RectS(*args, **kwargs):
     return val
 
 def RectS(*args, **kwargs):
@@ -1465,17 +1415,16 @@ def RectS(*args, **kwargs):
     Create a new Rect from a size only.
     """
     val = _core_.new_RectS(*args, **kwargs)
     Create a new Rect from a size only.
     """
     val = _core_.new_RectS(*args, **kwargs)
-    val.thisown = 1
     return val
 
 
 def IntersectRect(*args, **kwargs):
     return val
 
 
 def IntersectRect(*args, **kwargs):
-    """
+  """
     IntersectRect(Rect r1, Rect r2) -> Rect
 
     Calculate and return the intersection of r1 and r2.
     """
     IntersectRect(Rect r1, Rect r2) -> Rect
 
     Calculate and return the intersection of r1 and r2.
     """
-    return _core_.IntersectRect(*args, **kwargs)
+  return _core_.IntersectRect(*args, **kwargs)
 #---------------------------------------------------------------------------
 
 class Point2D(object):
 #---------------------------------------------------------------------------
 
 class Point2D(object):
@@ -1483,18 +1432,15 @@ class Point2D(object):
     wx.Point2Ds represent a point or a vector in a 2d coordinate system
     with floating point values.
     """
     wx.Point2Ds represent a point or a vector in a 2d coordinate system
     with floating point values.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPoint2D instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, double x=0.0, double y=0.0) -> Point2D
 
         Create a w.Point2D object.
         """
         """
         __init__(self, double x=0.0, double y=0.0) -> Point2D
 
         Create a w.Point2D object.
         """
-        newobj = _core_.new_Point2D(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Point2D_swiginit(self,_core_.new_Point2D(*args, **kwargs))
     def GetFloor(*args, **kwargs):
         """
         GetFloor() -> (x,y)
     def GetFloor(*args, **kwargs):
         """
         GetFloor() -> (x,y)
@@ -1575,17 +1521,17 @@ class Point2D(object):
 
     def __eq__(*args, **kwargs):
         """
 
     def __eq__(*args, **kwargs):
         """
-        __eq__(self, Point2D pt) -> bool
+        __eq__(self, PyObject other) -> bool
 
 
-        Test for equality
+        Test for equality of wx.Point2D objects.
         """
         return _core_.Point2D___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         """
         """
         return _core_.Point2D___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         """
-        __ne__(self, Point2D pt) -> bool
+        __ne__(self, PyObject other) -> bool
 
 
-        Test for inequality
+        Test for inequality of wx.Point2D objects.
         """
         return _core_.Point2D___ne__(*args, **kwargs)
 
         """
         return _core_.Point2D___ne__(*args, **kwargs)
 
@@ -1616,13 +1562,7 @@ class Point2D(object):
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Point2D, self.Get())
 
     __safe_for_unpickling__ = True
     def __reduce__(self):                return (wx.Point2D, self.Get())
 
-
-class Point2DPtr(Point2D):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Point2D
-_core_.Point2D_swigregister(Point2DPtr)
+_core_.Point2D_swigregister(Point2D)
 
 def Point2DCopy(*args, **kwargs):
     """
 
 def Point2DCopy(*args, **kwargs):
     """
@@ -1631,7 +1571,6 @@ def Point2DCopy(*args, **kwargs):
     Create a w.Point2D object.
     """
     val = _core_.new_Point2DCopy(*args, **kwargs)
     Create a w.Point2D object.
     """
     val = _core_.new_Point2DCopy(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def Point2DFromPoint(*args, **kwargs):
     return val
 
 def Point2DFromPoint(*args, **kwargs):
@@ -1641,7 +1580,6 @@ def Point2DFromPoint(*args, **kwargs):
     Create a w.Point2D object.
     """
     val = _core_.new_Point2DFromPoint(*args, **kwargs)
     Create a w.Point2D object.
     """
     val = _core_.new_Point2DFromPoint(*args, **kwargs)
-    val.thisown = 1
     return val
 
 #---------------------------------------------------------------------------
     return val
 
 #---------------------------------------------------------------------------
@@ -1651,20 +1589,13 @@ FromCurrent = _core_.FromCurrent
 FromEnd = _core_.FromEnd
 class InputStream(object):
     """Proxy of C++ InputStream class"""
 FromEnd = _core_.FromEnd
 class InputStream(object):
     """Proxy of C++ InputStream class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyInputStream instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, PyObject p) -> InputStream"""
         """__init__(self, PyObject p) -> InputStream"""
-        newobj = _core_.new_InputStream(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_InputStream):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.InputStream_swiginit(self,_core_.new_InputStream(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_InputStream
+    __del__ = lambda self : None;
     def close(*args, **kwargs):
         """close(self)"""
         return _core_.InputStream_close(*args, **kwargs)
     def close(*args, **kwargs):
         """close(self)"""
         return _core_.InputStream_close(*args, **kwargs)
@@ -1729,56 +1660,39 @@ class InputStream(object):
         """TellI(self) -> long"""
         return _core_.InputStream_TellI(*args, **kwargs)
 
         """TellI(self) -> long"""
         return _core_.InputStream_TellI(*args, **kwargs)
 
-
-class InputStreamPtr(InputStream):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = InputStream
-_core_.InputStream_swigregister(InputStreamPtr)
+_core_.InputStream_swigregister(InputStream)
 DefaultPosition = cvar.DefaultPosition
 DefaultSize = cvar.DefaultSize
 
 class OutputStream(object):
     """Proxy of C++ OutputStream class"""
 DefaultPosition = cvar.DefaultPosition
 DefaultSize = cvar.DefaultSize
 
 class OutputStream(object):
     """Proxy of C++ OutputStream class"""
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxOutputStream instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def write(*args, **kwargs):
         """write(self, PyObject obj)"""
         return _core_.OutputStream_write(*args, **kwargs)
 
     def write(*args, **kwargs):
         """write(self, PyObject obj)"""
         return _core_.OutputStream_write(*args, **kwargs)
 
+    def LastWrite(*args, **kwargs):
+        """LastWrite(self) -> size_t"""
+        return _core_.OutputStream_LastWrite(*args, **kwargs)
 
 
-class OutputStreamPtr(OutputStream):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = OutputStream
-_core_.OutputStream_swigregister(OutputStreamPtr)
+_core_.OutputStream_swigregister(OutputStream)
 
 #---------------------------------------------------------------------------
 
 class FSFile(Object):
     """Proxy of C++ FSFile class"""
 
 #---------------------------------------------------------------------------
 
 class FSFile(Object):
     """Proxy of C++ FSFile class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxFSFile instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, InputStream stream, String loc, String mimetype, String anchor, 
             DateTime modif) -> FSFile
         """
         """
         __init__(self, InputStream stream, String loc, String mimetype, String anchor, 
             DateTime modif) -> FSFile
         """
-        newobj = _core_.new_FSFile(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-        self.thisown = 0   # It will normally be deleted by the user of the wx.FileSystem
-
-    def __del__(self, destroy=_core_.delete_FSFile):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.FSFile_swiginit(self,_core_.new_FSFile(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_FSFile
+    __del__ = lambda self : None;
     def GetStream(*args, **kwargs):
         """GetStream(self) -> InputStream"""
         return _core_.FSFile_GetStream(*args, **kwargs)
     def GetStream(*args, **kwargs):
         """GetStream(self) -> InputStream"""
         return _core_.FSFile_GetStream(*args, **kwargs)
@@ -1799,37 +1713,24 @@ class FSFile(Object):
         """GetModificationTime(self) -> DateTime"""
         return _core_.FSFile_GetModificationTime(*args, **kwargs)
 
         """GetModificationTime(self) -> DateTime"""
         return _core_.FSFile_GetModificationTime(*args, **kwargs)
 
-
-class FSFilePtr(FSFile):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = FSFile
-_core_.FSFile_swigregister(FSFilePtr)
+_core_.FSFile_swigregister(FSFile)
 
 class CPPFileSystemHandler(object):
     """Proxy of C++ CPPFileSystemHandler class"""
 
 class CPPFileSystemHandler(object):
     """Proxy of C++ CPPFileSystemHandler class"""
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxFileSystemHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-
-class CPPFileSystemHandlerPtr(CPPFileSystemHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = CPPFileSystemHandler
-_core_.CPPFileSystemHandler_swigregister(CPPFileSystemHandlerPtr)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _core_.delete_CPPFileSystemHandler
+    __del__ = lambda self : None;
+_core_.CPPFileSystemHandler_swigregister(CPPFileSystemHandler)
 
 class FileSystemHandler(CPPFileSystemHandler):
     """Proxy of C++ FileSystemHandler class"""
 
 class FileSystemHandler(CPPFileSystemHandler):
     """Proxy of C++ FileSystemHandler class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyFileSystemHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> FileSystemHandler"""
         """__init__(self) -> FileSystemHandler"""
-        newobj = _core_.new_FileSystemHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.FileSystemHandler_swiginit(self,_core_.new_FileSystemHandler(*args, **kwargs))
         self._setCallbackInfo(self, FileSystemHandler)
 
     def _setCallbackInfo(*args, **kwargs):
         self._setCallbackInfo(self, FileSystemHandler)
 
     def _setCallbackInfo(*args, **kwargs):
@@ -1872,30 +1773,17 @@ class FileSystemHandler(CPPFileSystemHandler):
         """GetMimeTypeFromExt(self, String location) -> String"""
         return _core_.FileSystemHandler_GetMimeTypeFromExt(*args, **kwargs)
 
         """GetMimeTypeFromExt(self, String location) -> String"""
         return _core_.FileSystemHandler_GetMimeTypeFromExt(*args, **kwargs)
 
-
-class FileSystemHandlerPtr(FileSystemHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = FileSystemHandler
-_core_.FileSystemHandler_swigregister(FileSystemHandlerPtr)
+_core_.FileSystemHandler_swigregister(FileSystemHandler)
 
 class FileSystem(Object):
     """Proxy of C++ FileSystem class"""
 
 class FileSystem(Object):
     """Proxy of C++ FileSystem class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxFileSystem instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> FileSystem"""
         """__init__(self) -> FileSystem"""
-        newobj = _core_.new_FileSystem(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_FileSystem):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.FileSystem_swiginit(self,_core_.new_FileSystem(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_FileSystem
+    __del__ = lambda self : None;
     def ChangePathTo(*args, **kwargs):
         """ChangePathTo(self, String location, bool is_dir=False)"""
         return _core_.FileSystem_ChangePathTo(*args, **kwargs)
     def ChangePathTo(*args, **kwargs):
         """ChangePathTo(self, String location, bool is_dir=False)"""
         return _core_.FileSystem_ChangePathTo(*args, **kwargs)
@@ -1936,40 +1824,31 @@ class FileSystem(Object):
         return _core_.FileSystem_URLToFileName(*args, **kwargs)
 
     URLToFileName = staticmethod(URLToFileName)
         return _core_.FileSystem_URLToFileName(*args, **kwargs)
 
     URLToFileName = staticmethod(URLToFileName)
-
-class FileSystemPtr(FileSystem):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = FileSystem
-_core_.FileSystem_swigregister(FileSystemPtr)
+_core_.FileSystem_swigregister(FileSystem)
 
 def FileSystem_AddHandler(*args, **kwargs):
 
 def FileSystem_AddHandler(*args, **kwargs):
-    """FileSystem_AddHandler(CPPFileSystemHandler handler)"""
-    return _core_.FileSystem_AddHandler(*args, **kwargs)
+  """FileSystem_AddHandler(CPPFileSystemHandler handler)"""
+  return _core_.FileSystem_AddHandler(*args, **kwargs)
 
 
-def FileSystem_CleanUpHandlers(*args, **kwargs):
-    """FileSystem_CleanUpHandlers()"""
-    return _core_.FileSystem_CleanUpHandlers(*args, **kwargs)
+def FileSystem_CleanUpHandlers(*args):
+  """FileSystem_CleanUpHandlers()"""
+  return _core_.FileSystem_CleanUpHandlers(*args)
 
 def FileSystem_FileNameToURL(*args, **kwargs):
 
 def FileSystem_FileNameToURL(*args, **kwargs):
-    """FileSystem_FileNameToURL(String filename) -> String"""
-    return _core_.FileSystem_FileNameToURL(*args, **kwargs)
+  """FileSystem_FileNameToURL(String filename) -> String"""
+  return _core_.FileSystem_FileNameToURL(*args, **kwargs)
 
 def FileSystem_URLToFileName(*args, **kwargs):
 
 def FileSystem_URLToFileName(*args, **kwargs):
-    """FileSystem_URLToFileName(String url) -> String"""
-    return _core_.FileSystem_URLToFileName(*args, **kwargs)
+  """FileSystem_URLToFileName(String url) -> String"""
+  return _core_.FileSystem_URLToFileName(*args, **kwargs)
 
 class InternetFSHandler(CPPFileSystemHandler):
     """Proxy of C++ InternetFSHandler class"""
 
 class InternetFSHandler(CPPFileSystemHandler):
     """Proxy of C++ InternetFSHandler class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxInternetFSHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> InternetFSHandler"""
         """__init__(self) -> InternetFSHandler"""
-        newobj = _core_.new_InternetFSHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.InternetFSHandler_swiginit(self,_core_.new_InternetFSHandler(*args, **kwargs))
     def CanOpen(*args, **kwargs):
         """CanOpen(self, String location) -> bool"""
         return _core_.InternetFSHandler_CanOpen(*args, **kwargs)
     def CanOpen(*args, **kwargs):
         """CanOpen(self, String location) -> bool"""
         return _core_.InternetFSHandler_CanOpen(*args, **kwargs)
@@ -1978,24 +1857,15 @@ class InternetFSHandler(CPPFileSystemHandler):
         """OpenFile(self, FileSystem fs, String location) -> FSFile"""
         return _core_.InternetFSHandler_OpenFile(*args, **kwargs)
 
         """OpenFile(self, FileSystem fs, String location) -> FSFile"""
         return _core_.InternetFSHandler_OpenFile(*args, **kwargs)
 
-
-class InternetFSHandlerPtr(InternetFSHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = InternetFSHandler
-_core_.InternetFSHandler_swigregister(InternetFSHandlerPtr)
+_core_.InternetFSHandler_swigregister(InternetFSHandler)
 
 class ZipFSHandler(CPPFileSystemHandler):
     """Proxy of C++ ZipFSHandler class"""
 
 class ZipFSHandler(CPPFileSystemHandler):
     """Proxy of C++ ZipFSHandler class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxZipFSHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> ZipFSHandler"""
         """__init__(self) -> ZipFSHandler"""
-        newobj = _core_.new_ZipFSHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ZipFSHandler_swiginit(self,_core_.new_ZipFSHandler(*args, **kwargs))
     def CanOpen(*args, **kwargs):
         """CanOpen(self, String location) -> bool"""
         return _core_.ZipFSHandler_CanOpen(*args, **kwargs)
     def CanOpen(*args, **kwargs):
         """CanOpen(self, String location) -> bool"""
         return _core_.ZipFSHandler_CanOpen(*args, **kwargs)
@@ -2012,26 +1882,20 @@ class ZipFSHandler(CPPFileSystemHandler):
         """FindNext(self) -> String"""
         return _core_.ZipFSHandler_FindNext(*args, **kwargs)
 
         """FindNext(self) -> String"""
         return _core_.ZipFSHandler_FindNext(*args, **kwargs)
 
-
-class ZipFSHandlerPtr(ZipFSHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ZipFSHandler
-_core_.ZipFSHandler_swigregister(ZipFSHandlerPtr)
+_core_.ZipFSHandler_swigregister(ZipFSHandler)
 
 
 def __wxMemoryFSHandler_AddFile_wxImage(*args, **kwargs):
 
 
 def __wxMemoryFSHandler_AddFile_wxImage(*args, **kwargs):
-    """__wxMemoryFSHandler_AddFile_wxImage(String filename, Image image, long type)"""
-    return _core_.__wxMemoryFSHandler_AddFile_wxImage(*args, **kwargs)
+  """__wxMemoryFSHandler_AddFile_wxImage(String filename, Image image, long type)"""
+  return _core_.__wxMemoryFSHandler_AddFile_wxImage(*args, **kwargs)
 
 def __wxMemoryFSHandler_AddFile_wxBitmap(*args, **kwargs):
 
 def __wxMemoryFSHandler_AddFile_wxBitmap(*args, **kwargs):
-    """__wxMemoryFSHandler_AddFile_wxBitmap(String filename, Bitmap bitmap, long type)"""
-    return _core_.__wxMemoryFSHandler_AddFile_wxBitmap(*args, **kwargs)
+  """__wxMemoryFSHandler_AddFile_wxBitmap(String filename, Bitmap bitmap, long type)"""
+  return _core_.__wxMemoryFSHandler_AddFile_wxBitmap(*args, **kwargs)
 
 def __wxMemoryFSHandler_AddFile_Data(*args, **kwargs):
 
 def __wxMemoryFSHandler_AddFile_Data(*args, **kwargs):
-    """__wxMemoryFSHandler_AddFile_Data(String filename, PyObject data)"""
-    return _core_.__wxMemoryFSHandler_AddFile_Data(*args, **kwargs)
+  """__wxMemoryFSHandler_AddFile_Data(String filename, PyObject data)"""
+  return _core_.__wxMemoryFSHandler_AddFile_Data(*args, **kwargs)
 def MemoryFSHandler_AddFile(filename, dataItem, imgType=-1):
     """
     Add 'file' to the memory filesystem.  The dataItem parameter can
 def MemoryFSHandler_AddFile(filename, dataItem, imgType=-1):
     """
     Add 'file' to the memory filesystem.  The dataItem parameter can
@@ -2051,14 +1915,11 @@ def MemoryFSHandler_AddFile(filename, dataItem, imgType=-1):
 
 class MemoryFSHandler(CPPFileSystemHandler):
     """Proxy of C++ MemoryFSHandler class"""
 
 class MemoryFSHandler(CPPFileSystemHandler):
     """Proxy of C++ MemoryFSHandler class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMemoryFSHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> MemoryFSHandler"""
         """__init__(self) -> MemoryFSHandler"""
-        newobj = _core_.new_MemoryFSHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MemoryFSHandler_swiginit(self,_core_.new_MemoryFSHandler(*args, **kwargs))
     def RemoveFile(*args, **kwargs):
         """RemoveFile(String filename)"""
         return _core_.MemoryFSHandler_RemoveFile(*args, **kwargs)
     def RemoveFile(*args, **kwargs):
         """RemoveFile(String filename)"""
         return _core_.MemoryFSHandler_RemoveFile(*args, **kwargs)
@@ -2081,17 +1942,11 @@ class MemoryFSHandler(CPPFileSystemHandler):
         """FindNext(self) -> String"""
         return _core_.MemoryFSHandler_FindNext(*args, **kwargs)
 
         """FindNext(self) -> String"""
         return _core_.MemoryFSHandler_FindNext(*args, **kwargs)
 
-
-class MemoryFSHandlerPtr(MemoryFSHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MemoryFSHandler
-_core_.MemoryFSHandler_swigregister(MemoryFSHandlerPtr)
+_core_.MemoryFSHandler_swigregister(MemoryFSHandler)
 
 def MemoryFSHandler_RemoveFile(*args, **kwargs):
 
 def MemoryFSHandler_RemoveFile(*args, **kwargs):
-    """MemoryFSHandler_RemoveFile(String filename)"""
-    return _core_.MemoryFSHandler_RemoveFile(*args, **kwargs)
+  """MemoryFSHandler_RemoveFile(String filename)"""
+  return _core_.MemoryFSHandler_RemoveFile(*args, **kwargs)
 
 IMAGE_ALPHA_TRANSPARENT = _core_.IMAGE_ALPHA_TRANSPARENT
 IMAGE_ALPHA_THRESHOLD = _core_.IMAGE_ALPHA_THRESHOLD
 
 IMAGE_ALPHA_TRANSPARENT = _core_.IMAGE_ALPHA_TRANSPARENT
 IMAGE_ALPHA_THRESHOLD = _core_.IMAGE_ALPHA_THRESHOLD
@@ -2104,9 +1959,9 @@ class ImageHandler(Object):
     image creation from data. It is used within `wx.Image` and is not
     normally seen by the application.
     """
     image creation from data. It is used within `wx.Image` and is not
     normally seen by the application.
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxImageHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def GetName(*args, **kwargs):
         """GetName(self) -> String"""
         return _core_.ImageHandler_GetName(*args, **kwargs)
     def GetName(*args, **kwargs):
         """GetName(self) -> String"""
         return _core_.ImageHandler_GetName(*args, **kwargs)
@@ -2127,6 +1982,10 @@ class ImageHandler(Object):
         """CanRead(self, String name) -> bool"""
         return _core_.ImageHandler_CanRead(*args, **kwargs)
 
         """CanRead(self, String name) -> bool"""
         return _core_.ImageHandler_CanRead(*args, **kwargs)
 
+    def CanReadStream(*args, **kwargs):
+        """CanReadStream(self, InputStream stream) -> bool"""
+        return _core_.ImageHandler_CanReadStream(*args, **kwargs)
+
     def SetName(*args, **kwargs):
         """SetName(self, String name)"""
         return _core_.ImageHandler_SetName(*args, **kwargs)
     def SetName(*args, **kwargs):
         """SetName(self, String name)"""
         return _core_.ImageHandler_SetName(*args, **kwargs)
@@ -2143,13 +2002,7 @@ class ImageHandler(Object):
         """SetMimeType(self, String mimetype)"""
         return _core_.ImageHandler_SetMimeType(*args, **kwargs)
 
         """SetMimeType(self, String mimetype)"""
         return _core_.ImageHandler_SetMimeType(*args, **kwargs)
 
-
-class ImageHandlerPtr(ImageHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ImageHandler
-_core_.ImageHandler_swigregister(ImageHandlerPtr)
+_core_.ImageHandler_swigregister(ImageHandler)
 
 class PyImageHandler(ImageHandler):
     """
 
 class PyImageHandler(ImageHandler):
     """
@@ -2177,9 +2030,9 @@ class PyImageHandler(ImageHandler):
     `SetExtension` from your constructor.
 
     """
     `SetExtension` from your constructor.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyImageHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PyImageHandler
 
         """
         __init__(self) -> PyImageHandler
 
@@ -2207,34 +2060,22 @@ class PyImageHandler(ImageHandler):
         `SetExtension` from your constructor.
 
         """
         `SetExtension` from your constructor.
 
         """
-        newobj = _core_.new_PyImageHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.PyImageHandler_swiginit(self,_core_.new_PyImageHandler(*args, **kwargs))
         self._SetSelf(self)
 
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyImageHandler__SetSelf(*args, **kwargs)
 
         self._SetSelf(self)
 
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyImageHandler__SetSelf(*args, **kwargs)
 
-
-class PyImageHandlerPtr(PyImageHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PyImageHandler
-_core_.PyImageHandler_swigregister(PyImageHandlerPtr)
+_core_.PyImageHandler_swigregister(PyImageHandler)
 
 class ImageHistogram(object):
     """Proxy of C++ ImageHistogram class"""
 
 class ImageHistogram(object):
     """Proxy of C++ ImageHistogram class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxImageHistogram instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> ImageHistogram"""
         """__init__(self) -> ImageHistogram"""
-        newobj = _core_.new_ImageHistogram(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ImageHistogram_swiginit(self,_core_.new_ImageHistogram(*args, **kwargs))
     def MakeKey(*args, **kwargs):
         """
         MakeKey(byte r, byte g, byte b) -> unsigned long
     def MakeKey(*args, **kwargs):
         """
         MakeKey(byte r, byte g, byte b) -> unsigned long
@@ -2279,21 +2120,15 @@ class ImageHistogram(object):
         """
         return _core_.ImageHistogram_GetCountColour(*args, **kwargs)
 
         """
         return _core_.ImageHistogram_GetCountColour(*args, **kwargs)
 
-
-class ImageHistogramPtr(ImageHistogram):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ImageHistogram
-_core_.ImageHistogram_swigregister(ImageHistogramPtr)
+_core_.ImageHistogram_swigregister(ImageHistogram)
 
 def ImageHistogram_MakeKey(*args, **kwargs):
 
 def ImageHistogram_MakeKey(*args, **kwargs):
-    """
+  """
     ImageHistogram_MakeKey(byte r, byte g, byte b) -> unsigned long
 
     Get the key in the histogram for the given RGB values
     """
     ImageHistogram_MakeKey(byte r, byte g, byte b) -> unsigned long
 
     Get the key in the histogram for the given RGB values
     """
-    return _core_.ImageHistogram_MakeKey(*args, **kwargs)
+  return _core_.ImageHistogram_MakeKey(*args, **kwargs)
 
 class Image_RGBValue(object):
     """
 
 class Image_RGBValue(object):
     """
@@ -2302,28 +2137,19 @@ class Image_RGBValue(object):
     `wx.Image.RGBtoHSV`, which converts between HSV color space and RGB
     color space.
     """
     `wx.Image.RGBtoHSV`, which converts between HSV color space and RGB
     color space.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxImage_RGBValue instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, byte r=0, byte g=0, byte b=0) -> Image_RGBValue
 
         Constructor.
         """
         """
         __init__(self, byte r=0, byte g=0, byte b=0) -> Image_RGBValue
 
         Constructor.
         """
-        newobj = _core_.new_Image_RGBValue(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Image_RGBValue_swiginit(self,_core_.new_Image_RGBValue(*args, **kwargs))
     red = property(_core_.Image_RGBValue_red_get, _core_.Image_RGBValue_red_set)
     green = property(_core_.Image_RGBValue_green_get, _core_.Image_RGBValue_green_set)
     blue = property(_core_.Image_RGBValue_blue_get, _core_.Image_RGBValue_blue_set)
     red = property(_core_.Image_RGBValue_red_get, _core_.Image_RGBValue_red_set)
     green = property(_core_.Image_RGBValue_green_get, _core_.Image_RGBValue_green_set)
     blue = property(_core_.Image_RGBValue_blue_get, _core_.Image_RGBValue_blue_set)
-
-class Image_RGBValuePtr(Image_RGBValue):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Image_RGBValue
-_core_.Image_RGBValue_swigregister(Image_RGBValuePtr)
+_core_.Image_RGBValue_swigregister(Image_RGBValue)
 
 class Image_HSVValue(object):
     """
 
 class Image_HSVValue(object):
     """
@@ -2332,28 +2158,19 @@ class Image_HSVValue(object):
     `wx.Image.RGBtoHSV`, which +converts between HSV color space and RGB
     color space.
     """
     `wx.Image.RGBtoHSV`, which +converts between HSV color space and RGB
     color space.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxImage_HSVValue instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, double h=0.0, double s=0.0, double v=0.0) -> Image_HSVValue
 
         Constructor.
         """
         """
         __init__(self, double h=0.0, double s=0.0, double v=0.0) -> Image_HSVValue
 
         Constructor.
         """
-        newobj = _core_.new_Image_HSVValue(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Image_HSVValue_swiginit(self,_core_.new_Image_HSVValue(*args, **kwargs))
     hue = property(_core_.Image_HSVValue_hue_get, _core_.Image_HSVValue_hue_set)
     saturation = property(_core_.Image_HSVValue_saturation_get, _core_.Image_HSVValue_saturation_set)
     value = property(_core_.Image_HSVValue_value_get, _core_.Image_HSVValue_value_set)
     hue = property(_core_.Image_HSVValue_hue_get, _core_.Image_HSVValue_hue_set)
     saturation = property(_core_.Image_HSVValue_saturation_get, _core_.Image_HSVValue_saturation_set)
     value = property(_core_.Image_HSVValue_value_get, _core_.Image_HSVValue_value_set)
-
-class Image_HSVValuePtr(Image_HSVValue):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Image_HSVValue
-_core_.Image_HSVValue_swigregister(Image_HSVValuePtr)
+_core_.Image_HSVValue_swigregister(Image_HSVValue)
 
 class Image(Object):
     """
 
 class Image(Object):
     """
@@ -2382,24 +2199,17 @@ class Image(Object):
     with `HasAlpha`. Note that currently only images loaded from PNG files
     with transparency information will have an alpha channel.
     """
     with `HasAlpha`. Note that currently only images loaded from PNG files
     with transparency information will have an alpha channel.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxImage instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, String name, long type=BITMAP_TYPE_ANY, int index=-1) -> Image
 
         Loads an image from a file.
         """
         """
         __init__(self, String name, long type=BITMAP_TYPE_ANY, int index=-1) -> Image
 
         Loads an image from a file.
         """
-        newobj = _core_.new_Image(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_Image):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.Image_swiginit(self,_core_.new_Image(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_Image
+    __del__ = lambda self : None;
     def Create(*args, **kwargs):
         """
         Create(self, int width, int height, bool clear=True)
     def Create(*args, **kwargs):
         """
         Create(self, int width, int height, bool clear=True)
@@ -2415,7 +2225,9 @@ class Image(Object):
 
         Destroys the image data.
         """
 
         Destroys the image data.
         """
-        return _core_.Image_Destroy(*args, **kwargs)
+        val = _core_.Image_Destroy(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def Scale(*args, **kwargs):
         """
 
     def Scale(*args, **kwargs):
         """
@@ -3023,6 +2835,11 @@ class Image(Object):
         return _core_.Image_RemoveHandler(*args, **kwargs)
 
     RemoveHandler = staticmethod(RemoveHandler)
         return _core_.Image_RemoveHandler(*args, **kwargs)
 
     RemoveHandler = staticmethod(RemoveHandler)
+    def GetHandlers(*args, **kwargs):
+        """GetHandlers() -> PyObject"""
+        return _core_.Image_GetHandlers(*args, **kwargs)
+
+    GetHandlers = staticmethod(GetHandlers)
     def GetImageExtWildcard(*args, **kwargs):
         """
         GetImageExtWildcard() -> String
     def GetImageExtWildcard(*args, **kwargs):
         """
         GetImageExtWildcard() -> String
@@ -3070,13 +2887,7 @@ class Image(Object):
 
     HSVtoRGB = staticmethod(HSVtoRGB)
     def __nonzero__(self): return self.Ok() 
 
     HSVtoRGB = staticmethod(HSVtoRGB)
     def __nonzero__(self): return self.Ok() 
-
-class ImagePtr(Image):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Image
-_core_.Image_swigregister(ImagePtr)
+_core_.Image_swigregister(Image)
 
 def ImageFromMime(*args, **kwargs):
     """
 
 def ImageFromMime(*args, **kwargs):
     """
@@ -3086,7 +2897,6 @@ def ImageFromMime(*args, **kwargs):
     'image/jpeg') to specify image type.
     """
     val = _core_.new_ImageFromMime(*args, **kwargs)
     'image/jpeg') to specify image type.
     """
     val = _core_.new_ImageFromMime(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def ImageFromStream(*args, **kwargs):
     return val
 
 def ImageFromStream(*args, **kwargs):
@@ -3097,7 +2907,6 @@ def ImageFromStream(*args, **kwargs):
     object.
     """
     val = _core_.new_ImageFromStream(*args, **kwargs)
     object.
     """
     val = _core_.new_ImageFromStream(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def ImageFromStreamMime(*args, **kwargs):
     return val
 
 def ImageFromStreamMime(*args, **kwargs):
@@ -3108,7 +2917,6 @@ def ImageFromStreamMime(*args, **kwargs):
     object, specifying the image format with a MIME type string.
     """
     val = _core_.new_ImageFromStreamMime(*args, **kwargs)
     object, specifying the image format with a MIME type string.
     """
     val = _core_.new_ImageFromStreamMime(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def EmptyImage(*args, **kwargs):
     return val
 
 def EmptyImage(*args, **kwargs):
@@ -3119,7 +2927,6 @@ def EmptyImage(*args, **kwargs):
     pixels to black.
     """
     val = _core_.new_EmptyImage(*args, **kwargs)
     pixels to black.
     """
     val = _core_.new_EmptyImage(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def ImageFromBitmap(*args, **kwargs):
     return val
 
 def ImageFromBitmap(*args, **kwargs):
@@ -3129,7 +2936,6 @@ def ImageFromBitmap(*args, **kwargs):
     Construct an Image from a `wx.Bitmap`.
     """
     val = _core_.new_ImageFromBitmap(*args, **kwargs)
     Construct an Image from a `wx.Bitmap`.
     """
     val = _core_.new_ImageFromBitmap(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def ImageFromData(*args, **kwargs):
     return val
 
 def ImageFromData(*args, **kwargs):
@@ -3141,7 +2947,6 @@ def ImageFromData(*args, **kwargs):
     must be width*height*3.
     """
     val = _core_.new_ImageFromData(*args, **kwargs)
     must be width*height*3.
     """
     val = _core_.new_ImageFromData(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def ImageFromDataWithAlpha(*args, **kwargs):
     return val
 
 def ImageFromDataWithAlpha(*args, **kwargs):
@@ -3154,74 +2959,77 @@ def ImageFromDataWithAlpha(*args, **kwargs):
     alpha data must be width*height bytes.
     """
     val = _core_.new_ImageFromDataWithAlpha(*args, **kwargs)
     alpha data must be width*height bytes.
     """
     val = _core_.new_ImageFromDataWithAlpha(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def Image_CanRead(*args, **kwargs):
     return val
 
 def Image_CanRead(*args, **kwargs):
-    """
+  """
     Image_CanRead(String filename) -> bool
 
     Returns True if the image handlers can read this file.
     """
     Image_CanRead(String filename) -> bool
 
     Returns True if the image handlers can read this file.
     """
-    return _core_.Image_CanRead(*args, **kwargs)
+  return _core_.Image_CanRead(*args, **kwargs)
 
 def Image_GetImageCount(*args, **kwargs):
 
 def Image_GetImageCount(*args, **kwargs):
-    """
+  """
     Image_GetImageCount(String filename, long type=BITMAP_TYPE_ANY) -> int
 
     If the image file contains more than one image and the image handler
     is capable of retrieving these individually, this function will return
     the number of available images.
     """
     Image_GetImageCount(String filename, long type=BITMAP_TYPE_ANY) -> int
 
     If the image file contains more than one image and the image handler
     is capable of retrieving these individually, this function will return
     the number of available images.
     """
-    return _core_.Image_GetImageCount(*args, **kwargs)
+  return _core_.Image_GetImageCount(*args, **kwargs)
 
 def Image_CanReadStream(*args, **kwargs):
 
 def Image_CanReadStream(*args, **kwargs):
-    """
+  """
     Image_CanReadStream(InputStream stream) -> bool
 
     Returns True if the image handlers can read an image file from the
     data currently on the input stream, or a readable Python file-like
     object.
     """
     Image_CanReadStream(InputStream stream) -> bool
 
     Returns True if the image handlers can read an image file from the
     data currently on the input stream, or a readable Python file-like
     object.
     """
-    return _core_.Image_CanReadStream(*args, **kwargs)
+  return _core_.Image_CanReadStream(*args, **kwargs)
 
 def Image_AddHandler(*args, **kwargs):
 
 def Image_AddHandler(*args, **kwargs):
-    """Image_AddHandler(ImageHandler handler)"""
-    return _core_.Image_AddHandler(*args, **kwargs)
+  """Image_AddHandler(ImageHandler handler)"""
+  return _core_.Image_AddHandler(*args, **kwargs)
 
 def Image_InsertHandler(*args, **kwargs):
 
 def Image_InsertHandler(*args, **kwargs):
-    """Image_InsertHandler(ImageHandler handler)"""
-    return _core_.Image_InsertHandler(*args, **kwargs)
+  """Image_InsertHandler(ImageHandler handler)"""
+  return _core_.Image_InsertHandler(*args, **kwargs)
 
 def Image_RemoveHandler(*args, **kwargs):
 
 def Image_RemoveHandler(*args, **kwargs):
-    """Image_RemoveHandler(String name) -> bool"""
-    return _core_.Image_RemoveHandler(*args, **kwargs)
+  """Image_RemoveHandler(String name) -> bool"""
+  return _core_.Image_RemoveHandler(*args, **kwargs)
 
 
-def Image_GetImageExtWildcard(*args, **kwargs):
-    """
+def Image_GetHandlers(*args):
+  """Image_GetHandlers() -> PyObject"""
+  return _core_.Image_GetHandlers(*args)
+
+def Image_GetImageExtWildcard(*args):
+  """
     Image_GetImageExtWildcard() -> String
 
     Iterates all registered wxImageHandler objects, and returns a string
     containing file extension masks suitable for passing to file open/save
     dialog boxes.
     """
     Image_GetImageExtWildcard() -> String
 
     Iterates all registered wxImageHandler objects, and returns a string
     containing file extension masks suitable for passing to file open/save
     dialog boxes.
     """
-    return _core_.Image_GetImageExtWildcard(*args, **kwargs)
+  return _core_.Image_GetImageExtWildcard(*args)
 
 def Image_RGBtoHSV(*args, **kwargs):
 
 def Image_RGBtoHSV(*args, **kwargs):
-    """
+  """
     Image_RGBtoHSV(Image_RGBValue rgb) -> Image_HSVValue
 
     Converts a color in RGB color space to HSV color space.
     """
     Image_RGBtoHSV(Image_RGBValue rgb) -> Image_HSVValue
 
     Converts a color in RGB color space to HSV color space.
     """
-    return _core_.Image_RGBtoHSV(*args, **kwargs)
+  return _core_.Image_RGBtoHSV(*args, **kwargs)
 
 def Image_HSVtoRGB(*args, **kwargs):
 
 def Image_HSVtoRGB(*args, **kwargs):
-    """
+  """
     Image_HSVtoRGB(Image_HSVValue hsv) -> Image_RGBValue
 
     Converts a color in HSV color space to RGB color space.
     """
     Image_HSVtoRGB(Image_HSVValue hsv) -> Image_RGBValue
 
     Converts a color in HSV color space to RGB color space.
     """
-    return _core_.Image_HSVtoRGB(*args, **kwargs)
+  return _core_.Image_HSVtoRGB(*args, **kwargs)
 
 def InitAllImageHandlers():
     """
 
 def InitAllImageHandlers():
     """
@@ -3246,25 +3054,16 @@ BMP_1BPP = _core_.BMP_1BPP
 BMP_1BPP_BW = _core_.BMP_1BPP_BW
 class BMPHandler(ImageHandler):
     """A `wx.ImageHandler` for \*.bmp bitmap files."""
 BMP_1BPP_BW = _core_.BMP_1BPP_BW
 class BMPHandler(ImageHandler):
     """A `wx.ImageHandler` for \*.bmp bitmap files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxBMPHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> BMPHandler
 
         A `wx.ImageHandler` for \*.bmp bitmap files.
         """
         """
         __init__(self) -> BMPHandler
 
         A `wx.ImageHandler` for \*.bmp bitmap files.
         """
-        newobj = _core_.new_BMPHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class BMPHandlerPtr(BMPHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = BMPHandler
-_core_.BMPHandler_swigregister(BMPHandlerPtr)
+        _core_.BMPHandler_swiginit(self,_core_.new_BMPHandler(*args, **kwargs))
+_core_.BMPHandler_swigregister(BMPHandler)
 NullImage = cvar.NullImage
 IMAGE_OPTION_FILENAME = cvar.IMAGE_OPTION_FILENAME
 IMAGE_OPTION_BMP_FORMAT = cvar.IMAGE_OPTION_BMP_FORMAT
 NullImage = cvar.NullImage
 IMAGE_OPTION_FILENAME = cvar.IMAGE_OPTION_FILENAME
 IMAGE_OPTION_BMP_FORMAT = cvar.IMAGE_OPTION_BMP_FORMAT
@@ -3284,231 +3083,141 @@ IMAGE_OPTION_PNG_BITDEPTH = cvar.IMAGE_OPTION_PNG_BITDEPTH
 
 class ICOHandler(BMPHandler):
     """A `wx.ImageHandler` for \*.ico icon files."""
 
 class ICOHandler(BMPHandler):
     """A `wx.ImageHandler` for \*.ico icon files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxICOHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> ICOHandler
 
         A `wx.ImageHandler` for \*.ico icon files.
         """
         """
         __init__(self) -> ICOHandler
 
         A `wx.ImageHandler` for \*.ico icon files.
         """
-        newobj = _core_.new_ICOHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class ICOHandlerPtr(ICOHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ICOHandler
-_core_.ICOHandler_swigregister(ICOHandlerPtr)
+        _core_.ICOHandler_swiginit(self,_core_.new_ICOHandler(*args, **kwargs))
+_core_.ICOHandler_swigregister(ICOHandler)
 
 class CURHandler(ICOHandler):
     """A `wx.ImageHandler` for \*.cur cursor files."""
 
 class CURHandler(ICOHandler):
     """A `wx.ImageHandler` for \*.cur cursor files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxCURHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> CURHandler
 
         A `wx.ImageHandler` for \*.cur cursor files.
         """
         """
         __init__(self) -> CURHandler
 
         A `wx.ImageHandler` for \*.cur cursor files.
         """
-        newobj = _core_.new_CURHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class CURHandlerPtr(CURHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = CURHandler
-_core_.CURHandler_swigregister(CURHandlerPtr)
+        _core_.CURHandler_swiginit(self,_core_.new_CURHandler(*args, **kwargs))
+_core_.CURHandler_swigregister(CURHandler)
 
 class ANIHandler(CURHandler):
     """A `wx.ImageHandler` for \*.ani animated cursor files."""
 
 class ANIHandler(CURHandler):
     """A `wx.ImageHandler` for \*.ani animated cursor files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxANIHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> ANIHandler
 
         A `wx.ImageHandler` for \*.ani animated cursor files.
         """
         """
         __init__(self) -> ANIHandler
 
         A `wx.ImageHandler` for \*.ani animated cursor files.
         """
-        newobj = _core_.new_ANIHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class ANIHandlerPtr(ANIHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ANIHandler
-_core_.ANIHandler_swigregister(ANIHandlerPtr)
+        _core_.ANIHandler_swiginit(self,_core_.new_ANIHandler(*args, **kwargs))
+_core_.ANIHandler_swigregister(ANIHandler)
 
 class PNGHandler(ImageHandler):
     """A `wx.ImageHandler` for PNG image files."""
 
 class PNGHandler(ImageHandler):
     """A `wx.ImageHandler` for PNG image files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPNGHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PNGHandler
 
         A `wx.ImageHandler` for PNG image files.
         """
         """
         __init__(self) -> PNGHandler
 
         A `wx.ImageHandler` for PNG image files.
         """
-        newobj = _core_.new_PNGHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class PNGHandlerPtr(PNGHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PNGHandler
-_core_.PNGHandler_swigregister(PNGHandlerPtr)
+        _core_.PNGHandler_swiginit(self,_core_.new_PNGHandler(*args, **kwargs))
+_core_.PNGHandler_swigregister(PNGHandler)
 
 class GIFHandler(ImageHandler):
     """A `wx.ImageHandler` for GIF image files."""
 
 class GIFHandler(ImageHandler):
     """A `wx.ImageHandler` for GIF image files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGIFHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> GIFHandler
 
         A `wx.ImageHandler` for GIF image files.
         """
         """
         __init__(self) -> GIFHandler
 
         A `wx.ImageHandler` for GIF image files.
         """
-        newobj = _core_.new_GIFHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class GIFHandlerPtr(GIFHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GIFHandler
-_core_.GIFHandler_swigregister(GIFHandlerPtr)
+        _core_.GIFHandler_swiginit(self,_core_.new_GIFHandler(*args, **kwargs))
+_core_.GIFHandler_swigregister(GIFHandler)
 
 class PCXHandler(ImageHandler):
     """A `wx.ImageHandler` for PCX imager files."""
 
 class PCXHandler(ImageHandler):
     """A `wx.ImageHandler` for PCX imager files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPCXHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PCXHandler
 
         A `wx.ImageHandler` for PCX imager files.
         """
         """
         __init__(self) -> PCXHandler
 
         A `wx.ImageHandler` for PCX imager files.
         """
-        newobj = _core_.new_PCXHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class PCXHandlerPtr(PCXHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PCXHandler
-_core_.PCXHandler_swigregister(PCXHandlerPtr)
+        _core_.PCXHandler_swiginit(self,_core_.new_PCXHandler(*args, **kwargs))
+_core_.PCXHandler_swigregister(PCXHandler)
 
 class JPEGHandler(ImageHandler):
     """A `wx.ImageHandler` for JPEG/JPG image files."""
 
 class JPEGHandler(ImageHandler):
     """A `wx.ImageHandler` for JPEG/JPG image files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxJPEGHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> JPEGHandler
 
         A `wx.ImageHandler` for JPEG/JPG image files.
         """
         """
         __init__(self) -> JPEGHandler
 
         A `wx.ImageHandler` for JPEG/JPG image files.
         """
-        newobj = _core_.new_JPEGHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class JPEGHandlerPtr(JPEGHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = JPEGHandler
-_core_.JPEGHandler_swigregister(JPEGHandlerPtr)
+        _core_.JPEGHandler_swiginit(self,_core_.new_JPEGHandler(*args, **kwargs))
+_core_.JPEGHandler_swigregister(JPEGHandler)
 
 class PNMHandler(ImageHandler):
     """A `wx.ImageHandler` for PNM image files."""
 
 class PNMHandler(ImageHandler):
     """A `wx.ImageHandler` for PNM image files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPNMHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PNMHandler
 
         A `wx.ImageHandler` for PNM image files.
         """
         """
         __init__(self) -> PNMHandler
 
         A `wx.ImageHandler` for PNM image files.
         """
-        newobj = _core_.new_PNMHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class PNMHandlerPtr(PNMHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PNMHandler
-_core_.PNMHandler_swigregister(PNMHandlerPtr)
+        _core_.PNMHandler_swiginit(self,_core_.new_PNMHandler(*args, **kwargs))
+_core_.PNMHandler_swigregister(PNMHandler)
 
 class XPMHandler(ImageHandler):
     """A `wx.ImageHandler` for XPM image."""
 
 class XPMHandler(ImageHandler):
     """A `wx.ImageHandler` for XPM image."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxXPMHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> XPMHandler
 
         A `wx.ImageHandler` for XPM image.
         """
         """
         __init__(self) -> XPMHandler
 
         A `wx.ImageHandler` for XPM image.
         """
-        newobj = _core_.new_XPMHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class XPMHandlerPtr(XPMHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = XPMHandler
-_core_.XPMHandler_swigregister(XPMHandlerPtr)
+        _core_.XPMHandler_swiginit(self,_core_.new_XPMHandler(*args, **kwargs))
+_core_.XPMHandler_swigregister(XPMHandler)
 
 class TIFFHandler(ImageHandler):
     """A `wx.ImageHandler` for TIFF image files."""
 
 class TIFFHandler(ImageHandler):
     """A `wx.ImageHandler` for TIFF image files."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxTIFFHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> TIFFHandler
 
         A `wx.ImageHandler` for TIFF image files.
         """
         """
         __init__(self) -> TIFFHandler
 
         A `wx.ImageHandler` for TIFF image files.
         """
-        newobj = _core_.new_TIFFHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class TIFFHandlerPtr(TIFFHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = TIFFHandler
-_core_.TIFFHandler_swigregister(TIFFHandlerPtr)
+        _core_.TIFFHandler_swiginit(self,_core_.new_TIFFHandler(*args, **kwargs))
+_core_.TIFFHandler_swigregister(TIFFHandler)
 
 QUANTIZE_INCLUDE_WINDOWS_COLOURS = _core_.QUANTIZE_INCLUDE_WINDOWS_COLOURS
 QUANTIZE_FILL_DESTINATION_IMAGE = _core_.QUANTIZE_FILL_DESTINATION_IMAGE
 class Quantize(object):
     """Performs quantization, or colour reduction, on a wxImage."""
 
 QUANTIZE_INCLUDE_WINDOWS_COLOURS = _core_.QUANTIZE_INCLUDE_WINDOWS_COLOURS
 QUANTIZE_FILL_DESTINATION_IMAGE = _core_.QUANTIZE_FILL_DESTINATION_IMAGE
 class Quantize(object):
     """Performs quantization, or colour reduction, on a wxImage."""
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxQuantize instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def Quantize(*args, **kwargs):
         """
         Quantize(Image src, Image dest, int desiredNoColours=236, int flags=wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE) -> bool
     def Quantize(*args, **kwargs):
         """
         Quantize(Image src, Image dest, int desiredNoColours=236, int flags=wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE) -> bool
@@ -3520,36 +3229,27 @@ class Quantize(object):
         return _core_.Quantize_Quantize(*args, **kwargs)
 
     Quantize = staticmethod(Quantize)
         return _core_.Quantize_Quantize(*args, **kwargs)
 
     Quantize = staticmethod(Quantize)
-
-class QuantizePtr(Quantize):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Quantize
-_core_.Quantize_swigregister(QuantizePtr)
+_core_.Quantize_swigregister(Quantize)
 
 def Quantize_Quantize(*args, **kwargs):
 
 def Quantize_Quantize(*args, **kwargs):
-    """
+  """
     Quantize_Quantize(Image src, Image dest, int desiredNoColours=236, int flags=wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE) -> bool
 
     Reduce the colours in the source image and put the result into the
     destination image, setting the palette in the destination if
     needed. Both images may be the same, to overwrite the source image.
     """
     Quantize_Quantize(Image src, Image dest, int desiredNoColours=236, int flags=wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE) -> bool
 
     Reduce the colours in the source image and put the result into the
     destination image, setting the palette in the destination if
     needed. Both images may be the same, to overwrite the source image.
     """
-    return _core_.Quantize_Quantize(*args, **kwargs)
+  return _core_.Quantize_Quantize(*args, **kwargs)
 
 #---------------------------------------------------------------------------
 
 class EvtHandler(Object):
     """Proxy of C++ EvtHandler class"""
 
 #---------------------------------------------------------------------------
 
 class EvtHandler(Object):
     """Proxy of C++ EvtHandler class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxEvtHandler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> EvtHandler"""
         """__init__(self) -> EvtHandler"""
-        newobj = _core_.new_EvtHandler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.EvtHandler_swiginit(self,_core_.new_EvtHandler(*args, **kwargs))
     def GetNextHandler(*args, **kwargs):
         """GetNextHandler(self) -> EvtHandler"""
         return _core_.EvtHandler_GetNextHandler(*args, **kwargs)
     def GetNextHandler(*args, **kwargs):
         """GetNextHandler(self) -> EvtHandler"""
         return _core_.EvtHandler_GetNextHandler(*args, **kwargs)
@@ -3591,12 +3291,14 @@ class EvtHandler(Object):
         return _core_.EvtHandler_Connect(*args, **kwargs)
 
     def Disconnect(*args, **kwargs):
         return _core_.EvtHandler_Connect(*args, **kwargs)
 
     def Disconnect(*args, **kwargs):
-        """Disconnect(self, int id, int lastId=-1, wxEventType eventType=wxEVT_NULL) -> bool"""
+        """Disconnect(self, int id, int lastId=-1, EventType eventType=wxEVT_NULL) -> bool"""
         return _core_.EvtHandler_Disconnect(*args, **kwargs)
 
     def _setOORInfo(*args, **kwargs):
         """_setOORInfo(self, PyObject _self, bool incref=True)"""
         return _core_.EvtHandler_Disconnect(*args, **kwargs)
 
     def _setOORInfo(*args, **kwargs):
         """_setOORInfo(self, PyObject _self, bool incref=True)"""
-        return _core_.EvtHandler__setOORInfo(*args, **kwargs)
+        val = _core_.EvtHandler__setOORInfo(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def Bind(self, event, handler, source=None, id=wx.ID_ANY, id2=wx.ID_ANY):
         """
 
     def Bind(self, event, handler, source=None, id=wx.ID_ANY, id2=wx.ID_ANY):
         """
@@ -3637,13 +3339,7 @@ class EvtHandler(Object):
             id  = source.GetId()
         return event.Unbind(self, id, id2)              
 
             id  = source.GetId()
         return event.Unbind(self, id, id2)              
 
-
-class EvtHandlerPtr(EvtHandler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = EvtHandler
-_core_.EvtHandler_swigregister(EvtHandlerPtr)
+_core_.EvtHandler_swigregister(EvtHandler)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -3717,9 +3413,9 @@ def EVT_COMMAND_RANGE(win, id1, id2, cmd, func):
 EVENT_PROPAGATE_NONE = _core_.EVENT_PROPAGATE_NONE
 EVENT_PROPAGATE_MAX = _core_.EVENT_PROPAGATE_MAX
 
 EVENT_PROPAGATE_NONE = _core_.EVENT_PROPAGATE_NONE
 EVENT_PROPAGATE_MAX = _core_.EVENT_PROPAGATE_MAX
 
-def NewEventType(*args, **kwargs):
-    """NewEventType() -> wxEventType"""
-    return _core_.NewEventType(*args, **kwargs)
+def NewEventType(*args):
+  """NewEventType() -> EventType"""
+  return _core_.NewEventType(*args)
 wxEVT_NULL = _core_.wxEVT_NULL
 wxEVT_FIRST = _core_.wxEVT_FIRST
 wxEVT_USER_FIRST = _core_.wxEVT_USER_FIRST
 wxEVT_NULL = _core_.wxEVT_NULL
 wxEVT_FIRST = _core_.wxEVT_FIRST
 wxEVT_USER_FIRST = _core_.wxEVT_USER_FIRST
@@ -3798,7 +3494,6 @@ wxEVT_CLOSE_WINDOW = _core_.wxEVT_CLOSE_WINDOW
 wxEVT_END_SESSION = _core_.wxEVT_END_SESSION
 wxEVT_QUERY_END_SESSION = _core_.wxEVT_QUERY_END_SESSION
 wxEVT_ACTIVATE_APP = _core_.wxEVT_ACTIVATE_APP
 wxEVT_END_SESSION = _core_.wxEVT_END_SESSION
 wxEVT_QUERY_END_SESSION = _core_.wxEVT_QUERY_END_SESSION
 wxEVT_ACTIVATE_APP = _core_.wxEVT_ACTIVATE_APP
-wxEVT_POWER = _core_.wxEVT_POWER
 wxEVT_ACTIVATE = _core_.wxEVT_ACTIVATE
 wxEVT_CREATE = _core_.wxEVT_CREATE
 wxEVT_DESTROY = _core_.wxEVT_DESTROY
 wxEVT_ACTIVATE = _core_.wxEVT_ACTIVATE
 wxEVT_CREATE = _core_.wxEVT_CREATE
 wxEVT_DESTROY = _core_.wxEVT_DESTROY
@@ -3829,6 +3524,9 @@ wxEVT_UPDATE_UI = _core_.wxEVT_UPDATE_UI
 wxEVT_SIZING = _core_.wxEVT_SIZING
 wxEVT_MOVING = _core_.wxEVT_MOVING
 wxEVT_HIBERNATE = _core_.wxEVT_HIBERNATE
 wxEVT_SIZING = _core_.wxEVT_SIZING
 wxEVT_MOVING = _core_.wxEVT_MOVING
 wxEVT_HIBERNATE = _core_.wxEVT_HIBERNATE
+wxEVT_COMMAND_TEXT_COPY = _core_.wxEVT_COMMAND_TEXT_COPY
+wxEVT_COMMAND_TEXT_CUT = _core_.wxEVT_COMMAND_TEXT_CUT
+wxEVT_COMMAND_TEXT_PASTE = _core_.wxEVT_COMMAND_TEXT_PASTE
 wxEVT_COMMAND_LEFT_CLICK = _core_.wxEVT_COMMAND_LEFT_CLICK
 wxEVT_COMMAND_LEFT_DCLICK = _core_.wxEVT_COMMAND_LEFT_DCLICK
 wxEVT_COMMAND_RIGHT_CLICK = _core_.wxEVT_COMMAND_RIGHT_CLICK
 wxEVT_COMMAND_LEFT_CLICK = _core_.wxEVT_COMMAND_LEFT_CLICK
 wxEVT_COMMAND_LEFT_DCLICK = _core_.wxEVT_COMMAND_LEFT_DCLICK
 wxEVT_COMMAND_RIGHT_CLICK = _core_.wxEVT_COMMAND_RIGHT_CLICK
@@ -3851,7 +3549,7 @@ EVT_ERASE_BACKGROUND = wx.PyEventBinder( wxEVT_ERASE_BACKGROUND )
 EVT_CHAR = wx.PyEventBinder( wxEVT_CHAR )
 EVT_KEY_DOWN = wx.PyEventBinder( wxEVT_KEY_DOWN )
 EVT_KEY_UP = wx.PyEventBinder( wxEVT_KEY_UP )
 EVT_CHAR = wx.PyEventBinder( wxEVT_CHAR )
 EVT_KEY_DOWN = wx.PyEventBinder( wxEVT_KEY_DOWN )
 EVT_KEY_UP = wx.PyEventBinder( wxEVT_KEY_UP )
-EVT_HOTKEY = wx.PyEventBinder( wxEVT_HOTKEY, 1) 
+EVT_HOTKEY = wx.PyEventBinder( wxEVT_HOTKEY, 1)
 EVT_CHAR_HOOK = wx.PyEventBinder( wxEVT_CHAR_HOOK )
 EVT_MENU_OPEN = wx.PyEventBinder( wxEVT_MENU_OPEN )
 EVT_MENU_CLOSE = wx.PyEventBinder( wxEVT_MENU_CLOSE )
 EVT_CHAR_HOOK = wx.PyEventBinder( wxEVT_CHAR_HOOK )
 EVT_MENU_OPEN = wx.PyEventBinder( wxEVT_MENU_OPEN )
 EVT_MENU_CLOSE = wx.PyEventBinder( wxEVT_MENU_CLOSE )
@@ -3862,7 +3560,7 @@ EVT_KILL_FOCUS = wx.PyEventBinder( wxEVT_KILL_FOCUS )
 EVT_CHILD_FOCUS = wx.PyEventBinder( wxEVT_CHILD_FOCUS )
 EVT_ACTIVATE = wx.PyEventBinder( wxEVT_ACTIVATE )
 EVT_ACTIVATE_APP = wx.PyEventBinder( wxEVT_ACTIVATE_APP )
 EVT_CHILD_FOCUS = wx.PyEventBinder( wxEVT_CHILD_FOCUS )
 EVT_ACTIVATE = wx.PyEventBinder( wxEVT_ACTIVATE )
 EVT_ACTIVATE_APP = wx.PyEventBinder( wxEVT_ACTIVATE_APP )
-EVT_HIBERNATE = wx.PyEventBinder( wxEVT_HIBERNATE )     
+EVT_HIBERNATE = wx.PyEventBinder( wxEVT_HIBERNATE )
 EVT_END_SESSION = wx.PyEventBinder( wxEVT_END_SESSION )
 EVT_QUERY_END_SESSION = wx.PyEventBinder( wxEVT_QUERY_END_SESSION )
 EVT_DROP_FILES = wx.PyEventBinder( wxEVT_DROP_FILES )
 EVT_END_SESSION = wx.PyEventBinder( wxEVT_END_SESSION )
 EVT_QUERY_END_SESSION = wx.PyEventBinder( wxEVT_QUERY_END_SESSION )
 EVT_DROP_FILES = wx.PyEventBinder( wxEVT_DROP_FILES )
@@ -3911,11 +3609,11 @@ EVT_MOUSE_EVENTS = wx.PyEventBinder([ wxEVT_LEFT_DOWN,
 
 
 # Scrolling from wxWindow (sent to wxScrolledWindow)
 
 
 # Scrolling from wxWindow (sent to wxScrolledWindow)
-EVT_SCROLLWIN = wx.PyEventBinder([ wxEVT_SCROLLWIN_TOP, 
+EVT_SCROLLWIN = wx.PyEventBinder([ wxEVT_SCROLLWIN_TOP,
                                   wxEVT_SCROLLWIN_BOTTOM,
                                   wxEVT_SCROLLWIN_LINEUP,
                                   wxEVT_SCROLLWIN_LINEDOWN,
                                   wxEVT_SCROLLWIN_BOTTOM,
                                   wxEVT_SCROLLWIN_LINEUP,
                                   wxEVT_SCROLLWIN_LINEDOWN,
-                                  wxEVT_SCROLLWIN_PAGEUP, 
+                                  wxEVT_SCROLLWIN_PAGEUP,
                                   wxEVT_SCROLLWIN_PAGEDOWN,
                                   wxEVT_SCROLLWIN_THUMBTRACK,
                                   wxEVT_SCROLLWIN_THUMBRELEASE,
                                   wxEVT_SCROLLWIN_PAGEDOWN,
                                   wxEVT_SCROLLWIN_THUMBTRACK,
                                   wxEVT_SCROLLWIN_THUMBRELEASE,
@@ -3931,14 +3629,14 @@ EVT_SCROLLWIN_THUMBTRACK = wx.PyEventBinder( wxEVT_SCROLLWIN_THUMBTRACK )
 EVT_SCROLLWIN_THUMBRELEASE = wx.PyEventBinder( wxEVT_SCROLLWIN_THUMBRELEASE )
 
 # Scrolling from wx.Slider and wx.ScrollBar
 EVT_SCROLLWIN_THUMBRELEASE = wx.PyEventBinder( wxEVT_SCROLLWIN_THUMBRELEASE )
 
 # Scrolling from wx.Slider and wx.ScrollBar
-EVT_SCROLL = wx.PyEventBinder([ wxEVT_SCROLL_TOP, 
-                               wxEVT_SCROLL_BOTTOM, 
-                               wxEVT_SCROLL_LINEUP, 
-                               wxEVT_SCROLL_LINEDOWN, 
-                               wxEVT_SCROLL_PAGEUP, 
-                               wxEVT_SCROLL_PAGEDOWN, 
-                               wxEVT_SCROLL_THUMBTRACK, 
-                               wxEVT_SCROLL_THUMBRELEASE, 
+EVT_SCROLL = wx.PyEventBinder([ wxEVT_SCROLL_TOP,
+                               wxEVT_SCROLL_BOTTOM,
+                               wxEVT_SCROLL_LINEUP,
+                               wxEVT_SCROLL_LINEDOWN,
+                               wxEVT_SCROLL_PAGEUP,
+                               wxEVT_SCROLL_PAGEDOWN,
+                               wxEVT_SCROLL_THUMBTRACK,
+                               wxEVT_SCROLL_THUMBRELEASE,
                                wxEVT_SCROLL_CHANGED,
                                ])
 
                                wxEVT_SCROLL_CHANGED,
                                ])
 
@@ -3952,15 +3650,15 @@ EVT_SCROLL_THUMBTRACK = wx.PyEventBinder( wxEVT_SCROLL_THUMBTRACK )
 EVT_SCROLL_THUMBRELEASE = wx.PyEventBinder( wxEVT_SCROLL_THUMBRELEASE )
 EVT_SCROLL_CHANGED = wx.PyEventBinder( wxEVT_SCROLL_CHANGED )
 EVT_SCROLL_ENDSCROLL = EVT_SCROLL_CHANGED
 EVT_SCROLL_THUMBRELEASE = wx.PyEventBinder( wxEVT_SCROLL_THUMBRELEASE )
 EVT_SCROLL_CHANGED = wx.PyEventBinder( wxEVT_SCROLL_CHANGED )
 EVT_SCROLL_ENDSCROLL = EVT_SCROLL_CHANGED
-     
+
 # Scrolling from wx.Slider and wx.ScrollBar, with an id
 # Scrolling from wx.Slider and wx.ScrollBar, with an id
-EVT_COMMAND_SCROLL = wx.PyEventBinder([ wxEVT_SCROLL_TOP, 
-                                       wxEVT_SCROLL_BOTTOM, 
-                                       wxEVT_SCROLL_LINEUP, 
-                                       wxEVT_SCROLL_LINEDOWN, 
-                                       wxEVT_SCROLL_PAGEUP, 
-                                       wxEVT_SCROLL_PAGEDOWN, 
-                                       wxEVT_SCROLL_THUMBTRACK, 
+EVT_COMMAND_SCROLL = wx.PyEventBinder([ wxEVT_SCROLL_TOP,
+                                       wxEVT_SCROLL_BOTTOM,
+                                       wxEVT_SCROLL_LINEUP,
+                                       wxEVT_SCROLL_LINEDOWN,
+                                       wxEVT_SCROLL_PAGEUP,
+                                       wxEVT_SCROLL_PAGEDOWN,
+                                       wxEVT_SCROLL_THUMBTRACK,
                                        wxEVT_SCROLL_THUMBRELEASE,
                                        wxEVT_SCROLL_CHANGED,
                                        ], 1)
                                        wxEVT_SCROLL_THUMBRELEASE,
                                        wxEVT_SCROLL_CHANGED,
                                        ], 1)
@@ -4013,6 +3711,9 @@ EVT_UPDATE_UI_RANGE = wx.PyEventBinder( wxEVT_UPDATE_UI, 2)
 
 EVT_CONTEXT_MENU = wx.PyEventBinder( wxEVT_CONTEXT_MENU )
 
 
 EVT_CONTEXT_MENU = wx.PyEventBinder( wxEVT_CONTEXT_MENU )
 
+EVT_TEXT_CUT   =  wx.PyEventBinder( wxEVT_COMMAND_TEXT_CUT )
+EVT_TEXT_COPY  =  wx.PyEventBinder( wxEVT_COMMAND_TEXT_COPY )
+EVT_TEXT_PASTE =  wx.PyEventBinder( wxEVT_COMMAND_TEXT_PASTE )
 
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
@@ -4023,18 +3724,14 @@ class Event(Object):
     callback or member function. wx.Event is an abstract base class for
     other event classes
     """
     callback or member function. wx.Event is an abstract base class for
     other event classes
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __del__(self, destroy=_core_.delete_Event):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _core_.delete_Event
+    __del__ = lambda self : None;
     def SetEventType(*args, **kwargs):
         """
     def SetEventType(*args, **kwargs):
         """
-        SetEventType(self, wxEventType typ)
+        SetEventType(self, EventType typ)
 
         Sets the specific type of the event.
         """
 
         Sets the specific type of the event.
         """
@@ -4042,7 +3739,7 @@ class Event(Object):
 
     def GetEventType(*args, **kwargs):
         """
 
     def GetEventType(*args, **kwargs):
         """
-        GetEventType(self) -> wxEventType
+        GetEventType(self) -> EventType
 
         Returns the identifier of the given event type, such as
         ``wxEVT_COMMAND_BUTTON_CLICKED``.
 
         Returns the identifier of the given event type, such as
         ``wxEVT_COMMAND_BUTTON_CLICKED``.
@@ -4161,13 +3858,7 @@ class Event(Object):
         """Clone(self) -> Event"""
         return _core_.Event_Clone(*args, **kwargs)
 
         """Clone(self) -> Event"""
         return _core_.Event_Clone(*args, **kwargs)
 
-
-class EventPtr(Event):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Event
-_core_.Event_swigregister(EventPtr)
+_core_.Event_swigregister(Event)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4177,9 +3868,9 @@ class PropagationDisabler(object):
     create an instance of this class and then whe it is destroyed the
     propogation of the event will be restored.
     """
     create an instance of this class and then whe it is destroyed the
     propogation of the event will be restored.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPropagationDisabler instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Event event) -> PropagationDisabler
 
         """
         __init__(self, Event event) -> PropagationDisabler
 
@@ -4187,23 +3878,10 @@ class PropagationDisabler(object):
         create an instance of this class and then whe it is destroyed the
         propogation of the event will be restored.
         """
         create an instance of this class and then whe it is destroyed the
         propogation of the event will be restored.
         """
-        newobj = _core_.new_PropagationDisabler(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_PropagationDisabler):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
-
-class PropagationDisablerPtr(PropagationDisabler):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PropagationDisabler
-_core_.PropagationDisabler_swigregister(PropagationDisablerPtr)
+        _core_.PropagationDisabler_swiginit(self,_core_.new_PropagationDisabler(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_PropagationDisabler
+    __del__ = lambda self : None;
+_core_.PropagationDisabler_swigregister(PropagationDisabler)
 
 class PropagateOnce(object):
     """
 
 class PropagateOnce(object):
     """
@@ -4211,9 +3889,9 @@ class PropagateOnce(object):
     event.  Simply create an instance of this class and then whe it is
     destroyed the propogation of the event will be restored.
     """
     event.  Simply create an instance of this class and then whe it is
     destroyed the propogation of the event will be restored.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPropagateOnce instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Event event) -> PropagateOnce
 
         """
         __init__(self, Event event) -> PropagateOnce
 
@@ -4221,23 +3899,10 @@ class PropagateOnce(object):
         event.  Simply create an instance of this class and then whe it is
         destroyed the propogation of the event will be restored.
         """
         event.  Simply create an instance of this class and then whe it is
         destroyed the propogation of the event will be restored.
         """
-        newobj = _core_.new_PropagateOnce(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_PropagateOnce):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
-
-class PropagateOncePtr(PropagateOnce):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PropagateOnce
-_core_.PropagateOnce_swigregister(PropagateOncePtr)
+        _core_.PropagateOnce_swiginit(self,_core_.new_PropagateOnce(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_PropagateOnce
+    __del__ = lambda self : None;
+_core_.PropagateOnce_swigregister(PropagateOnce)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4247,20 +3912,17 @@ class CommandEvent(Event):
     originate from a variety of simple controls, as well as menus and
     toolbars.
     """
     originate from a variety of simple controls, as well as menus and
     toolbars.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxCommandEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType commandType=wxEVT_NULL, int winid=0) -> CommandEvent
+        __init__(self, EventType commandType=wxEVT_NULL, int winid=0) -> CommandEvent
 
         This event class contains information about command events, which
         originate from a variety of simple controls, as well as menus and
         toolbars.
         """
 
         This event class contains information about command events, which
         originate from a variety of simple controls, as well as menus and
         toolbars.
         """
-        newobj = _core_.new_CommandEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.CommandEvent_swiginit(self,_core_.new_CommandEvent(*args, **kwargs))
     def GetSelection(*args, **kwargs):
         """
         GetSelection(self) -> int
     def GetSelection(*args, **kwargs):
         """
         GetSelection(self) -> int
@@ -4328,7 +3990,7 @@ class CommandEvent(Event):
 
     def GetInt(*args, **kwargs):
         """
 
     def GetInt(*args, **kwargs):
         """
-        GetInt(self) -> long
+        GetInt(self) -> int
 
         Returns the integer identifier corresponding to a listbox, choice or
         radiobox selection (only if the event was a selection, not a
 
         Returns the integer identifier corresponding to a listbox, choice or
         radiobox selection (only if the event was a selection, not a
@@ -4336,17 +3998,30 @@ class CommandEvent(Event):
         """
         return _core_.CommandEvent_GetInt(*args, **kwargs)
 
         """
         return _core_.CommandEvent_GetInt(*args, **kwargs)
 
+    def GetClientData(*args, **kwargs):
+        """
+        GetClientData(self) -> PyObject
+
+        Returns the client data object for a listbox or choice selection event, (if any.)
+        """
+        return _core_.CommandEvent_GetClientData(*args, **kwargs)
+
+    def SetClientData(*args, **kwargs):
+        """
+        SetClientData(self, PyObject clientData)
+
+        Associate the given client data with the item at position n.
+        """
+        return _core_.CommandEvent_SetClientData(*args, **kwargs)
+
+    GetClientObject = GetClientData
+    SetClientObject = SetClientData
+
     def Clone(*args, **kwargs):
         """Clone(self) -> Event"""
         return _core_.CommandEvent_Clone(*args, **kwargs)
 
     def Clone(*args, **kwargs):
         """Clone(self) -> Event"""
         return _core_.CommandEvent_Clone(*args, **kwargs)
 
-
-class CommandEventPtr(CommandEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = CommandEvent
-_core_.CommandEvent_swigregister(CommandEventPtr)
+_core_.CommandEvent_swigregister(CommandEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4357,21 +4032,18 @@ class NotifyEvent(CommandEvent):
     allows that change to be prevented from happening.  The event handler
     can call `Veto` or `Allow` to tell the control what to do.
     """
     allows that change to be prevented from happening.  The event handler
     can call `Veto` or `Allow` to tell the control what to do.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxNotifyEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType commandType=wxEVT_NULL, int winid=0) -> NotifyEvent
+        __init__(self, EventType commandType=wxEVT_NULL, int winid=0) -> NotifyEvent
 
         An instance of this class (or one of its derived classes) is sent from
         a control when the control's state is being changed and the control
         allows that change to be prevented from happening.  The event handler
         can call `Veto` or `Allow` to tell the control what to do.
         """
 
         An instance of this class (or one of its derived classes) is sent from
         a control when the control's state is being changed and the control
         allows that change to be prevented from happening.  The event handler
         can call `Veto` or `Allow` to tell the control what to do.
         """
-        newobj = _core_.new_NotifyEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.NotifyEvent_swiginit(self,_core_.new_NotifyEvent(*args, **kwargs))
     def Veto(*args, **kwargs):
         """
         Veto(self)
     def Veto(*args, **kwargs):
         """
         Veto(self)
@@ -4404,13 +4076,7 @@ class NotifyEvent(CommandEvent):
         """
         return _core_.NotifyEvent_IsAllowed(*args, **kwargs)
 
         """
         return _core_.NotifyEvent_IsAllowed(*args, **kwargs)
 
-
-class NotifyEventPtr(NotifyEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = NotifyEvent
-_core_.NotifyEvent_swigregister(NotifyEventPtr)
+_core_.NotifyEvent_swigregister(NotifyEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4421,17 +4087,14 @@ class ScrollEvent(CommandEvent):
     instnaces of this event class, but send the `wx.ScrollWinEvent`
     instead.
     """
     instnaces of this event class, but send the `wx.ScrollWinEvent`
     instead.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxScrollEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType commandType=wxEVT_NULL, int winid=0, int pos=0, 
+        __init__(self, EventType commandType=wxEVT_NULL, int winid=0, int pos=0, 
             int orient=0) -> ScrollEvent
         """
             int orient=0) -> ScrollEvent
         """
-        newobj = _core_.new_ScrollEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ScrollEvent_swiginit(self,_core_.new_ScrollEvent(*args, **kwargs))
     def GetOrientation(*args, **kwargs):
         """
         GetOrientation(self) -> int
     def GetOrientation(*args, **kwargs):
         """
         GetOrientation(self) -> int
@@ -4457,13 +4120,7 @@ class ScrollEvent(CommandEvent):
         """SetPosition(self, int pos)"""
         return _core_.ScrollEvent_SetPosition(*args, **kwargs)
 
         """SetPosition(self, int pos)"""
         return _core_.ScrollEvent_SetPosition(*args, **kwargs)
 
-
-class ScrollEventPtr(ScrollEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ScrollEvent
-_core_.ScrollEvent_swigregister(ScrollEventPtr)
+_core_.ScrollEvent_swigregister(ScrollEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4472,19 +4129,16 @@ class ScrollWinEvent(Event):
     A wx.ScrollWinEvent holds information about scrolling and is sent from
     scrolling windows.
     """
     A wx.ScrollWinEvent holds information about scrolling and is sent from
     scrolling windows.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxScrollWinEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType commandType=wxEVT_NULL, int pos=0, int orient=0) -> ScrollWinEvent
+        __init__(self, EventType commandType=wxEVT_NULL, int pos=0, int orient=0) -> ScrollWinEvent
 
         A wx.ScrollWinEvent holds information about scrolling and is sent from
         scrolling windows.
         """
 
         A wx.ScrollWinEvent holds information about scrolling and is sent from
         scrolling windows.
         """
-        newobj = _core_.new_ScrollWinEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ScrollWinEvent_swiginit(self,_core_.new_ScrollWinEvent(*args, **kwargs))
     def GetOrientation(*args, **kwargs):
         """
         GetOrientation(self) -> int
     def GetOrientation(*args, **kwargs):
         """
         GetOrientation(self) -> int
@@ -4512,13 +4166,7 @@ class ScrollWinEvent(Event):
         """SetPosition(self, int pos)"""
         return _core_.ScrollWinEvent_SetPosition(*args, **kwargs)
 
         """SetPosition(self, int pos)"""
         return _core_.ScrollWinEvent_SetPosition(*args, **kwargs)
 
-
-class ScrollWinEventPtr(ScrollWinEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ScrollWinEvent
-_core_.ScrollWinEvent_swigregister(ScrollWinEventPtr)
+_core_.ScrollWinEvent_swigregister(ScrollWinEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4549,11 +4197,11 @@ class MouseEvent(Event):
     underlying GUI behaviour is (which is platform-dependent). The same
     applies, of course, to other mouse buttons as well.
     """
     underlying GUI behaviour is (which is platform-dependent). The same
     applies, of course, to other mouse buttons as well.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMouseEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType mouseType=wxEVT_NULL) -> MouseEvent
+        __init__(self, EventType mouseType=wxEVT_NULL) -> MouseEvent
 
         Constructs a wx.MouseEvent.  Valid event types are:
 
 
         Constructs a wx.MouseEvent.  Valid event types are:
 
@@ -4571,10 +4219,7 @@ class MouseEvent(Event):
             * wxEVT_MOTION
             * wxEVT_MOUSEWHEEL 
         """
             * wxEVT_MOTION
             * wxEVT_MOUSEWHEEL 
         """
-        newobj = _core_.new_MouseEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MouseEvent_swiginit(self,_core_.new_MouseEvent(*args, **kwargs))
     def IsButton(*args, **kwargs):
         """
         IsButton(self) -> bool
     def IsButton(*args, **kwargs):
         """
         IsButton(self) -> bool
@@ -4936,13 +4581,7 @@ class MouseEvent(Event):
     m_wheelRotation = property(_core_.MouseEvent_m_wheelRotation_get, _core_.MouseEvent_m_wheelRotation_set)
     m_wheelDelta = property(_core_.MouseEvent_m_wheelDelta_get, _core_.MouseEvent_m_wheelDelta_set)
     m_linesPerAction = property(_core_.MouseEvent_m_linesPerAction_get, _core_.MouseEvent_m_linesPerAction_set)
     m_wheelRotation = property(_core_.MouseEvent_m_wheelRotation_get, _core_.MouseEvent_m_wheelRotation_set)
     m_wheelDelta = property(_core_.MouseEvent_m_wheelDelta_get, _core_.MouseEvent_m_wheelDelta_set)
     m_linesPerAction = property(_core_.MouseEvent_m_linesPerAction_get, _core_.MouseEvent_m_linesPerAction_set)
-
-class MouseEventPtr(MouseEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MouseEvent
-_core_.MouseEvent_swigregister(MouseEventPtr)
+_core_.MouseEvent_swigregister(MouseEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -4954,18 +4593,15 @@ class SetCursorEvent(Event):
     current position of the mouse within the window. Use the `SetCursor`
     method to specify the cursor you want to be displayed.
     """
     current position of the mouse within the window. Use the `SetCursor`
     method to specify the cursor you want to be displayed.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSetCursorEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int x=0, int y=0) -> SetCursorEvent
 
         Construct a new `wx.SetCursorEvent`.
         """
         """
         __init__(self, int x=0, int y=0) -> SetCursorEvent
 
         Construct a new `wx.SetCursorEvent`.
         """
-        newobj = _core_.new_SetCursorEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.SetCursorEvent_swiginit(self,_core_.new_SetCursorEvent(*args, **kwargs))
     def GetX(*args, **kwargs):
         """
         GetX(self) -> int
     def GetX(*args, **kwargs):
         """
         GetX(self) -> int
@@ -5006,13 +4642,7 @@ class SetCursorEvent(Event):
         """
         return _core_.SetCursorEvent_HasCursor(*args, **kwargs)
 
         """
         return _core_.SetCursorEvent_HasCursor(*args, **kwargs)
 
-
-class SetCursorEventPtr(SetCursorEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = SetCursorEvent
-_core_.SetCursorEvent_swigregister(SetCursorEventPtr)
+_core_.SetCursorEvent_swigregister(SetCursorEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5079,19 +4709,31 @@ class KeyEvent(Event):
     work under Windows.
 
     """
     work under Windows.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxKeyEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType eventType=wxEVT_NULL) -> KeyEvent
+        __init__(self, EventType eventType=wxEVT_NULL) -> KeyEvent
 
         Construct a new `wx.KeyEvent`.  Valid event types are:
             * 
         """
 
         Construct a new `wx.KeyEvent`.  Valid event types are:
             * 
         """
-        newobj = _core_.new_KeyEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.KeyEvent_swiginit(self,_core_.new_KeyEvent(*args, **kwargs))
+    def GetModifiers(*args, **kwargs):
+        """
+        GetModifiers(self) -> int
+
+        Returns a bitmask of the current modifier settings.  Can be used to
+        check if the key event has exactly the given modifiers without having
+        to explicitly check that the other modifiers are not down.  For
+        example::
+
+            if event.GetModifers() == wx.MOD_CONTROL:
+                DoSomething()
+
+        """
+        return _core_.KeyEvent_GetModifiers(*args, **kwargs)
+
     def ControlDown(*args, **kwargs):
         """
         ControlDown(self) -> bool
     def ControlDown(*args, **kwargs):
         """
         ControlDown(self) -> bool
@@ -5178,6 +4820,15 @@ class KeyEvent(Event):
         return _core_.KeyEvent_GetUnicodeKey(*args, **kwargs)
 
     GetUniChar = GetUnicodeKey 
         return _core_.KeyEvent_GetUnicodeKey(*args, **kwargs)
 
     GetUniChar = GetUnicodeKey 
+    def SetUnicodeKey(*args, **kwargs):
+        """
+        SetUnicodeKey(self, int uniChar)
+
+        Set the Unicode value of the key event, but only if this is a Unicode
+        build of wxPython.
+        """
+        return _core_.KeyEvent_SetUnicodeKey(*args, **kwargs)
+
     def GetRawKeyCode(*args, **kwargs):
         """
         GetRawKeyCode(self) -> unsigned int
     def GetRawKeyCode(*args, **kwargs):
         """
         GetRawKeyCode(self) -> unsigned int
@@ -5243,13 +4894,7 @@ class KeyEvent(Event):
     m_scanCode = property(_core_.KeyEvent_m_scanCode_get, _core_.KeyEvent_m_scanCode_set)
     m_rawCode = property(_core_.KeyEvent_m_rawCode_get, _core_.KeyEvent_m_rawCode_set)
     m_rawFlags = property(_core_.KeyEvent_m_rawFlags_get, _core_.KeyEvent_m_rawFlags_set)
     m_scanCode = property(_core_.KeyEvent_m_scanCode_get, _core_.KeyEvent_m_scanCode_set)
     m_rawCode = property(_core_.KeyEvent_m_rawCode_get, _core_.KeyEvent_m_rawCode_set)
     m_rawFlags = property(_core_.KeyEvent_m_rawFlags_get, _core_.KeyEvent_m_rawFlags_set)
-
-class KeyEventPtr(KeyEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = KeyEvent
-_core_.KeyEvent_swigregister(KeyEventPtr)
+_core_.KeyEvent_swigregister(KeyEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5271,18 +4916,15 @@ class SizeEvent(Event):
     invalidate the entire window.
 
     """
     invalidate the entire window.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSizeEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Size sz=DefaultSize, int winid=0) -> SizeEvent
 
         Construct a new ``wx.SizeEvent``.
         """
         """
         __init__(self, Size sz=DefaultSize, int winid=0) -> SizeEvent
 
         Construct a new ``wx.SizeEvent``.
         """
-        newobj = _core_.new_SizeEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.SizeEvent_swiginit(self,_core_.new_SizeEvent(*args, **kwargs))
     def GetSize(*args, **kwargs):
         """
         GetSize(self) -> Size
     def GetSize(*args, **kwargs):
         """
         GetSize(self) -> Size
@@ -5306,13 +4948,7 @@ class SizeEvent(Event):
 
     m_size = property(_core_.SizeEvent_m_size_get, _core_.SizeEvent_m_size_set)
     m_rect = property(_core_.SizeEvent_m_rect_get, _core_.SizeEvent_m_rect_set)
 
     m_size = property(_core_.SizeEvent_m_size_get, _core_.SizeEvent_m_size_set)
     m_rect = property(_core_.SizeEvent_m_rect_get, _core_.SizeEvent_m_rect_set)
-
-class SizeEventPtr(SizeEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = SizeEvent
-_core_.SizeEvent_swigregister(SizeEventPtr)
+_core_.SizeEvent_swigregister(SizeEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5321,18 +4957,15 @@ class MoveEvent(Event):
     This event object is sent for EVT_MOVE event bindings when a window is
     moved to a new position.
     """
     This event object is sent for EVT_MOVE event bindings when a window is
     moved to a new position.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMoveEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Point pos=DefaultPosition, int winid=0) -> MoveEvent
 
         Constructor.
         """
         """
         __init__(self, Point pos=DefaultPosition, int winid=0) -> MoveEvent
 
         Constructor.
         """
-        newobj = _core_.new_MoveEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MoveEvent_swiginit(self,_core_.new_MoveEvent(*args, **kwargs))
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
@@ -5356,13 +4989,7 @@ class MoveEvent(Event):
     m_pos =  property(GetPosition, SetPosition)
     m_rect = property(GetRect, SetRect)
 
     m_pos =  property(GetPosition, SetPosition)
     m_rect = property(GetRect, SetRect)
 
-
-class MoveEventPtr(MoveEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MoveEvent
-_core_.MoveEvent_swigregister(MoveEventPtr)
+_core_.MoveEvent_swigregister(MoveEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5382,39 +5009,21 @@ class PaintEvent(Event):
     scrolled units.
 
     """
     scrolled units.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPaintEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, int Id=0) -> PaintEvent"""
         """__init__(self, int Id=0) -> PaintEvent"""
-        newobj = _core_.new_PaintEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class PaintEventPtr(PaintEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PaintEvent
-_core_.PaintEvent_swigregister(PaintEventPtr)
+        _core_.PaintEvent_swiginit(self,_core_.new_PaintEvent(*args, **kwargs))
+_core_.PaintEvent_swigregister(PaintEvent)
 
 class NcPaintEvent(Event):
     """Proxy of C++ NcPaintEvent class"""
 
 class NcPaintEvent(Event):
     """Proxy of C++ NcPaintEvent class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxNcPaintEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, int winid=0) -> NcPaintEvent"""
         """__init__(self, int winid=0) -> NcPaintEvent"""
-        newobj = _core_.new_NcPaintEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class NcPaintEventPtr(NcPaintEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = NcPaintEvent
-_core_.NcPaintEvent_swigregister(NcPaintEventPtr)
+        _core_.NcPaintEvent_swiginit(self,_core_.new_NcPaintEvent(*args, **kwargs))
+_core_.NcPaintEvent_swigregister(NcPaintEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5430,18 +5039,15 @@ class EraseEvent(Event):
     `wx.ClientDC` and draw on that.
 
     """
     `wx.ClientDC` and draw on that.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxEraseEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int Id=0, DC dc=None) -> EraseEvent
 
         Constructor
         """
         """
         __init__(self, int Id=0, DC dc=None) -> EraseEvent
 
         Constructor
         """
-        newobj = _core_.new_EraseEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.EraseEvent_swiginit(self,_core_.new_EraseEvent(*args, **kwargs))
     def GetDC(*args, **kwargs):
         """
         GetDC(self) -> DC
     def GetDC(*args, **kwargs):
         """
         GetDC(self) -> DC
@@ -5452,13 +5058,7 @@ class EraseEvent(Event):
         """
         return _core_.EraseEvent_GetDC(*args, **kwargs)
 
         """
         return _core_.EraseEvent_GetDC(*args, **kwargs)
 
-
-class EraseEventPtr(EraseEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = EraseEvent
-_core_.EraseEvent_swigregister(EraseEventPtr)
+_core_.EraseEvent_swigregister(EraseEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5473,18 +5073,15 @@ class FocusEvent(Event):
     done from the program itself using `wx.Window.SetFocus`.
 
     """
     done from the program itself using `wx.Window.SetFocus`.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxFocusEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType type=wxEVT_NULL, int winid=0) -> FocusEvent
+        __init__(self, EventType type=wxEVT_NULL, int winid=0) -> FocusEvent
 
         Constructor
         """
 
         Constructor
         """
-        newobj = _core_.new_FocusEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.FocusEvent_swiginit(self,_core_.new_FocusEvent(*args, **kwargs))
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
@@ -5501,13 +5098,7 @@ class FocusEvent(Event):
         """SetWindow(self, Window win)"""
         return _core_.FocusEvent_SetWindow(*args, **kwargs)
 
         """SetWindow(self, Window win)"""
         return _core_.FocusEvent_SetWindow(*args, **kwargs)
 
-
-class FocusEventPtr(FocusEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = FocusEvent
-_core_.FocusEvent_swigregister(FocusEventPtr)
+_core_.FocusEvent_swigregister(FocusEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5517,18 +5108,15 @@ class ChildFocusEvent(CommandEvent):
     focus.  Unlike `wx.FocusEvent` it is propagated up the window
     heirarchy.
     """
     focus.  Unlike `wx.FocusEvent` it is propagated up the window
     heirarchy.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxChildFocusEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Window win=None) -> ChildFocusEvent
 
         Constructor
         """
         """
         __init__(self, Window win=None) -> ChildFocusEvent
 
         Constructor
         """
-        newobj = _core_.new_ChildFocusEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ChildFocusEvent_swiginit(self,_core_.new_ChildFocusEvent(*args, **kwargs))
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
@@ -5537,13 +5125,7 @@ class ChildFocusEvent(CommandEvent):
         """
         return _core_.ChildFocusEvent_GetWindow(*args, **kwargs)
 
         """
         return _core_.ChildFocusEvent_GetWindow(*args, **kwargs)
 
-
-class ChildFocusEventPtr(ChildFocusEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ChildFocusEvent
-_core_.ChildFocusEvent_swigregister(ChildFocusEventPtr)
+_core_.ChildFocusEvent_swigregister(ChildFocusEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5564,18 +5146,15 @@ class ActivateEvent(Event):
     doing so can result in strange effects.
 
     """
     doing so can result in strange effects.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxActivateEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType type=wxEVT_NULL, bool active=True, int Id=0) -> ActivateEvent
+        __init__(self, EventType type=wxEVT_NULL, bool active=True, int Id=0) -> ActivateEvent
 
         Constructor
         """
 
         Constructor
         """
-        newobj = _core_.new_ActivateEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ActivateEvent_swiginit(self,_core_.new_ActivateEvent(*args, **kwargs))
     def GetActive(*args, **kwargs):
         """
         GetActive(self) -> bool
     def GetActive(*args, **kwargs):
         """
         GetActive(self) -> bool
@@ -5585,13 +5164,7 @@ class ActivateEvent(Event):
         """
         return _core_.ActivateEvent_GetActive(*args, **kwargs)
 
         """
         return _core_.ActivateEvent_GetActive(*args, **kwargs)
 
-
-class ActivateEventPtr(ActivateEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ActivateEvent
-_core_.ActivateEvent_swigregister(ActivateEventPtr)
+_core_.ActivateEvent_swigregister(ActivateEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5603,25 +5176,16 @@ class InitDialogEvent(Event):
     done before the user begins editing the form. The default handler
     calls `wx.Window.TransferDataToWindow`.
     """
     done before the user begins editing the form. The default handler
     calls `wx.Window.TransferDataToWindow`.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxInitDialogEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int Id=0) -> InitDialogEvent
 
         Constructor
         """
         """
         __init__(self, int Id=0) -> InitDialogEvent
 
         Constructor
         """
-        newobj = _core_.new_InitDialogEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class InitDialogEventPtr(InitDialogEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = InitDialogEvent
-_core_.InitDialogEvent_swigregister(InitDialogEventPtr)
+        _core_.InitDialogEvent_swiginit(self,_core_.new_InitDialogEvent(*args, **kwargs))
+_core_.InitDialogEvent_swigregister(InitDialogEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5634,18 +5198,15 @@ class MenuEvent(Event):
     The default handler for wx.EVT_MENU_HIGHLIGHT displays menu item help
     text in the first field of the status bar.
     """
     The default handler for wx.EVT_MENU_HIGHLIGHT displays menu item help
     text in the first field of the status bar.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMenuEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType type=wxEVT_NULL, int winid=0, Menu menu=None) -> MenuEvent
+        __init__(self, EventType type=wxEVT_NULL, int winid=0, Menu menu=None) -> MenuEvent
 
         Constructor
         """
 
         Constructor
         """
-        newobj = _core_.new_MenuEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MenuEvent_swiginit(self,_core_.new_MenuEvent(*args, **kwargs))
     def GetMenuId(*args, **kwargs):
         """
         GetMenuId(self) -> int
     def GetMenuId(*args, **kwargs):
         """
         GetMenuId(self) -> int
@@ -5674,13 +5235,7 @@ class MenuEvent(Event):
         """
         return _core_.MenuEvent_GetMenu(*args, **kwargs)
 
         """
         return _core_.MenuEvent_GetMenu(*args, **kwargs)
 
-
-class MenuEventPtr(MenuEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MenuEvent
-_core_.MenuEvent_swigregister(MenuEventPtr)
+_core_.MenuEvent_swigregister(MenuEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5707,18 +5262,15 @@ class CloseEvent(Event):
     `wx.Window.Close` function to return ``True`` or ``False`` depending
     on whether the close instruction was honored or not.
     """
     `wx.Window.Close` function to return ``True`` or ``False`` depending
     on whether the close instruction was honored or not.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxCloseEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType type=wxEVT_NULL, int winid=0) -> CloseEvent
+        __init__(self, EventType type=wxEVT_NULL, int winid=0) -> CloseEvent
 
         Constructor.
         """
 
         Constructor.
         """
-        newobj = _core_.new_CloseEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.CloseEvent_swiginit(self,_core_.new_CloseEvent(*args, **kwargs))
     def SetLoggingOff(*args, **kwargs):
         """
         SetLoggingOff(self, bool logOff)
     def SetLoggingOff(*args, **kwargs):
         """
         SetLoggingOff(self, bool logOff)
@@ -5772,30 +5324,21 @@ class CloseEvent(Event):
         """
         return _core_.CloseEvent_CanVeto(*args, **kwargs)
 
         """
         return _core_.CloseEvent_CanVeto(*args, **kwargs)
 
-
-class CloseEventPtr(CloseEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = CloseEvent
-_core_.CloseEvent_swigregister(CloseEventPtr)
+_core_.CloseEvent_swigregister(CloseEvent)
 
 #---------------------------------------------------------------------------
 
 class ShowEvent(Event):
     """An EVT_SHOW event is sent when a window is shown or hidden."""
 
 #---------------------------------------------------------------------------
 
 class ShowEvent(Event):
     """An EVT_SHOW event is sent when a window is shown or hidden."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxShowEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int winid=0, bool show=False) -> ShowEvent
 
         An EVT_SHOW event is sent when a window is shown or hidden.
         """
         """
         __init__(self, int winid=0, bool show=False) -> ShowEvent
 
         An EVT_SHOW event is sent when a window is shown or hidden.
         """
-        newobj = _core_.new_ShowEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ShowEvent_swiginit(self,_core_.new_ShowEvent(*args, **kwargs))
     def SetShow(*args, **kwargs):
         """SetShow(self, bool show)"""
         return _core_.ShowEvent_SetShow(*args, **kwargs)
     def SetShow(*args, **kwargs):
         """SetShow(self, bool show)"""
         return _core_.ShowEvent_SetShow(*args, **kwargs)
@@ -5804,13 +5347,7 @@ class ShowEvent(Event):
         """GetShow(self) -> bool"""
         return _core_.ShowEvent_GetShow(*args, **kwargs)
 
         """GetShow(self) -> bool"""
         return _core_.ShowEvent_GetShow(*args, **kwargs)
 
-
-class ShowEventPtr(ShowEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ShowEvent
-_core_.ShowEvent_swigregister(ShowEventPtr)
+_core_.ShowEvent_swigregister(ShowEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5819,19 +5356,16 @@ class IconizeEvent(Event):
     An EVT_ICONIZE event is sent when a frame is iconized (minimized) or
     restored.
     """
     An EVT_ICONIZE event is sent when a frame is iconized (minimized) or
     restored.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxIconizeEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int id=0, bool iconized=True) -> IconizeEvent
 
         An EVT_ICONIZE event is sent when a frame is iconized (minimized) or
         restored.
         """
         """
         __init__(self, int id=0, bool iconized=True) -> IconizeEvent
 
         An EVT_ICONIZE event is sent when a frame is iconized (minimized) or
         restored.
         """
-        newobj = _core_.new_IconizeEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.IconizeEvent_swiginit(self,_core_.new_IconizeEvent(*args, **kwargs))
     def Iconized(*args, **kwargs):
         """
         Iconized(self) -> bool
     def Iconized(*args, **kwargs):
         """
         Iconized(self) -> bool
@@ -5841,37 +5375,22 @@ class IconizeEvent(Event):
         """
         return _core_.IconizeEvent_Iconized(*args, **kwargs)
 
         """
         return _core_.IconizeEvent_Iconized(*args, **kwargs)
 
-
-class IconizeEventPtr(IconizeEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = IconizeEvent
-_core_.IconizeEvent_swigregister(IconizeEventPtr)
+_core_.IconizeEvent_swigregister(IconizeEvent)
 
 #---------------------------------------------------------------------------
 
 class MaximizeEvent(Event):
     """An EVT_MAXIMIZE event is sent when a frame is maximized or restored."""
 
 #---------------------------------------------------------------------------
 
 class MaximizeEvent(Event):
     """An EVT_MAXIMIZE event is sent when a frame is maximized or restored."""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMaximizeEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int id=0) -> MaximizeEvent
 
         An EVT_MAXIMIZE event is sent when a frame is maximized or restored.
         """
         """
         __init__(self, int id=0) -> MaximizeEvent
 
         An EVT_MAXIMIZE event is sent when a frame is maximized or restored.
         """
-        newobj = _core_.new_MaximizeEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class MaximizeEventPtr(MaximizeEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MaximizeEvent
-_core_.MaximizeEvent_swigregister(MaximizeEventPtr)
+        _core_.MaximizeEvent_swiginit(self,_core_.new_MaximizeEvent(*args, **kwargs))
+_core_.MaximizeEvent_swigregister(MaximizeEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5891,9 +5410,9 @@ class DropFilesEvent(Event):
     events.
 
     """
     events.
 
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxDropFilesEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
@@ -5918,13 +5437,7 @@ class DropFilesEvent(Event):
         """
         return _core_.DropFilesEvent_GetFiles(*args, **kwargs)
 
         """
         return _core_.DropFilesEvent_GetFiles(*args, **kwargs)
 
-
-class DropFilesEventPtr(DropFilesEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = DropFilesEvent
-_core_.DropFilesEvent_swigregister(DropFilesEventPtr)
+_core_.DropFilesEvent_swigregister(DropFilesEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -5983,18 +5496,15 @@ class UpdateUIEvent(CommandEvent):
     is about to be shown, and not in idle time.
 
     """
     is about to be shown, and not in idle time.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxUpdateUIEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int commandId=0) -> UpdateUIEvent
 
         Constructor
         """
         """
         __init__(self, int commandId=0) -> UpdateUIEvent
 
         Constructor
         """
-        newobj = _core_.new_UpdateUIEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.UpdateUIEvent_swiginit(self,_core_.new_UpdateUIEvent(*args, **kwargs))
     def GetChecked(*args, **kwargs):
         """
         GetChecked(self) -> bool
     def GetChecked(*args, **kwargs):
         """
         GetChecked(self) -> bool
@@ -6011,6 +5521,14 @@ class UpdateUIEvent(CommandEvent):
         """
         return _core_.UpdateUIEvent_GetEnabled(*args, **kwargs)
 
         """
         return _core_.UpdateUIEvent_GetEnabled(*args, **kwargs)
 
+    def GetShown(*args, **kwargs):
+        """
+        GetShown(self) -> bool
+
+        Returns ``True`` if the UI element should be shown.
+        """
+        return _core_.UpdateUIEvent_GetShown(*args, **kwargs)
+
     def GetText(*args, **kwargs):
         """
         GetText(self) -> String
     def GetText(*args, **kwargs):
         """
         GetText(self) -> String
@@ -6046,6 +5564,15 @@ class UpdateUIEvent(CommandEvent):
         """
         return _core_.UpdateUIEvent_GetSetEnabled(*args, **kwargs)
 
         """
         return _core_.UpdateUIEvent_GetSetEnabled(*args, **kwargs)
 
+    def GetSetShown(*args, **kwargs):
+        """
+        GetSetShown(self) -> bool
+
+        Returns ``True`` if the application has called `Show`. For wxWidgets
+        internal use only.
+        """
+        return _core_.UpdateUIEvent_GetSetShown(*args, **kwargs)
+
     def Check(*args, **kwargs):
         """
         Check(self, bool check)
     def Check(*args, **kwargs):
         """
         Check(self, bool check)
@@ -6062,6 +5589,14 @@ class UpdateUIEvent(CommandEvent):
         """
         return _core_.UpdateUIEvent_Enable(*args, **kwargs)
 
         """
         return _core_.UpdateUIEvent_Enable(*args, **kwargs)
 
+    def Show(*args, **kwargs):
+        """
+        Show(self, bool show)
+
+        Show or hide the UI element.
+        """
+        return _core_.UpdateUIEvent_Show(*args, **kwargs)
+
     def SetText(*args, **kwargs):
         """
         SetText(self, String text)
     def SetText(*args, **kwargs):
         """
         SetText(self, String text)
@@ -6161,16 +5696,10 @@ class UpdateUIEvent(CommandEvent):
         return _core_.UpdateUIEvent_GetMode(*args, **kwargs)
 
     GetMode = staticmethod(GetMode)
         return _core_.UpdateUIEvent_GetMode(*args, **kwargs)
 
     GetMode = staticmethod(GetMode)
-
-class UpdateUIEventPtr(UpdateUIEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = UpdateUIEvent
-_core_.UpdateUIEvent_swigregister(UpdateUIEventPtr)
+_core_.UpdateUIEvent_swigregister(UpdateUIEvent)
 
 def UpdateUIEvent_SetUpdateInterval(*args, **kwargs):
 
 def UpdateUIEvent_SetUpdateInterval(*args, **kwargs):
-    """
+  """
     UpdateUIEvent_SetUpdateInterval(long updateInterval)
 
     Sets the interval between updates in milliseconds. Set to -1 to
     UpdateUIEvent_SetUpdateInterval(long updateInterval)
 
     Sets the interval between updates in milliseconds. Set to -1 to
@@ -6183,19 +5712,19 @@ def UpdateUIEvent_SetUpdateInterval(*args, **kwargs):
     at appropriate points in your application, such as when a dialog is
     about to be shown.
     """
     at appropriate points in your application, such as when a dialog is
     about to be shown.
     """
-    return _core_.UpdateUIEvent_SetUpdateInterval(*args, **kwargs)
+  return _core_.UpdateUIEvent_SetUpdateInterval(*args, **kwargs)
 
 
-def UpdateUIEvent_GetUpdateInterval(*args, **kwargs):
-    """
+def UpdateUIEvent_GetUpdateInterval(*args):
+  """
     UpdateUIEvent_GetUpdateInterval() -> long
 
     Returns the current interval between updates in milliseconds. -1
     disables updates, 0 updates as frequently as possible.
     """
     UpdateUIEvent_GetUpdateInterval() -> long
 
     Returns the current interval between updates in milliseconds. -1
     disables updates, 0 updates as frequently as possible.
     """
-    return _core_.UpdateUIEvent_GetUpdateInterval(*args, **kwargs)
+  return _core_.UpdateUIEvent_GetUpdateInterval(*args)
 
 def UpdateUIEvent_CanUpdate(*args, **kwargs):
 
 def UpdateUIEvent_CanUpdate(*args, **kwargs):
-    """
+  """
     UpdateUIEvent_CanUpdate(Window win) -> bool
 
     Returns ``True`` if it is appropriate to update (send UI update events
     UpdateUIEvent_CanUpdate(Window win) -> bool
 
     Returns ``True`` if it is appropriate to update (send UI update events
@@ -6212,20 +5741,20 @@ def UpdateUIEvent_CanUpdate(*args, **kwargs):
     interval.
 
     """
     interval.
 
     """
-    return _core_.UpdateUIEvent_CanUpdate(*args, **kwargs)
+  return _core_.UpdateUIEvent_CanUpdate(*args, **kwargs)
 
 
-def UpdateUIEvent_ResetUpdateTime(*args, **kwargs):
-    """
+def UpdateUIEvent_ResetUpdateTime(*args):
+  """
     UpdateUIEvent_ResetUpdateTime()
 
     Used internally to reset the last-updated time to the current time. It
     is assumed that update events are normally sent in idle time, so this
     is called at the end of idle processing.
     """
     UpdateUIEvent_ResetUpdateTime()
 
     Used internally to reset the last-updated time to the current time. It
     is assumed that update events are normally sent in idle time, so this
     is called at the end of idle processing.
     """
-    return _core_.UpdateUIEvent_ResetUpdateTime(*args, **kwargs)
+  return _core_.UpdateUIEvent_ResetUpdateTime(*args)
 
 def UpdateUIEvent_SetMode(*args, **kwargs):
 
 def UpdateUIEvent_SetMode(*args, **kwargs):
-    """
+  """
     UpdateUIEvent_SetMode(int mode)
 
     Specify how wxWidgets will send update events: to all windows, or only
     UpdateUIEvent_SetMode(int mode)
 
     Specify how wxWidgets will send update events: to all windows, or only
@@ -6242,17 +5771,17 @@ def UpdateUIEvent_SetMode(*args, **kwargs):
         =============================   ==========================================
 
     """
         =============================   ==========================================
 
     """
-    return _core_.UpdateUIEvent_SetMode(*args, **kwargs)
+  return _core_.UpdateUIEvent_SetMode(*args, **kwargs)
 
 
-def UpdateUIEvent_GetMode(*args, **kwargs):
-    """
+def UpdateUIEvent_GetMode(*args):
+  """
     UpdateUIEvent_GetMode() -> int
 
     Returns a value specifying how wxWidgets will send update events: to
     all windows, or only to those which specify that they will process the
     events.
     """
     UpdateUIEvent_GetMode() -> int
 
     Returns a value specifying how wxWidgets will send update events: to
     all windows, or only to those which specify that they will process the
     events.
     """
-    return _core_.UpdateUIEvent_GetMode(*args, **kwargs)
+  return _core_.UpdateUIEvent_GetMode(*args)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6269,25 +5798,16 @@ class SysColourChangedEvent(Event):
     pass the event on to the window's children explicitly.
 
     """
     pass the event on to the window's children explicitly.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSysColourChangedEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> SysColourChangedEvent
 
         Constructor
         """
         """
         __init__(self) -> SysColourChangedEvent
 
         Constructor
         """
-        newobj = _core_.new_SysColourChangedEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class SysColourChangedEventPtr(SysColourChangedEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = SysColourChangedEvent
-_core_.SysColourChangedEvent_swigregister(SysColourChangedEventPtr)
+        _core_.SysColourChangedEvent_swiginit(self,_core_.new_SysColourChangedEvent(*args, **kwargs))
+_core_.SysColourChangedEvent_swigregister(SysColourChangedEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6301,18 +5821,15 @@ class MouseCaptureChangedEvent(Event):
 
     This event is implemented under Windows only.
     """
 
     This event is implemented under Windows only.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMouseCaptureChangedEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int winid=0, Window gainedCapture=None) -> MouseCaptureChangedEvent
 
         Constructor
         """
         """
         __init__(self, int winid=0, Window gainedCapture=None) -> MouseCaptureChangedEvent
 
         Constructor
         """
-        newobj = _core_.new_MouseCaptureChangedEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MouseCaptureChangedEvent_swiginit(self,_core_.new_MouseCaptureChangedEvent(*args, **kwargs))
     def GetCapturedWindow(*args, **kwargs):
         """
         GetCapturedWindow(self) -> Window
     def GetCapturedWindow(*args, **kwargs):
         """
         GetCapturedWindow(self) -> Window
@@ -6322,13 +5839,7 @@ class MouseCaptureChangedEvent(Event):
         """
         return _core_.MouseCaptureChangedEvent_GetCapturedWindow(*args, **kwargs)
 
         """
         return _core_.MouseCaptureChangedEvent_GetCapturedWindow(*args, **kwargs)
 
-
-class MouseCaptureChangedEventPtr(MouseCaptureChangedEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MouseCaptureChangedEvent
-_core_.MouseCaptureChangedEvent_swigregister(MouseCaptureChangedEventPtr)
+_core_.MouseCaptureChangedEvent_swigregister(MouseCaptureChangedEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6339,21 +5850,12 @@ class DisplayChangedEvent(Event):
 
     This event is implemented under Windows only.
     """
 
     This event is implemented under Windows only.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxDisplayChangedEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> DisplayChangedEvent"""
         """__init__(self) -> DisplayChangedEvent"""
-        newobj = _core_.new_DisplayChangedEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-
-class DisplayChangedEventPtr(DisplayChangedEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = DisplayChangedEvent
-_core_.DisplayChangedEvent_swigregister(DisplayChangedEventPtr)
+        _core_.DisplayChangedEvent_swiginit(self,_core_.new_DisplayChangedEvent(*args, **kwargs))
+_core_.DisplayChangedEvent_swigregister(DisplayChangedEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6365,9 +5867,9 @@ class PaletteChangedEvent(Event):
 
     This event is implemented under Windows only.
     """
 
     This event is implemented under Windows only.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPaletteChangedEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int id=0) -> PaletteChangedEvent
 
         """
         __init__(self, int id=0) -> PaletteChangedEvent
 
@@ -6377,10 +5879,7 @@ class PaletteChangedEvent(Event):
 
         This event is implemented under Windows only.
         """
 
         This event is implemented under Windows only.
         """
-        newobj = _core_.new_PaletteChangedEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.PaletteChangedEvent_swiginit(self,_core_.new_PaletteChangedEvent(*args, **kwargs))
     def SetChangedWindow(*args, **kwargs):
         """SetChangedWindow(self, Window win)"""
         return _core_.PaletteChangedEvent_SetChangedWindow(*args, **kwargs)
     def SetChangedWindow(*args, **kwargs):
         """SetChangedWindow(self, Window win)"""
         return _core_.PaletteChangedEvent_SetChangedWindow(*args, **kwargs)
@@ -6389,13 +5888,7 @@ class PaletteChangedEvent(Event):
         """GetChangedWindow(self) -> Window"""
         return _core_.PaletteChangedEvent_GetChangedWindow(*args, **kwargs)
 
         """GetChangedWindow(self) -> Window"""
         return _core_.PaletteChangedEvent_GetChangedWindow(*args, **kwargs)
 
-
-class PaletteChangedEventPtr(PaletteChangedEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PaletteChangedEvent
-_core_.PaletteChangedEvent_swigregister(PaletteChangedEventPtr)
+_core_.PaletteChangedEvent_swigregister(PaletteChangedEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6406,18 +5899,15 @@ class QueryNewPaletteEvent(Event):
 
     This event is implemented under Windows only.
     """
 
     This event is implemented under Windows only.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxQueryNewPaletteEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int winid=0) -> QueryNewPaletteEvent
 
         Constructor.
         """
         """
         __init__(self, int winid=0) -> QueryNewPaletteEvent
 
         Constructor.
         """
-        newobj = _core_.new_QueryNewPaletteEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.QueryNewPaletteEvent_swiginit(self,_core_.new_QueryNewPaletteEvent(*args, **kwargs))
     def SetPaletteRealized(*args, **kwargs):
         """
         SetPaletteRealized(self, bool realized)
     def SetPaletteRealized(*args, **kwargs):
         """
         SetPaletteRealized(self, bool realized)
@@ -6430,13 +5920,7 @@ class QueryNewPaletteEvent(Event):
         """GetPaletteRealized(self) -> bool"""
         return _core_.QueryNewPaletteEvent_GetPaletteRealized(*args, **kwargs)
 
         """GetPaletteRealized(self) -> bool"""
         return _core_.QueryNewPaletteEvent_GetPaletteRealized(*args, **kwargs)
 
-
-class QueryNewPaletteEventPtr(QueryNewPaletteEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = QueryNewPaletteEvent
-_core_.QueryNewPaletteEvent_swigregister(QueryNewPaletteEventPtr)
+_core_.QueryNewPaletteEvent_swigregister(QueryNewPaletteEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6450,14 +5934,11 @@ class NavigationKeyEvent(Event):
     the focus in certain ways, although it's probably easier to just call
     `wx.Window.Navigate`.
     """
     the focus in certain ways, although it's probably easier to just call
     `wx.Window.Navigate`.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxNavigationKeyEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> NavigationKeyEvent"""
         """__init__(self) -> NavigationKeyEvent"""
-        newobj = _core_.new_NavigationKeyEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.NavigationKeyEvent_swiginit(self,_core_.new_NavigationKeyEvent(*args, **kwargs))
     def GetDirection(*args, **kwargs):
         """
         GetDirection(self) -> bool
     def GetDirection(*args, **kwargs):
         """
         GetDirection(self) -> bool
@@ -6546,13 +6027,7 @@ class NavigationKeyEvent(Event):
     IsForward = _core_.NavigationKeyEvent_IsForward
     WinChange = _core_.NavigationKeyEvent_WinChange
     FromTab = _core_.NavigationKeyEvent_FromTab
     IsForward = _core_.NavigationKeyEvent_IsForward
     WinChange = _core_.NavigationKeyEvent_WinChange
     FromTab = _core_.NavigationKeyEvent_FromTab
-
-class NavigationKeyEventPtr(NavigationKeyEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = NavigationKeyEvent
-_core_.NavigationKeyEvent_swigregister(NavigationKeyEventPtr)
+_core_.NavigationKeyEvent_swigregister(NavigationKeyEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6561,19 +6036,16 @@ class WindowCreateEvent(CommandEvent):
     The EVT_WINDOW_CREATE event is sent as soon as the window object (the
     underlying GUI object) exists.
     """
     The EVT_WINDOW_CREATE event is sent as soon as the window object (the
     underlying GUI object) exists.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxWindowCreateEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Window win=None) -> WindowCreateEvent
 
         The EVT_WINDOW_CREATE event is sent as soon as the window object (the
         underlying GUI object) exists.
         """
         """
         __init__(self, Window win=None) -> WindowCreateEvent
 
         The EVT_WINDOW_CREATE event is sent as soon as the window object (the
         underlying GUI object) exists.
         """
-        newobj = _core_.new_WindowCreateEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.WindowCreateEvent_swiginit(self,_core_.new_WindowCreateEvent(*args, **kwargs))
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
@@ -6582,13 +6054,7 @@ class WindowCreateEvent(CommandEvent):
         """
         return _core_.WindowCreateEvent_GetWindow(*args, **kwargs)
 
         """
         return _core_.WindowCreateEvent_GetWindow(*args, **kwargs)
 
-
-class WindowCreateEventPtr(WindowCreateEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = WindowCreateEvent
-_core_.WindowCreateEvent_swigregister(WindowCreateEventPtr)
+_core_.WindowCreateEvent_swigregister(WindowCreateEvent)
 
 class WindowDestroyEvent(CommandEvent):
     """
 
 class WindowDestroyEvent(CommandEvent):
     """
@@ -6602,9 +6068,9 @@ class WindowDestroyEvent(CommandEvent):
     handle its own wx.WindowDestroyEvent, but it can be used to get
     notification of the destruction of another window.
     """
     handle its own wx.WindowDestroyEvent, but it can be used to get
     notification of the destruction of another window.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxWindowDestroyEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Window win=None) -> WindowDestroyEvent
 
         """
         __init__(self, Window win=None) -> WindowDestroyEvent
 
@@ -6618,10 +6084,7 @@ class WindowDestroyEvent(CommandEvent):
         handle its own wx.WindowDestroyEvent, but it can be used to get
         notification of the destruction of another window.
         """
         handle its own wx.WindowDestroyEvent, but it can be used to get
         notification of the destruction of another window.
         """
-        newobj = _core_.new_WindowDestroyEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.WindowDestroyEvent_swiginit(self,_core_.new_WindowDestroyEvent(*args, **kwargs))
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
     def GetWindow(*args, **kwargs):
         """
         GetWindow(self) -> Window
@@ -6630,13 +6093,7 @@ class WindowDestroyEvent(CommandEvent):
         """
         return _core_.WindowDestroyEvent_GetWindow(*args, **kwargs)
 
         """
         return _core_.WindowDestroyEvent_GetWindow(*args, **kwargs)
 
-
-class WindowDestroyEventPtr(WindowDestroyEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = WindowDestroyEvent
-_core_.WindowDestroyEvent_swigregister(WindowDestroyEventPtr)
+_core_.WindowDestroyEvent_swigregister(WindowDestroyEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6645,18 +6102,15 @@ class ContextMenuEvent(CommandEvent):
     This class is used for context menu events (EVT_CONTECT_MENU,) sent to
     give the application a chance to show a context (popup) menu.
     """
     This class is used for context menu events (EVT_CONTECT_MENU,) sent to
     give the application a chance to show a context (popup) menu.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxContextMenuEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         """
-        __init__(self, wxEventType type=wxEVT_NULL, int winid=0, Point pt=DefaultPosition) -> ContextMenuEvent
+        __init__(self, EventType type=wxEVT_NULL, int winid=0, Point pt=DefaultPosition) -> ContextMenuEvent
 
         Constructor.
         """
 
         Constructor.
         """
-        newobj = _core_.new_ContextMenuEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.ContextMenuEvent_swiginit(self,_core_.new_ContextMenuEvent(*args, **kwargs))
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
     def GetPosition(*args, **kwargs):
         """
         GetPosition(self) -> Point
@@ -6674,13 +6128,7 @@ class ContextMenuEvent(CommandEvent):
         """
         return _core_.ContextMenuEvent_SetPosition(*args, **kwargs)
 
         """
         return _core_.ContextMenuEvent_SetPosition(*args, **kwargs)
 
-
-class ContextMenuEventPtr(ContextMenuEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ContextMenuEvent
-_core_.ContextMenuEvent_swigregister(ContextMenuEventPtr)
+_core_.ContextMenuEvent_swigregister(ContextMenuEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6702,18 +6150,15 @@ class IdleEvent(Event):
     which should receive idle events.  Then idle events will only be sent
     to those windows and not to any others.
     """
     which should receive idle events.  Then idle events will only be sent
     to those windows and not to any others.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxIdleEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> IdleEvent
 
         Constructor
         """
         """
         __init__(self) -> IdleEvent
 
         Constructor
         """
-        newobj = _core_.new_IdleEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.IdleEvent_swiginit(self,_core_.new_IdleEvent(*args, **kwargs))
     def RequestMore(*args, **kwargs):
         """
         RequestMore(self, bool needMore=True)
     def RequestMore(*args, **kwargs):
         """
         RequestMore(self, bool needMore=True)
@@ -6786,16 +6231,10 @@ class IdleEvent(Event):
         return _core_.IdleEvent_CanSend(*args, **kwargs)
 
     CanSend = staticmethod(CanSend)
         return _core_.IdleEvent_CanSend(*args, **kwargs)
 
     CanSend = staticmethod(CanSend)
-
-class IdleEventPtr(IdleEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = IdleEvent
-_core_.IdleEvent_swigregister(IdleEventPtr)
+_core_.IdleEvent_swigregister(IdleEvent)
 
 def IdleEvent_SetMode(*args, **kwargs):
 
 def IdleEvent_SetMode(*args, **kwargs):
-    """
+  """
     IdleEvent_SetMode(int mode)
 
     Static method for specifying how wxWidgets will send idle events: to
     IdleEvent_SetMode(int mode)
 
     Static method for specifying how wxWidgets will send idle events: to
@@ -6812,20 +6251,20 @@ def IdleEvent_SetMode(*args, **kwargs):
         =========================   ========================================
 
     """
         =========================   ========================================
 
     """
-    return _core_.IdleEvent_SetMode(*args, **kwargs)
+  return _core_.IdleEvent_SetMode(*args, **kwargs)
 
 
-def IdleEvent_GetMode(*args, **kwargs):
-    """
+def IdleEvent_GetMode(*args):
+  """
     IdleEvent_GetMode() -> int
 
     Static method returning a value specifying how wxWidgets will send
     idle events: to all windows, or only to those which specify that they
     will process the events.
     """
     IdleEvent_GetMode() -> int
 
     Static method returning a value specifying how wxWidgets will send
     idle events: to all windows, or only to those which specify that they
     will process the events.
     """
-    return _core_.IdleEvent_GetMode(*args, **kwargs)
+  return _core_.IdleEvent_GetMode(*args)
 
 def IdleEvent_CanSend(*args, **kwargs):
 
 def IdleEvent_CanSend(*args, **kwargs):
-    """
+  """
     IdleEvent_CanSend(Window win) -> bool
 
     Returns ``True`` if it is appropriate to send idle events to this
     IdleEvent_CanSend(Window win) -> bool
 
     Returns ``True`` if it is appropriate to send idle events to this
@@ -6838,7 +6277,32 @@ def IdleEvent_CanSend(*args, **kwargs):
     wx.IDLE_PROCESS_ALL. You can change the mode to only send idle events
     to windows with the wx.WS_EX_PROCESS_IDLE extra window style set.
     """
     wx.IDLE_PROCESS_ALL. You can change the mode to only send idle events
     to windows with the wx.WS_EX_PROCESS_IDLE extra window style set.
     """
-    return _core_.IdleEvent_CanSend(*args, **kwargs)
+  return _core_.IdleEvent_CanSend(*args, **kwargs)
+
+#---------------------------------------------------------------------------
+
+class ClipboardTextEvent(CommandEvent):
+    """
+    A Clipboard Text event is sent when a window intercepts a text
+    copy/cut/paste message, i.e. the user has cut/copied/pasted data
+    from/into a text control via ctrl-C/X/V, ctrl/shift-del/insert, a
+    popup menu command, etc.  NOTE : under windows these events are *NOT*
+    generated automatically for a Rich Edit text control.
+    """
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """
+        __init__(self, EventType type=wxEVT_NULL, int winid=0) -> ClipboardTextEvent
+
+        A Clipboard Text event is sent when a window intercepts a text
+        copy/cut/paste message, i.e. the user has cut/copied/pasted data
+        from/into a text control via ctrl-C/X/V, ctrl/shift-del/insert, a
+        popup menu command, etc.  NOTE : under windows these events are *NOT*
+        generated automatically for a Rich Edit text control.
+        """
+        _core_.ClipboardTextEvent_swiginit(self,_core_.new_ClipboardTextEvent(*args, **kwargs))
+_core_.ClipboardTextEvent_swigregister(ClipboardTextEvent)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -6853,22 +6317,15 @@ class PyEvent(Event):
     :see: `wx.PyCommandEvent`
 
     """
     :see: `wx.PyCommandEvent`
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """__init__(self, int winid=0, wxEventType eventType=wxEVT_NULL) -> PyEvent"""
-        newobj = _core_.new_PyEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self, int winid=0, EventType eventType=wxEVT_NULL) -> PyEvent"""
+        _core_.PyEvent_swiginit(self,_core_.new_PyEvent(*args, **kwargs))
         self._SetSelf(self)
 
         self._SetSelf(self)
 
-    def __del__(self, destroy=_core_.delete_PyEvent):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+    __swig_destroy__ = _core_.delete_PyEvent
+    __del__ = lambda self : None;
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyEvent__SetSelf(*args, **kwargs)
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyEvent__SetSelf(*args, **kwargs)
@@ -6877,13 +6334,7 @@ class PyEvent(Event):
         """_GetSelf(self) -> PyObject"""
         return _core_.PyEvent__GetSelf(*args, **kwargs)
 
         """_GetSelf(self) -> PyObject"""
         return _core_.PyEvent__GetSelf(*args, **kwargs)
 
-
-class PyEventPtr(PyEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PyEvent
-_core_.PyEvent_swigregister(PyEventPtr)
+_core_.PyEvent_swigregister(PyEvent)
 
 class PyCommandEvent(CommandEvent):
     """
 
 class PyCommandEvent(CommandEvent):
     """
@@ -6897,22 +6348,15 @@ class PyCommandEvent(CommandEvent):
     :see: `wx.PyEvent`
 
     """
     :see: `wx.PyEvent`
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyCommandEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """__init__(self, wxEventType eventType=wxEVT_NULL, int id=0) -> PyCommandEvent"""
-        newobj = _core_.new_PyCommandEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self, EventType eventType=wxEVT_NULL, int id=0) -> PyCommandEvent"""
+        _core_.PyCommandEvent_swiginit(self,_core_.new_PyCommandEvent(*args, **kwargs))
         self._SetSelf(self)
 
         self._SetSelf(self)
 
-    def __del__(self, destroy=_core_.delete_PyCommandEvent):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+    __swig_destroy__ = _core_.delete_PyCommandEvent
+    __del__ = lambda self : None;
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyCommandEvent__SetSelf(*args, **kwargs)
     def _SetSelf(*args, **kwargs):
         """_SetSelf(self, PyObject self)"""
         return _core_.PyCommandEvent__SetSelf(*args, **kwargs)
@@ -6921,13 +6365,7 @@ class PyCommandEvent(CommandEvent):
         """_GetSelf(self) -> PyObject"""
         return _core_.PyCommandEvent__GetSelf(*args, **kwargs)
 
         """_GetSelf(self) -> PyObject"""
         return _core_.PyCommandEvent__GetSelf(*args, **kwargs)
 
-
-class PyCommandEventPtr(PyCommandEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PyCommandEvent
-_core_.PyCommandEvent_swigregister(PyCommandEventPtr)
+_core_.PyCommandEvent_swigregister(PyCommandEvent)
 
 class DateEvent(CommandEvent):
     """
 
 class DateEvent(CommandEvent):
     """
@@ -6936,14 +6374,11 @@ class DateEvent(CommandEvent):
     for `wx.calendar.CalendarEvent`.  Bind these event types with
     EVT_DATE_CHANGED.
     """
     for `wx.calendar.CalendarEvent`.  Bind these event types with
     EVT_DATE_CHANGED.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxDateEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
-        """__init__(self, Window win, DateTime dt, wxEventType type) -> DateEvent"""
-        newobj = _core_.new_DateEvent(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
+        """__init__(self, Window win, DateTime dt, EventType type) -> DateEvent"""
+        _core_.DateEvent_swiginit(self,_core_.new_DateEvent(*args, **kwargs))
     def GetDate(*args, **kwargs):
         """
         GetDate(self) -> DateTime
     def GetDate(*args, **kwargs):
         """
         GetDate(self) -> DateTime
@@ -6961,13 +6396,7 @@ class DateEvent(CommandEvent):
         """
         return _core_.DateEvent_SetDate(*args, **kwargs)
 
         """
         return _core_.DateEvent_SetDate(*args, **kwargs)
 
-
-class DateEventPtr(DateEvent):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = DateEvent
-_core_.DateEvent_swigregister(DateEventPtr)
+_core_.DateEvent_swigregister(DateEvent)
 
 wxEVT_DATE_CHANGED = _core_.wxEVT_DATE_CHANGED
 EVT_DATE_CHANGED = wx.PyEventBinder( wxEVT_DATE_CHANGED, 1 )
 
 wxEVT_DATE_CHANGED = _core_.wxEVT_DATE_CHANGED
 EVT_DATE_CHANGED = wx.PyEventBinder( wxEVT_DATE_CHANGED, 1 )
@@ -6985,27 +6414,20 @@ class PyApp(EvtHandler):
     The ``wx.PyApp`` class is an *implementation detail*, please use the
     `wx.App` class (or some other derived class) instead.
     """
     The ``wx.PyApp`` class is an *implementation detail*, please use the
     `wx.App` class (or some other derived class) instead.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyApp instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PyApp
 
         Create a new application object, starting the bootstrap process.
         """
         """
         __init__(self) -> PyApp
 
         Create a new application object, starting the bootstrap process.
         """
-        newobj = _core_.new_PyApp(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.PyApp_swiginit(self,_core_.new_PyApp(*args, **kwargs))
         self._setCallbackInfo(self, PyApp, False)
         self._setOORInfo(self, False)
 
         self._setCallbackInfo(self, PyApp, False)
         self._setOORInfo(self, False)
 
-    def __del__(self, destroy=_core_.delete_PyApp):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+    __swig_destroy__ = _core_.delete_PyApp
+    __del__ = lambda self : None;
     def _setCallbackInfo(*args, **kwargs):
         """_setCallbackInfo(self, PyObject self, PyObject _class, bool incref)"""
         return _core_.PyApp__setCallbackInfo(*args, **kwargs)
     def _setCallbackInfo(*args, **kwargs):
         """_setCallbackInfo(self, PyObject self, PyObject _class, bool incref)"""
         return _core_.PyApp__setCallbackInfo(*args, **kwargs)
@@ -7341,101 +6763,95 @@ class PyApp(EvtHandler):
         return _core_.PyApp_GetComCtl32Version(*args, **kwargs)
 
     GetComCtl32Version = staticmethod(GetComCtl32Version)
         return _core_.PyApp_GetComCtl32Version(*args, **kwargs)
 
     GetComCtl32Version = staticmethod(GetComCtl32Version)
+_core_.PyApp_swigregister(PyApp)
 
 
-class PyAppPtr(PyApp):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PyApp
-_core_.PyApp_swigregister(PyAppPtr)
-
-def PyApp_IsMainLoopRunning(*args, **kwargs):
-    """
+def PyApp_IsMainLoopRunning(*args):
+  """
     PyApp_IsMainLoopRunning() -> bool
 
     Returns True if we're running the main loop, i.e. if the events can
     currently be dispatched.
     """
     PyApp_IsMainLoopRunning() -> bool
 
     Returns True if we're running the main loop, i.e. if the events can
     currently be dispatched.
     """
-    return _core_.PyApp_IsMainLoopRunning(*args, **kwargs)
+  return _core_.PyApp_IsMainLoopRunning(*args)
 
 
-def PyApp_GetMacSupportPCMenuShortcuts(*args, **kwargs):
-    """PyApp_GetMacSupportPCMenuShortcuts() -> bool"""
-    return _core_.PyApp_GetMacSupportPCMenuShortcuts(*args, **kwargs)
+def PyApp_GetMacSupportPCMenuShortcuts(*args):
+  """PyApp_GetMacSupportPCMenuShortcuts() -> bool"""
+  return _core_.PyApp_GetMacSupportPCMenuShortcuts(*args)
 
 
-def PyApp_GetMacAboutMenuItemId(*args, **kwargs):
-    """PyApp_GetMacAboutMenuItemId() -> long"""
-    return _core_.PyApp_GetMacAboutMenuItemId(*args, **kwargs)
+def PyApp_GetMacAboutMenuItemId(*args):
+  """PyApp_GetMacAboutMenuItemId() -> long"""
+  return _core_.PyApp_GetMacAboutMenuItemId(*args)
 
 
-def PyApp_GetMacPreferencesMenuItemId(*args, **kwargs):
-    """PyApp_GetMacPreferencesMenuItemId() -> long"""
-    return _core_.PyApp_GetMacPreferencesMenuItemId(*args, **kwargs)
+def PyApp_GetMacPreferencesMenuItemId(*args):
+  """PyApp_GetMacPreferencesMenuItemId() -> long"""
+  return _core_.PyApp_GetMacPreferencesMenuItemId(*args)
 
 
-def PyApp_GetMacExitMenuItemId(*args, **kwargs):
-    """PyApp_GetMacExitMenuItemId() -> long"""
-    return _core_.PyApp_GetMacExitMenuItemId(*args, **kwargs)
+def PyApp_GetMacExitMenuItemId(*args):
+  """PyApp_GetMacExitMenuItemId() -> long"""
+  return _core_.PyApp_GetMacExitMenuItemId(*args)
 
 
-def PyApp_GetMacHelpMenuTitleName(*args, **kwargs):
-    """PyApp_GetMacHelpMenuTitleName() -> String"""
-    return _core_.PyApp_GetMacHelpMenuTitleName(*args, **kwargs)
+def PyApp_GetMacHelpMenuTitleName(*args):
+  """PyApp_GetMacHelpMenuTitleName() -> String"""
+  return _core_.PyApp_GetMacHelpMenuTitleName(*args)
 
 def PyApp_SetMacSupportPCMenuShortcuts(*args, **kwargs):
 
 def PyApp_SetMacSupportPCMenuShortcuts(*args, **kwargs):
-    """PyApp_SetMacSupportPCMenuShortcuts(bool val)"""
-    return _core_.PyApp_SetMacSupportPCMenuShortcuts(*args, **kwargs)
+  """PyApp_SetMacSupportPCMenuShortcuts(bool val)"""
+  return _core_.PyApp_SetMacSupportPCMenuShortcuts(*args, **kwargs)
 
 def PyApp_SetMacAboutMenuItemId(*args, **kwargs):
 
 def PyApp_SetMacAboutMenuItemId(*args, **kwargs):
-    """PyApp_SetMacAboutMenuItemId(long val)"""
-    return _core_.PyApp_SetMacAboutMenuItemId(*args, **kwargs)
+  """PyApp_SetMacAboutMenuItemId(long val)"""
+  return _core_.PyApp_SetMacAboutMenuItemId(*args, **kwargs)
 
 def PyApp_SetMacPreferencesMenuItemId(*args, **kwargs):
 
 def PyApp_SetMacPreferencesMenuItemId(*args, **kwargs):
-    """PyApp_SetMacPreferencesMenuItemId(long val)"""
-    return _core_.PyApp_SetMacPreferencesMenuItemId(*args, **kwargs)
+  """PyApp_SetMacPreferencesMenuItemId(long val)"""
+  return _core_.PyApp_SetMacPreferencesMenuItemId(*args, **kwargs)
 
 def PyApp_SetMacExitMenuItemId(*args, **kwargs):
 
 def PyApp_SetMacExitMenuItemId(*args, **kwargs):
-    """PyApp_SetMacExitMenuItemId(long val)"""
-    return _core_.PyApp_SetMacExitMenuItemId(*args, **kwargs)
+  """PyApp_SetMacExitMenuItemId(long val)"""
+  return _core_.PyApp_SetMacExitMenuItemId(*args, **kwargs)
 
 def PyApp_SetMacHelpMenuTitleName(*args, **kwargs):
 
 def PyApp_SetMacHelpMenuTitleName(*args, **kwargs):
-    """PyApp_SetMacHelpMenuTitleName(String val)"""
-    return _core_.PyApp_SetMacHelpMenuTitleName(*args, **kwargs)
+  """PyApp_SetMacHelpMenuTitleName(String val)"""
+  return _core_.PyApp_SetMacHelpMenuTitleName(*args, **kwargs)
 
 
-def PyApp_GetComCtl32Version(*args, **kwargs):
-    """
+def PyApp_GetComCtl32Version(*args):
+  """
     PyApp_GetComCtl32Version() -> int
 
     Returns 400, 470, 471, etc. for comctl32.dll 4.00, 4.70, 4.71 or 0 if
     it wasn't found at all.  Raises an exception on non-Windows platforms.
     """
     PyApp_GetComCtl32Version() -> int
 
     Returns 400, 470, 471, etc. for comctl32.dll 4.00, 4.70, 4.71 or 0 if
     it wasn't found at all.  Raises an exception on non-Windows platforms.
     """
-    return _core_.PyApp_GetComCtl32Version(*args, **kwargs)
+  return _core_.PyApp_GetComCtl32Version(*args)
 
 #---------------------------------------------------------------------------
 
 
 
 #---------------------------------------------------------------------------
 
 
-def Exit(*args, **kwargs):
-    """
+def Exit(*args):
+  """
     Exit()
 
     Force an exit of the application.  Convenience for wx.GetApp().Exit()
     """
     Exit()
 
     Force an exit of the application.  Convenience for wx.GetApp().Exit()
     """
-    return _core_.Exit(*args, **kwargs)
+  return _core_.Exit(*args)
 
 
-def Yield(*args, **kwargs):
-    """
+def Yield(*args):
+  """
     Yield() -> bool
 
     Yield to other apps/messages.  Convenience for wx.GetApp().Yield()
     """
     Yield() -> bool
 
     Yield to other apps/messages.  Convenience for wx.GetApp().Yield()
     """
-    return _core_.Yield(*args, **kwargs)
+  return _core_.Yield(*args)
 
 
-def YieldIfNeeded(*args, **kwargs):
-    """
+def YieldIfNeeded(*args):
+  """
     YieldIfNeeded() -> bool
 
     Yield to other apps/messages.  Convenience for wx.GetApp().Yield(True)
     """
     YieldIfNeeded() -> bool
 
     Yield to other apps/messages.  Convenience for wx.GetApp().Yield(True)
     """
-    return _core_.YieldIfNeeded(*args, **kwargs)
+  return _core_.YieldIfNeeded(*args)
 
 def SafeYield(*args, **kwargs):
 
 def SafeYield(*args, **kwargs):
-    """
+  """
     SafeYield(Window win=None, bool onlyIfNeeded=False) -> bool
 
     This function is similar to `wx.Yield`, except that it disables the
     SafeYield(Window win=None, bool onlyIfNeeded=False) -> bool
 
     This function is similar to `wx.Yield`, except that it disables the
@@ -7446,45 +6862,45 @@ def SafeYield(*args, **kwargs):
 
     :Returns: the result of the call to `wx.Yield`.
     """
 
     :Returns: the result of the call to `wx.Yield`.
     """
-    return _core_.SafeYield(*args, **kwargs)
+  return _core_.SafeYield(*args, **kwargs)
 
 
-def WakeUpIdle(*args, **kwargs):
-    """
+def WakeUpIdle(*args):
+  """
     WakeUpIdle()
 
     Cause the message queue to become empty again, so idle events will be
     sent.
     """
     WakeUpIdle()
 
     Cause the message queue to become empty again, so idle events will be
     sent.
     """
-    return _core_.WakeUpIdle(*args, **kwargs)
+  return _core_.WakeUpIdle(*args)
 
 def PostEvent(*args, **kwargs):
 
 def PostEvent(*args, **kwargs):
-    """
+  """
     PostEvent(EvtHandler dest, Event event)
 
     Send an event to a window or other wx.EvtHandler to be processed
     later.
     """
     PostEvent(EvtHandler dest, Event event)
 
     Send an event to a window or other wx.EvtHandler to be processed
     later.
     """
-    return _core_.PostEvent(*args, **kwargs)
+  return _core_.PostEvent(*args, **kwargs)
 
 
-def App_CleanUp(*args, **kwargs):
-    """
+def App_CleanUp(*args):
+  """
     App_CleanUp()
 
     For internal use only, it is used to cleanup after wxWidgets when
     Python shuts down.
     """
     App_CleanUp()
 
     For internal use only, it is used to cleanup after wxWidgets when
     Python shuts down.
     """
-    return _core_.App_CleanUp(*args, **kwargs)
+  return _core_.App_CleanUp(*args)
 
 
-def GetApp(*args, **kwargs):
-    """
+def GetApp(*args):
+  """
     GetApp() -> PyApp
 
     Return a reference to the current wx.App object.
     """
     GetApp() -> PyApp
 
     Return a reference to the current wx.App object.
     """
-    return _core_.GetApp(*args, **kwargs)
+  return _core_.GetApp(*args)
 
 def SetDefaultPyEncoding(*args, **kwargs):
 
 def SetDefaultPyEncoding(*args, **kwargs):
-    """
+  """
     SetDefaultPyEncoding(string encoding)
 
     Sets the encoding that wxPython will use when it needs to convert a
     SetDefaultPyEncoding(string encoding)
 
     Sets the encoding that wxPython will use when it needs to convert a
@@ -7496,16 +6912,16 @@ def SetDefaultPyEncoding(*args, **kwargs):
     see http://www.alanwood.net/demos/charsetdiffs.html for differences
     between the common latin/roman encodings.
     """
     see http://www.alanwood.net/demos/charsetdiffs.html for differences
     between the common latin/roman encodings.
     """
-    return _core_.SetDefaultPyEncoding(*args, **kwargs)
+  return _core_.SetDefaultPyEncoding(*args, **kwargs)
 
 
-def GetDefaultPyEncoding(*args, **kwargs):
-    """
+def GetDefaultPyEncoding(*args):
+  """
     GetDefaultPyEncoding() -> string
 
     Gets the current encoding that wxPython will use when it needs to
     convert a Python string or unicode object to or from a wxString.
     """
     GetDefaultPyEncoding() -> string
 
     Gets the current encoding that wxPython will use when it needs to
     convert a Python string or unicode object to or from a wxString.
     """
-    return _core_.GetDefaultPyEncoding(*args, **kwargs)
+  return _core_.GetDefaultPyEncoding(*args)
 #----------------------------------------------------------------------
 
 class PyOnDemandOutputWindow:
 #----------------------------------------------------------------------
 
 class PyOnDemandOutputWindow:
@@ -7534,7 +6950,7 @@ class PyOnDemandOutputWindow:
                                  style=wx.TE_MULTILINE|wx.TE_READONLY)
         self.text.AppendText(st)
         self.frame.Show(True)
                                  style=wx.TE_MULTILINE|wx.TE_READONLY)
         self.text.AppendText(st)
         self.frame.Show(True)
-        EVT_CLOSE(self.frame, self.OnCloseWindow)
+        self.frame.Bind(wx.EVT_CLOSE, self.OnCloseWindow)
         
 
     def OnCloseWindow(self, event):
         
 
     def OnCloseWindow(self, event):
@@ -7680,6 +7096,15 @@ your Mac."""
         self._BootstrapApp()
 
 
         self._BootstrapApp()
 
 
+    def OnPreInit(self):
+        """
+        Things that must be done after _BootstrapApp has done its
+        thing, but would be nice if they were already done by the time
+        that OnInit is called.
+        """
+        wx.StockGDI._initStockObjects()
+        
+
     def __del__(self, destroy=wx.PyApp.__del__):
         self.RestoreStdio()  # Just in case the MainLoop was overridden
         destroy(self)
     def __del__(self, destroy=wx.PyApp.__del__):
         self.RestoreStdio()  # Just in case the MainLoop was overridden
         destroy(self)
@@ -7815,20 +7240,13 @@ _sys.__wxPythonCleanup = __wxPyCleanup()
 
 class EventLoop(object):
     """Proxy of C++ EventLoop class"""
 
 class EventLoop(object):
     """Proxy of C++ EventLoop class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxEventLoop instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> EventLoop"""
         """__init__(self) -> EventLoop"""
-        newobj = _core_.new_EventLoop(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_EventLoop):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.EventLoop_swiginit(self,_core_.new_EventLoop(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_EventLoop
+    __del__ = lambda self : None;
     def Run(*args, **kwargs):
         """Run(self) -> int"""
         return _core_.EventLoop_Run(*args, **kwargs)
     def Run(*args, **kwargs):
         """Run(self) -> int"""
         return _core_.EventLoop_Run(*args, **kwargs)
@@ -7859,45 +7277,26 @@ class EventLoop(object):
         return _core_.EventLoop_SetActive(*args, **kwargs)
 
     SetActive = staticmethod(SetActive)
         return _core_.EventLoop_SetActive(*args, **kwargs)
 
     SetActive = staticmethod(SetActive)
+_core_.EventLoop_swigregister(EventLoop)
 
 
-class EventLoopPtr(EventLoop):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = EventLoop
-_core_.EventLoop_swigregister(EventLoopPtr)
-
-def EventLoop_GetActive(*args, **kwargs):
-    """EventLoop_GetActive() -> EventLoop"""
-    return _core_.EventLoop_GetActive(*args, **kwargs)
+def EventLoop_GetActive(*args):
+  """EventLoop_GetActive() -> EventLoop"""
+  return _core_.EventLoop_GetActive(*args)
 
 def EventLoop_SetActive(*args, **kwargs):
 
 def EventLoop_SetActive(*args, **kwargs):
-    """EventLoop_SetActive(EventLoop loop)"""
-    return _core_.EventLoop_SetActive(*args, **kwargs)
+  """EventLoop_SetActive(EventLoop loop)"""
+  return _core_.EventLoop_SetActive(*args, **kwargs)
 
 class EventLoopActivator(object):
     """Proxy of C++ EventLoopActivator class"""
 
 class EventLoopActivator(object):
     """Proxy of C++ EventLoopActivator class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxEventLoopActivator instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, EventLoop evtLoop) -> EventLoopActivator"""
         """__init__(self, EventLoop evtLoop) -> EventLoopActivator"""
-        newobj = _core_.new_EventLoopActivator(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_EventLoopActivator):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
-
-class EventLoopActivatorPtr(EventLoopActivator):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = EventLoopActivator
-_core_.EventLoopActivator_swigregister(EventLoopActivatorPtr)
+        _core_.EventLoopActivator_swiginit(self,_core_.new_EventLoopActivator(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_EventLoopActivator
+    __del__ = lambda self : None;
+_core_.EventLoopActivator_swigregister(EventLoopActivator)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -7910,24 +7309,17 @@ class AcceleratorEntry(object):
 
     :see: `wx.AcceleratorTable`
     """
 
     :see: `wx.AcceleratorTable`
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxAcceleratorEntry instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int flags=0, int keyCode=0, int cmdID=0) -> AcceleratorEntry
 
         Construct a wx.AcceleratorEntry.
         """
         """
         __init__(self, int flags=0, int keyCode=0, int cmdID=0) -> AcceleratorEntry
 
         Construct a wx.AcceleratorEntry.
         """
-        newobj = _core_.new_AcceleratorEntry(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_AcceleratorEntry):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.AcceleratorEntry_swiginit(self,_core_.new_AcceleratorEntry(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_AcceleratorEntry
+    __del__ = lambda self : None;
     def Set(*args, **kwargs):
         """
         Set(self, int flags, int keyCode, int cmd)
     def Set(*args, **kwargs):
         """
         Set(self, int flags, int keyCode, int cmd)
@@ -7961,13 +7353,7 @@ class AcceleratorEntry(object):
         """
         return _core_.AcceleratorEntry_GetCommand(*args, **kwargs)
 
         """
         return _core_.AcceleratorEntry_GetCommand(*args, **kwargs)
 
-
-class AcceleratorEntryPtr(AcceleratorEntry):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = AcceleratorEntry
-_core_.AcceleratorEntry_swigregister(AcceleratorEntryPtr)
+_core_.AcceleratorEntry_swigregister(AcceleratorEntry)
 
 class AcceleratorTable(Object):
     """
 
 class AcceleratorTable(Object):
     """
@@ -7976,9 +7362,9 @@ class AcceleratorTable(Object):
     button commands are supported; on GTK, only menu commands are
     supported.
     """
     button commands are supported; on GTK, only menu commands are
     supported.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxAcceleratorTable instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(entries) -> AcceleratorTable
 
         """
         __init__(entries) -> AcceleratorTable
 
@@ -7987,64 +7373,38 @@ class AcceleratorTable(Object):
 
         :see: `wx.AcceleratorEntry`
         """
 
         :see: `wx.AcceleratorEntry`
         """
-        newobj = _core_.new_AcceleratorTable(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_AcceleratorTable):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.AcceleratorTable_swiginit(self,_core_.new_AcceleratorTable(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_AcceleratorTable
+    __del__ = lambda self : None;
     def Ok(*args, **kwargs):
         """Ok(self) -> bool"""
         return _core_.AcceleratorTable_Ok(*args, **kwargs)
 
     def Ok(*args, **kwargs):
         """Ok(self) -> bool"""
         return _core_.AcceleratorTable_Ok(*args, **kwargs)
 
-
-class AcceleratorTablePtr(AcceleratorTable):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = AcceleratorTable
-_core_.AcceleratorTable_swigregister(AcceleratorTablePtr)
+_core_.AcceleratorTable_swigregister(AcceleratorTable)
 
 
 def GetAccelFromString(*args, **kwargs):
 
 
 def GetAccelFromString(*args, **kwargs):
-    """GetAccelFromString(String label) -> AcceleratorEntry"""
-    return _core_.GetAccelFromString(*args, **kwargs)
+  """GetAccelFromString(String label) -> AcceleratorEntry"""
+  return _core_.GetAccelFromString(*args, **kwargs)
 #---------------------------------------------------------------------------
 
 class VisualAttributes(object):
     """struct containing all the visual attributes of a control"""
 #---------------------------------------------------------------------------
 
 class VisualAttributes(object):
     """struct containing all the visual attributes of a control"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxVisualAttributes instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> VisualAttributes
 
         struct containing all the visual attributes of a control
         """
         """
         __init__(self) -> VisualAttributes
 
         struct containing all the visual attributes of a control
         """
-        newobj = _core_.new_VisualAttributes(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_core_.delete_VisualAttributes):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
+        _core_.VisualAttributes_swiginit(self,_core_.new_VisualAttributes(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_VisualAttributes
+    __del__ = lambda self : None;
     font = property(_core_.VisualAttributes_font_get, _core_.VisualAttributes_font_set)
     colFg = property(_core_.VisualAttributes_colFg_get, _core_.VisualAttributes_colFg_set)
     colBg = property(_core_.VisualAttributes_colBg_get, _core_.VisualAttributes_colBg_set)
     font = property(_core_.VisualAttributes_font_get, _core_.VisualAttributes_font_set)
     colFg = property(_core_.VisualAttributes_colFg_get, _core_.VisualAttributes_colFg_set)
     colBg = property(_core_.VisualAttributes_colBg_get, _core_.VisualAttributes_colBg_set)
-
-class VisualAttributesPtr(VisualAttributes):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = VisualAttributes
-_core_.VisualAttributes_swigregister(VisualAttributesPtr)
+_core_.VisualAttributes_swigregister(VisualAttributes)
 NullAcceleratorTable = cvar.NullAcceleratorTable
 PanelNameStr = cvar.PanelNameStr
 
 NullAcceleratorTable = cvar.NullAcceleratorTable
 PanelNameStr = cvar.PanelNameStr
 
@@ -8061,19 +7421,16 @@ class Window(EvtHandler):
     appear on screen themselves.
 
     """
     appear on screen themselves.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxWindow instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Window parent, int id=-1, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=0, String name=PanelNameStr) -> Window
 
         Construct and show a generic Window.
         """
         """
         __init__(self, Window parent, int id=-1, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=0, String name=PanelNameStr) -> Window
 
         Construct and show a generic Window.
         """
-        newobj = _core_.new_Window(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Window_swiginit(self,_core_.new_Window(*args, **kwargs))
         self._setOORInfo(self)
 
     def Create(*args, **kwargs):
         self._setOORInfo(self)
 
     def Create(*args, **kwargs):
@@ -8109,7 +7466,9 @@ class Window(EvtHandler):
         Returns True if the window has either been successfully deleted, or it
         has been added to the list of windows pending real deletion.
         """
         Returns True if the window has either been successfully deleted, or it
         has been added to the list of windows pending real deletion.
         """
-        return _core_.Window_Destroy(*args, **kwargs)
+        val = _core_.Window_Destroy(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def DestroyChildren(*args, **kwargs):
         """
 
     def DestroyChildren(*args, **kwargs):
         """
@@ -8361,7 +7720,10 @@ class Window(EvtHandler):
         """
         GetPosition(self) -> Point
 
         """
         GetPosition(self) -> Point
 
-        Get the window's position.
+        Get the window's position.  Notice that the position is in client
+        coordinates for child windows and screen coordinates for the top level
+        ones, use `GetScreenPosition` if you need screen coordinates for all
+        kinds of windows.
         """
         return _core_.Window_GetPosition(*args, **kwargs)
 
         """
         return _core_.Window_GetPosition(*args, **kwargs)
 
@@ -8369,10 +7731,38 @@ class Window(EvtHandler):
         """
         GetPositionTuple() -> (x,y)
 
         """
         GetPositionTuple() -> (x,y)
 
-        Get the window's position.
+        Get the window's position.  Notice that the position is in client
+        coordinates for child windows and screen coordinates for the top level
+        ones, use `GetScreenPosition` if you need screen coordinates for all
+        kinds of windows.
         """
         return _core_.Window_GetPositionTuple(*args, **kwargs)
 
         """
         return _core_.Window_GetPositionTuple(*args, **kwargs)
 
+    def GetScreenPosition(*args, **kwargs):
+        """
+        GetScreenPosition(self) -> Point
+
+        Get the position of the window in screen coordinantes.
+        """
+        return _core_.Window_GetScreenPosition(*args, **kwargs)
+
+    def GetScreenPositionTuple(*args, **kwargs):
+        """
+        GetScreenPositionTuple() -> (x,y)
+
+        Get the position of the window in screen coordinantes.
+        """
+        return _core_.Window_GetScreenPositionTuple(*args, **kwargs)
+
+    def GetScreenRect(*args, **kwargs):
+        """
+        GetScreenRect(self) -> Rect
+
+        Returns the size and position of the window in screen coordinantes as
+        a `wx.Rect` object.
+        """
+        return _core_.Window_GetScreenRect(*args, **kwargs)
+
     def GetSize(*args, **kwargs):
         """
         GetSize(self) -> Size
     def GetSize(*args, **kwargs):
         """
         GetSize(self) -> Size
@@ -8393,7 +7783,7 @@ class Window(EvtHandler):
         """
         GetRect(self) -> Rect
 
         """
         GetRect(self) -> Rect
 
-        Returns the size and position of the window as a wx.Rect object.
+        Returns the size and position of the window as a `wx.Rect` object.
         """
         return _core_.Window_GetRect(*args, **kwargs)
 
         """
         return _core_.Window_GetRect(*args, **kwargs)
 
@@ -8517,15 +7907,6 @@ class Window(EvtHandler):
         return _core_.Window_Center(*args, **kwargs)
 
     Centre = Center 
         return _core_.Window_Center(*args, **kwargs)
 
     Centre = Center 
-    def CenterOnScreen(*args, **kwargs):
-        """
-        CenterOnScreen(self, int dir=BOTH)
-
-        Center on screen (only works for top level windows)
-        """
-        return _core_.Window_CenterOnScreen(*args, **kwargs)
-
-    CentreOnScreen = CenterOnScreen 
     def CenterOnParent(*args, **kwargs):
         """
         CenterOnParent(self, int dir=BOTH)
     def CenterOnParent(*args, **kwargs):
         """
         CenterOnParent(self, int dir=BOTH)
@@ -9023,6 +8404,14 @@ class Window(EvtHandler):
         """
         return _core_.Window_RemoveChild(*args, **kwargs)
 
         """
         return _core_.Window_RemoveChild(*args, **kwargs)
 
+    def SetDoubleBuffered(*args, **kwargs):
+        """
+        SetDoubleBuffered(self, bool on)
+
+        Currently wxGTK2 only.
+        """
+        return _core_.Window_SetDoubleBuffered(*args, **kwargs)
+
     def FindWindowById(*args, **kwargs):
         """
         FindWindowById(self, long winid) -> Window
     def FindWindowById(*args, **kwargs):
         """
         FindWindowById(self, long winid) -> Window
@@ -9922,7 +9311,7 @@ class Window(EvtHandler):
 
         Sets the help text to be used as context-sensitive help for this
         window.  Note that the text is actually stored by the current
 
         Sets the help text to be used as context-sensitive help for this
         window.  Note that the text is actually stored by the current
-        wxHelpProvider implementation, and not in the window object itself.
+        `wx.HelpProvider` implementation, and not in the window object itself.
         """
         return _core_.Window_SetHelpText(*args, **kwargs)
 
         """
         return _core_.Window_SetHelpText(*args, **kwargs)
 
@@ -9935,13 +9324,25 @@ class Window(EvtHandler):
         """
         return _core_.Window_SetHelpTextForId(*args, **kwargs)
 
         """
         return _core_.Window_SetHelpTextForId(*args, **kwargs)
 
+    def GetHelpTextAtPoint(*args, **kwargs):
+        """
+        GetHelpTextAtPoint(self, Point pt, wxHelpEvent::Origin origin) -> String
+
+        Get the help string associated with the given position in this window.
+
+        Notice that pt may be invalid if event origin is keyboard or unknown
+        and this method should return the global window help text then
+
+        """
+        return _core_.Window_GetHelpTextAtPoint(*args, **kwargs)
+
     def GetHelpText(*args, **kwargs):
         """
         GetHelpText(self) -> String
 
         Gets the help text to be used as context-sensitive help for this
         window.  Note that the text is actually stored by the current
     def GetHelpText(*args, **kwargs):
         """
         GetHelpText(self) -> String
 
         Gets the help text to be used as context-sensitive help for this
         window.  Note that the text is actually stored by the current
-        wxHelpProvider implementation, and not in the window object itself.
+        `wx.HelpProvider` implementation, and not in the window object itself.
         """
         return _core_.Window_GetHelpText(*args, **kwargs)
 
         """
         return _core_.Window_GetHelpText(*args, **kwargs)
 
@@ -10026,9 +9427,13 @@ class Window(EvtHandler):
         SetAutoLayout(self, bool autoLayout)
 
         Determines whether the Layout function will be called automatically
         SetAutoLayout(self, bool autoLayout)
 
         Determines whether the Layout function will be called automatically
-        when the window is resized.  It is called implicitly by SetSizer but
-        if you use SetConstraints you should call it manually or otherwise the
-        window layout won't be correctly updated when its size changes.
+        when the window is resized.  lease note that this only happens for the
+        windows usually used to contain children, namely `wx.Panel` and
+        `wx.TopLevelWindow` (and the classes deriving from them).
+
+        This method is called implicitly by `SetSizer` but if you use
+        `SetConstraints` you should call it manually or otherwise the window
+        layout won't be correctly updated when its size changes.
         """
         return _core_.Window_SetAutoLayout(*args, **kwargs)
 
         """
         return _core_.Window_SetAutoLayout(*args, **kwargs)
 
@@ -10157,13 +9562,10 @@ class Window(EvtHandler):
         if hasattr(self, '_setCallbackInfo'):
             self._setCallbackInfo(self, self.__class__)
 
         if hasattr(self, '_setCallbackInfo'):
             self._setCallbackInfo(self, self.__class__)
 
+    def SendSizeEvent(self):
+        self.GetEventHandler().ProcessEvent(wx.SizeEvent((-1,-1)))
 
 
-class WindowPtr(Window):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Window
-_core_.Window_swigregister(WindowPtr)
+_core_.Window_swigregister(Window)
 
 def PreWindow(*args, **kwargs):
     """
 
 def PreWindow(*args, **kwargs):
     """
@@ -10172,54 +9574,53 @@ def PreWindow(*args, **kwargs):
     Precreate a Window for 2-phase creation.
     """
     val = _core_.new_PreWindow(*args, **kwargs)
     Precreate a Window for 2-phase creation.
     """
     val = _core_.new_PreWindow(*args, **kwargs)
-    val.thisown = 1
     return val
 
     return val
 
-def Window_NewControlId(*args, **kwargs):
-    """
+def Window_NewControlId(*args):
+  """
     Window_NewControlId() -> int
 
     Generate a control id for the controls which were not given one.
     """
     Window_NewControlId() -> int
 
     Generate a control id for the controls which were not given one.
     """
-    return _core_.Window_NewControlId(*args, **kwargs)
+  return _core_.Window_NewControlId(*args)
 
 def Window_NextControlId(*args, **kwargs):
 
 def Window_NextControlId(*args, **kwargs):
-    """
+  """
     Window_NextControlId(int winid) -> int
 
     Get the id of the control following the one with the given
     autogenerated) id
     """
     Window_NextControlId(int winid) -> int
 
     Get the id of the control following the one with the given
     autogenerated) id
     """
-    return _core_.Window_NextControlId(*args, **kwargs)
+  return _core_.Window_NextControlId(*args, **kwargs)
 
 def Window_PrevControlId(*args, **kwargs):
 
 def Window_PrevControlId(*args, **kwargs):
-    """
+  """
     Window_PrevControlId(int winid) -> int
 
     Get the id of the control preceding the one with the given
     autogenerated) id
     """
     Window_PrevControlId(int winid) -> int
 
     Get the id of the control preceding the one with the given
     autogenerated) id
     """
-    return _core_.Window_PrevControlId(*args, **kwargs)
+  return _core_.Window_PrevControlId(*args, **kwargs)
 
 
-def Window_FindFocus(*args, **kwargs):
-    """
+def Window_FindFocus(*args):
+  """
     Window_FindFocus() -> Window
 
     Returns the window or control that currently has the keyboard focus,
     or None.
     """
     Window_FindFocus() -> Window
 
     Returns the window or control that currently has the keyboard focus,
     or None.
     """
-    return _core_.Window_FindFocus(*args, **kwargs)
+  return _core_.Window_FindFocus(*args)
 
 
-def Window_GetCapture(*args, **kwargs):
-    """
+def Window_GetCapture(*args):
+  """
     Window_GetCapture() -> Window
 
     Returns the window which currently captures the mouse or None
     """
     Window_GetCapture() -> Window
 
     Returns the window which currently captures the mouse or None
     """
-    return _core_.Window_GetCapture(*args, **kwargs)
+  return _core_.Window_GetCapture(*args)
 
 def Window_GetClassDefaultAttributes(*args, **kwargs):
 
 def Window_GetClassDefaultAttributes(*args, **kwargs):
-    """
+  """
     Window_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
     Get the default attributes for this class.  This is useful if you want
     Window_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
     Get the default attributes for this class.  This is useful if you want
@@ -10233,7 +9634,7 @@ def Window_GetClassDefaultAttributes(*args, **kwargs):
     the returned font. See `wx.Window.SetWindowVariant` for more about
     this.
     """
     the returned font. See `wx.Window.SetWindowVariant` for more about
     this.
     """
-    return _core_.Window_GetClassDefaultAttributes(*args, **kwargs)
+  return _core_.Window_GetClassDefaultAttributes(*args, **kwargs)
 
 def DLG_PNT(win, point_or_x, y=None):
     """
 
 def DLG_PNT(win, point_or_x, y=None):
     """
@@ -10257,7 +9658,7 @@ def DLG_SZE(win, size_width, height=None):
 
 
 def FindWindowById(*args, **kwargs):
 
 
 def FindWindowById(*args, **kwargs):
-    """
+  """
     FindWindowById(long id, Window parent=None) -> Window
 
     Find the first window in the application with the given id. If parent
     FindWindowById(long id, Window parent=None) -> Window
 
     Find the first window in the application with the given id. If parent
@@ -10265,10 +9666,10 @@ def FindWindowById(*args, **kwargs):
     boxes; if non-None, the search will be limited to the given window
     hierarchy. The search is recursive in both cases.
     """
     boxes; if non-None, the search will be limited to the given window
     hierarchy. The search is recursive in both cases.
     """
-    return _core_.FindWindowById(*args, **kwargs)
+  return _core_.FindWindowById(*args, **kwargs)
 
 def FindWindowByName(*args, **kwargs):
 
 def FindWindowByName(*args, **kwargs):
-    """
+  """
     FindWindowByName(String name, Window parent=None) -> Window
 
     Find a window by its name (as given in a window constructor or Create
     FindWindowByName(String name, Window parent=None) -> Window
 
     Find a window by its name (as given in a window constructor or Create
@@ -10279,10 +9680,10 @@ def FindWindowByName(*args, **kwargs):
 
     If no window with such name is found, wx.FindWindowByLabel is called.
     """
 
     If no window with such name is found, wx.FindWindowByLabel is called.
     """
-    return _core_.FindWindowByName(*args, **kwargs)
+  return _core_.FindWindowByName(*args, **kwargs)
 
 def FindWindowByLabel(*args, **kwargs):
 
 def FindWindowByLabel(*args, **kwargs):
-    """
+  """
     FindWindowByLabel(String label, Window parent=None) -> Window
 
     Find a window by its label. Depending on the type of window, the label
     FindWindowByLabel(String label, Window parent=None) -> Window
 
     Find a window by its label. Depending on the type of window, the label
@@ -10291,14 +9692,14 @@ def FindWindowByLabel(*args, **kwargs):
     non-None, the search will be limited to the given window
     hierarchy. The search is recursive in both cases.
     """
     non-None, the search will be limited to the given window
     hierarchy. The search is recursive in both cases.
     """
-    return _core_.FindWindowByLabel(*args, **kwargs)
+  return _core_.FindWindowByLabel(*args, **kwargs)
 
 def Window_FromHWND(*args, **kwargs):
 
 def Window_FromHWND(*args, **kwargs):
-    """Window_FromHWND(Window parent, unsigned long _hWnd) -> Window"""
-    return _core_.Window_FromHWND(*args, **kwargs)
+  """Window_FromHWND(Window parent, unsigned long _hWnd) -> Window"""
+  return _core_.Window_FromHWND(*args, **kwargs)
 
 
-def GetTopLevelWindows(*args, **kwargs):
-    """
+def GetTopLevelWindows(*args):
+  """
     GetTopLevelWindows() -> PyObject
 
     Returns a list of the the application's top-level windows, (frames,
     GetTopLevelWindows() -> PyObject
 
     Returns a list of the the application's top-level windows, (frames,
@@ -10307,19 +9708,16 @@ def GetTopLevelWindows(*args, **kwargs):
     are closed or new top-level windows are created.
 
     """
     are closed or new top-level windows are created.
 
     """
-    return _core_.GetTopLevelWindows(*args, **kwargs)
+  return _core_.GetTopLevelWindows(*args)
 #---------------------------------------------------------------------------
 
 class Validator(EvtHandler):
     """Proxy of C++ Validator class"""
 #---------------------------------------------------------------------------
 
 class Validator(EvtHandler):
     """Proxy of C++ Validator class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxValidator instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> Validator"""
         """__init__(self) -> Validator"""
-        newobj = _core_.new_Validator(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Validator_swiginit(self,_core_.new_Validator(*args, **kwargs))
         self._setOORInfo(self)
 
     def Clone(*args, **kwargs):
         self._setOORInfo(self)
 
     def Clone(*args, **kwargs):
@@ -10356,32 +9754,23 @@ class Validator(EvtHandler):
         return _core_.Validator_SetBellOnError(*args, **kwargs)
 
     SetBellOnError = staticmethod(SetBellOnError)
         return _core_.Validator_SetBellOnError(*args, **kwargs)
 
     SetBellOnError = staticmethod(SetBellOnError)
+_core_.Validator_swigregister(Validator)
 
 
-class ValidatorPtr(Validator):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Validator
-_core_.Validator_swigregister(ValidatorPtr)
-
-def Validator_IsSilent(*args, **kwargs):
-    """Validator_IsSilent() -> bool"""
-    return _core_.Validator_IsSilent(*args, **kwargs)
+def Validator_IsSilent(*args):
+  """Validator_IsSilent() -> bool"""
+  return _core_.Validator_IsSilent(*args)
 
 def Validator_SetBellOnError(*args, **kwargs):
 
 def Validator_SetBellOnError(*args, **kwargs):
-    """Validator_SetBellOnError(int doIt=True)"""
-    return _core_.Validator_SetBellOnError(*args, **kwargs)
+  """Validator_SetBellOnError(int doIt=True)"""
+  return _core_.Validator_SetBellOnError(*args, **kwargs)
 
 class PyValidator(Validator):
     """Proxy of C++ PyValidator class"""
 
 class PyValidator(Validator):
     """Proxy of C++ PyValidator class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPyValidator instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> PyValidator"""
         """__init__(self) -> PyValidator"""
-        newobj = _core_.new_PyValidator(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.PyValidator_swiginit(self,_core_.new_PyValidator(*args, **kwargs))
         
         self._setCallbackInfo(self, PyValidator, 1)
         self._setOORInfo(self)
         
         self._setCallbackInfo(self, PyValidator, 1)
         self._setOORInfo(self)
@@ -10390,26 +9779,17 @@ class PyValidator(Validator):
         """_setCallbackInfo(self, PyObject self, PyObject _class, int incref=True)"""
         return _core_.PyValidator__setCallbackInfo(*args, **kwargs)
 
         """_setCallbackInfo(self, PyObject self, PyObject _class, int incref=True)"""
         return _core_.PyValidator__setCallbackInfo(*args, **kwargs)
 
-
-class PyValidatorPtr(PyValidator):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PyValidator
-_core_.PyValidator_swigregister(PyValidatorPtr)
+_core_.PyValidator_swigregister(PyValidator)
 
 #---------------------------------------------------------------------------
 
 class Menu(EvtHandler):
     """Proxy of C++ Menu class"""
 
 #---------------------------------------------------------------------------
 
 class Menu(EvtHandler):
     """Proxy of C++ Menu class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMenu instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, String title=EmptyString, long style=0) -> Menu"""
         """__init__(self, String title=EmptyString, long style=0) -> Menu"""
-        newobj = _core_.new_Menu(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Menu_swiginit(self,_core_.new_Menu(*args, **kwargs))
         self._setOORInfo(self)
 
     def Append(*args, **kwargs):
         self._setOORInfo(self)
 
     def Append(*args, **kwargs):
@@ -10432,18 +9812,26 @@ class Menu(EvtHandler):
         """AppendMenu(self, int id, String text, Menu submenu, String help=EmptyString) -> MenuItem"""
         return _core_.Menu_AppendMenu(*args, **kwargs)
 
         """AppendMenu(self, int id, String text, Menu submenu, String help=EmptyString) -> MenuItem"""
         return _core_.Menu_AppendMenu(*args, **kwargs)
 
+    def AppendSubMenu(*args, **kwargs):
+        """AppendSubMenu(self, Menu submenu, String text, String help=EmptyString) -> MenuItem"""
+        return _core_.Menu_AppendSubMenu(*args, **kwargs)
+
     def AppendItem(*args, **kwargs):
         """AppendItem(self, MenuItem item) -> MenuItem"""
         return _core_.Menu_AppendItem(*args, **kwargs)
 
     def AppendItem(*args, **kwargs):
         """AppendItem(self, MenuItem item) -> MenuItem"""
         return _core_.Menu_AppendItem(*args, **kwargs)
 
-    def Break(*args, **kwargs):
-        """Break(self)"""
-        return _core_.Menu_Break(*args, **kwargs)
-
     def InsertItem(*args, **kwargs):
         """InsertItem(self, size_t pos, MenuItem item) -> MenuItem"""
         return _core_.Menu_InsertItem(*args, **kwargs)
 
     def InsertItem(*args, **kwargs):
         """InsertItem(self, size_t pos, MenuItem item) -> MenuItem"""
         return _core_.Menu_InsertItem(*args, **kwargs)
 
+    def PrependItem(*args, **kwargs):
+        """PrependItem(self, MenuItem item) -> MenuItem"""
+        return _core_.Menu_PrependItem(*args, **kwargs)
+
+    def Break(*args, **kwargs):
+        """Break(self)"""
+        return _core_.Menu_Break(*args, **kwargs)
+
     def Insert(*args, **kwargs):
         """
         Insert(self, size_t pos, int id, String text, String help=EmptyString, 
     def Insert(*args, **kwargs):
         """
         Insert(self, size_t pos, int id, String text, String help=EmptyString, 
@@ -10467,10 +9855,6 @@ class Menu(EvtHandler):
         """InsertMenu(self, size_t pos, int id, String text, Menu submenu, String help=EmptyString) -> MenuItem"""
         return _core_.Menu_InsertMenu(*args, **kwargs)
 
         """InsertMenu(self, size_t pos, int id, String text, Menu submenu, String help=EmptyString) -> MenuItem"""
         return _core_.Menu_InsertMenu(*args, **kwargs)
 
-    def PrependItem(*args, **kwargs):
-        """PrependItem(self, MenuItem item) -> MenuItem"""
-        return _core_.Menu_PrependItem(*args, **kwargs)
-
     def Prepend(*args, **kwargs):
         """Prepend(self, int id, String text, String help=EmptyString, int kind=ITEM_NORMAL) -> MenuItem"""
         return _core_.Menu_Prepend(*args, **kwargs)
     def Prepend(*args, **kwargs):
         """Prepend(self, int id, String text, String help=EmptyString, int kind=ITEM_NORMAL) -> MenuItem"""
         return _core_.Menu_Prepend(*args, **kwargs)
@@ -10513,7 +9897,9 @@ class Menu(EvtHandler):
 
         Deletes the C++ object this Python object is a proxy for.
         """
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        return _core_.Menu_Destroy(*args, **kwargs)
+        val = _core_.Menu_Destroy(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def DestroyId(*args, **kwargs):
         """
 
     def DestroyId(*args, **kwargs):
         """
@@ -10521,7 +9907,9 @@ class Menu(EvtHandler):
 
         Deletes the C++ object this Python object is a proxy for.
         """
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        return _core_.Menu_DestroyId(*args, **kwargs)
+        val = _core_.Menu_DestroyId(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def DestroyItem(*args, **kwargs):
         """
 
     def DestroyItem(*args, **kwargs):
         """
@@ -10529,7 +9917,9 @@ class Menu(EvtHandler):
 
         Deletes the C++ object this Python object is a proxy for.
         """
 
         Deletes the C++ object this Python object is a proxy for.
         """
-        return _core_.Menu_DestroyItem(*args, **kwargs)
+        val = _core_.Menu_DestroyItem(*args, **kwargs)
+        args[0].thisown = 0
+        return val
 
     def GetMenuItemCount(*args, **kwargs):
         """GetMenuItemCount(self) -> size_t"""
 
     def GetMenuItemCount(*args, **kwargs):
         """GetMenuItemCount(self) -> size_t"""
@@ -10639,27 +10029,18 @@ class Menu(EvtHandler):
         """GetParent(self) -> Menu"""
         return _core_.Menu_GetParent(*args, **kwargs)
 
         """GetParent(self) -> Menu"""
         return _core_.Menu_GetParent(*args, **kwargs)
 
-
-class MenuPtr(Menu):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Menu
-_core_.Menu_swigregister(MenuPtr)
+_core_.Menu_swigregister(Menu)
 DefaultValidator = cvar.DefaultValidator
 
 #---------------------------------------------------------------------------
 
 class MenuBar(Window):
     """Proxy of C++ MenuBar class"""
 DefaultValidator = cvar.DefaultValidator
 
 #---------------------------------------------------------------------------
 
 class MenuBar(Window):
     """Proxy of C++ MenuBar class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMenuBar instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self, long style=0) -> MenuBar"""
         """__init__(self, long style=0) -> MenuBar"""
-        newobj = _core_.new_MenuBar(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MenuBar_swiginit(self,_core_.new_MenuBar(*args, **kwargs))
         self._setOORInfo(self)
 
     def Append(*args, **kwargs):
         self._setOORInfo(self)
 
     def Append(*args, **kwargs):
@@ -10772,38 +10153,31 @@ class MenuBar(Window):
         return _core_.MenuBar_GetAutoWindowMenu(*args, **kwargs)
 
     GetAutoWindowMenu = staticmethod(GetAutoWindowMenu)
         return _core_.MenuBar_GetAutoWindowMenu(*args, **kwargs)
 
     GetAutoWindowMenu = staticmethod(GetAutoWindowMenu)
-
-class MenuBarPtr(MenuBar):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MenuBar
-_core_.MenuBar_swigregister(MenuBarPtr)
+_core_.MenuBar_swigregister(MenuBar)
 
 def MenuBar_SetAutoWindowMenu(*args, **kwargs):
 
 def MenuBar_SetAutoWindowMenu(*args, **kwargs):
-    """MenuBar_SetAutoWindowMenu(bool enable)"""
-    return _core_.MenuBar_SetAutoWindowMenu(*args, **kwargs)
+  """MenuBar_SetAutoWindowMenu(bool enable)"""
+  return _core_.MenuBar_SetAutoWindowMenu(*args, **kwargs)
 
 
-def MenuBar_GetAutoWindowMenu(*args, **kwargs):
-    """MenuBar_GetAutoWindowMenu() -> bool"""
-    return _core_.MenuBar_GetAutoWindowMenu(*args, **kwargs)
+def MenuBar_GetAutoWindowMenu(*args):
+  """MenuBar_GetAutoWindowMenu() -> bool"""
+  return _core_.MenuBar_GetAutoWindowMenu(*args)
 
 #---------------------------------------------------------------------------
 
 class MenuItem(Object):
     """Proxy of C++ MenuItem class"""
 
 #---------------------------------------------------------------------------
 
 class MenuItem(Object):
     """Proxy of C++ MenuItem class"""
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxMenuItem instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Menu parentMenu=None, int id=ID_ANY, String text=EmptyString, 
             String help=EmptyString, int kind=ITEM_NORMAL, 
             Menu subMenu=None) -> MenuItem
         """
         """
         __init__(self, Menu parentMenu=None, int id=ID_ANY, String text=EmptyString, 
             String help=EmptyString, int kind=ITEM_NORMAL, 
             Menu subMenu=None) -> MenuItem
         """
-        newobj = _core_.new_MenuItem(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.MenuItem_swiginit(self,_core_.new_MenuItem(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_MenuItem
+    __del__ = lambda self : None;
     def GetMenu(*args, **kwargs):
         """GetMenu(self) -> Menu"""
         return _core_.MenuItem_GetMenu(*args, **kwargs)
     def GetMenu(*args, **kwargs):
         """GetMenu(self) -> Menu"""
         return _core_.MenuItem_GetMenu(*args, **kwargs)
@@ -10974,21 +10348,15 @@ class MenuItem(Object):
         """ResetOwnerDrawn(self)"""
         return _core_.MenuItem_ResetOwnerDrawn(*args, **kwargs)
 
         """ResetOwnerDrawn(self)"""
         return _core_.MenuItem_ResetOwnerDrawn(*args, **kwargs)
 
-
-class MenuItemPtr(MenuItem):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = MenuItem
-_core_.MenuItem_swigregister(MenuItemPtr)
+_core_.MenuItem_swigregister(MenuItem)
 
 def MenuItem_GetLabelFromText(*args, **kwargs):
 
 def MenuItem_GetLabelFromText(*args, **kwargs):
-    """MenuItem_GetLabelFromText(String text) -> String"""
-    return _core_.MenuItem_GetLabelFromText(*args, **kwargs)
+  """MenuItem_GetLabelFromText(String text) -> String"""
+  return _core_.MenuItem_GetLabelFromText(*args, **kwargs)
 
 
-def MenuItem_GetDefaultMarginWidth(*args, **kwargs):
-    """MenuItem_GetDefaultMarginWidth() -> int"""
-    return _core_.MenuItem_GetDefaultMarginWidth(*args, **kwargs)
+def MenuItem_GetDefaultMarginWidth(*args):
+  """MenuItem_GetDefaultMarginWidth() -> int"""
+  return _core_.MenuItem_GetDefaultMarginWidth(*args)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -10999,9 +10367,9 @@ class Control(Window):
     A control is generally a small window which processes user input
     and/or displays one or more item of data.
     """
     A control is generally a small window which processes user input
     and/or displays one or more item of data.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxControl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, Window parent, int id=-1, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=0, Validator validator=DefaultValidator, 
         """
         __init__(self, Window parent, int id=-1, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=0, Validator validator=DefaultValidator, 
@@ -11010,10 +10378,7 @@ class Control(Window):
         Create a Control.  Normally you should only call this from a subclass'
         __init__ as a plain old wx.Control is not very useful.
         """
         Create a Control.  Normally you should only call this from a subclass'
         __init__ as a plain old wx.Control is not very useful.
         """
-        newobj = _core_.new_Control(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.Control_swiginit(self,_core_.new_Control(*args, **kwargs))
         self._setOORInfo(self)
 
     def Create(*args, **kwargs):
         self._setOORInfo(self)
 
     def Create(*args, **kwargs):
@@ -11045,14 +10410,6 @@ class Control(Window):
         """
         return _core_.Control_GetLabel(*args, **kwargs)
 
         """
         return _core_.Control_GetLabel(*args, **kwargs)
 
-    def SetLabel(*args, **kwargs):
-        """
-        SetLabel(self, String label)
-
-        Sets the item's text.
-        """
-        return _core_.Control_SetLabel(*args, **kwargs)
-
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -11071,13 +10428,7 @@ class Control(Window):
         return _core_.Control_GetClassDefaultAttributes(*args, **kwargs)
 
     GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
         return _core_.Control_GetClassDefaultAttributes(*args, **kwargs)
 
     GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
-
-class ControlPtr(Control):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Control
-_core_.Control_swigregister(ControlPtr)
+_core_.Control_swigregister(Control)
 ControlNameStr = cvar.ControlNameStr
 
 def PreControl(*args, **kwargs):
 ControlNameStr = cvar.ControlNameStr
 
 def PreControl(*args, **kwargs):
@@ -11087,11 +10438,10 @@ def PreControl(*args, **kwargs):
     Precreate a Control control for 2-phase creation
     """
     val = _core_.new_PreControl(*args, **kwargs)
     Precreate a Control control for 2-phase creation
     """
     val = _core_.new_PreControl(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def Control_GetClassDefaultAttributes(*args, **kwargs):
     return val
 
 def Control_GetClassDefaultAttributes(*args, **kwargs):
-    """
+  """
     Control_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
     Get the default attributes for this class.  This is useful if you want
     Control_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
     Get the default attributes for this class.  This is useful if you want
@@ -11105,7 +10455,7 @@ def Control_GetClassDefaultAttributes(*args, **kwargs):
     the returned font. See `wx.Window.SetWindowVariant` for more about
     this.
     """
     the returned font. See `wx.Window.SetWindowVariant` for more about
     this.
     """
-    return _core_.Control_GetClassDefaultAttributes(*args, **kwargs)
+  return _core_.Control_GetClassDefaultAttributes(*args, **kwargs)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -11125,9 +10475,9 @@ class ItemContainer(object):
     optionally, client data associated with them.
 
     """
     optionally, client data associated with them.
 
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxItemContainer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def Append(*args, **kwargs):
         """
         Append(self, String item, PyObject clientData=None) -> int
     def Append(*args, **kwargs):
         """
         Append(self, String item, PyObject clientData=None) -> int
@@ -11151,7 +10501,7 @@ class ItemContainer(object):
 
     def Insert(*args, **kwargs):
         """
 
     def Insert(*args, **kwargs):
         """
-        Insert(self, String item, int pos, PyObject clientData=None) -> int
+        Insert(self, String item, unsigned int pos, PyObject clientData=None) -> int
 
         Insert an item into the control before the item at the ``pos`` index,
         optionally associating some data object with the item.
 
         Insert an item into the control before the item at the ``pos`` index,
         optionally associating some data object with the item.
@@ -11168,7 +10518,7 @@ class ItemContainer(object):
 
     def Delete(*args, **kwargs):
         """
 
     def Delete(*args, **kwargs):
         """
-        Delete(self, int n)
+        Delete(self, unsigned int n)
 
         Deletes the item at the zero-based index 'n' from the control. Note
         that it is an error (signalled by a `wx.PyAssertionError` exception if
 
         Deletes the item at the zero-based index 'n' from the control. Note
         that it is an error (signalled by a `wx.PyAssertionError` exception if
@@ -11179,7 +10529,7 @@ class ItemContainer(object):
 
     def GetClientData(*args, **kwargs):
         """
 
     def GetClientData(*args, **kwargs):
         """
-        GetClientData(self, int n) -> PyObject
+        GetClientData(self, unsigned int n) -> PyObject
 
         Returns the client data associated with the given item, (if any.)
         """
 
         Returns the client data associated with the given item, (if any.)
         """
@@ -11187,7 +10537,7 @@ class ItemContainer(object):
 
     def SetClientData(*args, **kwargs):
         """
 
     def SetClientData(*args, **kwargs):
         """
-        SetClientData(self, int n, PyObject clientData)
+        SetClientData(self, unsigned int n, PyObject clientData)
 
         Associate the given client data with the item at position n.
         """
 
         Associate the given client data with the item at position n.
         """
@@ -11195,7 +10545,7 @@ class ItemContainer(object):
 
     def GetCount(*args, **kwargs):
         """
 
     def GetCount(*args, **kwargs):
         """
-        GetCount(self) -> int
+        GetCount(self) -> unsigned int
 
         Returns the number of items in the control.
         """
 
         Returns the number of items in the control.
         """
@@ -11211,7 +10561,7 @@ class ItemContainer(object):
 
     def GetString(*args, **kwargs):
         """
 
     def GetString(*args, **kwargs):
         """
-        GetString(self, int n) -> String
+        GetString(self, unsigned int n) -> String
 
         Returns the label of the item with the given index.
         """
 
         Returns the label of the item with the given index.
         """
@@ -11223,7 +10573,7 @@ class ItemContainer(object):
 
     def SetString(*args, **kwargs):
         """
 
     def SetString(*args, **kwargs):
         """
-        SetString(self, int n, String s)
+        SetString(self, unsigned int n, String s)
 
         Sets the label for the given item.
         """
 
         Sets the label for the given item.
         """
@@ -11278,13 +10628,7 @@ class ItemContainer(object):
         """
         return _core_.ItemContainer_Select(*args, **kwargs)
 
         """
         return _core_.ItemContainer_Select(*args, **kwargs)
 
-
-class ItemContainerPtr(ItemContainer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ItemContainer
-_core_.ItemContainer_swigregister(ItemContainerPtr)
+_core_.ItemContainer_swigregister(ItemContainer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -11294,32 +10638,29 @@ class ControlWithItems(Control,ItemContainer):
     wx.Control class, and is used for the base class of various controls
     that have items.
     """
     wx.Control class, and is used for the base class of various controls
     that have items.
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxControlWithItems instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-
-class ControlWithItemsPtr(ControlWithItems):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = ControlWithItems
-_core_.ControlWithItems_swigregister(ControlWithItemsPtr)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+_core_.ControlWithItems_swigregister(ControlWithItems)
 
 #---------------------------------------------------------------------------
 
 class SizerItem(Object):
     """
     The wx.SizerItem class is used to track the position, size and other
 
 #---------------------------------------------------------------------------
 
 class SizerItem(Object):
     """
     The wx.SizerItem class is used to track the position, size and other
-    attributes of each item managed by a `wx.Sizer`. In normal usage user
-    code should never need to deal directly with a wx.SizerItem, but
-    custom classes derived from `wx.PySizer` will probably need to use the
-    collection of wx.SizerItems held by wx.Sizer when calculating layout.
+    attributes of each item managed by a `wx.Sizer`. It is not usually
+    necessary to use this class because the sizer elements can also be
+    identified by their positions or window or sizer references but
+    sometimes it may be more convenient to use wx.SizerItem directly.
+    Also, custom classes derived from `wx.PySizer` will probably need to
+    use the collection of wx.SizerItems held by wx.Sizer when calculating
+    layout.
 
     :see: `wx.Sizer`, `wx.GBSizerItem`
     """
 
     :see: `wx.Sizer`, `wx.GBSizerItem`
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSizerItem instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> SizerItem
 
         """
         __init__(self) -> SizerItem
 
@@ -11332,10 +10673,9 @@ class SizerItem(Object):
 
         :see: `wx.SizerItemSpacer`, `wx.SizerItemWindow`, `wx.SizerItemSizer`
         """
 
         :see: `wx.SizerItemSpacer`, `wx.SizerItemWindow`, `wx.SizerItemSizer`
         """
-        newobj = _core_.new_SizerItem(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.SizerItem_swiginit(self,_core_.new_SizerItem(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_SizerItem
+    __del__ = lambda self : None;
     def DeleteWindows(*args, **kwargs):
         """
         DeleteWindows(self)
     def DeleteWindows(*args, **kwargs):
         """
         DeleteWindows(self)
@@ -11607,13 +10947,7 @@ class SizerItem(Object):
         """
         return _core_.SizerItem_SetUserData(*args, **kwargs)
 
         """
         return _core_.SizerItem_SetUserData(*args, **kwargs)
 
-
-class SizerItemPtr(SizerItem):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = SizerItem
-_core_.SizerItem_swigregister(SizerItemPtr)
+_core_.SizerItem_swigregister(SizerItem)
 
 def SizerItemWindow(*args, **kwargs):
     """
 
 def SizerItemWindow(*args, **kwargs):
     """
@@ -11623,7 +10957,6 @@ def SizerItemWindow(*args, **kwargs):
     Constructs a `wx.SizerItem` for tracking a window.
     """
     val = _core_.new_SizerItemWindow(*args, **kwargs)
     Constructs a `wx.SizerItem` for tracking a window.
     """
     val = _core_.new_SizerItemWindow(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def SizerItemSpacer(*args, **kwargs):
     return val
 
 def SizerItemSpacer(*args, **kwargs):
@@ -11634,7 +10967,6 @@ def SizerItemSpacer(*args, **kwargs):
     Constructs a `wx.SizerItem` for tracking a spacer.
     """
     val = _core_.new_SizerItemSpacer(*args, **kwargs)
     Constructs a `wx.SizerItem` for tracking a spacer.
     """
     val = _core_.new_SizerItemSpacer(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def SizerItemSizer(*args, **kwargs):
     return val
 
 def SizerItemSizer(*args, **kwargs):
@@ -11645,7 +10977,6 @@ def SizerItemSizer(*args, **kwargs):
     Constructs a `wx.SizerItem` for tracking a subsizer
     """
     val = _core_.new_SizerItemSizer(*args, **kwargs)
     Constructs a `wx.SizerItem` for tracking a subsizer
     """
     val = _core_.new_SizerItemSizer(*args, **kwargs)
-    val.thisown = 1
     return val
 
 class Sizer(Object):
     return val
 
 class Sizer(Object):
@@ -11653,8 +10984,8 @@ class Sizer(Object):
     wx.Sizer is the abstract base class used for laying out subwindows in
     a window.  You cannot use wx.Sizer directly; instead, you will have to
     use one of the sizer classes derived from it such as `wx.BoxSizer`,
     wx.Sizer is the abstract base class used for laying out subwindows in
     a window.  You cannot use wx.Sizer directly; instead, you will have to
     use one of the sizer classes derived from it such as `wx.BoxSizer`,
-    `wx.StaticBoxSizer`, `wx.NotebookSizer`, `wx.GridSizer`,  `wx.FlexGridSizer`
-    and `wx.GridBagSizer`.
+    `wx.StaticBoxSizer`, `wx.GridSizer`, `wx.FlexGridSizer` and
+    `wx.GridBagSizer`.
 
     The concept implemented by sizers in wxWidgets is closely related to
     layout tools in other GUI toolkits, such as Java's AWT, the GTK
 
     The concept implemented by sizers in wxWidgets is closely related to
     layout tools in other GUI toolkits, such as Java's AWT, the GTK
@@ -11678,9 +11009,11 @@ class Sizer(Object):
     more space than on Windows, then the initial size of a dialog using a
     sizer will automatically be bigger on Mac than on Windows.
     """
     more space than on Windows, then the initial size of a dialog using a
     sizer will automatically be bigger on Mac than on Windows.
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
+    __swig_destroy__ = _core_.delete_Sizer
+    __del__ = lambda self : None;
     def _setOORInfo(*args, **kwargs):
         """_setOORInfo(self, PyObject _self)"""
         return _core_.Sizer__setOORInfo(*args, **kwargs)
     def _setOORInfo(*args, **kwargs):
         """_setOORInfo(self, PyObject _self)"""
         return _core_.Sizer__setOORInfo(*args, **kwargs)
@@ -12029,7 +11362,7 @@ class Sizer(Object):
         """
         IsShown(self, item)
 
         """
         IsShown(self, item)
 
-        Determines if the item is currently shown. sizer.  To make a sizer
+        Determines if the item is currently shown. To make a sizer
         item disappear or reappear, use Show followed by `Layout`.  The *item*
         parameter can be either a window, a sizer, or the zero-based index of
         the item.
         item disappear or reappear, use Show followed by `Layout`.  The *item*
         parameter can be either a window, a sizer, or the zero-based index of
         the item.
@@ -12050,13 +11383,7 @@ class Sizer(Object):
         """
         return _core_.Sizer_ShowItems(*args, **kwargs)
 
         """
         return _core_.Sizer_ShowItems(*args, **kwargs)
 
-
-class SizerPtr(Sizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = Sizer
-_core_.Sizer_swigregister(SizerPtr)
+_core_.Sizer_swigregister(Sizer)
 
 class PySizer(Sizer):
     """
 
 class PySizer(Sizer):
     """
@@ -12100,32 +11427,23 @@ class PySizer(Sizer):
 
 
     """
 
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxPySizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> PySizer
 
         Creates a wx.PySizer.  Must be called from the __init__ in the derived
         class.
         """
         """
         __init__(self) -> PySizer
 
         Creates a wx.PySizer.  Must be called from the __init__ in the derived
         class.
         """
-        newobj = _core_.new_PySizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.PySizer_swiginit(self,_core_.new_PySizer(*args, **kwargs))
         self._setCallbackInfo(self, PySizer);self._setOORInfo(self)
 
     def _setCallbackInfo(*args, **kwargs):
         """_setCallbackInfo(self, PyObject self, PyObject _class)"""
         return _core_.PySizer__setCallbackInfo(*args, **kwargs)
 
         self._setCallbackInfo(self, PySizer);self._setOORInfo(self)
 
     def _setCallbackInfo(*args, **kwargs):
         """_setCallbackInfo(self, PyObject self, PyObject _class)"""
         return _core_.PySizer__setCallbackInfo(*args, **kwargs)
 
-
-class PySizerPtr(PySizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = PySizer
-_core_.PySizer_swigregister(PySizerPtr)
+_core_.PySizer_swigregister(PySizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -12137,9 +11455,9 @@ class BoxSizer(Sizer):
     its items in a simple row or column, depending on the orientation
     parameter passed to the constructor.
     """
     its items in a simple row or column, depending on the orientation
     parameter passed to the constructor.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxBoxSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int orient=HORIZONTAL) -> BoxSizer
 
         """
         __init__(self, int orient=HORIZONTAL) -> BoxSizer
 
@@ -12147,10 +11465,7 @@ class BoxSizer(Sizer):
         or ``wx.HORIZONTAL`` for creating either a column sizer or a row
         sizer.
         """
         or ``wx.HORIZONTAL`` for creating either a column sizer or a row
         sizer.
         """
-        newobj = _core_.new_BoxSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.BoxSizer_swiginit(self,_core_.new_BoxSizer(*args, **kwargs))
         self._setOORInfo(self)
 
     def GetOrientation(*args, **kwargs):
         self._setOORInfo(self)
 
     def GetOrientation(*args, **kwargs):
@@ -12169,13 +11484,7 @@ class BoxSizer(Sizer):
         """
         return _core_.BoxSizer_SetOrientation(*args, **kwargs)
 
         """
         return _core_.BoxSizer_SetOrientation(*args, **kwargs)
 
-
-class BoxSizerPtr(BoxSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = BoxSizer
-_core_.BoxSizer_swigregister(BoxSizerPtr)
+_core_.BoxSizer_swigregister(BoxSizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -12186,9 +11495,9 @@ class StaticBoxSizer(BoxSizer):
     manages.  Note that this static box must be created separately and
     passed to the sizer constructor.
     """
     manages.  Note that this static box must be created separately and
     passed to the sizer constructor.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxStaticBoxSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, StaticBox box, int orient=HORIZONTAL) -> StaticBoxSizer
 
         """
         __init__(self, StaticBox box, int orient=HORIZONTAL) -> StaticBoxSizer
 
@@ -12196,10 +11505,7 @@ class StaticBoxSizer(BoxSizer):
         *orient* as parameters - orient can be either of ``wx.VERTICAL`` or
         ``wx.HORIZONTAL``.
         """
         *orient* as parameters - orient can be either of ``wx.VERTICAL`` or
         ``wx.HORIZONTAL``.
         """
-        newobj = _core_.new_StaticBoxSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.StaticBoxSizer_swiginit(self,_core_.new_StaticBoxSizer(*args, **kwargs))
         self._setOORInfo(self)
 
     def GetStaticBox(*args, **kwargs):
         self._setOORInfo(self)
 
     def GetStaticBox(*args, **kwargs):
@@ -12210,13 +11516,7 @@ class StaticBoxSizer(BoxSizer):
         """
         return _core_.StaticBoxSizer_GetStaticBox(*args, **kwargs)
 
         """
         return _core_.StaticBoxSizer_GetStaticBox(*args, **kwargs)
 
-
-class StaticBoxSizerPtr(StaticBoxSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = StaticBoxSizer
-_core_.StaticBoxSizer_swigregister(StaticBoxSizerPtr)
+_core_.StaticBoxSizer_swigregister(StaticBoxSizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -12237,9 +11537,9 @@ class GridSizer(Sizer):
     then use the `wx.GridBagSizer`.
 
     """
     then use the `wx.GridBagSizer`.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGridSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int rows=1, int cols=0, int vgap=0, int hgap=0) -> GridSizer
 
         """
         __init__(self, int rows=1, int cols=0, int vgap=0, int hgap=0) -> GridSizer
 
@@ -12249,10 +11549,7 @@ class GridSizer(Sizer):
         the sizer, thus making the sizer grow dynamically. *vgap* and *hgap*
         define extra space between all children.
         """
         the sizer, thus making the sizer grow dynamically. *vgap* and *hgap*
         define extra space between all children.
         """
-        newobj = _core_.new_GridSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.GridSizer_swiginit(self,_core_.new_GridSizer(*args, **kwargs))
         self._setOORInfo(self)
 
     def SetCols(*args, **kwargs):
         self._setOORInfo(self)
 
     def SetCols(*args, **kwargs):
@@ -12319,13 +11616,25 @@ class GridSizer(Sizer):
         """
         return _core_.GridSizer_GetHGap(*args, **kwargs)
 
         """
         return _core_.GridSizer_GetHGap(*args, **kwargs)
 
+    def CalcRowsCols(self):
+        """
+        CalcRowsCols() -> (rows, cols)
+
+        Calculates how many rows and columns will be in the sizer based
+        on the current number of items and also the rows, cols specified
+        in the constructor.
+        """
+        nitems = len(self.GetChildren())
+        rows = self.GetRows()
+        cols = self.GetCols()
+        assert rows != 0 or cols != 0, "Grid sizer must have either rows or columns fixed"
+        if cols != 0:
+            rows = (nitems + cols - 1) / cols
+        elif rows != 0:
+            cols = (nitems + rows - 1) / rows
+        return (rows, cols)
 
 
-class GridSizerPtr(GridSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GridSizer
-_core_.GridSizer_swigregister(GridSizerPtr)
+_core_.GridSizer_swigregister(GridSizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -12349,9 +11658,9 @@ class FlexGridSizer(GridSizer):
 
 
     """
 
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxFlexGridSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int rows=1, int cols=0, int vgap=0, int hgap=0) -> FlexGridSizer
 
         """
         __init__(self, int rows=1, int cols=0, int vgap=0, int hgap=0) -> FlexGridSizer
 
@@ -12361,10 +11670,7 @@ class FlexGridSizer(GridSizer):
         the sizer, thus making the sizer grow dynamically. *vgap* and *hgap*
         define extra space between all children.
         """
         the sizer, thus making the sizer grow dynamically. *vgap* and *hgap*
         define extra space between all children.
         """
-        newobj = _core_.new_FlexGridSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.FlexGridSizer_swiginit(self,_core_.new_FlexGridSizer(*args, **kwargs))
         self._setOORInfo(self)
 
     def AddGrowableRow(*args, **kwargs):
         self._setOORInfo(self)
 
     def AddGrowableRow(*args, **kwargs):
@@ -12494,13 +11800,7 @@ class FlexGridSizer(GridSizer):
         """
         return _core_.FlexGridSizer_GetColWidths(*args, **kwargs)
 
         """
         return _core_.FlexGridSizer_GetColWidths(*args, **kwargs)
 
-
-class FlexGridSizerPtr(FlexGridSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = FlexGridSizer
-_core_.FlexGridSizer_swigregister(FlexGridSizerPtr)
+_core_.FlexGridSizer_swigregister(FlexGridSizer)
 
 class StdDialogButtonSizer(BoxSizer):
     """
 
 class StdDialogButtonSizer(BoxSizer):
     """
@@ -12511,14 +11811,11 @@ class StdDialogButtonSizer(BoxSizer):
     will take care of the rest.
 
     """
     will take care of the rest.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxStdDialogButtonSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> StdDialogButtonSizer"""
         """__init__(self) -> StdDialogButtonSizer"""
-        newobj = _core_.new_StdDialogButtonSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.StdDialogButtonSizer_swiginit(self,_core_.new_StdDialogButtonSizer(*args, **kwargs))
     def AddButton(*args, **kwargs):
         """
         AddButton(self, wxButton button)
     def AddButton(*args, **kwargs):
         """
         AddButton(self, wxButton button)
@@ -12570,13 +11867,7 @@ class StdDialogButtonSizer(BoxSizer):
         """GetHelpButton(self) -> wxButton"""
         return _core_.StdDialogButtonSizer_GetHelpButton(*args, **kwargs)
 
         """GetHelpButton(self) -> wxButton"""
         return _core_.StdDialogButtonSizer_GetHelpButton(*args, **kwargs)
 
-
-class StdDialogButtonSizerPtr(StdDialogButtonSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = StdDialogButtonSizer
-_core_.StdDialogButtonSizer_swigregister(StdDialogButtonSizerPtr)
+_core_.StdDialogButtonSizer_swigregister(StdDialogButtonSizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -12588,9 +11879,9 @@ class GBPosition(object):
     integers to a wx.GBPosition, so you can use the more pythonic
     representation of the position nearly transparently in Python code.
     """
     integers to a wx.GBPosition, so you can use the more pythonic
     representation of the position nearly transparently in Python code.
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGBPosition instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int row=0, int col=0) -> GBPosition
 
         """
         __init__(self, int row=0, int col=0) -> GBPosition
 
@@ -12600,10 +11891,9 @@ class GBPosition(object):
         integers to a wx.GBPosition, so you can use the more pythonic
         representation of the position nearly transparently in Python code.
         """
         integers to a wx.GBPosition, so you can use the more pythonic
         representation of the position nearly transparently in Python code.
         """
-        newobj = _core_.new_GBPosition(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.GBPosition_swiginit(self,_core_.new_GBPosition(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_GBPosition
+    __del__ = lambda self : None;
     def GetRow(*args, **kwargs):
         """GetRow(self) -> int"""
         return _core_.GBPosition_GetRow(*args, **kwargs)
     def GetRow(*args, **kwargs):
         """GetRow(self) -> int"""
         return _core_.GBPosition_GetRow(*args, **kwargs)
@@ -12621,11 +11911,19 @@ class GBPosition(object):
         return _core_.GBPosition_SetCol(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
         return _core_.GBPosition_SetCol(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
-        """__eq__(self, GBPosition other) -> bool"""
+        """
+        __eq__(self, PyObject other) -> bool
+
+        Compare GBPosition for equality.
+        """
         return _core_.GBPosition___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         return _core_.GBPosition___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
-        """__ne__(self, GBPosition other) -> bool"""
+        """
+        __ne__(self, PyObject other) -> bool
+
+        Compare GBPosition for inequality.
+        """
         return _core_.GBPosition___ne__(*args, **kwargs)
 
     def Set(*args, **kwargs):
         return _core_.GBPosition___ne__(*args, **kwargs)
 
     def Set(*args, **kwargs):
@@ -12652,13 +11950,7 @@ class GBPosition(object):
     row = property(GetRow, SetRow)
     col = property(GetCol, SetCol)
 
     row = property(GetRow, SetRow)
     col = property(GetCol, SetCol)
 
-
-class GBPositionPtr(GBPosition):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GBPosition
-_core_.GBPosition_swigregister(GBPositionPtr)
+_core_.GBPosition_swigregister(GBPosition)
 
 class GBSpan(object):
     """
 
 class GBSpan(object):
     """
@@ -12669,9 +11961,9 @@ class GBSpan(object):
     nearly transparently in Python code.
 
     """
     nearly transparently in Python code.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGBSpan instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int rowspan=1, int colspan=1) -> GBSpan
 
         """
         __init__(self, int rowspan=1, int colspan=1) -> GBSpan
 
@@ -12679,10 +11971,9 @@ class GBSpan(object):
         colspan. The default is (1,1). (Meaning that the item occupies one
         cell in each direction.
         """
         colspan. The default is (1,1). (Meaning that the item occupies one
         cell in each direction.
         """
-        newobj = _core_.new_GBSpan(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.GBSpan_swiginit(self,_core_.new_GBSpan(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_GBSpan
+    __del__ = lambda self : None;
     def GetRowspan(*args, **kwargs):
         """GetRowspan(self) -> int"""
         return _core_.GBSpan_GetRowspan(*args, **kwargs)
     def GetRowspan(*args, **kwargs):
         """GetRowspan(self) -> int"""
         return _core_.GBSpan_GetRowspan(*args, **kwargs)
@@ -12700,11 +11991,19 @@ class GBSpan(object):
         return _core_.GBSpan_SetColspan(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
         return _core_.GBSpan_SetColspan(*args, **kwargs)
 
     def __eq__(*args, **kwargs):
-        """__eq__(self, GBSpan other) -> bool"""
+        """
+        __eq__(self, PyObject other) -> bool
+
+        Compare wxGBSpan for equality.
+        """
         return _core_.GBSpan___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
         return _core_.GBSpan___eq__(*args, **kwargs)
 
     def __ne__(*args, **kwargs):
-        """__ne__(self, GBSpan other) -> bool"""
+        """
+        __ne__(self, PyObject other) -> bool
+
+        Compare GBSpan for inequality.
+        """
         return _core_.GBSpan___ne__(*args, **kwargs)
 
     def Set(*args, **kwargs):
         return _core_.GBSpan___ne__(*args, **kwargs)
 
     def Set(*args, **kwargs):
@@ -12731,13 +12030,7 @@ class GBSpan(object):
     rowspan = property(GetRowspan, SetRowspan)
     colspan = property(GetColspan, SetColspan)
 
     rowspan = property(GetRowspan, SetRowspan)
     colspan = property(GetColspan, SetColspan)
 
-
-class GBSpanPtr(GBSpan):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GBSpan
-_core_.GBSpan_swigregister(GBSpanPtr)
+_core_.GBSpan_swigregister(GBSpan)
 
 class GBSizerItem(SizerItem):
     """
 
 class GBSizerItem(SizerItem):
     """
@@ -12746,9 +12039,9 @@ class GBSizerItem(SizerItem):
     and how many rows or columns it spans.
 
     """
     and how many rows or columns it spans.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGBSizerItem instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self) -> GBSizerItem
 
         """
         __init__(self) -> GBSizerItem
 
@@ -12759,10 +12052,9 @@ class GBSizerItem(SizerItem):
         You will probably never need to create a wx.GBSizerItem directly as they
         are created automatically when the sizer's Add method is called.
         """
         You will probably never need to create a wx.GBSizerItem directly as they
         are created automatically when the sizer's Add method is called.
         """
-        newobj = _core_.new_GBSizerItem(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.GBSizerItem_swiginit(self,_core_.new_GBSizerItem(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_GBSizerItem
+    __del__ = lambda self : None;
     def GetPos(*args, **kwargs):
         """
         GetPos(self) -> GBPosition
     def GetPos(*args, **kwargs):
         """
         GetPos(self) -> GBPosition
@@ -12844,13 +12136,7 @@ class GBSizerItem(SizerItem):
         """
         return _core_.GBSizerItem_SetGBSizer(*args, **kwargs)
 
         """
         return _core_.GBSizerItem_SetGBSizer(*args, **kwargs)
 
-
-class GBSizerItemPtr(GBSizerItem):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GBSizerItem
-_core_.GBSizerItem_swigregister(GBSizerItemPtr)
+_core_.GBSizerItem_swigregister(GBSizerItem)
 DefaultSpan = cvar.DefaultSpan
 
 def GBSizerItemWindow(*args, **kwargs):
 DefaultSpan = cvar.DefaultSpan
 
 def GBSizerItemWindow(*args, **kwargs):
@@ -12861,7 +12147,6 @@ def GBSizerItemWindow(*args, **kwargs):
     Construct a `wx.GBSizerItem` for a window.
     """
     val = _core_.new_GBSizerItemWindow(*args, **kwargs)
     Construct a `wx.GBSizerItem` for a window.
     """
     val = _core_.new_GBSizerItemWindow(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def GBSizerItemSizer(*args, **kwargs):
     return val
 
 def GBSizerItemSizer(*args, **kwargs):
@@ -12872,7 +12157,6 @@ def GBSizerItemSizer(*args, **kwargs):
     Construct a `wx.GBSizerItem` for a sizer
     """
     val = _core_.new_GBSizerItemSizer(*args, **kwargs)
     Construct a `wx.GBSizerItem` for a sizer
     """
     val = _core_.new_GBSizerItemSizer(*args, **kwargs)
-    val.thisown = 1
     return val
 
 def GBSizerItemSpacer(*args, **kwargs):
     return val
 
 def GBSizerItemSpacer(*args, **kwargs):
@@ -12883,7 +12167,6 @@ def GBSizerItemSpacer(*args, **kwargs):
     Construct a `wx.GBSizerItem` for a spacer.
     """
     val = _core_.new_GBSizerItemSpacer(*args, **kwargs)
     Construct a `wx.GBSizerItem` for a spacer.
     """
     val = _core_.new_GBSizerItemSpacer(*args, **kwargs)
-    val.thisown = 1
     return val
 
 class GridBagSizer(FlexGridSizer):
     return val
 
 class GridBagSizer(FlexGridSizer):
@@ -12896,19 +12179,16 @@ class GridBagSizer(FlexGridSizer):
     positioned at, adjusted for spanning.
 
     """
     positioned at, adjusted for spanning.
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxGridBagSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args, **kwargs):
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
+    def __init__(self, *args, **kwargs): 
         """
         __init__(self, int vgap=0, int hgap=0) -> GridBagSizer
 
         Constructor, with optional parameters to specify the gap between the
         rows and columns.
         """
         """
         __init__(self, int vgap=0, int hgap=0) -> GridBagSizer
 
         Constructor, with optional parameters to specify the gap between the
         rows and columns.
         """
-        newobj = _core_.new_GridBagSizer(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.GridBagSizer_swiginit(self,_core_.new_GridBagSizer(*args, **kwargs))
         self._setOORInfo(self)
 
     def Add(*args, **kwargs):
         self._setOORInfo(self)
 
     def Add(*args, **kwargs):
@@ -13058,13 +12338,7 @@ class GridBagSizer(FlexGridSizer):
         """
         return _core_.GridBagSizer_CheckForIntersectionPos(*args, **kwargs)
 
         """
         return _core_.GridBagSizer_CheckForIntersectionPos(*args, **kwargs)
 
-
-class GridBagSizerPtr(GridBagSizer):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GridBagSizer
-_core_.GridBagSizer_swigregister(GridBagSizerPtr)
+_core_.GridBagSizer_swigregister(GridBagSizer)
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
 
@@ -13096,9 +12370,9 @@ class IndividualLayoutConstraint(Object):
     `wx.LayoutConstraints` instance and use the individual contstraints
     that it contains.
     """
     `wx.LayoutConstraints` instance and use the individual contstraints
     that it contains.
     """
-    def __init__(self): raise RuntimeError, "No constructor defined"
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxIndividualLayoutConstraint instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    def __init__(self): raise AttributeError, "No constructor defined"
+    __repr__ = _swig_repr
     def Set(*args, **kwargs):
         """
         Set(self, int rel, Window otherW, int otherE, int val=0, int marg=wxLAYOUT_DEFAULT_MARGIN)
     def Set(*args, **kwargs):
         """
         Set(self, int rel, Window otherW, int otherE, int val=0, int marg=wxLAYOUT_DEFAULT_MARGIN)
@@ -13273,13 +12547,7 @@ class IndividualLayoutConstraint(Object):
         """
         return _core_.IndividualLayoutConstraint_GetEdge(*args, **kwargs)
 
         """
         return _core_.IndividualLayoutConstraint_GetEdge(*args, **kwargs)
 
-
-class IndividualLayoutConstraintPtr(IndividualLayoutConstraint):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = IndividualLayoutConstraint
-_core_.IndividualLayoutConstraint_swigregister(IndividualLayoutConstraintPtr)
+_core_.IndividualLayoutConstraint_swigregister(IndividualLayoutConstraint)
 
 class LayoutConstraints(Object):
     """
 
 class LayoutConstraints(Object):
     """
@@ -13313,8 +12581,8 @@ class LayoutConstraints(Object):
     :see: `wx.IndividualLayoutConstraint`, `wx.Window.SetConstraints`
 
     """
     :see: `wx.IndividualLayoutConstraint`, `wx.Window.SetConstraints`
 
     """
-    def __repr__(self):
-        return "<%s.%s; proxy of C++ wxLayoutConstraints instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+    __repr__ = _swig_repr
     left = property(_core_.LayoutConstraints_left_get)
     top = property(_core_.LayoutConstraints_top_get)
     right = property(_core_.LayoutConstraints_right_get)
     left = property(_core_.LayoutConstraints_left_get)
     top = property(_core_.LayoutConstraints_top_get)
     right = property(_core_.LayoutConstraints_right_get)
@@ -13323,12 +12591,11 @@ class LayoutConstraints(Object):
     height = property(_core_.LayoutConstraints_height_get)
     centreX = property(_core_.LayoutConstraints_centreX_get)
     centreY = property(_core_.LayoutConstraints_centreY_get)
     height = property(_core_.LayoutConstraints_height_get)
     centreX = property(_core_.LayoutConstraints_centreX_get)
     centreY = property(_core_.LayoutConstraints_centreY_get)
-    def __init__(self, *args, **kwargs):
+    def __init__(self, *args, **kwargs): 
         """__init__(self) -> LayoutConstraints"""
         """__init__(self) -> LayoutConstraints"""
-        newobj = _core_.new_LayoutConstraints(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
+        _core_.LayoutConstraints_swiginit(self,_core_.new_LayoutConstraints(*args, **kwargs))
+    __swig_destroy__ = _core_.delete_LayoutConstraints
+    __del__ = lambda self : None;
     def SatisfyConstraints(*args, **kwargs):
         """SatisfyConstraints(Window win) -> (areSatisfied, noChanges)"""
         return _core_.LayoutConstraints_SatisfyConstraints(*args, **kwargs)
     def SatisfyConstraints(*args, **kwargs):
         """SatisfyConstraints(Window win) -> (areSatisfied, noChanges)"""
         return _core_.LayoutConstraints_SatisfyConstraints(*args, **kwargs)
@@ -13337,13 +12604,7 @@ class LayoutConstraints(Object):
         """AreSatisfied(self) -> bool"""
         return _core_.LayoutConstraints_AreSatisfied(*args, **kwargs)
 
         """AreSatisfied(self) -> bool"""
         return _core_.LayoutConstraints_AreSatisfied(*args, **kwargs)
 
-
-class LayoutConstraintsPtr(LayoutConstraints):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = LayoutConstraints
-_core_.LayoutConstraints_swigregister(LayoutConstraintsPtr)
+_core_.LayoutConstraints_swigregister(LayoutConstraints)
 
 #----------------------------------------------------------------------------
 
 
 #----------------------------------------------------------------------------
 
@@ -13613,7 +12874,7 @@ class __DocFilter:
         obj = self._globals.get(name, None)
         if type(obj) not in [type, types.ClassType, types.FunctionType, types.BuiltinFunctionType]:
             return False
         obj = self._globals.get(name, None)
         if type(obj) not in [type, types.ClassType, types.FunctionType, types.BuiltinFunctionType]:
             return False
-        if name.startswith('_') or name.endswith('Ptr') or name.startswith('EVT'):
+        if name.startswith('_') or name.startswith('EVT') or name.endswith('_swigregister')  or name.endswith('Ptr') :
             return False
         return True
 
             return False
         return True
 
@@ -13627,11 +12888,6 @@ from _windows import *
 from _controls import *
 from _misc import *
 
 from _controls import *
 from _misc import *
 
-
-# Fixup the stock objects since they can't be used yet.  (They will be
-# restored in wx.PyApp.OnInit.)
-_core_._wxPyFixStockObjects()
-
 #----------------------------------------------------------------------------
 #----------------------------------------------------------------------------
 
 #----------------------------------------------------------------------------
 #----------------------------------------------------------------------------