Looks fine, but you should check the CEGUI coding guidelines - especially the part "Code Formatting Style and Other Tips" (if/while, colons in switch statements, asterisks).
@Georger Araujo: Merge with branch default (what will b cegui 1.0.x) isn't trivial. Would u like to try it yourself, or should I do it? I really don't mind, it's more a question of whether u wanna do it to get more familiar with cegui.
I read about it, and found it is far from trivial -- I would prefer if you did it. I am fairly new to Mercurial, and would like to gain more experience with toy projects/repos before touching something as big and complex as CEGUI.
I've done that with my SDL2 and GLFW application templates. You may want to compare the v0-8 and the default version of the files to get to know what you have to do. Basically, you "just" have adopt the new API which, in our case, should not have changed that much from v0-8 to default.
I checked out the two branches into two completely independent folders. If you don't want to, you need to clean and rebuild each time you change from v0-8 to default and vice-versa. The most common issue is that one does not clean the CMakeCache and re-run cmake while changing from v0-8 to default.
I always use different folders. At the risk of going off-topic, the problem is when I build with CEGUI_BUILD_LUA_GENERATOR and CEGUI_BUILD_LUA_MODULE enabled (the default). When I uncheck those in CMake GUI, it builds successfully. But when they're checked, I get these errors (in VS2013, but VS2015 looks similar):
1>------ Build started: Project: CEGUILuaScriptModule-9999, Configuration: Debug Win32 ------
1> Functor.cpp
1> ScriptModule.cpp
1> lua_CEGUI.cpp
1> required.cpp
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(186): warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(200): error C2065: 'utf32' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(200): error C2143: syntax error : missing ')' before 'constant'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(200): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(211): error C2065: 'utf32' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(211): error C2143: syntax error : missing ')' before 'constant'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(211): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(218): error C2664: 'void lua_getfield(lua_State *,int,const char *)' : cannot convert argument 3 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(234): error C2664: 'void lua_pushstring(lua_State *,const char *)' : cannot convert argument 2 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(248): error C2664: 'void lua_pushstring(lua_State *,const char *)' : cannot convert argument 2 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\Functor.cpp(255): error C2664: 'void lua_getfield(lua_State *,int,const char *)' : cannot convert argument 3 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(96): error C2143: syntax error : missing ';' before '*' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(96): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C2039: 'SchemeIterator' : is not a member of 'CEGUI::SchemeManager' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1> C:\CEGUI-default\cegui\include\CEGUI/SchemeManager.h(60) : see declaration of 'CEGUI::SchemeManager'
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C2146: syntax error : missing ';' before identifier 'SchemeIterator' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): warning C4091: '' : ignored on left of 'int' when no variable is declared (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C2039: 'FontIterator' : is not a member of 'CEGUI::FontManager' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1> C:\CEGUI-default\cegui\include\CEGUI/FontManager.h(60) : see declaration of 'CEGUI::FontManager'
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C2146: syntax error : missing ';' before identifier 'FontIterator' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): warning C4091: '' : ignored on left of 'int' when no variable is declared (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): error C2146: syntax error : missing ';' before identifier 'stringToVector2' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): warning C4183: 'stringToVector2': missing return type; assumed to be a member function returning 'int' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(157): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(157): error C2143: syntax error : missing ',' before '&' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp)
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(38): error C2039: 'MouseEventArgs' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(38): error C2065: 'MouseEventArgs' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(38): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(38): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(39): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(39): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(94): error C2039: 'Rect' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(94): error C2065: 'Rect' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(94): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(95): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(95): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(178): error C2039: 'KeyEventArgs' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(178): error C2065: 'KeyEventArgs' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(178): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(178): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(179): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(179): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(199): error C2039: 'Size' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(199): error C2065: 'Size' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(199): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(200): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(200): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(220): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(220): error C2065: 'Vector2' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(220): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(221): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(221): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(227): error C2039: 'Vector3' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(227): error C2065: 'Vector3' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(227): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(228): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(228): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(248): error C2039: 'Quaternion' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(248): error C2065: 'Quaternion' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(248): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(248): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(249): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(249): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(409): error C2039: 'MouseCursorEventArgs' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(409): error C2065: 'MouseCursorEventArgs' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(409): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(409): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(410): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(410): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(437): error C2039: 'TreeEventArgs' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(437): error C2065: 'TreeEventArgs' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(437): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(437): error C2059: syntax error : ')'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(438): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(438): error C2541: 'delete' : cannot delete objects that are not pointers
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(653): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(653): error C2065: 'Vector2' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(653): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(655): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(657): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(657): error C2227: left of '->d_x' must point to class/struct/union/generic type
1> type is 'unknown-type'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(657): error C2660: 'tolua_pushnumber' : function does not take 1 arguments
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(666): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(666): error C2065: 'Vector2' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(666): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(669): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(673): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(673): error C2227: left of '->d_x' must point to class/struct/union/generic type
1> type is 'unknown-type'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(683): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(683): error C2065: 'Vector2' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(683): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(685): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(687): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(687): error C2227: left of '->d_y' must point to class/struct/union/generic type
1> type is 'unknown-type'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(687): error C2660: 'tolua_pushnumber' : function does not take 1 arguments
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(696): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(696): error C2065: 'Vector2' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(696): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(699): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(703): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(703): error C2227: left of '->d_y' must point to class/struct/union/generic type
1> type is 'unknown-type'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(724): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(724): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(724): error C2143: syntax error : missing ';' before '<'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(725): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(725): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(725): error C2143: syntax error : missing ';' before '<'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(725): error C2086: 'const int Vector2' : redefinition
1> C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(724) : see declaration of 'Vector2'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(727): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(730): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(730): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(733): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(733): error C2061: syntax error : identifier 'Vector2'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(766): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(766): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(766): error C2143: syntax error : missing ';' before '<'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(767): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(767): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(767): error C2143: syntax error : missing ';' before '<'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(767): error C2086: 'const int Vector2' : redefinition
1> C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(766) : see declaration of 'Vector2'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(769): error C2065: 'self' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(772): error C2039: 'Vector2' : is not a member of 'CEGUI'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(772): error C2062: type 'float' unexpected
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\lua_CEGUI.cpp(772): fatal error C1003: error count exceeds 100; stopping compilation
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\ScriptModule.cpp(571): error C2664: 'int luaL_loadbuffer(lua_State *,const char *,size_t,const char *)' : cannot convert argument 4 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\ScriptModule.cpp(600): error C2664: 'void lua_getfield(lua_State *,int,const char *)' : cannot convert argument 3 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(96): error C2143: syntax error : missing ';' before '*' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(96): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\ScriptModule.cpp(663): warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C2039: 'SchemeIterator' : is not a member of 'CEGUI::SchemeManager' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1> C:\CEGUI-default\cegui\include\CEGUI/SchemeManager.h(60) : see declaration of 'CEGUI::SchemeManager'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\ScriptModule.cpp(674): error C2664: 'int luaL_loadbuffer(lua_State *,const char *,size_t,const char *)' : cannot convert argument 2 from 'const CEGUI::String::value_type *' to 'const char *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C2146: syntax error : missing ';' before identifier 'SchemeIterator' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(107): warning C4091: '' : ignored on left of 'int' when no variable is declared (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C2039: 'FontIterator' : is not a member of 'CEGUI::FontManager' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1> C:\CEGUI-default\cegui\include\CEGUI/FontManager.h(60) : see declaration of 'CEGUI::FontManager'
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C2146: syntax error : missing ';' before identifier 'FontIterator' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(108): warning C4091: '' : ignored on left of 'int' when no variable is declared (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): error C2146: syntax error : missing ';' before identifier 'stringToVector2' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142): warning C4183: 'stringToVector2': missing return type; assumed to be a member function returning 'int' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(157): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>c:\cegui-default\cegui\src\scriptmodules\lua\required.h(157): error C2143: syntax error : missing ',' before '&' (C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp)
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(43): error C2440: 'initializing' : cannot convert from 'glm::vec2' to 'std::pair<float,float>'
1> No constructor could take the source type, or constructor overload resolution was ambiguous
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(52): error C2440: 'initializing' : cannot convert from 'glm::vec2' to 'std::pair<float,float>'
1> No constructor could take the source type, or constructor overload resolution was ambiguous
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(73): error C2143: syntax error : missing ';' before '*'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(73): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(73): error C2086: 'int CEGUI::TreeItem' : redefinition
1> c:\cegui-default\cegui\src\scriptmodules\lua\required.h(96) : see declaration of 'CEGUI::TreeItem'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(74): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(75): error C2061: syntax error : identifier 'TreeItem'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(75): warning C4508: 'CEGUI::ceguiLua_createTreeItem' : function should return a value; 'void' return type assumed
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(117): error C2039: 'stringToUint32' : is not a member of 'CEGUI::ceguiLua_PropertyHelper'
1> c:\cegui-default\cegui\src\scriptmodules\lua\required.h(136) : see declaration of 'CEGUI::ceguiLua_PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(135): error C2143: syntax error : missing ';' before 'CEGUI::ceguiLua_PropertyHelper::stringToVector2'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(135): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(136): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(137): error C2923: 'CEGUI::PropertyHelper' : 'Vector2f' is not a valid template type argument for parameter 'T'
1> c:\cegui-default\cegui\src\scriptmodules\lua\required.h(142) : see declaration of 'Vector2f'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(137): error C2955: 'CEGUI::PropertyHelper' : use of class template requires template argument list
1> C:\CEGUI-default\cegui\include\CEGUI/ForwardRefs.h(86) : see declaration of 'CEGUI::PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(137): error C2027: use of undefined type 'CEGUI::PropertyHelper'
1> C:\CEGUI-default\cegui\include\CEGUI/ForwardRefs.h(86) : see declaration of 'CEGUI::PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(137): error C3861: 'fromString': identifier not found
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(201): error C2039: 'uint32ToString' : is not a member of 'CEGUI::ceguiLua_PropertyHelper'
1> c:\cegui-default\cegui\src\scriptmodules\lua\required.h(136) : see declaration of 'CEGUI::ceguiLua_PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(219): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(219): error C2143: syntax error : missing ',' before '&'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(221): error C2923: 'CEGUI::PropertyHelper' : 'Vector2f' is not a valid template type argument for parameter 'T'
1> C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(219) : see declaration of 'Vector2f'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(221): error C2955: 'CEGUI::PropertyHelper' : use of class template requires template argument list
1> C:\CEGUI-default\cegui\include\CEGUI/ForwardRefs.h(86) : see declaration of 'CEGUI::PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(221): error C2027: use of undefined type 'CEGUI::PropertyHelper'
1> C:\CEGUI-default\cegui\include\CEGUI/ForwardRefs.h(86) : see declaration of 'CEGUI::PropertyHelper'
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(221): error C2065: 'val' : undeclared identifier
1>C:\CEGUI-default\cegui\src\ScriptModules\Lua\required.cpp(221): error C3861: 'toString': identifier not found
========== Build: 0 succeeded, 1 failed, 16 up-to-date, 0 skipped ==========
Yes, that's "fine" - the lua bindings have to be generated prior to building CEGUI. But on default branch the API changes to often to always generate the bindings. So, just disable them.
@Lukas Meindl: On branch default the template now runs but the window is empty and I don't know y. Has anything changed between the behaviour of the xml files between branches v0-8 and default? The relevant layout file is datafiles/layouts/application_templates.layout. If I try to add a widget manually it works.
@Lukas Meindl: They don't even build. They haven't been ported to branch default. However the sfml template does work on branch v0-8 so I doubt it's an sfml problem
The layouts did not change format. Some widgets however did change type, behaviour etc., but you say manual adding works. Kinda strange isn't it? I got no clue. The log says nothing worthy?
@Lukas Meindl: Ok, the problem isn't with the layout file, it's specifically with FrameWindow, which doesn't show either when it's defined in a layout file or in code. So if I do:
@Georger Araujo I couldn't solve yet the problem with the application template in brach default. However, it seems not sfml-specific, so we'll investigate it later. I've merged your PR (pull request). Your contribution is highly appreciated!
@Georger Araujo: Thanx! Your PR will b reviewed.
Looks fine, but you should check the CEGUI coding guidelines - especially the part "Code Formatting Style and Other Tips" (if/while, colons in switch statements, asterisks).
@Georger Araujo: Plz add yourself to
doc/doxygen/authors.dox
under "Main Contributors" with a short description of your contribution.Done.
@Georger Araujo: Merge with branch
default
(what will b cegui 1.0.x) isn't trivial. Would u like to try it yourself, or should I do it? I really don't mind, it's more a question of whether u wanna do it to get more familiar with cegui.I read about it, and found it is far from trivial -- I would prefer if you did it. I am fairly new to Mercurial, and would like to gain more experience with toy projects/repos before touching something as big and complex as CEGUI.
I've done that with my SDL2 and GLFW application templates. You may want to compare the v0-8 and the default version of the files to get to know what you have to do. Basically, you "just" have adopt the new API which, in our case, should not have changed that much from v0-8 to default.
First I'd need to learn more about Mercurial, and manage to build the
default
branch -- it fails on both VS2013 and VS2015.I checked out the two branches into two completely independent folders. If you don't want to, you need to clean and rebuild each time you change from v0-8 to default and vice-versa. The most common issue is that one does not clean the CMakeCache and re-run cmake while changing from v0-8 to default.
I always use different folders. At the risk of going off-topic, the problem is when I build with
CEGUI_BUILD_LUA_GENERATOR
andCEGUI_BUILD_LUA_MODULE
enabled (the default). When I uncheck those in CMake GUI, it builds successfully. But when they're checked, I get these errors (in VS2013, but VS2015 looks similar):Yes, that's "fine" - the lua bindings have to be generated prior to building CEGUI. But on default branch the API changes to often to always generate the bindings. So, just disable them.
@Luca Ebach:
Eh, no u haven't.. Anyway I'm taking care of it.
I'm pretty sure I did. From what do you tell that I didn't?
@Luca Ebach: They're identical between branches
default
andv0-8
and they fail to build on branchdefault
..@Lukas Meindl: On branch
default
the template now runs but the window is empty and I don't know y. Has anything changed between the behaviour of the xml files between branchesv0-8
anddefault
? The relevant layout file isdatafiles/layouts/application_templates.layout
. If I try to add a widget manually it works.The other application templates work for you?
@Lukas Meindl: They don't even build. They haven't been ported to branch
default
. However the sfml template does work on branchv0-8
so I doubt it's an sfml problemThe layouts did not change format. Some widgets however did change type, behaviour etc., but you say manual adding works. Kinda strange isn't it? I got no clue. The log says nothing worthy?
@Lukas Meindl: And in the sample framework I do c
FrameWindow
-s.@Lukas Meindl: Ok, the problem isn't with the layout file, it's specifically with
FrameWindow
, which doesn't show either when it's defined in a layout file or in code. So if I do:I see a blank window and I have no clue y. If I add e.g. a
Checkbox
I do see it. Any idea?@Georger Araujo I couldn't solve yet the problem with the application template in brach
default
. However, it seems not sfml-specific, so we'll investigate it later. I've merged your PR (pull request). Your contribution is highly appreciated!Thanks!