Skip to content

Commit 4c3b167

Browse files
committed
auto keyword removal, meta cleanup, saving case fix, review
1 parent 11d25c0 commit 4c3b167

File tree

6 files changed

+17
-25
lines changed

6 files changed

+17
-25
lines changed

editor/import/3d/resource_importer_scene.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1483,8 +1483,10 @@ Node *ResourceImporterScene::_post_fix_node(Node *p_node, Node *p_root, HashMap<
14831483
}
14841484

14851485
if (!isroot && node_settings.has("import/exposed")) {
1486-
p_node->set_meta(META_EXPOSED_IN_OWNER, bool(node_settings["import/exposed"]));
1487-
p_node->get_owner()->set_meta(META_CONTAINS_EXPOSED_NODES, true);
1486+
if (bool(node_settings["import/exposed"])) {
1487+
p_node->set_meta(META_EXPOSED_IN_OWNER, true);
1488+
p_node->get_owner()->set_meta(META_CONTAINS_EXPOSED_NODES, true);
1489+
}
14881490
}
14891491

14901492
if (Object::cast_to<ImporterMeshInstance3D>(p_node)) {
@@ -2781,7 +2783,9 @@ Node *ResourceImporterScene::_generate_meshes(Node *p_node, const Dictionary &p_
27812783
mesh_node->set_gi_mode(GeometryInstance3D::GI_MODE_STATIC);
27822784
} break;
27832785
}
2784-
mesh_node->set_meta(META_EXPOSED_IN_OWNER, src_mesh_node->has_meta(META_EXPOSED_IN_OWNER));
2786+
if (src_mesh_node->has_meta(META_EXPOSED_IN_OWNER)) {
2787+
mesh_node->set_meta(META_EXPOSED_IN_OWNER, true);
2788+
}
27852789
if (mesh_node->get_owner() != nullptr) {
27862790
mesh_node->get_owner()->set_meta(META_CONTAINS_EXPOSED_NODES, src_mesh_node->has_meta(META_EXPOSED_IN_OWNER));
27872791
}

