1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-06 12:20:30 +00:00

Deleting only repeating "Scripted Variables" props

This commit is contained in:
Hristo Stamenov
2022-02-22 20:25:33 +02:00
parent 0beb721c70
commit f9dba447b9

View File

@@ -3620,20 +3620,25 @@ void EditorInspector::_update_script_class_properties(const Object &p_object, Li
added.insert(pi.name); added.insert(pi.name);
r_list.insert_before(insert_here, pi); r_list.insert_before(insert_here, pi);
List<PropertyInfo>::Element *prop_below = bottom->next();
while (prop_below) {
if (prop_below->get() == pi) {
List<PropertyInfo>::Element *to_delete = prop_below;
prop_below = prop_below->next();
r_list.erase(to_delete);
} else {
prop_below = prop_below->next();
}
}
} }
// Script Variables -> NodeA (insert_here) -> A props... -> bottom // Script Variables -> NodeA (insert_here) -> A props... -> bottom
insert_here = category; insert_here = category;
} }
// NodeC -> C props... -> NodeB..C..
if (script_variables) { if (script_variables) {
r_list.erase(script_variables); r_list.erase(script_variables);
List<PropertyInfo>::Element *to_delete = bottom->next();
while (to_delete && !(to_delete->get().usage & PROPERTY_USAGE_CATEGORY)) {
r_list.erase(to_delete);
to_delete = bottom->next();
}
r_list.erase(bottom); r_list.erase(bottom);
} }
} }