Merge branch 'master' of https://github.com/okamstudio/godot
This commit is contained in:
commit
4b40f9228b
@ -54,13 +54,16 @@ methods.save_active_platforms(active_platforms,active_platform_ids)
|
|||||||
|
|
||||||
custom_tools=['default']
|
custom_tools=['default']
|
||||||
|
|
||||||
|
platform_arg = ARGUMENTS.get("platform", False)
|
||||||
|
|
||||||
if (os.name=="posix"):
|
if (os.name=="posix"):
|
||||||
pass
|
pass
|
||||||
elif (os.name=="nt"):
|
elif (os.name=="nt"):
|
||||||
if (os.getenv("VSINSTALLDIR")==None):
|
if (os.getenv("VSINSTALLDIR")==None or platform_arg=="android"):
|
||||||
custom_tools=['mingw']
|
custom_tools=['mingw']
|
||||||
|
|
||||||
env_base=Environment(tools=custom_tools,ENV = {'PATH' : os.environ['PATH']});
|
env_base=Environment(tools=custom_tools,ENV = {'PATH' : os.environ['PATH']});
|
||||||
|
|
||||||
#env_base=Environment(tools=custom_tools);
|
#env_base=Environment(tools=custom_tools);
|
||||||
env_base.global_defaults=global_defaults
|
env_base.global_defaults=global_defaults
|
||||||
env_base.android_source_modules=[]
|
env_base.android_source_modules=[]
|
||||||
@ -363,8 +366,8 @@ if selected_platform in platform_list:
|
|||||||
|
|
||||||
#env['MSVS_VERSION']='9.0'
|
#env['MSVS_VERSION']='9.0'
|
||||||
env['MSVSBUILDCOM'] = "scons platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes"
|
env['MSVSBUILDCOM'] = "scons platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes"
|
||||||
env['MSVSREBUILDCOM'] = "scons platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes"
|
env['MSVSREBUILDCOM'] = "scons platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes vsproj=true"
|
||||||
env['MSVSCLEANCOM'] = "scons platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes"
|
env['MSVSCLEANCOM'] = "scons --clean platform=" + selected_platform + " target=" + env["target"] + " bits=" + env["bits"] + " tools=yes"
|
||||||
|
|
||||||
debug_variants = ['Debug|Win32']+['Debug|x64']
|
debug_variants = ['Debug|Win32']+['Debug|x64']
|
||||||
release_variants = ['Release|Win32']+['Release|x64']
|
release_variants = ['Release|Win32']+['Release|x64']
|
||||||
|
@ -494,6 +494,10 @@ uint64_t _OS::get_unix_time() const {
|
|||||||
return OS::get_singleton()->get_unix_time();
|
return OS::get_singleton()->get_unix_time();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
uint64_t _OS::get_system_time_msec() const {
|
||||||
|
return OS::get_singleton()->get_system_time_msec();
|
||||||
|
}
|
||||||
|
|
||||||
void _OS::delay_usec(uint32_t p_usec) const {
|
void _OS::delay_usec(uint32_t p_usec) const {
|
||||||
|
|
||||||
OS::get_singleton()->delay_usec(p_usec);
|
OS::get_singleton()->delay_usec(p_usec);
|
||||||
@ -801,6 +805,7 @@ void _OS::_bind_methods() {
|
|||||||
ObjectTypeDB::bind_method(_MD("get_time","utc"),&_OS::get_time,DEFVAL(false));
|
ObjectTypeDB::bind_method(_MD("get_time","utc"),&_OS::get_time,DEFVAL(false));
|
||||||
ObjectTypeDB::bind_method(_MD("get_time_zone_info"),&_OS::get_time_zone_info);
|
ObjectTypeDB::bind_method(_MD("get_time_zone_info"),&_OS::get_time_zone_info);
|
||||||
ObjectTypeDB::bind_method(_MD("get_unix_time"),&_OS::get_unix_time);
|
ObjectTypeDB::bind_method(_MD("get_unix_time"),&_OS::get_unix_time);
|
||||||
|
ObjectTypeDB::bind_method(_MD("get_system_time_msec"), &_OS::get_system_time_msec);
|
||||||
|
|
||||||
ObjectTypeDB::bind_method(_MD("set_icon"),&_OS::set_icon);
|
ObjectTypeDB::bind_method(_MD("set_icon"),&_OS::set_icon);
|
||||||
|
|
||||||
|
@ -208,6 +208,7 @@ public:
|
|||||||
Dictionary get_time(bool utc) const;
|
Dictionary get_time(bool utc) const;
|
||||||
Dictionary get_time_zone_info() const;
|
Dictionary get_time_zone_info() const;
|
||||||
uint64_t get_unix_time() const;
|
uint64_t get_unix_time() const;
|
||||||
|
uint64_t get_system_time_msec() const;
|
||||||
|
|
||||||
int get_static_memory_usage() const;
|
int get_static_memory_usage() const;
|
||||||
int get_static_memory_peak_usage() const;
|
int get_static_memory_peak_usage() const;
|
||||||
|
@ -50,7 +50,9 @@ uint64_t OS::get_unix_time() const {
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
};
|
};
|
||||||
|
uint64_t OS::get_system_time_msec() const {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
void OS::debug_break() {
|
void OS::debug_break() {
|
||||||
|
|
||||||
// something
|
// something
|
||||||
|
@ -254,6 +254,7 @@ public:
|
|||||||
virtual Time get_time(bool local=false) const=0;
|
virtual Time get_time(bool local=false) const=0;
|
||||||
virtual TimeZoneInfo get_time_zone_info() const=0;
|
virtual TimeZoneInfo get_time_zone_info() const=0;
|
||||||
virtual uint64_t get_unix_time() const;
|
virtual uint64_t get_unix_time() const;
|
||||||
|
virtual uint64_t get_system_time_msec() const;
|
||||||
|
|
||||||
virtual void delay_usec(uint32_t p_usec) const=0;
|
virtual void delay_usec(uint32_t p_usec) const=0;
|
||||||
virtual uint64_t get_ticks_usec() const=0;
|
virtual uint64_t get_ticks_usec() const=0;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -2499,6 +2499,8 @@
|
|||||||
</argument>
|
</argument>
|
||||||
<argument index="3" name="modulate" type="Color" default="Color(1,1,1,1)">
|
<argument index="3" name="modulate" type="Color" default="Color(1,1,1,1)">
|
||||||
</argument>
|
</argument>
|
||||||
|
<argument index="4" name="transpose" type="bool" default="false">
|
||||||
|
</argument>
|
||||||
<description>
|
<description>
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
@ -2511,6 +2513,8 @@
|
|||||||
</argument>
|
</argument>
|
||||||
<argument index="3" name="modulate" type="Color" default="Color(1,1,1,1)">
|
<argument index="3" name="modulate" type="Color" default="Color(1,1,1,1)">
|
||||||
</argument>
|
</argument>
|
||||||
|
<argument index="4" name="transpose" type="bool" default="false">
|
||||||
|
</argument>
|
||||||
<description>
|
<description>
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
|
@ -27,6 +27,9 @@ if ("neon_enabled" in env and env["neon_enabled"]):
|
|||||||
if "S_compiler" in env:
|
if "S_compiler" in env:
|
||||||
env_neon['CC'] = env['S_compiler']
|
env_neon['CC'] = env['S_compiler']
|
||||||
env_neon.Append(CPPFLAGS=["-DPNG_ARM_NEON"])
|
env_neon.Append(CPPFLAGS=["-DPNG_ARM_NEON"])
|
||||||
|
import os
|
||||||
|
# Currently .ASM filter_neon.S does not compile on NT.
|
||||||
|
if (os.name!="nt"):
|
||||||
png_sources.append(env_neon.Object("#drivers/png/filter_neon.S"))
|
png_sources.append(env_neon.Object("#drivers/png/filter_neon.S"))
|
||||||
|
|
||||||
|
|
||||||
|
@ -223,6 +223,14 @@ uint64_t OS_Unix::get_unix_time() const {
|
|||||||
return time(NULL);
|
return time(NULL);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
uint64_t OS_Unix::get_system_time_msec() const {
|
||||||
|
struct timeval tv_now;
|
||||||
|
gettimeofday(&tv_now, NULL);
|
||||||
|
localtime(&tv_now.tv_usec);
|
||||||
|
uint64_t msec = tv_now.tv_usec/1000;
|
||||||
|
return msec;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
OS::Date OS_Unix::get_date(bool utc) const {
|
OS::Date OS_Unix::get_date(bool utc) const {
|
||||||
|
|
||||||
|
@ -93,6 +93,7 @@ public:
|
|||||||
virtual TimeZoneInfo get_time_zone_info() const;
|
virtual TimeZoneInfo get_time_zone_info() const;
|
||||||
|
|
||||||
virtual uint64_t get_unix_time() const;
|
virtual uint64_t get_unix_time() const;
|
||||||
|
virtual uint64_t get_system_time_msec() const;
|
||||||
|
|
||||||
virtual void delay_usec(uint32_t p_usec) const;
|
virtual void delay_usec(uint32_t p_usec) const;
|
||||||
virtual uint64_t get_ticks_usec() const;
|
virtual uint64_t get_ticks_usec() const;
|
||||||
|
@ -232,7 +232,7 @@ void AudioStreamOGGVorbis::seek_pos(float p_time) {
|
|||||||
|
|
||||||
if (!playing)
|
if (!playing)
|
||||||
return;
|
return;
|
||||||
bool ok = ov_time_seek(&vf,p_time*1000)==0;
|
bool ok = ov_time_seek(&vf,p_time)==0;
|
||||||
ERR_FAIL_COND(!ok);
|
ERR_FAIL_COND(!ok);
|
||||||
frames_mixed=stream_srate*p_time;
|
frames_mixed=stream_srate*p_time;
|
||||||
}
|
}
|
||||||
|
@ -2315,6 +2315,17 @@ void GDParser::_parse_class(ClassNode *p_class) {
|
|||||||
|
|
||||||
case Variant::INT: {
|
case Variant::INT: {
|
||||||
|
|
||||||
|
if (tokenizer->get_token()==GDTokenizer::TK_IDENTIFIER && tokenizer->get_token_identifier()=="FLAGS") {
|
||||||
|
|
||||||
|
current_export.hint=PROPERTY_HINT_ALL_FLAGS;
|
||||||
|
tokenizer->advance();
|
||||||
|
if (tokenizer->get_token()!=GDTokenizer::TK_PARENTHESIS_CLOSE) {
|
||||||
|
_set_error("Expected ')' in hint.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (tokenizer->get_token()==GDTokenizer::TK_CONSTANT && tokenizer->get_token_constant().get_type()==Variant::STRING) {
|
if (tokenizer->get_token()==GDTokenizer::TK_CONSTANT && tokenizer->get_token_constant().get_type()==Variant::STRING) {
|
||||||
//enumeration
|
//enumeration
|
||||||
current_export.hint=PROPERTY_HINT_ENUM;
|
current_export.hint=PROPERTY_HINT_ENUM;
|
||||||
@ -2542,6 +2553,13 @@ void GDParser::_parse_class(ClassNode *p_class) {
|
|||||||
} else if (tokenizer->get_token()==GDTokenizer::TK_IDENTIFIER) {
|
} else if (tokenizer->get_token()==GDTokenizer::TK_IDENTIFIER) {
|
||||||
|
|
||||||
String identifier = tokenizer->get_token_identifier();
|
String identifier = tokenizer->get_token_identifier();
|
||||||
|
if (identifier == "flag") {
|
||||||
|
current_export.type=Variant::INT;
|
||||||
|
current_export.hint=PROPERTY_HINT_ALL_FLAGS;
|
||||||
|
}else if (identifier == "multiline"){
|
||||||
|
current_export.type=Variant::STRING;
|
||||||
|
current_export.hint=PROPERTY_HINT_MULTILINE_TEXT;
|
||||||
|
} else {
|
||||||
if (!ObjectTypeDB::is_type(identifier,"Resource")) {
|
if (!ObjectTypeDB::is_type(identifier,"Resource")) {
|
||||||
|
|
||||||
current_export=PropertyInfo();
|
current_export=PropertyInfo();
|
||||||
@ -2551,7 +2569,7 @@ void GDParser::_parse_class(ClassNode *p_class) {
|
|||||||
current_export.type=Variant::OBJECT;
|
current_export.type=Variant::OBJECT;
|
||||||
current_export.hint=PROPERTY_HINT_RESOURCE_TYPE;
|
current_export.hint=PROPERTY_HINT_RESOURCE_TYPE;
|
||||||
current_export.hint_string=identifier;
|
current_export.hint_string=identifier;
|
||||||
|
}
|
||||||
tokenizer->advance();
|
tokenizer->advance();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -97,6 +97,7 @@ const char* GDTokenizer::token_names[TK_MAX]={
|
|||||||
"preload",
|
"preload",
|
||||||
"assert",
|
"assert",
|
||||||
"yield",
|
"yield",
|
||||||
|
"signal",
|
||||||
"'['",
|
"'['",
|
||||||
"']'",
|
"']'",
|
||||||
"'{'",
|
"'{'",
|
||||||
|
@ -54,13 +54,53 @@ def create(env):
|
|||||||
|
|
||||||
def configure(env):
|
def configure(env):
|
||||||
|
|
||||||
|
# Workaround for MinGW. See:
|
||||||
|
# http://www.scons.org/wiki/LongCmdLinesOnWin32
|
||||||
|
import os
|
||||||
|
if (os.name=="nt"):
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
def mySubProcess(cmdline,env):
|
||||||
|
#print "SPAWNED : " + cmdline
|
||||||
|
startupinfo = subprocess.STARTUPINFO()
|
||||||
|
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
|
||||||
|
proc = subprocess.Popen(cmdline, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
|
||||||
|
stderr=subprocess.PIPE, startupinfo=startupinfo, shell = False, env = env)
|
||||||
|
data, err = proc.communicate()
|
||||||
|
rv = proc.wait()
|
||||||
|
if rv:
|
||||||
|
print "====="
|
||||||
|
print err
|
||||||
|
print "====="
|
||||||
|
return rv
|
||||||
|
|
||||||
|
def mySpawn(sh, escape, cmd, args, env):
|
||||||
|
|
||||||
|
newargs = ' '.join(args[1:])
|
||||||
|
cmdline = cmd + " " + newargs
|
||||||
|
|
||||||
|
rv=0
|
||||||
|
if len(cmdline) > 32000 and cmd.endswith("ar") :
|
||||||
|
cmdline = cmd + " " + args[1] + " " + args[2] + " "
|
||||||
|
for i in range(3,len(args)) :
|
||||||
|
rv = mySubProcess( cmdline + args[i], env )
|
||||||
|
if rv :
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
rv = mySubProcess( cmdline, env )
|
||||||
|
|
||||||
|
return rv
|
||||||
|
|
||||||
|
env['SPAWN'] = mySpawn
|
||||||
|
|
||||||
if env['x86']=='yes':
|
if env['x86']=='yes':
|
||||||
env['NDK_TARGET']='x86-4.8'
|
env['NDK_TARGET']='x86-4.8'
|
||||||
|
|
||||||
if env['PLATFORM'] == 'win32':
|
if env['PLATFORM'] == 'win32':
|
||||||
import methods
|
import methods
|
||||||
env.Tool('gcc')
|
env.Tool('gcc')
|
||||||
env['SPAWN'] = methods.win32_spawn
|
#env['SPAWN'] = methods.win32_spawn
|
||||||
env['SHLIBSUFFIX'] = '.so'
|
env['SHLIBSUFFIX'] = '.so'
|
||||||
|
|
||||||
# env.android_source_modules.append("../libs/apk_expansion")
|
# env.android_source_modules.append("../libs/apk_expansion")
|
||||||
|
@ -1899,6 +1899,12 @@ uint64_t OS_Windows::get_unix_time() const {
|
|||||||
return (*(uint64_t*)&ft - *(uint64_t*)&fep) / 10000000;
|
return (*(uint64_t*)&ft - *(uint64_t*)&fep) / 10000000;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
uint64_t OS_Windows::get_system_time_msec() const {
|
||||||
|
SYSTEMTIME st;
|
||||||
|
GetSystemTime(&st);
|
||||||
|
return st.wMilliseconds;
|
||||||
|
}
|
||||||
|
|
||||||
void OS_Windows::delay_usec(uint32_t p_usec) const {
|
void OS_Windows::delay_usec(uint32_t p_usec) const {
|
||||||
|
|
||||||
if (p_usec < 1000)
|
if (p_usec < 1000)
|
||||||
|
@ -263,6 +263,7 @@ public:
|
|||||||
virtual Time get_time(bool utc) const;
|
virtual Time get_time(bool utc) const;
|
||||||
virtual TimeZoneInfo get_time_zone_info() const;
|
virtual TimeZoneInfo get_time_zone_info() const;
|
||||||
virtual uint64_t get_unix_time() const;
|
virtual uint64_t get_unix_time() const;
|
||||||
|
virtual uint64_t get_system_time_msec() const;
|
||||||
|
|
||||||
virtual bool can_draw() const;
|
virtual bool can_draw() const;
|
||||||
virtual Error set_cwd(const String& p_cwd);
|
virtual Error set_cwd(const String& p_cwd);
|
||||||
|
@ -126,6 +126,7 @@ def configure(env):
|
|||||||
env.ParseConfig('pkg-config x11 --cflags --libs')
|
env.ParseConfig('pkg-config x11 --cflags --libs')
|
||||||
env.ParseConfig('pkg-config xinerama --cflags --libs')
|
env.ParseConfig('pkg-config xinerama --cflags --libs')
|
||||||
env.ParseConfig('pkg-config xcursor --cflags --libs')
|
env.ParseConfig('pkg-config xcursor --cflags --libs')
|
||||||
|
if (env["openssl"]=="yes"):
|
||||||
env.ParseConfig('pkg-config openssl --cflags --libs')
|
env.ParseConfig('pkg-config openssl --cflags --libs')
|
||||||
|
|
||||||
|
|
||||||
|
@ -1071,8 +1071,8 @@ void CanvasItem::_bind_methods() {
|
|||||||
ObjectTypeDB::bind_method(_MD("draw_rect","rect","color"),&CanvasItem::draw_rect);
|
ObjectTypeDB::bind_method(_MD("draw_rect","rect","color"),&CanvasItem::draw_rect);
|
||||||
ObjectTypeDB::bind_method(_MD("draw_circle","pos","radius","color"),&CanvasItem::draw_circle);
|
ObjectTypeDB::bind_method(_MD("draw_circle","pos","radius","color"),&CanvasItem::draw_circle);
|
||||||
ObjectTypeDB::bind_method(_MD("draw_texture","texture:Texture","pos"),&CanvasItem::draw_texture);
|
ObjectTypeDB::bind_method(_MD("draw_texture","texture:Texture","pos"),&CanvasItem::draw_texture);
|
||||||
ObjectTypeDB::bind_method(_MD("draw_texture_rect","texture:Texture","rect","tile","modulate"),&CanvasItem::draw_texture_rect,DEFVAL(false),DEFVAL(Color(1,1,1)));
|
ObjectTypeDB::bind_method(_MD("draw_texture_rect","texture:Texture","rect","tile","modulate","transpose"),&CanvasItem::draw_texture_rect,DEFVAL(Color(1,1,1)),DEFVAL(false));
|
||||||
ObjectTypeDB::bind_method(_MD("draw_texture_rect_region","texture:Texture","rect","src_rect","modulate"),&CanvasItem::draw_texture_rect_region,DEFVAL(Color(1,1,1)));
|
ObjectTypeDB::bind_method(_MD("draw_texture_rect_region","texture:Texture","rect","src_rect","modulate","transpose"),&CanvasItem::draw_texture_rect_region,DEFVAL(Color(1,1,1)),DEFVAL(false));
|
||||||
ObjectTypeDB::bind_method(_MD("draw_style_box","style_box:StyleBox","rect"),&CanvasItem::draw_style_box);
|
ObjectTypeDB::bind_method(_MD("draw_style_box","style_box:StyleBox","rect"),&CanvasItem::draw_style_box);
|
||||||
ObjectTypeDB::bind_method(_MD("draw_primitive","points","colors","uvs","texture:Texture","width"),&CanvasItem::draw_primitive,DEFVAL(Array()),DEFVAL(Ref<Texture>()),DEFVAL(1.0));
|
ObjectTypeDB::bind_method(_MD("draw_primitive","points","colors","uvs","texture:Texture","width"),&CanvasItem::draw_primitive,DEFVAL(Array()),DEFVAL(Ref<Texture>()),DEFVAL(1.0));
|
||||||
ObjectTypeDB::bind_method(_MD("draw_polygon","points","colors","uvs","texture:Texture"),&CanvasItem::draw_polygon,DEFVAL(Array()),DEFVAL(Ref<Texture>()));
|
ObjectTypeDB::bind_method(_MD("draw_polygon","points","colors","uvs","texture:Texture"),&CanvasItem::draw_polygon,DEFVAL(Array()),DEFVAL(Ref<Texture>()));
|
||||||
|
@ -104,6 +104,17 @@ void EditorLog::_close_request() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void EditorLog::_clear_request() {
|
||||||
|
|
||||||
|
log->clear();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void EditorLog::clear() {
|
||||||
|
_clear_request();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void EditorLog::add_message(const String& p_msg,bool p_error) {
|
void EditorLog::add_message(const String& p_msg,bool p_error) {
|
||||||
|
|
||||||
|
|
||||||
@ -167,9 +178,12 @@ void EditorLog::_bind_methods() {
|
|||||||
|
|
||||||
ObjectTypeDB::bind_method(_MD("_close_request"),&EditorLog::_close_request );
|
ObjectTypeDB::bind_method(_MD("_close_request"),&EditorLog::_close_request );
|
||||||
ObjectTypeDB::bind_method(_MD("_flip_request"),&EditorLog::_flip_request );
|
ObjectTypeDB::bind_method(_MD("_flip_request"),&EditorLog::_flip_request );
|
||||||
|
ObjectTypeDB::bind_method(_MD("_clear_request"),&EditorLog::_clear_request );
|
||||||
|
|
||||||
//ObjectTypeDB::bind_method(_MD("_dragged"),&EditorLog::_dragged );
|
//ObjectTypeDB::bind_method(_MD("_dragged"),&EditorLog::_dragged );
|
||||||
ADD_SIGNAL( MethodInfo("close_request"));
|
ADD_SIGNAL( MethodInfo("close_request"));
|
||||||
ADD_SIGNAL( MethodInfo("show_request"));
|
ADD_SIGNAL( MethodInfo("show_request"));
|
||||||
|
ADD_SIGNAL( MethodInfo("clear_request"));
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorLog::EditorLog() {
|
EditorLog::EditorLog() {
|
||||||
@ -198,6 +212,11 @@ EditorLog::EditorLog() {
|
|||||||
//pd->connect("dragged",this,"_dragged");
|
//pd->connect("dragged",this,"_dragged");
|
||||||
//pd->set_default_cursor_shape(Control::CURSOR_MOVE);
|
//pd->set_default_cursor_shape(Control::CURSOR_MOVE);
|
||||||
|
|
||||||
|
clearbutton = memnew( Button );
|
||||||
|
hb->add_child(clearbutton);
|
||||||
|
clearbutton->set_text("Clear");
|
||||||
|
clearbutton->connect("pressed", this,"_clear_request");
|
||||||
|
|
||||||
tb = memnew( TextureButton );
|
tb = memnew( TextureButton );
|
||||||
hb->add_child(tb);
|
hb->add_child(tb);
|
||||||
tb->connect("pressed",this,"_close_request");
|
tb->connect("pressed",this,"_close_request");
|
||||||
@ -241,8 +260,8 @@ void EditorLog::deinit() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
EditorLog::~EditorLog() {
|
EditorLog::~EditorLog() {
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,6 +45,7 @@ class EditorLog : public PanelContainer {
|
|||||||
OBJ_TYPE( EditorLog, PanelContainer );
|
OBJ_TYPE( EditorLog, PanelContainer );
|
||||||
|
|
||||||
ToolButton *button;
|
ToolButton *button;
|
||||||
|
Button *clearbutton;
|
||||||
Label *title;
|
Label *title;
|
||||||
RichTextLabel *log;
|
RichTextLabel *log;
|
||||||
TextureButton *tb;
|
TextureButton *tb;
|
||||||
@ -58,10 +59,10 @@ class EditorLog : public PanelContainer {
|
|||||||
|
|
||||||
Thread::ID current;
|
Thread::ID current;
|
||||||
|
|
||||||
|
|
||||||
// void _dragged(const Point2& p_ofs);
|
// void _dragged(const Point2& p_ofs);
|
||||||
void _close_request();
|
void _close_request();
|
||||||
void _flip_request();
|
void _flip_request();
|
||||||
|
void _clear_request();
|
||||||
static void _undo_redo_cbk(void *p_self,const String& p_name);
|
static void _undo_redo_cbk(void *p_self,const String& p_name);
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
@ -73,6 +74,7 @@ public:
|
|||||||
void deinit();
|
void deinit();
|
||||||
|
|
||||||
ToolButton *get_button();
|
ToolButton *get_button();
|
||||||
|
void clear();
|
||||||
EditorLog();
|
EditorLog();
|
||||||
~EditorLog();
|
~EditorLog();
|
||||||
};
|
};
|
||||||
|
@ -1587,7 +1587,6 @@ void EditorNode::_run(bool p_current,const String& p_custom) {
|
|||||||
Node *scene = editor_data.get_edited_scene_root();
|
Node *scene = editor_data.get_edited_scene_root();
|
||||||
|
|
||||||
if (!scene) {
|
if (!scene) {
|
||||||
|
|
||||||
current_option=-1;
|
current_option=-1;
|
||||||
//accept->get_cancel()->hide();
|
//accept->get_cancel()->hide();
|
||||||
accept->get_ok()->set_text("I see..");
|
accept->get_ok()->set_text("I see..");
|
||||||
@ -1668,6 +1667,10 @@ void EditorNode::_run(bool p_current,const String& p_custom) {
|
|||||||
editor_data.save_editor_external_data();
|
editor_data.save_editor_external_data();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (bool(EDITOR_DEF("run/always_clear_output_on_play", true))) {
|
||||||
|
log->clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
List<String> breakpoints;
|
List<String> breakpoints;
|
||||||
editor_data.get_editor_breakpoints(&breakpoints);
|
editor_data.get_editor_breakpoints(&breakpoints);
|
||||||
|
Loading…
Reference in New Issue
Block a user