Browse Source

AngelScript bindings.

Rokas Kupstys 8 years ago
parent
commit
c93b3b513a

+ 5 - 0
Source/Urho3D/AngelScript/GraphicsAPI.cpp

@@ -408,6 +408,8 @@ static void RegisterRenderPath(asIScriptEngine* engine)
     engine->RegisterObjectMethod("RenderPath", "const RenderPathCommand& get_commands(uint) const", asFUNCTION(RenderPathGetCommand), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("RenderPath", "const RenderPathCommand& get_commands(uint) const", asFUNCTION(RenderPathGetCommand), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("RenderPath", "void set_shaderParameters(const String&in, const Variant&in)", asMETHOD(RenderPath, SetShaderParameter), asCALL_THISCALL);
     engine->RegisterObjectMethod("RenderPath", "void set_shaderParameters(const String&in, const Variant&in)", asMETHOD(RenderPath, SetShaderParameter), asCALL_THISCALL);
     engine->RegisterObjectMethod("RenderPath", "const Variant& get_shaderParameters(const String&in) const", asMETHOD(RenderPath, GetShaderParameter), asCALL_THISCALL);
     engine->RegisterObjectMethod("RenderPath", "const Variant& get_shaderParameters(const String&in) const", asMETHOD(RenderPath, GetShaderParameter), asCALL_THISCALL);
+    engine->RegisterObjectMethod("RenderPath", "bool get_enabled(const String&in) const", asMETHOD(RenderPath, IsEnabled), asCALL_THISCALL);
+    engine->RegisterObjectMethod("RenderPath", "bool get_added(const String&in) const", asMETHOD(RenderPath, IsAdded), asCALL_THISCALL);
 }
 }
 
 
 static void RegisterTextures(asIScriptEngine* engine)
 static void RegisterTextures(asIScriptEngine* engine)
