-        newobj = _glcanvas.new_GLContext(*args, **kwargs)
-        self.this = newobj.this
-        self.thisown = 1
-        del newobj.thisown
-    def __del__(self, destroy=_glcanvas.delete_GLContext):
-        """__del__(self)"""
-        try:
-            if self.thisown: destroy(self)
-        except: pass
-
-    def SetCurrent(*args, **kwargs):
-        """SetCurrent(self)"""
-        return _glcanvas.GLContext_SetCurrent(*args, **kwargs)
-
-    def SetColour(*args, **kwargs):
-        """SetColour(self, String colour)"""
-        return _glcanvas.GLContext_SetColour(*args, **kwargs)
-
-    def SwapBuffers(*args, **kwargs):
-        """SwapBuffers(self)"""
-        return _glcanvas.GLContext_SwapBuffers(*args, **kwargs)
-
-    def GetWindow(*args, **kwargs):
-        """GetWindow(self) -> Window"""
-        return _glcanvas.GLContext_GetWindow(*args, **kwargs)
-
-
-class GLContextPtr(GLContext):
-    def __init__(self, this):
-        self.this = this
-        if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = GLContext
-_glcanvas.GLContext_swigregister(GLContextPtr)
+        _glcanvas.GLContext_swiginit(self,_glcanvas.new_GLContext(*args, **kwargs))
+    __swig_destroy__ = _glcanvas.delete_GLContext
+    __del__ = lambda self : None;
+_glcanvas.GLContext_swigregister(GLContext)