summaryrefslogtreecommitdiff
path: root/scene/main
diff options
context:
space:
mode:
Diffstat (limited to 'scene/main')
-rw-r--r--scene/main/canvas_layer.cpp6
-rw-r--r--scene/main/http_request.cpp2
-rw-r--r--scene/main/node.cpp17
-rw-r--r--scene/main/scene_main_loop.cpp117
-rw-r--r--scene/main/scene_main_loop.h13
-rw-r--r--scene/main/viewport.cpp62
-rw-r--r--scene/main/viewport.h2
7 files changed, 141 insertions, 78 deletions
diff --git a/scene/main/canvas_layer.cpp b/scene/main/canvas_layer.cpp
index 2e2e1d6c80..84fe2a00f6 100644
--- a/scene/main/canvas_layer.cpp
+++ b/scene/main/canvas_layer.cpp
@@ -176,7 +176,7 @@ void CanvasLayer::_notification(int p_what) {
}
ERR_FAIL_COND(!vp);
- viewport=vp->get_viewport();
+ viewport=vp->get_viewport_rid();
VisualServer::get_singleton()->viewport_attach_canvas(viewport,canvas->get_canvas());
VisualServer::get_singleton()->viewport_set_canvas_layer(viewport,canvas->get_canvas(),layer);
@@ -232,7 +232,7 @@ void CanvasLayer::set_custom_viewport(Node *p_viewport) {
else
vp=Node::get_viewport();
- viewport = vp->get_viewport();
+ viewport = vp->get_viewport_rid();
VisualServer::get_singleton()->viewport_attach_canvas(viewport,canvas->get_canvas());
VisualServer::get_singleton()->viewport_set_canvas_layer(viewport,canvas->get_canvas(),layer);
@@ -285,7 +285,7 @@ void CanvasLayer::_bind_methods() {
ClassDB::bind_method(_MD("get_custom_viewport:Viewport"),&CanvasLayer::get_custom_viewport);
ClassDB::bind_method(_MD("get_world_2d:World2D"),&CanvasLayer::get_world_2d);
-// ClassDB::bind_method(_MD("get_viewport"),&CanvasLayer::get_viewport);
+ //ClassDB::bind_method(_MD("get_viewport"),&CanvasLayer::get_viewport);
ADD_PROPERTY( PropertyInfo(Variant::INT,"layer",PROPERTY_HINT_RANGE,"-128,128,1"),_SCS("set_layer"),_SCS("get_layer") );
//ADD_PROPERTY( PropertyInfo(Variant::MATRIX32,"transform",PROPERTY_HINT_RANGE),_SCS("set_transform"),_SCS("get_transform") );
diff --git a/scene/main/http_request.cpp b/scene/main/http_request.cpp
index 25180b568f..63a81a139d 100644
--- a/scene/main/http_request.cpp
+++ b/scene/main/http_request.cpp
@@ -40,7 +40,7 @@ void HTTPRequest::_redirect_request(const String& p_new_url) {
Error HTTPRequest::_request() {
//print_line("Requesting:\n\tURL: "+url+"\n\tString: "+request_string+"\n\tPort: "+itos(port)+"\n\tSSL: "+itos(use_ssl)+"\n\tValidate SSL: "+itos(validate_ssl));
- return client->connect(url,port,use_ssl,validate_ssl);
+ return client->connect_to_host(url,port,use_ssl,validate_ssl);
}
Error HTTPRequest::_parse_url(const String& p_url) {
diff --git a/scene/main/node.cpp b/scene/main/node.cpp
index 3a533d24b3..86b78f60f6 100644
--- a/scene/main/node.cpp
+++ b/scene/main/node.cpp
@@ -1384,10 +1384,8 @@ String Node::_generate_serial_child_name(Node *p_child) {
if (name=="") {
name = p_child->get_class();
- /* this is probably too slow to use here, should check alternatives
- *
// Adjust casing according to project setting. The current type name is expected to be in PascalCase.
- switch (Globals::get_singleton()->get("node/name_casing").operator int()) {
+ switch (GlobalConfig::get_singleton()->get("editor/node_name_casing").operator int()) {
case NAME_CASING_PASCAL_CASE:
break;
case NAME_CASING_CAMEL_CASE:
@@ -1397,7 +1395,6 @@ String Node::_generate_serial_child_name(Node *p_child) {
name = name.camelcase_to_underscore(true);
break;
}
- */
}
// Extract trailing number
@@ -2737,7 +2734,7 @@ void Node::_set_tree(SceneTree *p_tree) {
SceneTree *tree_changed_a=NULL;
SceneTree *tree_changed_b=NULL;
-// ERR_FAIL_COND(p_scene && data.parent && !data.parent->data.scene); //nobug if both are null
+ //ERR_FAIL_COND(p_scene && data.parent && !data.parent->data.scene); //nobug if both are null
if (data.tree) {
_propagate_exit_tree();
@@ -2902,10 +2899,10 @@ void Node::request_ready() {
void Node::_bind_methods() {
- _GLOBAL_DEF("editor/node_name_num_separator",0);
+ GLOBAL_DEF("editor/node_name_num_separator",0);
GlobalConfig::get_singleton()->set_custom_property_info("editor/node_name_num_separator",PropertyInfo(Variant::INT,"editor/node_name_num_separator",PROPERTY_HINT_ENUM, "None,Space,Underscore,Dash"));
- _GLOBAL_DEF("node/name_casing",NAME_CASING_PASCAL_CASE);
- GlobalConfig::get_singleton()->set_custom_property_info("node/name_casing",PropertyInfo(Variant::INT,"node/name_casing",PROPERTY_HINT_ENUM,"PascalCase,camelCase,snake_case"));
+ GLOBAL_DEF("editor/node_name_casing",NAME_CASING_PASCAL_CASE);
+ GlobalConfig::get_singleton()->set_custom_property_info("editor/node_name_casing",PropertyInfo(Variant::INT,"editor/node_name_casing",PROPERTY_HINT_ENUM,"PascalCase,camelCase,snake_case"));
ClassDB::bind_method(_MD("_add_child_below_node","node:Node","child_node:Node","legible_unique_name"),&Node::add_child_below_node,DEFVAL(false));
@@ -3065,8 +3062,8 @@ void Node::_bind_methods() {
ADD_SIGNAL( MethodInfo("tree_entered") );
ADD_SIGNAL( MethodInfo("tree_exited") );
-// ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/process" ),_SCS("set_process"),_SCS("is_processing") );
-// ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/fixed_process" ), _SCS("set_fixed_process"),_SCS("is_fixed_processing") );
+ //ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/process" ),_SCS("set_process"),_SCS("is_processing") );
+ //ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/fixed_process" ), _SCS("set_fixed_process"),_SCS("is_fixed_processing") );
//ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/input" ), _SCS("set_process_input"),_SCS("is_processing_input" ) );
//ADD_PROPERTYNZ( PropertyInfo( Variant::BOOL, "process/unhandled_input" ), _SCS("set_process_unhandled_input"),_SCS("is_processing_unhandled_input" ) );
ADD_GROUP("Pause","pause_");
diff --git a/scene/main/scene_main_loop.cpp b/scene/main/scene_main_loop.cpp
index d233bf1a72..147409a862 100644
--- a/scene/main/scene_main_loop.cpp
+++ b/scene/main/scene_main_loop.cpp
@@ -141,7 +141,7 @@ void SceneTree::_flush_ugc() {
for(int i=0;i<E->get().size();i++)
v[i]=E->get()[i];
- call_group(GROUP_CALL_REALTIME,E->key().group,E->key().call,v[0],v[1],v[2],v[3],v[4]);
+ call_group_flags(GROUP_CALL_REALTIME,E->key().group,E->key().call,v[0],v[1],v[2],v[3],v[4]);
unique_group_calls.erase(E);
}
@@ -166,7 +166,7 @@ void SceneTree::_update_group_order(Group& g) {
}
-void SceneTree::call_group(uint32_t p_call_flags,const StringName& p_group,const StringName& p_function,VARIANT_ARG_DECLARE) {
+void SceneTree::call_group_flags(uint32_t p_call_flags,const StringName& p_group,const StringName& p_function,VARIANT_ARG_DECLARE) {
Map<StringName,Group>::Element *E=group_map.find(p_group);
if (!E)
@@ -216,7 +216,7 @@ void SceneTree::call_group(uint32_t p_call_flags,const StringName& p_group,const
continue;
if (p_call_flags&GROUP_CALL_REALTIME) {
- if (p_call_flags&GROUP_CALL_MULIILEVEL)
+ if (p_call_flags&GROUP_CALL_MULTILEVEL)
nodes[i]->call_multilevel(p_function,VARIANT_ARG_PASS);
else
nodes[i]->call(p_function,VARIANT_ARG_PASS);
@@ -233,7 +233,7 @@ void SceneTree::call_group(uint32_t p_call_flags,const StringName& p_group,const
continue;
if (p_call_flags&GROUP_CALL_REALTIME) {
- if (p_call_flags&GROUP_CALL_MULIILEVEL)
+ if (p_call_flags&GROUP_CALL_MULTILEVEL)
nodes[i]->call_multilevel(p_function,VARIANT_ARG_PASS);
else
nodes[i]->call(p_function,VARIANT_ARG_PASS);
@@ -248,7 +248,7 @@ void SceneTree::call_group(uint32_t p_call_flags,const StringName& p_group,const
call_skip.clear();
}
-void SceneTree::notify_group(uint32_t p_call_flags,const StringName& p_group,int p_notification) {
+void SceneTree::notify_group_flags(uint32_t p_call_flags,const StringName& p_group,int p_notification) {
Map<StringName,Group>::Element *E=group_map.find(p_group);
if (!E)
@@ -298,7 +298,7 @@ void SceneTree::notify_group(uint32_t p_call_flags,const StringName& p_group,int
call_skip.clear();
}
-void SceneTree::set_group(uint32_t p_call_flags,const StringName& p_group,const String& p_name,const Variant& p_value) {
+void SceneTree::set_group_flags(uint32_t p_call_flags,const StringName& p_group,const String& p_name,const Variant& p_value) {
Map<StringName,Group>::Element *E=group_map.find(p_group);
if (!E)
@@ -348,6 +348,23 @@ void SceneTree::set_group(uint32_t p_call_flags,const StringName& p_group,const
call_skip.clear();
}
+
+void SceneTree::call_group(const StringName& p_group,const StringName& p_function,VARIANT_ARG_DECLARE) {
+
+ call_group_flags(0,p_group,VARIANT_ARG_PASS);
+}
+
+void SceneTree::notify_group(const StringName& p_group,int p_notification) {
+
+ notify_group_flags(0,p_group,p_notification);
+}
+
+void SceneTree::set_group(const StringName& p_group,const String& p_name,const Variant& p_value) {
+
+ set_group_flags(0,p_group,p_name,p_value);
+}
+
+
void SceneTree::set_input_as_handled() {
input_handled=true;
@@ -357,7 +374,7 @@ void SceneTree::input_text( const String& p_text ) {
root_lock++;
- call_group(GROUP_CALL_REALTIME,"_viewports","_vp_input_text",p_text); //special one for GUI, as controls use their own process check
+ call_group_flags(GROUP_CALL_REALTIME,"_viewports","_vp_input_text",p_text); //special one for GUI, as controls use their own process check
root_lock--;
@@ -438,21 +455,22 @@ void SceneTree::input_event( const InputEvent& p_event ) {
//call_group(GROUP_CALL_REVERSE|GROUP_CALL_REALTIME|GROUP_CALL_MULIILEVEL,"input","_input",ev);
- /*if (ev.type==InputEvent::KEY && ev.key.pressed && !ev.key.echo && ev.key.scancode==KEY_F12) {
+ /*
+ if (ev.type==InputEvent::KEY && ev.key.pressed && !ev.key.echo && ev.key.scancode==KEY_F12) {
print_line("RAM: "+itos(Memory::get_static_mem_usage()));
print_line("DRAM: "+itos(Memory::get_dynamic_mem_usage()));
}
-*/
- //if (ev.type==InputEvent::KEY && ev.key.pressed && !ev.key.echo && ev.key.scancode==KEY_F11) {
+ if (ev.type==InputEvent::KEY && ev.key.pressed && !ev.key.echo && ev.key.scancode==KEY_F11) {
- // Memory::dump_static_mem_to_file("memdump.txt");
- //}
+ Memory::dump_static_mem_to_file("memdump.txt");
+ }
+ */
//transform for the rest
#else
- call_group(GROUP_CALL_REALTIME,"_viewports","_vp_input",ev); //special one for GUI, as controls use their own process check
+ call_group_flags(GROUP_CALL_REALTIME,"_viewports","_vp_input",ev); //special one for GUI, as controls use their own process check
#endif
if (ScriptDebugger::get_singleton() && ScriptDebugger::get_singleton()->is_remote() && ev.type==InputEvent::KEY && ev.key.pressed && !ev.key.echo && ev.key.scancode==KEY_F8) {
@@ -477,7 +495,7 @@ void SceneTree::input_event( const InputEvent& p_event ) {
}
#else
- call_group(GROUP_CALL_REALTIME,"_viewports","_vp_unhandled_input",ev); //special one for GUI, as controls use their own process check
+ call_group_flags(GROUP_CALL_REALTIME,"_viewports","_vp_unhandled_input",ev); //special one for GUI, as controls use their own process check
#endif
input_handled=true;
@@ -528,7 +546,7 @@ bool SceneTree::iteration(float p_time) {
_notify_group_pause("fixed_process",Node::NOTIFICATION_FIXED_PROCESS);
_flush_ugc();
_flush_transform_notifications();
- call_group(GROUP_CALL_REALTIME,"_viewports","update_worlds");
+ call_group_flags(GROUP_CALL_REALTIME,"_viewports","update_worlds");
root_lock--;
_flush_delete_queue();
@@ -540,9 +558,9 @@ bool SceneTree::iteration(float p_time) {
bool SceneTree::idle(float p_time){
-// print_line("ram: "+itos(OS::get_singleton()->get_static_memory_usage())+" sram: "+itos(OS::get_singleton()->get_dynamic_memory_usage()));
-// print_line("node count: "+itos(get_node_count()));
-// print_line("TEXTURE RAM: "+itos(VS::get_singleton()->get_render_info(VS::INFO_TEXTURE_MEM_USED)));
+ //print_line("ram: "+itos(OS::get_singleton()->get_static_memory_usage())+" sram: "+itos(OS::get_singleton()->get_dynamic_memory_usage()));
+ //print_line("node count: "+itos(get_node_count()));
+ //print_line("TEXTURE RAM: "+itos(VS::get_singleton()->get_render_info(VS::INFO_TEXTURE_MEM_USED)));
root_lock++;
@@ -573,7 +591,7 @@ bool SceneTree::idle(float p_time){
_flush_ugc();
_flush_transform_notifications(); //transforms after world update, to avoid unnecesary enter/exit notifications
- call_group(GROUP_CALL_REALTIME,"_viewports","update_worlds");
+ call_group_flags(GROUP_CALL_REALTIME,"_viewports","update_worlds");
root_lock--;
@@ -667,7 +685,7 @@ void SceneTree::_notification(int p_notification) {
} break;
case NOTIFICATION_WM_UNFOCUS_REQUEST: {
- notify_group(GROUP_CALL_REALTIME|GROUP_CALL_MULIILEVEL,"input",NOTIFICATION_WM_UNFOCUS_REQUEST);
+ notify_group_flags(GROUP_CALL_REALTIME|GROUP_CALL_MULTILEVEL,"input",NOTIFICATION_WM_UNFOCUS_REQUEST);
} break;
@@ -991,7 +1009,7 @@ uint32_t SceneTree::get_last_event_id() const {
}
-Variant SceneTree::_call_group(const Variant** p_args, int p_argcount, Variant::CallError& r_error) {
+Variant SceneTree::_call_group_flags(const Variant** p_args, int p_argcount, Variant::CallError& r_error) {
r_error.error=Variant::CallError::CALL_OK;
@@ -1011,11 +1029,33 @@ Variant SceneTree::_call_group(const Variant** p_args, int p_argcount, Variant::
v[i]=*p_args[i+3];
}
- call_group(flags,group,method,v[0],v[1],v[2],v[3],v[4]);
+ call_group_flags(flags,group,method,v[0],v[1],v[2],v[3],v[4]);
return Variant();
}
+Variant SceneTree::_call_group(const Variant** p_args, int p_argcount, Variant::CallError& r_error) {
+
+
+ r_error.error=Variant::CallError::CALL_OK;
+
+ ERR_FAIL_COND_V(p_argcount<2,Variant());
+ ERR_FAIL_COND_V(p_args[0]->get_type()!=Variant::STRING,Variant());
+ ERR_FAIL_COND_V(p_args[1]->get_type()!=Variant::STRING,Variant());
+
+ StringName group = *p_args[0];
+ StringName method = *p_args[1];
+ Variant v[VARIANT_ARG_MAX];
+
+ for(int i=0;i<MIN(p_argcount-2,5);i++) {
+
+ v[i]=*p_args[i+2];
+ }
+
+ call_group_flags(0,group,method,v[0],v[1],v[2],v[3],v[4]);
+ return Variant();
+}
+
int64_t SceneTree::get_frame() const {
return current_frame;
@@ -1138,8 +1178,8 @@ void SceneTree::_update_root_rect() {
Size2 viewport_size;
Size2 screen_size;
- float viewport_aspect = desired_res.get_aspect();
- float video_mode_aspect = video_mode.get_aspect();
+ float viewport_aspect = desired_res.aspect();
+ float video_mode_aspect = video_mode.aspect();
if (stretch_aspect==STRETCH_ASPECT_IGNORE || ABS(viewport_aspect - video_mode_aspect)<CMP_EPSILON) {
//same aspect or ignore aspect
@@ -1198,8 +1238,8 @@ void SceneTree::_update_root_rect() {
VisualServer::get_singleton()->black_bars_set_margins(0,0,0,0);
}
-// print_line("VP SIZE: "+viewport_size+" OFFSET: "+offset+" = "+(offset*2+viewport_size));
-// print_line("SS: "+video_mode);
+ //print_line("VP SIZE: "+viewport_size+" OFFSET: "+offset+" = "+(offset*2+viewport_size));
+ //print_line("SS: "+video_mode);
switch (stretch_mode) {
case STRETCH_MODE_2D: {
@@ -2181,10 +2221,6 @@ void SceneTree::_bind_methods() {
//ClassDB::bind_method(_MD("call_group","call_flags","group","method","arg1","arg2"),&SceneMainLoop::_call_group,DEFVAL(Variant()),DEFVAL(Variant()));
- ClassDB::bind_method(_MD("notify_group","call_flags","group","notification"),&SceneTree::notify_group);
- ClassDB::bind_method(_MD("set_group","call_flags","group","property","value"),&SceneTree::set_group);
-
- ClassDB::bind_method(_MD("get_nodes_in_group","group"),&SceneTree::_get_nodes_in_group);
ClassDB::bind_method(_MD("get_root:Viewport"),&SceneTree::get_root);
ClassDB::bind_method(_MD("has_group","name"),&SceneTree::has_group);
@@ -2222,13 +2258,30 @@ void SceneTree::_bind_methods() {
MethodInfo mi;
- mi.name="call_group";
+ mi.name="call_group_flags";
mi.arguments.push_back( PropertyInfo( Variant::INT, "flags"));
mi.arguments.push_back( PropertyInfo( Variant::STRING, "group"));
mi.arguments.push_back( PropertyInfo( Variant::STRING, "method"));
- ClassDB::bind_vararg_method(METHOD_FLAGS_DEFAULT,"call_group",&SceneTree::_call_group,mi);
+ ClassDB::bind_vararg_method(METHOD_FLAGS_DEFAULT,"call_group_flags",&SceneTree::_call_group_flags,mi);
+
+ ClassDB::bind_method(_MD("notify_group_flags","call_flags","group","notification"),&SceneTree::notify_group_flags);
+ ClassDB::bind_method(_MD("set_group_flags","call_flags","group","property","value"),&SceneTree::set_group_flags);
+
+ MethodInfo mi2;
+ mi2.name="call_group";
+ mi2.arguments.push_back( PropertyInfo( Variant::STRING, "group"));
+ mi2.arguments.push_back( PropertyInfo( Variant::STRING, "method"));
+
+
+ ClassDB::bind_vararg_method(METHOD_FLAGS_DEFAULT,"call_group",&SceneTree::_call_group,mi2);
+
+ ClassDB::bind_method(_MD("notify_group","call_flags","group","notification"),&SceneTree::notify_group);
+ ClassDB::bind_method(_MD("set_group","call_flags","group","property","value"),&SceneTree::set_group);
+
+ ClassDB::bind_method(_MD("get_nodes_in_group","group"),&SceneTree::_get_nodes_in_group);
+
ClassDB::bind_method(_MD("set_current_scene","child_node:Node"),&SceneTree::set_current_scene);
ClassDB::bind_method(_MD("get_current_scene:Node"),&SceneTree::get_current_scene);
diff --git a/scene/main/scene_main_loop.h b/scene/main/scene_main_loop.h
index 9de4abe81e..f4271e5454 100644
--- a/scene/main/scene_main_loop.h
+++ b/scene/main/scene_main_loop.h
@@ -242,9 +242,11 @@ friend class Node;
void _notify_group_pause(const StringName& p_group,int p_notification);
void _call_input_pause(const StringName& p_group,const StringName& p_method,const InputEvent& p_input);
+ Variant _call_group_flags(const Variant** p_args, int p_argcount, Variant::CallError& r_error);
Variant _call_group(const Variant** p_args, int p_argcount, Variant::CallError& r_error);
+
static void _debugger_request_tree(void *self);
void _flush_delete_queue();
//optimization
@@ -332,17 +334,20 @@ public:
GROUP_CALL_REVERSE=1,
GROUP_CALL_REALTIME=2,
GROUP_CALL_UNIQUE=4,
- GROUP_CALL_MULIILEVEL=8,
+ GROUP_CALL_MULTILEVEL=8,
};
_FORCE_INLINE_ Viewport *get_root() const { return root; }
uint32_t get_last_event_id() const;
- void call_group(uint32_t p_call_flags,const StringName& p_group,const StringName& p_function,VARIANT_ARG_LIST);
- void notify_group(uint32_t p_call_flags,const StringName& p_group,int p_notification);
- void set_group(uint32_t p_call_flags,const StringName& p_group,const String& p_name,const Variant& p_value);
+ void call_group_flags(uint32_t p_call_flags,const StringName& p_group,const StringName& p_function,VARIANT_ARG_LIST);
+ void notify_group_flags(uint32_t p_call_flags,const StringName& p_group,int p_notification);
+ void set_group_flags(uint32_t p_call_flags,const StringName& p_group,const String& p_name,const Variant& p_value);
+ void call_group(const StringName& p_group,const StringName& p_function,VARIANT_ARG_LIST);
+ void notify_group(const StringName& p_group,int p_notification);
+ void set_group(const StringName& p_group,const String& p_name,const Variant& p_value);
virtual void input_text( const String& p_text );
virtual void input_event( const InputEvent& p_event );
diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp
index a7d259ef06..c3ece76b05 100644
--- a/scene/main/viewport.cpp
+++ b/scene/main/viewport.cpp
@@ -293,12 +293,12 @@ void Viewport::_vp_enter_tree() {
VisualServer::get_singleton()->canvas_item_set_parent(canvas_item,parent_ci);
VisualServer::get_singleton()->canvas_item_set_visible(canvas_item,false);
-// VisualServer::get_singleton()->canvas_item_attach_viewport(canvas_item,viewport);
+ //VisualServer::get_singleton()->canvas_item_attach_viewport(canvas_item,viewport);
parent_control->connect("resized",this,"_parent_resized");
parent_control->connect("visibility_changed",this,"_parent_visibility_changed");
} else if (!parent){
-// VisualServer::get_singleton()->viewport_attach_to_screen(viewport,0);
+ //VisualServer::get_singleton()->viewport_attach_to_screen(viewport,0);
}
*/
@@ -389,7 +389,7 @@ void Viewport::_notification(int p_what) {
if (get_parent()) {
parent = get_parent()->get_viewport();
- VisualServer::get_singleton()->viewport_set_parent_viewport(viewport,parent->get_viewport());
+ VisualServer::get_singleton()->viewport_set_parent_viewport(viewport,parent->get_viewport_rid());
} else {
parent=NULL;
}
@@ -462,8 +462,10 @@ void Viewport::_notification(int p_what) {
if (world_2d.is_valid())
world_2d->_remove_viewport(this);
- //if (!render_target)
- // _vp_exit_tree();
+ /*
+ if (!render_target)
+ _vp_exit_tree();
+ */
VisualServer::get_singleton()->viewport_set_scenario(viewport,RID());
SpatialSoundServer::get_singleton()->listener_set_space(internal_listener, RID());
@@ -734,7 +736,7 @@ void Viewport::_notification(int p_what) {
}
}
-RID Viewport::get_viewport() const {
+RID Viewport::get_viewport_rid() const {
return viewport;
}
@@ -1309,7 +1311,7 @@ void Viewport::queue_screen_capture(){
}
Image Viewport::get_screen_capture() const {
-// return VS::get_singleton()->viewport_get_screen_capture(viewport);
+ //return VS::get_singleton()->viewport_get_screen_capture(viewport);
return Image();
}
@@ -1379,7 +1381,7 @@ Viewport::ShadowAtlasQuadrantSubdiv Viewport::get_shadow_atlas_quadrant_subdiv(i
void Viewport::clear() {
//clear=true;
-// VisualServer::get_singleton()->viewport_clear(viewport);
+ //VisualServer::get_singleton()->viewport_clear(viewport);
}
@@ -1399,9 +1401,11 @@ Transform2D Viewport::_get_input_pre_xform() const {
Vector2 Viewport::_get_window_offset() const {
-// if (parent_control) {
-// return (parent_control->get_viewport()->get_final_transform() * parent_control->get_global_transform_with_canvas()).get_origin();
-// }
+ /*
+ if (parent_control) {
+ return (parent_control->get_viewport()->get_final_transform() * parent_control->get_global_transform_with_canvas()).get_origin();
+ }
+ */
return Vector2();
}
@@ -1521,8 +1525,10 @@ void Viewport::_vp_unhandled_input(const InputEvent& p_ev) {
}
#endif
-// if (parent_control && !parent_control->is_visible_in_tree())
-// return;
+ /*
+ if (parent_control && !parent_control->is_visible_in_tree())
+ return;
+ */
if (to_screen_rect==Rect2())
return; //if render target, can't get input events
@@ -1647,7 +1653,7 @@ void Viewport::_gui_show_tooltip() {
void Viewport::_gui_call_input(Control *p_control,const InputEvent& p_input) {
-// _block();
+ //_block();
InputEvent ev = p_input;
@@ -1745,7 +1751,7 @@ Control* Viewport::_gui_find_control_at_pos(CanvasItem* p_node,const Point2& p_g
Control *c=p_node->cast_to<Control>();
if (c) {
- // print_line("at "+String(c->get_path())+" POS "+c->get_pos()+" bt "+p_xform);
+ //print_line("at "+String(c->get_path())+" POS "+c->get_pos()+" bt "+p_xform);
}
//subwindows first!!
@@ -1798,9 +1804,11 @@ void Viewport::_gui_input_event(InputEvent p_event) {
return;
}
//?
-// if (!is_visible()) {
-// return; //simple and plain
-// }
+ /*
+ if (!is_visible()) {
+ return; //simple and plain
+ }
+ */
switch(p_event.type) {
@@ -1849,10 +1857,10 @@ void Viewport::_gui_input_event(InputEvent p_event) {
//Matrix32 parent_xform;
- //if (data.parent_canvas_item)
- // parent_xform=data.parent_canvas_item->get_global_transform();
-
-
+ /*
+ if (data.parent_canvas_item)
+ parent_xform=data.parent_canvas_item->get_global_transform();
+ */
gui.mouse_focus = _gui_find_control(pos);
//print_line("has mf "+itos(gui.mouse_focus!=NULL));
@@ -1903,7 +1911,7 @@ void Viewport::_gui_input_event(InputEvent p_event) {
_gui_call_input(gui.mouse_focus,p_event);
}
- get_tree()->call_group(SceneTree::GROUP_CALL_REALTIME,"windows","_cancel_input_ID",p_event.ID);
+ get_tree()->call_group_flags(SceneTree::GROUP_CALL_REALTIME,"windows","_cancel_input_ID",p_event.ID);
get_tree()->set_input_as_handled();
@@ -1980,7 +1988,7 @@ void Viewport::_gui_input_event(InputEvent p_event) {
}*/
- get_tree()->call_group(SceneTree::GROUP_CALL_REALTIME,"windows","_cancel_input_ID",p_event.ID);
+ get_tree()->call_group_flags(SceneTree::GROUP_CALL_REALTIME,"windows","_cancel_input_ID",p_event.ID);
get_tree()->set_input_as_handled();
}
@@ -2419,7 +2427,7 @@ void Viewport::_gui_control_grab_focus(Control* p_control) {
if (gui.key_focus && gui.key_focus==p_control)
return;
- get_tree()->call_group(SceneTree::GROUP_CALL_REALTIME,"_viewports","_gui_remove_focus");
+ get_tree()->call_group_flags(SceneTree::GROUP_CALL_REALTIME,"_viewports","_gui_remove_focus");
gui.key_focus=p_control;
p_control->notification(Control::NOTIFICATION_FOCUS_ENTER);
p_control->update();
@@ -2746,7 +2754,7 @@ void Viewport::_bind_methods() {
ClassDB::bind_method(_MD("set_physics_object_picking","enable"), &Viewport::set_physics_object_picking);
ClassDB::bind_method(_MD("get_physics_object_picking"), &Viewport::get_physics_object_picking);
- ClassDB::bind_method(_MD("get_viewport"), &Viewport::get_viewport);
+ ClassDB::bind_method(_MD("get_viewport_rid"), &Viewport::get_viewport_rid);
ClassDB::bind_method(_MD("input","local_event"), &Viewport::input);
ClassDB::bind_method(_MD("unhandled_input","local_event"), &Viewport::unhandled_input);
@@ -2788,7 +2796,7 @@ void Viewport::_bind_methods() {
ADD_PROPERTY( PropertyInfo(Variant::RECT2,"size"), _SCS("set_size"), _SCS("get_size") );
ADD_PROPERTY( PropertyInfo(Variant::BOOL,"own_world"), _SCS("set_use_own_world"), _SCS("is_using_own_world") );
ADD_PROPERTY( PropertyInfo(Variant::OBJECT,"world",PROPERTY_HINT_RESOURCE_TYPE,"World"), _SCS("set_world"), _SCS("get_world") );
-// ADD_PROPERTY( PropertyInfo(Variant::OBJECT,"world_2d",PROPERTY_HINT_RESOURCE_TYPE,"World2D"), _SCS("set_world_2d"), _SCS("get_world_2d") );
+ //ADD_PROPERTY( PropertyInfo(Variant::OBJECT,"world_2d",PROPERTY_HINT_RESOURCE_TYPE,"World2D"), _SCS("set_world_2d"), _SCS("get_world_2d") );
ADD_PROPERTY( PropertyInfo(Variant::BOOL,"transparent_bg"), _SCS("set_transparent_background"), _SCS("has_transparent_background") );
ADD_GROUP("Rendering","");
ADD_PROPERTY( PropertyInfo(Variant::INT,"msaa",PROPERTY_HINT_ENUM,"Disabled,2x,4x,8x,16x"), _SCS("set_msaa"), _SCS("get_msaa") );
diff --git a/scene/main/viewport.h b/scene/main/viewport.h
index 1f30044cef..2831d177c9 100644
--- a/scene/main/viewport.h
+++ b/scene/main/viewport.h
@@ -340,7 +340,7 @@ public:
Size2 get_size() const;
Rect2 get_visible_rect() const;
- RID get_viewport() const;
+ RID get_viewport_rid() const;
void set_world(const Ref<World>& p_world);
void set_world_2d(const Ref<World2D>& p_world_2d);