From: John L. <jr...@us...> - 2009-05-14 05:06:30
|
Update of /cvsroot/wxlua/wxLua/modules/wxlua/include In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv9404/wxLua/modules/wxlua/include Modified Files: wxlbind.h Log Message: Allow multiple inheritance in the bindings. Index: wxlbind.h =================================================================== RCS file: /cvsroot/wxlua/wxLua/modules/wxlua/include/wxlbind.h,v retrieving revision 1.85 retrieving revision 1.86 diff -C2 -d -r1.85 -r1.86 *** wxlbind.h 17 Mar 2008 03:05:03 -0000 1.85 --- wxlbind.h 14 May 2009 05:06:21 -0000 1.86 *************** *** 57,60 **** --- 57,67 ---- #define WXLUATYPE_NULL 13 // C++ NULL, is full wxLua type with metatable + // Check that the Lua LUA_TXXX types are what they used to be + #if (LUA_TNONE != -1) || (LUA_TNIL != 0) || (LUA_TBOOLEAN != 1) || (LUA_TLIGHTUSERDATA != 2) || \ + (LUA_TNUMBER != 3) || (LUA_TSTRING != 4) || (LUA_TTABLE != 5) || (LUA_TFUNCTION != 6) || \ + (LUA_TUSERDATA != 7) || (LUA_TTHREAD != 8) + # error "Lua has changed it's LUA_TXXX defines." + #endif + // Is this wxLua type one of the basic Lua types #define WXLUAT_IS_LUAT(wxl_type) (((wxl_type) >= WXLUA_T_MIN) && ((wxl_type) <= WXLUA_T_MAX)) *************** *** 222,230 **** wxClassInfo* classInfo; // Pointer to the wxClassInfo associated with this class or NULL. int* wxluatype; // wxLua class type for userdata ! const char* baseclassName; // Name of base class, or NULL if none. ! wxLuaBindClass* baseclass; // Pointer to the base class or NULL for none. // This member is set after all the bindings are // registered since the base class may be from ! // a different module (a library perhaps). wxLuaBindNumber* enums; // Class member enums or NULL if none --- 229,242 ---- wxClassInfo* classInfo; // Pointer to the wxClassInfo associated with this class or NULL. int* wxluatype; // wxLua class type for userdata ! const char** baseclassNames; // Names of base classes, or NULL if no base classes. ! // This is a NULL terminated array of strings. ! wxLuaBindClass** baseBindClasses;// Pointers to the base classes or NULL for no base classes. // This member is set after all the bindings are // registered since the base class may be from ! // a different module and so it can't be set at compile time. ! // This array is one shorter than the baseclassNames array ! // and you should use it rather than this to check the length ! // since any one of these may be NULL if the ! // library or module with the base class is not loaded. wxLuaBindNumber* enums; // Class member enums or NULL if none *************** *** 589,592 **** --- 601,607 ---- // returns NULL on failure. static const wxLuaBindClass* FindBindClass(int wxl_type); + // Get wxLuaBindClass that has this class name using wxLuaBindClass::name, + // returns NULL on failure. + static const wxLuaBindClass* FindBindClass(const char* className); // Get the first wxLuaBindClass that has this particular wxLuaBindMethod // returns NULL on failure. |