]> git.saurik.com Git - wxWidgets.git/commitdiff
Added EVT_GRID_EDITOR_CREATED and wxGridEditorCreatedEvent so the user
authorRobin Dunn <robin@alldunn.com>
Thu, 31 May 2001 06:23:06 +0000 (06:23 +0000)
committerRobin Dunn <robin@alldunn.com>
Thu, 31 May 2001 06:23:06 +0000 (06:23 +0000)
code can get access to the edit control when it is created, (to push
on a custom event handler for example.)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/generic/grid.h
src/generic/grid.cpp
wxPython/CHANGES.txt
wxPython/demo/GridSimple.py
wxPython/src/_gridextras.py
wxPython/src/grid.i
wxPython/src/msw/grid.cpp
wxPython/src/msw/grid.py

index ae7294f8338aec3e23213370edf920847cf24e35..f599587f6cbe8065d0a01499c03a38cf29a1fc94 100644 (file)
@@ -1920,6 +1920,36 @@ protected:
     DECLARE_DYNAMIC_CLASS(wxGridRangeSelectEvent)
 };
 
+
+class WXDLLEXPORT wxGridEditorCreatedEvent : public wxCommandEvent {
+public:
+    wxGridEditorCreatedEvent()
+        : wxCommandEvent()
+        {
+            m_row  = 0;
+            m_col  = 0;
+            m_ctrl = NULL;
+        }
+
+    wxGridEditorCreatedEvent(int id, wxEventType type, wxObject* obj,
+                             int row, int col, wxControl* ctrl);
+
+    int GetRow()                        { return m_row; }
+    int GetCol()                        { return m_col; }
+    wxControl* GetControl()             { return m_ctrl; }
+    void SetRow(int row)                { m_row = row; }
+    void SetCol(int col)                { m_col = col; }
+    void SetControl(wxControl* ctrl)    { m_ctrl = ctrl; }
+
+private:
+    int m_row;
+    int m_col;
+    wxControl* m_ctrl;
+
+    DECLARE_DYNAMIC_CLASS(wxGridEditorCreatedEvent)
+};
+
+
 BEGIN_DECLARE_EVENT_TYPES()
     DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_LEFT_CLICK, 1580)
     DECLARE_EVENT_TYPE(wxEVT_GRID_CELL_RIGHT_CLICK, 1581)
@@ -1936,12 +1966,14 @@ BEGIN_DECLARE_EVENT_TYPES()
     DECLARE_EVENT_TYPE(wxEVT_GRID_SELECT_CELL, 1592)
     DECLARE_EVENT_TYPE(wxEVT_GRID_EDITOR_SHOWN, 1593)
     DECLARE_EVENT_TYPE(wxEVT_GRID_EDITOR_HIDDEN, 1594)
+    DECLARE_EVENT_TYPE(wxEVT_GRID_EDITOR_CREATED, 1595)
 END_DECLARE_EVENT_TYPES()
 
 
 typedef void (wxEvtHandler::*wxGridEventFunction)(wxGridEvent&);
 typedef void (wxEvtHandler::*wxGridSizeEventFunction)(wxGridSizeEvent&);
 typedef void (wxEvtHandler::*wxGridRangeSelectEventFunction)(wxGridRangeSelectEvent&);
+typedef void (wxEvtHandler::*wxGridEditorCreatedEventFunction)(wxGridEditorCreatedEvent&);
 
 #define EVT_GRID_CELL_LEFT_CLICK(fn)     DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_LEFT_CLICK,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ),
 #define EVT_GRID_CELL_RIGHT_CLICK(fn)    DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_CELL_RIGHT_CLICK,   -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ),
