summaryrefslogtreecommitdiffstats
path: root/core/io/xml_parser.cpp
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2014-02-15 21:16:33 -0300
committerJuan Linietsky <reduzio@gmail.com>2014-02-15 21:16:33 -0300
commit8c1731b67995add31361ae526b0e6af76346181e (patch)
treef96080fdbb6e0f0f3fcc12bf10fc92928f0310cb /core/io/xml_parser.cpp
parent9afdb3e0ad5bfbdafe307212f5d4ebcc7c3ac852 (diff)
downloadredot-engine-8c1731b67995add31361ae526b0e6af76346181e.tar.gz
-project settings are saved when changed
-load() was in the GDScript docs but missing in the scripting-different music for platformer 2D and 3D -fix how documentation is generated, built in doc browser should be always up to date -copypaste, scrolling, etc in builtin doc -built-in scripts get saved now (though debugger may not always work on them) -Theme can be set to controls as a property
Diffstat (limited to 'core/io/xml_parser.cpp')
-rw-r--r--core/io/xml_parser.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/core/io/xml_parser.cpp b/core/io/xml_parser.cpp
index 150643b2e1..5d3e4f61ad 100644
--- a/core/io/xml_parser.cpp
+++ b/core/io/xml_parser.cpp
@@ -392,7 +392,8 @@ void XMLParser::_bind_methods() {
ObjectTypeDB::bind_method(_MD("get_current_line"),&XMLParser::get_current_line);
ObjectTypeDB::bind_method(_MD("skip_section"),&XMLParser::skip_section);
ObjectTypeDB::bind_method(_MD("seek"),&XMLParser::seek);
- ObjectTypeDB::bind_method(_MD("open"),&XMLParser::open);
+ ObjectTypeDB::bind_method(_MD("open","file"),&XMLParser::open);
+ ObjectTypeDB::bind_method(_MD("open_buffer","buffer"),&XMLParser::open_buffer);
BIND_CONSTANT( NODE_NONE );
BIND_CONSTANT( NODE_ELEMENT );
@@ -493,6 +494,19 @@ bool XMLParser::is_empty() const {
return node_empty;
}
+Error XMLParser::open_buffer(const Vector<uint8_t>& p_buffer) {
+
+ ERR_FAIL_COND_V(p_buffer.size()==0,ERR_INVALID_DATA);
+
+ length = p_buffer.size();
+ data = memnew_arr( char, length+1);
+ copymem(data,p_buffer.ptr(),length);
+ data[length]=0;
+ P=data;
+ return OK;
+
+}
+
Error XMLParser::open(const String& p_path) {
Error err;