You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-12 13:20:55 +00:00
Show visual notice for visibility on Scene Dock
This commit is contained in:
@@ -402,6 +402,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node,TreeItem *p_parent) {
|
||||
if (!p_node->is_connected("visibility_changed",this,"_node_visibility_changed"))
|
||||
p_node->connect("visibility_changed",this,"_node_visibility_changed",varray(p_node));
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
} else if (p_node->is_type("Spatial")) {
|
||||
|
||||
bool h = p_node->call("is_hidden");
|
||||
@@ -413,6 +414,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node,TreeItem *p_parent) {
|
||||
if (!p_node->is_connected("visibility_changed",this,"_node_visibility_changed"))
|
||||
p_node->connect("visibility_changed",this,"_node_visibility_changed",varray(p_node));
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -478,9 +480,20 @@ void SceneTreeEditor::_node_visibility_changed(Node *p_node) {
|
||||
else
|
||||
item->set_button(0,idx,get_icon("Visible","EditorIcons"));
|
||||
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
}
|
||||
|
||||
void SceneTreeEditor::_update_visibility_color(Node *p_node, TreeItem *p_item) {
|
||||
if (p_node->is_type("CanvasItem") || p_node->is_type("Spatial")) {
|
||||
Color color(1,1,1,1);
|
||||
bool visible_on_screen = p_node->call("is_visible");
|
||||
if (!visible_on_screen) {
|
||||
color = Color(0.6,0.6,0.6,1);
|
||||
}
|
||||
int idx=p_item->get_button_by_id(0,BUTTON_VISIBILITY);
|
||||
p_item->set_button_color(0,idx,color);
|
||||
}
|
||||
}
|
||||
|
||||
void SceneTreeEditor::_node_script_changed(Node *p_node) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user