def EVT_GRID_EDITOR_HIDDEN(win, fn):
     win.Connect(-1, -1, wxEVT_GRID_EDITOR_HIDDEN, fn)
 
+def EVT_GRID_EDITOR_CREATED(win, fn):
+    win.Connect(-1, -1, wxEVT_GRID_EDITOR_CREATED, fn)
+
 
 class wxGridCellRendererPtr :
     def __init__(self,this):
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def _setSelf(self, *_args, **_kwargs):
-        val = apply(gridc.wxPyGridCellRenderer__setSelf,(self,) + _args, _kwargs)
+    def _setCallbackInfo(self, *_args, **_kwargs):
+        val = apply(gridc.wxPyGridCellRenderer__setCallbackInfo,(self,) + _args, _kwargs)
         return val
     def base_SetParameters(self, *_args, **_kwargs):
         val = apply(gridc.wxPyGridCellRenderer_base_SetParameters,(self,) + _args, _kwargs)
     def __init__(self,*_args,**_kwargs):
         self.this = apply(gridc.new_wxPyGridCellRenderer,_args,_kwargs)
         self.thisown = 1
-        self._setSelf(self, wxPyGridCellRenderer)
+        self._setCallbackInfo(self, wxPyGridCellRenderer)
 
 
 
 
 
 
+class wxGridCellDateTimeRendererPtr(wxGridCellStringRendererPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGridCellDateTimeRenderer instance at %s>" % (self.this,)
+class wxGridCellDateTimeRenderer(wxGridCellDateTimeRendererPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridCellDateTimeRenderer,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
+class wxGridCellEnumRendererPtr(wxGridCellStringRendererPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGridCellEnumRenderer instance at %s>" % (self.this,)
+class wxGridCellEnumRenderer(wxGridCellEnumRendererPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridCellEnumRenderer,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
+class wxGridCellAutoWrapStringRendererPtr(wxGridCellStringRendererPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGridCellAutoWrapStringRenderer instance at %s>" % (self.this,)
+class wxGridCellAutoWrapStringRenderer(wxGridCellAutoWrapStringRendererPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridCellAutoWrapStringRenderer,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
 class wxGridCellEditorPtr :
     def __init__(self,this):
         self.this = this
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def _setSelf(self, *_args, **_kwargs):
-        val = apply(gridc.wxPyGridCellEditor__setSelf,(self,) + _args, _kwargs)
+    def _setCallbackInfo(self, *_args, **_kwargs):
+        val = apply(gridc.wxPyGridCellEditor__setCallbackInfo,(self,) + _args, _kwargs)
         return val
     def base_SetSize(self, *_args, **_kwargs):
         val = apply(gridc.wxPyGridCellEditor_base_SetSize,(self,) + _args, _kwargs)
     def __init__(self,*_args,**_kwargs):
         self.this = apply(gridc.new_wxPyGridCellEditor,_args,_kwargs)
         self.thisown = 1
-        self._setSelf(self, wxPyGridCellEditor)
+        self._setCallbackInfo(self, wxPyGridCellEditor)
 
 
 
 
 
 
+class wxGridCellEnumEditorPtr(wxGridCellChoiceEditorPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGridCellEnumEditor instance at %s>" % (self.this,)
+class wxGridCellEnumEditor(wxGridCellEnumEditorPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridCellEnumEditor,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
+class wxGridCellAutoWrapStringEditorPtr(wxGridCellTextEditorPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def __repr__(self):
+        return "<C wxGridCellAutoWrapStringEditor instance at %s>" % (self.this,)
+class wxGridCellAutoWrapStringEditor(wxGridCellAutoWrapStringEditorPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridCellAutoWrapStringEditor,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
 class wxGridCellAttrPtr :
     Any = gridc.wxGridCellAttr_Any
     Default = gridc.wxGridCellAttr_Default
         return val
     def GetTextColour(self, *_args, **_kwargs):
         val = apply(gridc.wxGridCellAttr_GetTextColour,(self,) + _args, _kwargs)
-        if val: val = wxColourPtr(val) 
+        if val: val = wxColourPtr(val) ; val.thisown = 1
         return val
     def GetBackgroundColour(self, *_args, **_kwargs):
         val = apply(gridc.wxGridCellAttr_GetBackgroundColour,(self,) + _args, _kwargs)
-        if val: val = wxColourPtr(val) 
+        if val: val = wxColourPtr(val) ; val.thisown = 1
         return val
     def GetFont(self, *_args, **_kwargs):
         val = apply(gridc.wxGridCellAttr_GetFont,(self,) + _args, _kwargs)
-        if val: val = wxFontPtr(val) 
+        if val: val = wxFontPtr(val) ; val.thisown = 1
         return val
     def GetAlignment(self, *_args, **_kwargs):
         val = apply(gridc.wxGridCellAttr_GetAlignment,(self,) + _args, _kwargs)
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def _setSelf(self, *_args, **_kwargs):
-        val = apply(gridc.wxPyGridCellAttrProvider__setSelf,(self,) + _args, _kwargs)
+    def _setCallbackInfo(self, *_args, **_kwargs):
+        val = apply(gridc.wxPyGridCellAttrProvider__setCallbackInfo,(self,) + _args, _kwargs)
         return val
     def base_GetAttr(self, *_args, **_kwargs):
         val = apply(gridc.wxPyGridCellAttrProvider_base_GetAttr,(self,) + _args, _kwargs)
     def __init__(self,*_args,**_kwargs):
         self.this = apply(gridc.new_wxPyGridCellAttrProvider,_args,_kwargs)
         self.thisown = 1
-        self._setSelf(self, wxPyGridCellAttrProvider)
+        self._setCallbackInfo(self, wxPyGridCellAttrProvider)
 
 
 
     def __init__(self,this):
         self.this = this
         self.thisown = 0
-    def _setSelf(self, *_args, **_kwargs):
-        val = apply(gridc.wxPyGridTableBase__setSelf,(self,) + _args, _kwargs)
+    def _setCallbackInfo(self, *_args, **_kwargs):
+        val = apply(gridc.wxPyGridTableBase__setCallbackInfo,(self,) + _args, _kwargs)
         return val
     def Destroy(self, *_args, **_kwargs):
         val = apply(gridc.wxPyGridTableBase_Destroy,(self,) + _args, _kwargs)
     def __init__(self,*_args,**_kwargs):
         self.this = apply(gridc.new_wxPyGridTableBase,_args,_kwargs)
         self.thisown = 1
-        self._setSelf(self, wxPyGridTableBase)
+        self._setCallbackInfo(self, wxPyGridTableBase)
 
 
 
     def DrawTextRectangle(self, *_args, **_kwargs):
         val = apply(gridc.wxGrid_DrawTextRectangle,(self,) + _args, _kwargs)
         return val
-    def StringToLines(self, *_args, **_kwargs):
-        val = apply(gridc.wxGrid_StringToLines,(self,) + _args, _kwargs)
-        return val
     def GetTextBoxSize(self, *_args, **_kwargs):
         val = apply(gridc.wxGrid_GetTextBoxSize,(self,) + _args, _kwargs)
         return val
     def GetBatchCount(self, *_args, **_kwargs):
         val = apply(gridc.wxGrid_GetBatchCount,(self,) + _args, _kwargs)
         return val
+    def ForceRefresh(self, *_args, **_kwargs):
+        val = apply(gridc.wxGrid_ForceRefresh,(self,) + _args, _kwargs)
+        return val
     def IsEditable(self, *_args, **_kwargs):
         val = apply(gridc.wxGrid_IsEditable,(self,) + _args, _kwargs)
         return val
     def __init__(self,*_args,**_kwargs):
         self.this = apply(gridc.new_wxGrid,_args,_kwargs)
         self.thisown = 1
+        self._setOORInfo(self)
 
 
 
 
 
 
+class wxGridEditorCreatedEventPtr(wxCommandEventPtr):
+    def __init__(self,this):
+        self.this = this
+        self.thisown = 0
+    def GetRow(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_GetRow,(self,) + _args, _kwargs)
+        return val
+    def GetCol(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_GetCol,(self,) + _args, _kwargs)
+        return val
+    def GetControl(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_GetControl,(self,) + _args, _kwargs)
+        return val
+    def SetRow(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_SetRow,(self,) + _args, _kwargs)
+        return val
+    def SetCol(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_SetCol,(self,) + _args, _kwargs)
+        return val
+    def SetControl(self, *_args, **_kwargs):
+        val = apply(gridc.wxGridEditorCreatedEvent_SetControl,(self,) + _args, _kwargs)
+        return val
+    def __repr__(self):
+        return "<C wxGridEditorCreatedEvent instance at %s>" % (self.this,)
+class wxGridEditorCreatedEvent(wxGridEditorCreatedEventPtr):
+    def __init__(self,*_args,**_kwargs):
+        self.this = apply(gridc.new_wxGridEditorCreatedEvent,_args,_kwargs)
+        self.thisown = 1
+
+
+
+
 
 
 #-------------- FUNCTION WRAPPERS ------------------
 wxEVT_GRID_SELECT_CELL = gridc.wxEVT_GRID_SELECT_CELL
 wxEVT_GRID_EDITOR_SHOWN = gridc.wxEVT_GRID_EDITOR_SHOWN
 wxEVT_GRID_EDITOR_HIDDEN = gridc.wxEVT_GRID_EDITOR_HIDDEN
+wxEVT_GRID_EDITOR_CREATED = gridc.wxEVT_GRID_EDITOR_CREATED
 
 
 #-------------- USER INCLUDE -----------------------
 wx.wxGridEventPtr                  = wxGridEventPtr
 wx.wxGridSizeEventPtr              = wxGridSizeEventPtr
 wx.wxGridRangeSelectEventPtr       = wxGridRangeSelectEventPtr
+wx.wxGridEditorCreatedEventPtr     = wxGridEditorCreatedEventPtr
 wx.wxGridCellRendererPtr           = wxGridCellRendererPtr
 wx.wxPyGridCellRendererPtr         = wxPyGridCellRendererPtr
 wx.wxGridCellEditorPtr             = wxGridCellEditorPtr