@@ -1958,6 +1990,7 @@ typedef void (wxEvtHandler::*wxGridRangeSelectEventFunction)(wxGridRangeSelectEv
 #define EVT_GRID_SELECT_CELL(fn)         DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_SELECT_CELL,        -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ),
 #define EVT_GRID_EDITOR_SHOWN(fn)        DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_EDITOR_SHOWN,       -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ),
 #define EVT_GRID_EDITOR_HIDDEN(fn)       DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_EDITOR_HIDDEN,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL ),
+#define EVT_GRID_EDITOR_CREATED(fn)      DECLARE_EVENT_TABLE_ENTRY( wxEVT_GRID_EDITOR_CREATED,     -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEditorCreatedEventFunction) &fn, NULL ),
 
 
 #if 0  // TODO: implement these ?  others ?
index 83b2116205a87de7d554d7a28d6e1bd4c55c3bec..6a9750f96f44e180704e44fa5b669da1ae6cbf98 100644 (file)
@@ -115,6 +115,7 @@ DEFINE_EVENT_TYPE(wxEVT_GRID_CELL_CHANGE)
 DEFINE_EVENT_TYPE(wxEVT_GRID_SELECT_CELL)
 DEFINE_EVENT_TYPE(wxEVT_GRID_EDITOR_SHOWN)
 DEFINE_EVENT_TYPE(wxEVT_GRID_EDITOR_HIDDEN)
+DEFINE_EVENT_TYPE(wxEVT_GRID_EDITOR_CREATED)
 
 // ----------------------------------------------------------------------------
 // private classes
@@ -1917,7 +1918,7 @@ void wxGridCellAttr::MergeWith(wxGridCellAttr *mergefrom)
     //
     // Maybe add support for merge of Render and Editor?
     if (!HasRenderer() && mergefrom->HasRenderer() )
-    {   
+    {
         m_renderer = mergefrom->m_renderer;
         m_renderer->IncRef();
     }
@@ -2302,18 +2303,18 @@ wxGridCellAttr *wxGridCellAttrProvider::GetAttr(int row, int col,
                     //Also check merge cache, so we don't have to re-merge every time..
                     wxGridCellAttr *attrcell = (wxGridCellAttr *)NULL,
                                    *attrrow = (wxGridCellAttr *)NULL,
-                                   *attrcol = (wxGridCellAttr *)NULL; 
-                
+                                   *attrcol = (wxGridCellAttr *)NULL;
+
                     attrcell = m_data->m_cellAttrs.GetAttr(row, col);
                     attrcol = m_data->m_colAttrs.GetAttr(col);
                     attrrow = m_data->m_rowAttrs.GetAttr(row);
 
-                    if((attrcell != attrrow) && (attrrow !=attrcol) && (attrcell != attrcol)){    
+                    if((attrcell != attrrow) && (attrrow !=attrcol) && (attrcell != attrcol)){
                         // Two or move are non NULL
                         attr = new wxGridCellAttr;
                         attr->SetKind(wxGridCellAttr::Merged);
 
-                        //Order important.. 
+                        //Order important..
                         if(attrcell){
                             attr->MergeWith(attrcell);
                             attrcell->DecRef();
@@ -2335,7 +2336,7 @@ wxGridCellAttr *wxGridCellAttrProvider::GetAttr(int row, int col,
                         // one or none is non null return it or null.
                         if(attrrow) attr = attrrow;
                         if(attrcol) attr = attrcol;
-                        if(attrcell) attr = attrcell;                            
+                        if(attrcell) attr = attrcell;
                     }
                 }
             break;
@@ -3690,7 +3691,7 @@ void wxGrid::Init()
     m_gridLineColour = wxColour( 128, 128, 255 );
     m_gridLinesEnabled = TRUE;
     m_cellHighlightColour = m_gridLineColour;
-    m_cellHighlightPenWidth = 3;
+    m_cellHighlightPenWidth = 2;
     m_cellHighlightROPenWidth = 1;
 
     m_cursorMode  = WXGRID_CURSOR_SELECT_CELL;
@@ -6667,6 +6668,14 @@ void wxGrid::ShowCellEditControl()
             {
                 editor->Create(m_gridWin, -1,
                                new wxGridCellEditorEvtHandler(this, editor));
+
+                wxGridEditorCreatedEvent evt(GetId(),
+                                             wxEVT_GRID_EDITOR_CREATED,
+                                             this,
+                                             row,
+                                             col,
+                                             editor->GetControl());
+                GetEventHandler()->ProcessEvent(evt);
             }
 
             editor->Show( TRUE, attr );
@@ -8669,7 +8678,7 @@ wxRect wxGrid::BlockToDeviceRect( const wxGridCellCoords &topLeft,
 // ------ Grid event classes
 //
 
-IMPLEMENT_DYNAMIC_CLASS( wxGridEvent, wxEvent )
+IMPLEMENT_DYNAMIC_CLASS( wxGridEvent, wxNotifyEvent )
 
 wxGridEvent::wxGridEvent( int id, wxEventType type, wxObject* obj,
                           int row, int col, int x, int y, bool sel,
@@ -8690,7 +8699,7 @@ wxGridEvent::wxGridEvent( int id, wxEventType type, wxObject* obj,
 }
 
 
-IMPLEMENT_DYNAMIC_CLASS( wxGridSizeEvent, wxEvent )
+IMPLEMENT_DYNAMIC_CLASS( wxGridSizeEvent, wxNotifyEvent )
 
 wxGridSizeEvent::wxGridSizeEvent( int id, wxEventType type, wxObject* obj,
                                   int rowOrCol, int x, int y,
@@ -8709,7 +8718,7 @@ wxGridSizeEvent::wxGridSizeEvent( int id, wxEventType type, wxObject* obj,
 }
 
 
-IMPLEMENT_DYNAMIC_CLASS( wxGridRangeSelectEvent, wxEvent )
+IMPLEMENT_DYNAMIC_CLASS( wxGridRangeSelectEvent, wxNotifyEvent )
 
 wxGridRangeSelectEvent::wxGridRangeSelectEvent(int id, wxEventType type, wxObject* obj,
                                                const wxGridCellCoords& topLeft,
@@ -8730,4 +8739,18 @@ wxGridRangeSelectEvent::wxGridRangeSelectEvent(int id, wxEventType type, wxObjec
 }
 
 
+IMPLEMENT_DYNAMIC_CLASS(wxGridEditorCreatedEvent, wxCommandEvent)
+
+wxGridEditorCreatedEvent::wxGridEditorCreatedEvent(int id, wxEventType type,
+                                                   wxObject* obj, int row,
+                                                   int col, wxControl* ctrl)
+    : wxCommandEvent(type, id)
+{
+    SetEventObject(obj);
+    m_row = row;
+    m_col = col;
+    m_ctrl = ctrl;
+}
+
+
 #endif // ifndef wxUSE_NEW_GRID
index 6adf955ac6b3218a4cfb2c5c9693674fe2bf4f6a..ae25b80124d681d7faa60baca6cad758d7be5495 100644 (file)
@@ -2,6 +2,13 @@ CHANGES.txt for wxPython
 
 ----------------------------------------------------------------------
 
+?????
+-----
+Added EVT_GRID_EDITOR_CREATED and wxGridEditorCreatedEvent so the user
+code can get access to the edit control when it is created, (to push
+on a custom event handler for example.)
+
+
 
 2.3.0
 -----
@@ -102,7 +109,8 @@ On other platforms it is equivallent to wxGetDisplaySize.
 
 There is now a wxObject class that most other classes derive from like
 in C++, but the methods provided don't really match but are wxPython
-specific.  It could have been added long ago but OOR required it.
+specific.  It could have been added long ago but OOR required it so it
+finally got done.
 
 Finally added wxPyLineShape.GetLineControlPoints, which has been on my
 list for a while.  The above OOR modification made this easier.
@@ -113,9 +121,9 @@ Added wxWave.
 
 Added the wxPython.lib.mixins package to the library, it is where
 useful mix-in classes can be placed.  Currently there is one to help
-makeing the columns in a wxListCtrl sortable, and the MagicIMageList
-from Mike Fletcher.  If you have any custom code that can be factored
-out of existing classes into a mix-in that would be useful to others
+make the columns in a wxListCtrl sortable, and the MagicIMageList from
+Mike Fletcher.  If you have any custom code that can be factored out
+of existing classes into a mix-in that would be useful to others
 please send it to me for inclusion in this package.
 
 Added a few little sample applications to help newbies to get started
index 215eb584904b2fcf8055bcab794ce79562d013eb..630a4fd43cb0e9e77e8877e90d702a0e0579c29c 100644 (file)
@@ -62,6 +62,7 @@ class SimpleGrid(wxGrid):
 
         EVT_GRID_EDITOR_SHOWN(self, self.OnEditorShown)
         EVT_GRID_EDITOR_HIDDEN(self, self.OnEditorHidden)
+        EVT_GRID_EDITOR_CREATED(self, self.OnEditorCreated)
 
 
     def OnCellLeftClick(self, evt):
@@ -169,6 +170,11 @@ class SimpleGrid(wxGrid):
                        (evt.GetRow(), evt.GetCol(), evt.GetPosition()))
         evt.Skip()
 
+    def OnEditorCreated(self, evt):
+        self.log.write("OnEditorCreated: (%d, %d) %s\n" %
+                       (evt.GetRow(), evt.GetCol(), evt.GetControl()))
+
+
 
 #---------------------------------------------------------------------------
 
index 198ed644ffee9345e0d08e27b2d5bcd965ba1fd1..5bd9c3fe67270820b10cb82e53ed0a37588c28b7 100644 (file)
@@ -5,6 +5,7 @@
 wx.wxGridEventPtr                  = wxGridEventPtr
 wx.wxGridSizeEventPtr              = wxGridSizeEventPtr
 wx.wxGridRangeSelectEventPtr       = wxGridRangeSelectEventPtr
+wx.wxGridEditorCreatedEventPtr     = wxGridEditorCreatedEventPtr
 wx.wxGridCellRendererPtr           = wxGridCellRendererPtr
 wx.wxPyGridCellRendererPtr         = wxPyGridCellRendererPtr
 wx.wxGridCellEditorPtr             = wxGridCellEditorPtr
index 649ccf7534e9f99aca5a3a282f77f14af613ee03..0859bf204adb205fafa8fd95f22933ada69aec51 100644 (file)
@@ -1693,6 +1693,22 @@ public:
     bool        AltDown();
 };
 
+
+class wxGridEditorCreatedEvent : public wxCommandEvent {
+public:
+    wxGridEditorCreatedEvent(int id, wxEventType type, wxObject* obj,
+                             int row, int col, wxControl* ctrl);
+
+    int GetRow();
+    int GetCol();
+    wxControl* GetControl();
+    void SetRow(int row);
+    void SetCol(int col);
+    void SetControl(wxControl* ctrl);
+};
+
+
+
 enum {
     wxEVT_GRID_CELL_LEFT_CLICK,
     wxEVT_GRID_CELL_RIGHT_CLICK,
@@ -1709,6 +1725,7 @@ enum {
     wxEVT_GRID_SELECT_CELL,
     wxEVT_GRID_EDITOR_SHOWN,
     wxEVT_GRID_EDITOR_HIDDEN,
+    wxEVT_GRID_EDITOR_CREATED,
 };
 
 
@@ -1759,6 +1776,9 @@ def EVT_GRID_EDITOR_SHOWN(win, fn):
 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)
+
 "
 
 //---------------------------------------------------------------------------
index 72d648fc42352766567568120a1f8fb21b2ca245..5b4fcc65a6fbce3eea14a02c57d3b171f370b4be 100644 (file)
@@ -13405,7 +13405,265 @@ static PyObject *_wrap_wxGridRangeSelectEvent_AltDown(PyObject *self, PyObject *
     return _resultobj;
 }
 
+static void *SwigwxGridEditorCreatedEventTowxCommandEvent(void *ptr) {
+    wxGridEditorCreatedEvent *src;
+    wxCommandEvent *dest;
+    src = (wxGridEditorCreatedEvent *) ptr;
+    dest = (wxCommandEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxGridEditorCreatedEventTowxEvent(void *ptr) {
+    wxGridEditorCreatedEvent *src;
+    wxEvent *dest;
+    src = (wxGridEditorCreatedEvent *) ptr;
+    dest = (wxEvent *) src;
+    return (void *) dest;
+}
+
+static void *SwigwxGridEditorCreatedEventTowxObject(void *ptr) {
+    wxGridEditorCreatedEvent *src;
+    wxObject *dest;
+    src = (wxGridEditorCreatedEvent *) ptr;
+    dest = (wxObject *) src;
+    return (void *) dest;
+}
+
+#define new_wxGridEditorCreatedEvent(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5) (new wxGridEditorCreatedEvent(_swigarg0,_swigarg1,_swigarg2,_swigarg3,_swigarg4,_swigarg5))
+static PyObject *_wrap_new_wxGridEditorCreatedEvent(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxGridEditorCreatedEvent * _result;
+    int  _arg0;
+    wxEventType  _arg1;
+    wxObject * _arg2;
+    int  _arg3;
+    int  _arg4;
+    wxControl * _arg5;
+    PyObject * _argo2 = 0;
+    PyObject * _argo5 = 0;
+    char *_kwnames[] = { "id","type","obj","row","col","ctrl", NULL };
+    char _ptemp[128];
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"iiOiiO:new_wxGridEditorCreatedEvent",_kwnames,&_arg0,&_arg1,&_argo2,&_arg3,&_arg4,&_argo5)) 
+        return NULL;
+    if (_argo2) {
+        if (_argo2 == Py_None) { _arg2 = NULL; }
+        else if (SWIG_GetPtrObj(_argo2,(void **) &_arg2,"_wxObject_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 3 of new_wxGridEditorCreatedEvent. Expected _wxObject_p.");
+        return NULL;
+        }
+    }
+    if (_argo5) {
+        if (_argo5 == Py_None) { _arg5 = NULL; }
+        else if (SWIG_GetPtrObj(_argo5,(void **) &_arg5,"_wxControl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 6 of new_wxGridEditorCreatedEvent. Expected _wxControl_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxGridEditorCreatedEvent *)new_wxGridEditorCreatedEvent(_arg0,_arg1,_arg2,_arg3,_arg4,_arg5);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    if (_result) {
+        SWIG_MakePtr(_ptemp, (char *) _result,"_wxGridEditorCreatedEvent_p");
+        _resultobj = Py_BuildValue("s",_ptemp);
+    } else {
+        Py_INCREF(Py_None);
+        _resultobj = Py_None;
+    }
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_GetRow(_swigobj)  (_swigobj->GetRow())
+static PyObject *_wrap_wxGridEditorCreatedEvent_GetRow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEditorCreatedEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEditorCreatedEvent_GetRow",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_GetRow. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEditorCreatedEvent_GetRow(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_GetCol(_swigobj)  (_swigobj->GetCol())
+static PyObject *_wrap_wxGridEditorCreatedEvent_GetCol(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    int  _result;
+    wxGridEditorCreatedEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEditorCreatedEvent_GetCol",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_GetCol. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (int )wxGridEditorCreatedEvent_GetCol(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    _resultobj = Py_BuildValue("i",_result);
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_GetControl(_swigobj)  (_swigobj->GetControl())
+static PyObject *_wrap_wxGridEditorCreatedEvent_GetControl(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxControl * _result;
+    wxGridEditorCreatedEvent * _arg0;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"O:wxGridEditorCreatedEvent_GetControl",_kwnames,&_argo0)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_GetControl. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        _result = (wxControl *)wxGridEditorCreatedEvent_GetControl(_arg0);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}{ _resultobj = wxPyMake_wxObject(_result); }
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_SetRow(_swigobj,_swigarg0)  (_swigobj->SetRow(_swigarg0))
+static PyObject *_wrap_wxGridEditorCreatedEvent_SetRow(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxGridEditorCreatedEvent * _arg0;
+    int  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","row", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEditorCreatedEvent_SetRow",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_SetRow. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridEditorCreatedEvent_SetRow(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_SetCol(_swigobj,_swigarg0)  (_swigobj->SetCol(_swigarg0))
+static PyObject *_wrap_wxGridEditorCreatedEvent_SetCol(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxGridEditorCreatedEvent * _arg0;
+    int  _arg1;
+    PyObject * _argo0 = 0;
+    char *_kwnames[] = { "self","col", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"Oi:wxGridEditorCreatedEvent_SetCol",_kwnames,&_argo0,&_arg1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_SetCol. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridEditorCreatedEvent_SetCol(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
+#define wxGridEditorCreatedEvent_SetControl(_swigobj,_swigarg0)  (_swigobj->SetControl(_swigarg0))
+static PyObject *_wrap_wxGridEditorCreatedEvent_SetControl(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject * _resultobj;
+    wxGridEditorCreatedEvent * _arg0;
+    wxControl * _arg1;
+    PyObject * _argo0 = 0;
+    PyObject * _argo1 = 0;
+    char *_kwnames[] = { "self","ctrl", NULL };
+
+    self = self;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,"OO:wxGridEditorCreatedEvent_SetControl",_kwnames,&_argo0,&_argo1)) 
+        return NULL;
+    if (_argo0) {
+        if (_argo0 == Py_None) { _arg0 = NULL; }
+        else if (SWIG_GetPtrObj(_argo0,(void **) &_arg0,"_wxGridEditorCreatedEvent_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 1 of wxGridEditorCreatedEvent_SetControl. Expected _wxGridEditorCreatedEvent_p.");
+        return NULL;
+        }
+    }
+    if (_argo1) {
+        if (_argo1 == Py_None) { _arg1 = NULL; }
+        else if (SWIG_GetPtrObj(_argo1,(void **) &_arg1,"_wxControl_p")) {
+            PyErr_SetString(PyExc_TypeError,"Type error in argument 2 of wxGridEditorCreatedEvent_SetControl. Expected _wxControl_p.");
+        return NULL;
+        }
+    }
+{
+    wxPy_BEGIN_ALLOW_THREADS;
+        wxGridEditorCreatedEvent_SetControl(_arg0,_arg1);
+
+    wxPy_END_ALLOW_THREADS;
+    if (PyErr_Occurred()) return NULL;
+}    Py_INCREF(Py_None);
+    _resultobj = Py_None;
+    return _resultobj;
+}
+
 static PyMethodDef gridcMethods[] = {
+        { "wxGridEditorCreatedEvent_SetControl", (PyCFunction) _wrap_wxGridEditorCreatedEvent_SetControl, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEditorCreatedEvent_SetCol", (PyCFunction) _wrap_wxGridEditorCreatedEvent_SetCol, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEditorCreatedEvent_SetRow", (PyCFunction) _wrap_wxGridEditorCreatedEvent_SetRow, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEditorCreatedEvent_GetControl", (PyCFunction) _wrap_wxGridEditorCreatedEvent_GetControl, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEditorCreatedEvent_GetCol", (PyCFunction) _wrap_wxGridEditorCreatedEvent_GetCol, METH_VARARGS | METH_KEYWORDS },
+        { "wxGridEditorCreatedEvent_GetRow", (PyCFunction) _wrap_wxGridEditorCreatedEvent_GetRow, METH_VARARGS | METH_KEYWORDS },
+        { "new_wxGridEditorCreatedEvent", (PyCFunction) _wrap_new_wxGridEditorCreatedEvent, METH_VARARGS | METH_KEYWORDS },
         { "wxGridRangeSelectEvent_AltDown", (PyCFunction) _wrap_wxGridRangeSelectEvent_AltDown, METH_VARARGS | METH_KEYWORDS },
         { "wxGridRangeSelectEvent_ShiftDown", (PyCFunction) _wrap_wxGridRangeSelectEvent_ShiftDown, METH_VARARGS | METH_KEYWORDS },
         { "wxGridRangeSelectEvent_MetaDown", (PyCFunction) _wrap_wxGridRangeSelectEvent_MetaDown, METH_VARARGS | METH_KEYWORDS },
@@ -13776,6 +14034,7 @@ static PyMethodDef gridcMethods[] = {
  * This table is used by the pointer type-checker
  */
 static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
+    { "_wxEvent","_wxGridEditorCreatedEvent",SwigwxGridEditorCreatedEventTowxEvent},
     { "_wxEvent","_wxGridRangeSelectEvent",SwigwxGridRangeSelectEventTowxEvent},
     { "_wxEvent","_wxGridSizeEvent",SwigwxGridSizeEventTowxEvent},
     { "_wxEvent","_wxGridEvent",SwigwxGridEventTowxEvent},
@@ -13814,6 +14073,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_uint","_int",0},
     { "_uint","_wxWindowID",0},
     { "_wxChar","_char",0},
+    { "_wxCommandEvent","_wxGridEditorCreatedEvent",SwigwxGridEditorCreatedEventTowxCommandEvent},
     { "_wxCommandEvent","_wxGridRangeSelectEvent",SwigwxGridRangeSelectEventTowxCommandEvent},
     { "_wxCommandEvent","_wxGridSizeEvent",SwigwxGridSizeEventTowxCommandEvent},
     { "_wxCommandEvent","_wxGridEvent",SwigwxGridEventTowxCommandEvent},
@@ -13857,6 +14117,7 @@ static struct { char *n1; char *n2; void *(*pcnv)(void *); } _swig_mapping[] = {
     { "_wxGridCellAttrProvider","_wxPyGridCellAttrProvider",SwigwxPyGridCellAttrProviderTowxGridCellAttrProvider},
     { "_unsigned_short","_WXTYPE",0},
     { "_unsigned_short","_short",0},
+    { "_wxObject","_wxGridEditorCreatedEvent",SwigwxGridEditorCreatedEventTowxObject},
     { "_wxObject","_wxGridRangeSelectEvent",SwigwxGridRangeSelectEventTowxObject},
     { "_wxObject","_wxGridSizeEvent",SwigwxGridSizeEventTowxObject},
     { "_wxObject","_wxGridEvent",SwigwxGridEventTowxObject},
@@ -13970,6 +14231,7 @@ SWIGEXPORT(void) initgridc() {
         PyDict_SetItemString(d,"wxEVT_GRID_SELECT_CELL", PyInt_FromLong((long) wxEVT_GRID_SELECT_CELL));
         PyDict_SetItemString(d,"wxEVT_GRID_EDITOR_SHOWN", PyInt_FromLong((long) wxEVT_GRID_EDITOR_SHOWN));
         PyDict_SetItemString(d,"wxEVT_GRID_EDITOR_HIDDEN", PyInt_FromLong((long) wxEVT_GRID_EDITOR_HIDDEN));
+        PyDict_SetItemString(d,"wxEVT_GRID_EDITOR_CREATED", PyInt_FromLong((long) wxEVT_GRID_EDITOR_CREATED));
 
     wxClassInfo::CleanUpClasses();
     wxClassInfo::InitializeClasses();
index 761152947a491b7b199853bb13512b97ab5ed459..723c0e0a0a33cf9cbc5b560226f1a68a70b02997 100644 (file)
@@ -59,6 +59,9 @@ def EVT_GRID_EDITOR_SHOWN(win, fn):
 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):
@@ -1481,6 +1484,38 @@ class wxGridRangeSelectEvent(wxGridRangeSelectEventPtr):
 
 
 
+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 ------------------
@@ -1522,6 +1557,7 @@ wxEVT_GRID_CELL_CHANGE = gridc.wxEVT_GRID_CELL_CHANGE
 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 -----------------------
@@ -1533,6 +1569,7 @@ wxEVT_GRID_EDITOR_HIDDEN = gridc.wxEVT_GRID_EDITOR_HIDDEN
 wx.wxGridEventPtr                  = wxGridEventPtr
 wx.wxGridSizeEventPtr              = wxGridSizeEventPtr
 wx.wxGridRangeSelectEventPtr       = wxGridRangeSelectEventPtr
+wx.wxGridEditorCreatedEventPtr     = wxGridEditorCreatedEventPtr
 wx.wxGridCellRendererPtr           = wxGridCellRendererPtr
 wx.wxPyGridCellRendererPtr         = wxPyGridCellRendererPtr
 wx.wxGridCellEditorPtr             = wxGridCellEditorPtr