@@ -1927,6 +1929,9 @@ static void RegisterGraphics(asIScriptEngine* engine)
     engine->RegisterObjectMethod("Graphics", "Array<int>@ get_multiSampleLevels() const", asFUNCTION(GraphicsGetMultiSampleLevels), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("Graphics", "Array<int>@ get_multiSampleLevels() const", asFUNCTION(GraphicsGetMultiSampleLevels), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("Graphics", "IntVector2 get_desktopResolution(int) const", asMETHOD(Graphics, GetDesktopResolution), asCALL_THISCALL);
     engine->RegisterObjectMethod("Graphics", "IntVector2 get_desktopResolution(int) const", asMETHOD(Graphics, GetDesktopResolution), asCALL_THISCALL);
     engine->RegisterObjectMethod("Graphics", "int get_monitorCount() const", asFUNCTION(GraphicsGetMonitorCount), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("Graphics", "int get_monitorCount() const", asFUNCTION(GraphicsGetMonitorCount), asCALL_CDECL_OBJLAST);
+    engine->RegisterObjectMethod("Graphics", "int get_currentMonitor() const", asMETHOD(Graphics, GetCurrentMonitor), asCALL_THISCALL);
+    engine->RegisterObjectMethod("Graphics", "bool get_maximized() const", asMETHOD(Graphics, GetMaximized), asCALL_THISCALL);
+    engine->RegisterObjectMethod("Graphics", "Vector3 get_displayDPI(int) const", asMETHOD(Graphics, GetDisplayDPI), asCALL_THISCALL);
     engine->RegisterGlobalFunction("Graphics@+ get_graphics()", asFUNCTION(GetGraphics), asCALL_CDECL);
     engine->RegisterGlobalFunction("Graphics@+ get_graphics()", asFUNCTION(GetGraphics), asCALL_CDECL);
 }
 }
 
 

+ 1 - 0
Source/Urho3D/AngelScript/IOAPI.cpp

@@ -382,6 +382,7 @@ void RegisterFileSystem(asIScriptEngine* engine)
     engine->RegisterObjectMethod("FileSystem", "bool get_executeConsoleCommands() const", asMETHOD(FileSystem, GetExecuteConsoleCommands), asCALL_THISCALL);
     engine->RegisterObjectMethod("FileSystem", "bool get_executeConsoleCommands() const", asMETHOD(FileSystem, GetExecuteConsoleCommands), asCALL_THISCALL);
     engine->RegisterObjectMethod("FileSystem", "String get_programDir() const", asMETHOD(FileSystem, GetProgramDir), asCALL_THISCALL);
     engine->RegisterObjectMethod("FileSystem", "String get_programDir() const", asMETHOD(FileSystem, GetProgramDir), asCALL_THISCALL);
     engine->RegisterObjectMethod("FileSystem", "String get_userDocumentsDir() const", asMETHOD(FileSystem, GetUserDocumentsDir), asCALL_THISCALL);
     engine->RegisterObjectMethod("FileSystem", "String get_userDocumentsDir() const", asMETHOD(FileSystem, GetUserDocumentsDir), asCALL_THISCALL);
+    engine->RegisterObjectMethod("FileSystem", "String get_temporaryDir() const", asMETHOD(FileSystem, GetTemporaryDir), asCALL_THISCALL);
     engine->RegisterGlobalFunction("FileSystem@+ get_fileSystem()", asFUNCTION(GetFileSystem), asCALL_CDECL);
     engine->RegisterGlobalFunction("FileSystem@+ get_fileSystem()", asFUNCTION(GetFileSystem), asCALL_CDECL);
 
 
     engine->RegisterGlobalFunction("String GetPath(const String&in)", asFUNCTION(GetPath), asCALL_CDECL);
     engine->RegisterGlobalFunction("String GetPath(const String&in)", asFUNCTION(GetPath), asCALL_CDECL);

+ 128 - 0
Source/Urho3D/AngelScript/InputAPI.cpp

@@ -185,6 +185,134 @@ static void RegisterInputConstants(asIScriptEngine* engine)
     engine->RegisterGlobalProperty("const int KEY_RCTRL", (void*)&KEY_RCTRL);
     engine->RegisterGlobalProperty("const int KEY_RCTRL", (void*)&KEY_RCTRL);
     engine->RegisterGlobalProperty("const int KEY_LALT", (void*)&KEY_LALT);
     engine->RegisterGlobalProperty("const int KEY_LALT", (void*)&KEY_LALT);
     engine->RegisterGlobalProperty("const int KEY_RALT", (void*)&KEY_RALT);
     engine->RegisterGlobalProperty("const int KEY_RALT", (void*)&KEY_RALT);
+    engine->RegisterGlobalProperty("const int KEY_AC_BACK", (void*)&KEY_AC_BACK);
+    engine->RegisterGlobalProperty("const int KEY_AC_BOOKMARKS", (void*)&KEY_AC_BOOKMARKS);
+    engine->RegisterGlobalProperty("const int KEY_AC_FORWARD", (void*)&KEY_AC_FORWARD);
+    engine->RegisterGlobalProperty("const int KEY_AC_HOME", (void*)&KEY_AC_HOME);
+    engine->RegisterGlobalProperty("const int KEY_AC_REFRESH", (void*)&KEY_AC_REFRESH);
+    engine->RegisterGlobalProperty("const int KEY_AC_SEARCH", (void*)&KEY_AC_SEARCH);
+    engine->RegisterGlobalProperty("const int KEY_AC_STOP", (void*)&KEY_AC_STOP);
+    engine->RegisterGlobalProperty("const int KEY_AGAIN", (void*)&KEY_AGAIN);
+    engine->RegisterGlobalProperty("const int KEY_ALTERASE", (void*)&KEY_ALTERASE);
+    engine->RegisterGlobalProperty("const int KEY_AMPERSAND", (void*)&KEY_AMPERSAND);
+    engine->RegisterGlobalProperty("const int KEY_ASTERISK", (void*)&KEY_ASTERISK);
+    engine->RegisterGlobalProperty("const int KEY_AT", (void*)&KEY_AT);
+    engine->RegisterGlobalProperty("const int KEY_AUDIOMUTE", (void*)&KEY_AUDIOMUTE);
+    engine->RegisterGlobalProperty("const int KEY_AUDIONEXT", (void*)&KEY_AUDIONEXT);
+    engine->RegisterGlobalProperty("const int KEY_AUDIOPLAY", (void*)&KEY_AUDIOPLAY);
+    engine->RegisterGlobalProperty("const int KEY_AUDIOPREV", (void*)&KEY_AUDIOPREV);
+    engine->RegisterGlobalProperty("const int KEY_AUDIOSTOP", (void*)&KEY_AUDIOSTOP);
+    engine->RegisterGlobalProperty("const int KEY_BACKQUOTE", (void*)&KEY_BACKQUOTE);
+    engine->RegisterGlobalProperty("const int KEY_BACKSLASH", (void*)&KEY_BACKSLASH);
+    engine->RegisterGlobalProperty("const int KEY_BRIGHTNESSDOWN", (void*)&KEY_BRIGHTNESSDOWN);
+    engine->RegisterGlobalProperty("const int KEY_BRIGHTNESSUP", (void*)&KEY_BRIGHTNESSUP);
+    engine->RegisterGlobalProperty("const int KEY_CALCULATOR", (void*)&KEY_CALCULATOR);
+    engine->RegisterGlobalProperty("const int KEY_CANCEL", (void*)&KEY_CANCEL);
+    engine->RegisterGlobalProperty("const int KEY_CARET", (void*)&KEY_CARET);
+    engine->RegisterGlobalProperty("const int KEY_CLEAR", (void*)&KEY_CLEAR);
+    engine->RegisterGlobalProperty("const int KEY_CLEARAGAIN", (void*)&KEY_CLEARAGAIN);
+    engine->RegisterGlobalProperty("const int KEY_COLON", (void*)&KEY_COLON);
+    engine->RegisterGlobalProperty("const int KEY_COMMA", (void*)&KEY_COMMA);
+    engine->RegisterGlobalProperty("const int KEY_COMPUTER", (void*)&KEY_COMPUTER);
+    engine->RegisterGlobalProperty("const int KEY_COPY", (void*)&KEY_COPY);
+    engine->RegisterGlobalProperty("const int KEY_CRSEL", (void*)&KEY_CRSEL);
+    engine->RegisterGlobalProperty("const int KEY_CURRENCYSUBUNIT", (void*)&KEY_CURRENCYSUBUNIT);
+    engine->RegisterGlobalProperty("const int KEY_CURRENCYUNIT", (void*)&KEY_CURRENCYUNIT);
+    engine->RegisterGlobalProperty("const int KEY_CUT", (void*)&KEY_CUT);
+    engine->RegisterGlobalProperty("const int KEY_DECIMALSEPARATOR", (void*)&KEY_DECIMALSEPARATOR);
+    engine->RegisterGlobalProperty("const int KEY_DISPLAYSWITCH", (void*)&KEY_DISPLAYSWITCH);
+    engine->RegisterGlobalProperty("const int KEY_DOLLAR", (void*)&KEY_DOLLAR);
+    engine->RegisterGlobalProperty("const int KEY_EJECT", (void*)&KEY_EJECT);
+    engine->RegisterGlobalProperty("const int KEY_EQUALS", (void*)&KEY_EQUALS);
+    engine->RegisterGlobalProperty("const int KEY_EXCLAIM", (void*)&KEY_EXCLAIM);
+    engine->RegisterGlobalProperty("const int KEY_EXSEL", (void*)&KEY_EXSEL);
+    engine->RegisterGlobalProperty("const int KEY_FIND", (void*)&KEY_FIND);
+    engine->RegisterGlobalProperty("const int KEY_GREATER", (void*)&KEY_GREATER);
+    engine->RegisterGlobalProperty("const int KEY_HASH", (void*)&KEY_HASH);
+    engine->RegisterGlobalProperty("const int KEY_HELP", (void*)&KEY_HELP);
+    engine->RegisterGlobalProperty("const int KEY_KBDILLUMDOWN", (void*)&KEY_KBDILLUMDOWN);
+    engine->RegisterGlobalProperty("const int KEY_KBDILLUMTOGGLE", (void*)&KEY_KBDILLUMTOGGLE);
+    engine->RegisterGlobalProperty("const int KEY_KBDILLUMUP", (void*)&KEY_KBDILLUMUP);
+    engine->RegisterGlobalProperty("const int KEY_KP_00", (void*)&KEY_KP_00);
+    engine->RegisterGlobalProperty("const int KEY_KP_000", (void*)&KEY_KP_000);
+    engine->RegisterGlobalProperty("const int KEY_KP_A", (void*)&KEY_KP_A);
+    engine->RegisterGlobalProperty("const int KEY_KP_AMPERSAND", (void*)&KEY_KP_AMPERSAND);
+    engine->RegisterGlobalProperty("const int KEY_KP_AT", (void*)&KEY_KP_AT);
+    engine->RegisterGlobalProperty("const int KEY_KP_B", (void*)&KEY_KP_B);
+    engine->RegisterGlobalProperty("const int KEY_KP_BACKSPACE", (void*)&KEY_KP_BACKSPACE);
+    engine->RegisterGlobalProperty("const int KEY_KP_BINARY", (void*)&KEY_KP_BINARY);
+    engine->RegisterGlobalProperty("const int KEY_KP_C", (void*)&KEY_KP_C);
+    engine->RegisterGlobalProperty("const int KEY_KP_CLEAR", (void*)&KEY_KP_CLEAR);
+    engine->RegisterGlobalProperty("const int KEY_KP_CLEARENTRY", (void*)&KEY_KP_CLEARENTRY);
+    engine->RegisterGlobalProperty("const int KEY_KP_COLON", (void*)&KEY_KP_COLON);
+    engine->RegisterGlobalProperty("const int KEY_KP_COMMA", (void*)&KEY_KP_COMMA);
+    engine->RegisterGlobalProperty("const int KEY_KP_D", (void*)&KEY_KP_D);
+    engine->RegisterGlobalProperty("const int KEY_KP_DBLAMPERSAND", (void*)&KEY_KP_DBLAMPERSAND);
+    engine->RegisterGlobalProperty("const int KEY_KP_DBLVERTICALBAR", (void*)&KEY_KP_DBLVERTICALBAR);
+    engine->RegisterGlobalProperty("const int KEY_KP_DECIMAL", (void*)&KEY_KP_DECIMAL);
+    engine->RegisterGlobalProperty("const int KEY_KP_E", (void*)&KEY_KP_E);
+    engine->RegisterGlobalProperty("const int KEY_KP_EQUALS", (void*)&KEY_KP_EQUALS);
+    engine->RegisterGlobalProperty("const int KEY_KP_EQUALSAS400", (void*)&KEY_KP_EQUALSAS400);
+    engine->RegisterGlobalProperty("const int KEY_KP_EXCLAM", (void*)&KEY_KP_EXCLAM);
+    engine->RegisterGlobalProperty("const int KEY_KP_F", (void*)&KEY_KP_F);
+    engine->RegisterGlobalProperty("const int KEY_KP_GREATER", (void*)&KEY_KP_GREATER);
+    engine->RegisterGlobalProperty("const int KEY_KP_HASH", (void*)&KEY_KP_HASH);
+    engine->RegisterGlobalProperty("const int KEY_KP_HEXADECIMAL", (void*)&KEY_KP_HEXADECIMAL);
+    engine->RegisterGlobalProperty("const int KEY_KP_LEFTBRACE", (void*)&KEY_KP_LEFTBRACE);
+    engine->RegisterGlobalProperty("const int KEY_KP_LEFTPAREN", (void*)&KEY_KP_LEFTPAREN);
+    engine->RegisterGlobalProperty("const int KEY_KP_LESS", (void*)&KEY_KP_LESS);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMADD", (void*)&KEY_KP_MEMADD);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMCLEAR", (void*)&KEY_KP_MEMCLEAR);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMDIVIDE", (void*)&KEY_KP_MEMDIVIDE);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMMULTIPLY", (void*)&KEY_KP_MEMMULTIPLY);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMRECALL", (void*)&KEY_KP_MEMRECALL);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMSTORE", (void*)&KEY_KP_MEMSTORE);
+    engine->RegisterGlobalProperty("const int KEY_KP_MEMSUBTRACT", (void*)&KEY_KP_MEMSUBTRACT);
+    engine->RegisterGlobalProperty("const int KEY_KP_OCTAL", (void*)&KEY_KP_OCTAL);
+    engine->RegisterGlobalProperty("const int KEY_KP_PERCENT", (void*)&KEY_KP_PERCENT);
+    engine->RegisterGlobalProperty("const int KEY_KP_PLUSMINUS", (void*)&KEY_KP_PLUSMINUS);
+    engine->RegisterGlobalProperty("const int KEY_KP_POWER", (void*)&KEY_KP_POWER);
+    engine->RegisterGlobalProperty("const int KEY_KP_RIGHTBRACE", (void*)&KEY_KP_RIGHTBRACE);
+    engine->RegisterGlobalProperty("const int KEY_KP_RIGHTPAREN", (void*)&KEY_KP_RIGHTPAREN);
+    engine->RegisterGlobalProperty("const int KEY_KP_SPACE", (void*)&KEY_KP_SPACE);
+    engine->RegisterGlobalProperty("const int KEY_KP_TAB", (void*)&KEY_KP_TAB);
+    engine->RegisterGlobalProperty("const int KEY_KP_VERTICALBAR", (void*)&KEY_KP_VERTICALBAR);
+    engine->RegisterGlobalProperty("const int KEY_KP_XOR", (void*)&KEY_KP_XOR);
+    engine->RegisterGlobalProperty("const int KEY_LEFTBRACKET", (void*)&KEY_LEFTBRACKET);
+    engine->RegisterGlobalProperty("const int KEY_LEFTPAREN", (void*)&KEY_LEFTPAREN);
+    engine->RegisterGlobalProperty("const int KEY_LESS", (void*)&KEY_LESS);
+    engine->RegisterGlobalProperty("const int KEY_MAIL", (void*)&KEY_MAIL);
+    engine->RegisterGlobalProperty("const int KEY_MEDIASELECT", (void*)&KEY_MEDIASELECT);
+    engine->RegisterGlobalProperty("const int KEY_MENU", (void*)&KEY_MENU);
+    engine->RegisterGlobalProperty("const int KEY_MINUS", (void*)&KEY_MINUS);
+    engine->RegisterGlobalProperty("const int KEY_MODE", (void*)&KEY_MODE);
+    engine->RegisterGlobalProperty("const int KEY_MUTE", (void*)&KEY_MUTE);
+    engine->RegisterGlobalProperty("const int KEY_OPER", (void*)&KEY_OPER);
+    engine->RegisterGlobalProperty("const int KEY_OUT", (void*)&KEY_OUT);
+    engine->RegisterGlobalProperty("const int KEY_PASTE", (void*)&KEY_PASTE);
+    engine->RegisterGlobalProperty("const int KEY_PERCENT", (void*)&KEY_PERCENT);
+    engine->RegisterGlobalProperty("const int KEY_PERIOD", (void*)&KEY_PERIOD);
+    engine->RegisterGlobalProperty("const int KEY_PLUS", (void*)&KEY_PLUS);
+    engine->RegisterGlobalProperty("const int KEY_POWER", (void*)&KEY_POWER);
+    engine->RegisterGlobalProperty("const int KEY_PRIOR", (void*)&KEY_PRIOR);
+    engine->RegisterGlobalProperty("const int KEY_QUESTION", (void*)&KEY_QUESTION);
+    engine->RegisterGlobalProperty("const int KEY_QUOTE", (void*)&KEY_QUOTE);
+    engine->RegisterGlobalProperty("const int KEY_QUOTEDBL", (void*)&KEY_QUOTEDBL);
+    engine->RegisterGlobalProperty("const int KEY_RIGHTBRACKET", (void*)&KEY_RIGHTBRACKET);
+    engine->RegisterGlobalProperty("const int KEY_RIGHTPAREN", (void*)&KEY_RIGHTPAREN);
+    engine->RegisterGlobalProperty("const int KEY_SEMICOLON", (void*)&KEY_SEMICOLON);
+    engine->RegisterGlobalProperty("const int KEY_SEPARATOR", (void*)&KEY_SEPARATOR);
+    engine->RegisterGlobalProperty("const int KEY_SLASH", (void*)&KEY_SLASH);
+    engine->RegisterGlobalProperty("const int KEY_SLEEP", (void*)&KEY_SLEEP);
+    engine->RegisterGlobalProperty("const int KEY_STOP", (void*)&KEY_STOP);
+    engine->RegisterGlobalProperty("const int KEY_SYSREQ", (void*)&KEY_SYSREQ);
+    engine->RegisterGlobalProperty("const int KEY_THOUSANDSSEPARATOR", (void*)&KEY_THOUSANDSSEPARATOR);
+    engine->RegisterGlobalProperty("const int KEY_UNDERSCORE", (void*)&KEY_UNDERSCORE);
+    engine->RegisterGlobalProperty("const int KEY_UNDO", (void*)&KEY_UNDO);
+    engine->RegisterGlobalProperty("const int KEY_VOLUMEDOWN", (void*)&KEY_VOLUMEDOWN);
+    engine->RegisterGlobalProperty("const int KEY_VOLUMEUP", (void*)&KEY_VOLUMEUP);
+    engine->RegisterGlobalProperty("const int KEY_WWW", (void*)&KEY_WWW);
+
     engine->RegisterGlobalProperty("const int SCANCODE_UNKNOWN", (void*)&SCANCODE_UNKNOWN);
     engine->RegisterGlobalProperty("const int SCANCODE_UNKNOWN", (void*)&SCANCODE_UNKNOWN);
     engine->RegisterGlobalProperty("const int SCANCODE_CTRL", (void*)&SCANCODE_CTRL);
     engine->RegisterGlobalProperty("const int SCANCODE_CTRL", (void*)&SCANCODE_CTRL);
     engine->RegisterGlobalProperty("const int SCANCODE_SHIFT", (void*)&SCANCODE_SHIFT);
     engine->RegisterGlobalProperty("const int SCANCODE_SHIFT", (void*)&SCANCODE_SHIFT);

