From: John L. <jr...@us...> - 2008-03-17 03:05:42
|
Update of /cvsroot/wxlua/wxLua/modules/wxbind/src In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv28571/wxLua/modules/wxbind/src Modified Files: wxadv_bind.cpp Log Message: Add unused (as of yet) WXLUAMETHOD_ENCAPSULATE bit for wxLuaMethod struct Add binding function wxlua.ungcobject(void*) (for testing really) Add hack for wxGridCellWorker::GetRef() to see what the ref count is. uses ugly #define to get to it's private m_nRef member. Index: wxadv_bind.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxbind/src/wxadv_bind.cpp,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** wxadv_bind.cpp 26 Feb 2008 14:51:34 -0000 1.13 --- wxadv_bind.cpp 17 Mar 2008 03:05:02 -0000 1.14 *************** *** 6926,6929 **** --- 6926,6945 ---- } + static wxLuaArgType s_wxluatypeArray_wxLua_wxGridCellWorker_GetRef[] = { &wxluatype_wxGridCellWorker, NULL }; + static int LUACALL wxLua_wxGridCellWorker_GetRef(lua_State *L); + static wxLuaBindCFunc s_wxluafunc_wxLua_wxGridCellWorker_GetRef[1] = {{ wxLua_wxGridCellWorker_GetRef, WXLUAMETHOD_METHOD, 1, 1, s_wxluatypeArray_wxLua_wxGridCellWorker_GetRef }}; + // int GetRef() const // wxLua added function to help track if it needs to be refed + static int LUACALL wxLua_wxGridCellWorker_GetRef(lua_State *L) + { + // get this + wxGridCellWorker * self = (wxGridCellWorker *)wxluaT_getuserdatatype(L, 1, wxluatype_wxGridCellWorker); + // call GetRef + int returns = (self->GetRef()); + // push the result number + lua_pushnumber(L, returns); + + return 1; + } + static wxLuaArgType s_wxluatypeArray_wxLua_wxGridCellWorker_IncRef[] = { &wxluatype_wxGridCellWorker, NULL }; static int LUACALL wxLua_wxGridCellWorker_IncRef(lua_State *L); *************** *** 6965,6968 **** --- 6981,6985 ---- wxLuaBindMethod wxGridCellWorker_methods[] = { { "DecRef", WXLUAMETHOD_METHOD, s_wxluafunc_wxLua_wxGridCellWorker_DecRef, 1, NULL }, + { "GetRef", WXLUAMETHOD_METHOD, s_wxluafunc_wxLua_wxGridCellWorker_GetRef, 1, NULL }, { "IncRef", WXLUAMETHOD_METHOD, s_wxluafunc_wxLua_wxGridCellWorker_IncRef, 1, NULL }, { "SetParameters", WXLUAMETHOD_METHOD, s_wxluafunc_wxLua_wxGridCellWorker_SetParameters, 1, NULL }, *************** *** 15275,15295 **** wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellAttr, wxGridCellAttr) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellAttrProvider, wxGridCellAttrProvider) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellAutoWrapStringEditor, wxGridCellAutoWrapStringEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellAutoWrapStringRenderer, wxGridCellAutoWrapStringRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellBoolEditor, wxGridCellBoolEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellBoolRenderer, wxGridCellBoolRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellChoiceEditor, wxGridCellChoiceEditor) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellCoords, wxGridCellCoords) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellDateTimeRenderer, wxGridCellDateTimeRenderer) wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellEditor, wxGridCellEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellEnumEditor, wxGridCellEnumEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellEnumRenderer, wxGridCellEnumRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellFloatEditor, wxGridCellFloatEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellFloatRenderer, wxGridCellFloatRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellNumberEditor, wxGridCellNumberEditor) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellNumberRenderer, wxGridCellNumberRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellRenderer, wxGridCellRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellStringRenderer, wxGridCellStringRenderer) ! wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellTextEditor, wxGridCellTextEditor) wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellWorker, wxGridCellWorker) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridTableMessage, wxGridTableMessage) --- 15292,15312 ---- wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellAttr, wxGridCellAttr) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellAttrProvider, wxGridCellAttrProvider) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellAutoWrapStringEditor, wxGridCellAutoWrapStringEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellAutoWrapStringRenderer, wxGridCellAutoWrapStringRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellBoolEditor, wxGridCellBoolEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellBoolRenderer, wxGridCellBoolRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellChoiceEditor, wxGridCellChoiceEditor) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridCellCoords, wxGridCellCoords) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellDateTimeRenderer, wxGridCellDateTimeRenderer) wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellEditor, wxGridCellEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellEnumEditor, wxGridCellEnumEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellEnumRenderer, wxGridCellEnumRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellFloatEditor, wxGridCellFloatEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellFloatRenderer, wxGridCellFloatRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellNumberEditor, wxGridCellNumberEditor) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellNumberRenderer, wxGridCellNumberRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellRenderer, wxGridCellRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellStringRenderer, wxGridCellStringRenderer) ! wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellTextEditor, wxGridCellTextEditor) wxLUA_IMPLEMENT_wxGridCellWorker_ENCAPSULATION(wxGridCellWorker, wxGridCellWorker) wxLUA_IMPLEMENT_ENCAPSULATION(wxGridTableMessage, wxGridTableMessage) |