From: John L. <jr...@us...> - 2008-12-02 05:20:08
|
Update of /cvsroot/wxlua/wxLua/modules/wxbind/src In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv23808/wxLua/modules/wxbind/src Modified Files: wxadv_wxladv.cpp wxcore_wxlcore.cpp wxhtml_wxlhtml.cpp Log Message: Check return value of PCall() and only if it's 0 try to get values from Lua in overridden virtual functions. Index: wxadv_wxladv.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxbind/src/wxadv_wxladv.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wxadv_wxladv.cpp 31 Jan 2008 04:34:07 -0000 1.1 --- wxadv_wxladv.cpp 2 Dec 2008 05:20:03 -0000 1.2 *************** *** 47,52 **** m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! m_wxlState.LuaPCall(1, 1); ! numrows = (int)m_wxlState.GetNumberType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 47,53 ---- m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! if (m_wxlState.LuaPCall(1, 1) == 0) ! numrows = (int)m_wxlState.GetNumberType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 68,73 **** m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! m_wxlState.LuaPCall(1, 1); ! numcols = (int)m_wxlState.GetNumberType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 69,75 ---- m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! if (m_wxlState.LuaPCall(1, 1) == 0) ! numcols = (int)m_wxlState.GetNumberType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 91,96 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 93,99 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 114,119 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! val = m_wxlState.GetwxStringType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 117,123 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! val = m_wxlState.GetwxStringType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 158,163 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! val = m_wxlState.GetwxStringType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 162,168 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! val = m_wxlState.GetwxStringType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 184,189 **** m_wxlState.lua_PushString(typeName); ! m_wxlState.LuaPCall(4, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 189,195 ---- m_wxlState.lua_PushString(typeName); ! if (m_wxlState.LuaPCall(4, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 210,215 **** m_wxlState.lua_PushString(typeName); ! m_wxlState.LuaPCall(4, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 216,222 ---- m_wxlState.lua_PushString(typeName); ! if (m_wxlState.LuaPCall(4, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 236,241 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! lResult = m_wxlState.GetIntegerType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 243,249 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! lResult = m_wxlState.GetIntegerType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 261,266 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! dResult = m_wxlState.GetNumberType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 269,275 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! dResult = m_wxlState.GetNumberType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 286,291 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 295,301 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 407,412 **** m_wxlState.lua_PushNumber(numRows); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 417,423 ---- m_wxlState.lua_PushNumber(numRows); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 431,436 **** m_wxlState.lua_PushNumber(numRows); ! m_wxlState.LuaPCall(2, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 442,448 ---- m_wxlState.lua_PushNumber(numRows); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 456,461 **** m_wxlState.lua_PushNumber(numRows); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 468,474 ---- m_wxlState.lua_PushNumber(numRows); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 481,486 **** m_wxlState.lua_PushNumber(numCols); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 494,500 ---- m_wxlState.lua_PushNumber(numCols); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 505,510 **** m_wxlState.lua_PushNumber(numCols); ! m_wxlState.LuaPCall(2, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 519,525 ---- m_wxlState.lua_PushNumber(numCols); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 530,535 **** m_wxlState.lua_PushNumber(numCols); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 545,551 ---- m_wxlState.lua_PushNumber(numCols); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 554,559 **** m_wxlState.lua_PushNumber(row); ! m_wxlState.LuaPCall(2, 1); ! val = m_wxlState.GetwxStringType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 570,576 ---- m_wxlState.lua_PushNumber(row); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! val = m_wxlState.GetwxStringType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 578,583 **** m_wxlState.lua_PushNumber(col); ! m_wxlState.LuaPCall(2, 1); ! val = m_wxlState.GetwxStringType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 595,601 ---- m_wxlState.lua_PushNumber(col); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! val = m_wxlState.GetwxStringType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 649,654 **** m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! m_wxlState.LuaPCall(1, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 667,673 ---- m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaGridTableBase, true); ! if (m_wxlState.LuaPCall(1, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 679,684 **** m_wxlState.lua_PushInteger(kind); ! m_wxlState.LuaPCall(4, 1); ! attr = (wxGridCellAttr*)m_wxlState.GetUserDataType(-1, wxluatype_wxGridCellAttr); m_wxlState.lua_SetTop(nOldTop); } --- 698,704 ---- m_wxlState.lua_PushInteger(kind); ! if (m_wxlState.LuaPCall(4, 1) == 0) ! attr = (wxGridCellAttr*)m_wxlState.GetUserDataType(-1, wxluatype_wxGridCellAttr); ! m_wxlState.lua_SetTop(nOldTop); } Index: wxcore_wxlcore.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxbind/src/wxcore_wxlcore.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** wxcore_wxlcore.cpp 23 Jan 2008 06:43:38 -0000 1.3 --- wxcore_wxlcore.cpp 2 Dec 2008 05:20:03 -0000 1.4 *************** *** 60,69 **** m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaPrintout, true); ! m_wxlState.LuaPCall(1, 4); ! ! *minPage = (int)m_wxlState.GetNumberType(-4); ! *maxPage = (int)m_wxlState.GetNumberType(-3); ! *pageFrom = (int)m_wxlState.GetNumberType(-2); ! *pageTo = (int)m_wxlState.GetNumberType(-1); m_wxlState.lua_SetTop(nOldTop); --- 60,70 ---- m_wxlState.wxluaT_PushUserDataType(this, wxluatype_wxLuaPrintout, true); ! if (m_wxlState.LuaPCall(1, 4) == 0) ! { ! *minPage = (int)m_wxlState.GetNumberType(-4); ! *maxPage = (int)m_wxlState.GetNumberType(-3); ! *pageFrom = (int)m_wxlState.GetNumberType(-2); ! *pageTo = (int)m_wxlState.GetNumberType(-1); ! } m_wxlState.lua_SetTop(nOldTop); *************** *** 91,96 **** m_wxlState.lua_PushNumber(pageNum); ! m_wxlState.LuaPCall(2, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 92,98 ---- m_wxlState.lua_PushNumber(pageNum); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 141,146 **** m_wxlState.lua_PushNumber(endPage); ! m_wxlState.LuaPCall(3, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); //wxPrintf(wxT("wxLuaPrintout::OnBeginDocument 2 call base %d\n"), m_wxlState.GetCallBaseClassFunction()); --- 143,149 ---- m_wxlState.lua_PushNumber(endPage); ! if (m_wxlState.LuaPCall(3, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); //wxPrintf(wxT("wxLuaPrintout::OnBeginDocument 2 call base %d\n"), m_wxlState.GetCallBaseClassFunction()); *************** *** 235,240 **** m_wxlState.lua_PushNumber(pageNum); ! m_wxlState.LuaPCall(2, 1); ! fResult = m_wxlState.GetBooleanType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 238,244 ---- m_wxlState.lua_PushNumber(pageNum); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! fResult = m_wxlState.GetBooleanType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 257,262 **** m_wxlState.lua_PushString(val); ! m_wxlState.LuaPCall(2, 1); ! result = m_wxlState.GetwxStringType(-1); m_wxlState.lua_SetTop(nOldTop); } --- 261,267 ---- m_wxlState.lua_PushString(val); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! result = m_wxlState.GetwxStringType(-1); ! m_wxlState.lua_SetTop(nOldTop); } *************** *** 295,302 **** m_wxlState.lua_PushString(client); ! m_wxlState.LuaPCall(2, 1); ! ! wxSize *s = (wxSize*)m_wxlState.GetUserDataType(-1, wxluatype_wxSize); ! if (s) size = *s; m_wxlState.lua_SetTop(nOldTop); --- 300,308 ---- m_wxlState.lua_PushString(client); ! if (m_wxlState.LuaPCall(2, 1) == 0) ! { ! wxSize *s = (wxSize*)m_wxlState.GetUserDataType(-1, wxluatype_wxSize); ! if (s) size = *s; ! } m_wxlState.lua_SetTop(nOldTop); *************** *** 328,335 **** m_wxlState.wxluaT_PushUserDataType(s, wxluatype_wxSize, true); ! m_wxlState.LuaPCall(4, 1); ! ! wxBitmap *b = (wxBitmap*)m_wxlState.GetUserDataType(-1, wxluatype_wxBitmap); ! if (b) bitmap = *b; m_wxlState.lua_SetTop(nOldTop); --- 334,342 ---- m_wxlState.wxluaT_PushUserDataType(s, wxluatype_wxSize, true); ! if (m_wxlState.LuaPCall(4, 1) == 0) ! { ! wxBitmap *b = (wxBitmap*)m_wxlState.GetUserDataType(-1, wxluatype_wxBitmap); ! if (b) bitmap = *b; ! } m_wxlState.lua_SetTop(nOldTop); Index: wxhtml_wxlhtml.cpp =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxbind/src/wxhtml_wxlhtml.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** wxhtml_wxlhtml.cpp 23 Jan 2008 06:43:38 -0000 1.2 --- wxhtml_wxlhtml.cpp 2 Dec 2008 05:20:03 -0000 1.3 *************** *** 66,71 **** m_wxlState.wxluaT_PushUserDataType((void *) &event, wxluatype_wxMouseEvent, true); ! m_wxlState.LuaPCall(5, 1); ! fResult = (lua_tonumber(L, -1) != 0); lua_settop(L, nOldTop); --- 66,72 ---- m_wxlState.wxluaT_PushUserDataType((void *) &event, wxluatype_wxMouseEvent, true); ! if (m_wxlState.LuaPCall(5, 1) == 0) ! fResult = (lua_tonumber(L, -1) != 0); ! lua_settop(L, nOldTop); |