+ 4 - 0
Source/Urho3D/AngelScript/ResourceAPI.cpp

@@ -245,9 +245,11 @@ static void RegisterImage(asIScriptEngine* engine)
     engine->RegisterObjectMethod("Image", "CompressedFormat get_compressedFormat() const", asMETHOD(Image, GetCompressedFormat), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "CompressedFormat get_compressedFormat() const", asMETHOD(Image, GetCompressedFormat), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "uint get_numCompressedLevels() const", asMETHOD(Image, GetNumCompressedLevels), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "uint get_numCompressedLevels() const", asMETHOD(Image, GetNumCompressedLevels), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "Image@+ GetSubimage(const IntRect&in) const", asMETHOD(Image, GetSubimage), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "Image@+ GetSubimage(const IntRect&in) const", asMETHOD(Image, GetSubimage), asCALL_THISCALL);
+    engine->RegisterObjectMethod("Image", "bool SetSubimage(const Image@+, const IntRect& rect) const", asMETHOD(Image, SetSubimage), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_cubemap() const", asMETHOD(Image, IsCubemap), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_cubemap() const", asMETHOD(Image, IsCubemap), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_array() const", asMETHOD(Image, IsArray), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_array() const", asMETHOD(Image, IsArray), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_sRGB() const", asMETHOD(Image, IsSRGB), asCALL_THISCALL);
     engine->RegisterObjectMethod("Image", "bool get_sRGB() const", asMETHOD(Image, IsSRGB), asCALL_THISCALL);
+    engine->RegisterObjectMethod("Image", "bool get_hasAlphaChannel() const", asMETHOD(Image, HasAlphaChannel), asCALL_THISCALL);
 }
 }
 
 
 static void ConstructJSONValue(JSONValue* ptr)
 static void ConstructJSONValue(JSONValue* ptr)