editor/scene/scene_tree_editor.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ void SceneTreeEditor::_update_exposed_nodes(Node *p_node, TreeItem *p_parent, bo
325325
if (child->has_meta(META_EXPOSED_IN_OWNER) || child->has_meta(META_EXPOSED_IN_INSTANCE)) {
326326
_update_node_subtree(child, p_parent, p_force);
327327

328-
if (auto CI = node_cache.get(child)) {
328+
if (HashMap<Node *, CachedNode>::Iterator CI = node_cache.get(child)) {
329329
TreeItem *ti = CI->value.item;
330330

331331
if (p_last_inserted) {
@@ -398,7 +398,7 @@ void SceneTreeEditor::_update_node_subtree(Node *p_node, TreeItem *p_parent, boo
398398
if (p_node->has_meta(META_EXPOSED_IN_INSTANCE)) {
399399
int final_idx = 0;
400400
for (int i = 0; i < p_parent->get_child_count(); i++) {
401-
if (p_parent->get_child(i)->is_exposed() && p_parent->get_child(i) != I->value.item) {
401+
if (p_parent->get_child(i)->has_meta(META_EXPOSED_TREE_ITEM) && p_parent->get_child(i) != I->value.item) {
402402
final_idx++;
403403
}
404404
}
@@ -889,7 +889,7 @@ void SceneTreeEditor::_move_node_children(HashMap<Node *, CachedNode>::Iterator
889889
TreeItem *TI = item->get_child(i);
890890
HashMap<Node *, CachedNode>::Iterator CI = node_cache.find_by_item(TI);
891891
Node *n = CI->key;
892-
if (TI->is_exposed()) {
892+
if (TI->has_meta(META_EXPOSED_TREE_ITEM)) {
893893
ordered_children.push_back(n);
894894
}
895895
}
@@ -2526,7 +2526,7 @@ HashMap<Node *, SceneTreeEditor::CachedNode>::Iterator SceneTreeEditor::NodeCach
25262526
return HashMap<Node *, CachedNode>::Iterator();
25272527
}
25282528
if (p_node->has_meta(META_EXPOSED_IN_INSTANCE)) {
2529-
p_item->set_exposed(true);
2529+
p_item->set_meta(META_EXPOSED_TREE_ITEM, true);
25302530
}
25312531
return cache.insert(p_node, CachedNode(p_node, p_item));
25322532
}
@@ -2559,7 +2559,7 @@ HashMap<Node *, SceneTreeEditor::CachedNode>::Iterator SceneTreeEditor::NodeCach
25592559

25602560
HashMap<Node *, SceneTreeEditor::CachedNode>::Iterator
25612561
SceneTreeEditor::NodeCache::find_by_item(TreeItem *p_item) {
2562-
for (auto I = cache.begin(); I; ++I) {
2562+
for (HashMap<Node *, CachedNode>::Iterator I = cache.begin(); I; ++I) {
25632563
if (I->value.item == p_item) {
25642564
return I;
25652565
}

scene/gui/tree.cpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -839,17 +839,6 @@ bool TreeItem::is_visible_in_tree() const {
839839
return visible && parent_visible_in_tree;
840840
}
841841

842-
void TreeItem::set_exposed(bool p_exposed) {
843-
if (exposed == p_exposed) {
844-
return;
845-
}
846-
exposed = p_exposed;
847-
}
848-
849-
bool TreeItem::is_exposed() const {
850-
return exposed;
851-
}
852-
853842
void TreeItem::_handle_visibility_changed(bool p_visible) {
854843
TreeItem *child = get_first_child();
855844
while (child) {

scene/gui/tree.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -355,9 +355,6 @@ class TreeItem : public Object {
355355
bool is_visible();
356356
bool is_visible_in_tree() const;
357357

358-
void set_exposed(bool p_exposed);
359-
bool is_exposed() const;
360-
361358
void uncollapse_tree();
362359

363360
void set_custom_minimum_height(int p_height);
@@ -932,3 +929,5 @@ class Tree : public Control {
932929

933930
VARIANT_ENUM_CAST(Tree::SelectMode);
934931
VARIANT_ENUM_CAST(Tree::DropModeFlags);
932+
933+
#define META_EXPOSED_TREE_ITEM "_exposed_tree_item"

scene/main/node.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2304,7 +2304,7 @@ int Node::get_exposed_node_count(Node *p_owner, bool p_recursive) {
23042304
if (!KV.value->data.owner) {
23052305
continue;
23062306
}
2307-
if (this == p_owner && KV.value->get_import_path().is_empty() && KV.value->has_exposed_nodes()) {
2307+
if (this == p_owner && KV.value->is_part_of_edited_scene() && KV.value->has_exposed_nodes()) {
23082308
count--;
23092309
}
23102310
if (KV.value->has_meta(META_EXPOSED_IN_INSTANCE)) {

scene/resources/packed_scene.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -856,7 +856,7 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Has
856856
if (p_node->has_exposed_nodes()) {
857857
for (int i = 0; i < p_node->get_child_count(); i++) {
858858
Node *c = p_node->get_child(i);
859-
Error err = _parse_node(p_owner, c, NO_PARENT_SAVED, name_map, variant_map, node_map, nodepath_map);
859+
Error err = _parse_node(p_owner, c, NO_PARENT_SAVED, name_map, variant_map, node_map, nodepath_map, ids_saved);
860860
if (err) {
861861
return err;
862862
}
@@ -879,7 +879,7 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Has
879879
}
880880

881881
// Save the nodes that are chosen as exposed, so they can be restored on load.
882-
if (p_node->has_meta(META_MARKED_FOR_EXPOSURE) || (p_node->has_meta(META_EXPOSED_IN_OWNER) && p_node->get_owner() == p_owner)) {
882+
if (p_node->has_meta(META_MARKED_FOR_EXPOSURE) && (p_node->has_meta(META_EXPOSED_IN_OWNER) && p_node->get_owner() == p_owner)) {
883883
exposed_nodes.push_back(p_owner->get_path_to(p_node));
884884
}
885885

0 commit comments

Comments
 (0)