@@ -516,11 +518,13 @@ static void RegisterXMLElement(asIScriptEngine* engine)
     engine->RegisterObjectBehaviour("XMLElement", asBEHAVE_DESTRUCT, "void f()", asFUNCTION(DestructXMLElement), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectBehaviour("XMLElement", asBEHAVE_DESTRUCT, "void f()", asFUNCTION(DestructXMLElement), asCALL_CDECL_OBJLAST);
     engine->RegisterObjectMethod("XMLElement", "XMLElement& opAssign(const XMLElement&in)", asMETHOD(XMLElement, operator =), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement& opAssign(const XMLElement&in)", asMETHOD(XMLElement, operator =), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement CreateChild(const String&in)", asMETHODPR(XMLElement, CreateChild, (const String&), XMLElement), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement CreateChild(const String&in)", asMETHODPR(XMLElement, CreateChild, (const String&), XMLElement), asCALL_THISCALL);
+    engine->RegisterObjectMethod("XMLElement", "bool AppendChild(XMLElement element, bool asCopy)", asMETHOD(XMLElement, AppendChild), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement GetOrCreateChild(const String&in)", asMETHODPR(XMLElement, GetOrCreateChild, (const String&), XMLElement), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement GetOrCreateChild(const String&in)", asMETHODPR(XMLElement, GetOrCreateChild, (const String&), XMLElement), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChild(const XMLElement&in)", asMETHODPR(XMLElement, RemoveChild, (const XMLElement&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChild(const XMLElement&in)", asMETHODPR(XMLElement, RemoveChild, (const XMLElement&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChild(const String&in)", asMETHODPR(XMLElement, RemoveChild, (const String&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChild(const String&in)", asMETHODPR(XMLElement, RemoveChild, (const String&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChildren(const String&in name = String())", asMETHODPR(XMLElement, RemoveChildren, (const String&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveChildren(const String&in name = String())", asMETHODPR(XMLElement, RemoveChildren, (const String&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveAttribute(const String&in name = String())", asMETHODPR(XMLElement, RemoveAttribute, (const String&), bool), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "bool RemoveAttribute(const String&in name = String())", asMETHODPR(XMLElement, RemoveAttribute, (const String&), bool), asCALL_THISCALL);
+    engine->RegisterObjectMethod("XMLElement", "bool Remove()", asMETHOD(XMLElement, Remove), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement SelectSingle(const String&in)", asMETHOD(XMLElement, SelectSingle), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement SelectSingle(const String&in)", asMETHOD(XMLElement, SelectSingle), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement SelectSinglePrepared(const XPathQuery&in)", asMETHOD(XMLElement, SelectSinglePrepared), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XMLElement SelectSinglePrepared(const XPathQuery&in)", asMETHOD(XMLElement, SelectSinglePrepared), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XPathResultSet Select(const String&in)", asMETHOD(XMLElement, Select), asCALL_THISCALL);
     engine->RegisterObjectMethod("XMLElement", "XPathResultSet Select(const String&in)", asMETHOD(XMLElement, Select), asCALL_THISCALL);