Allow auto-generated node names in PopupMenu::add_submenu_item

This commit is contained in:
Yuri Sizov 2023-11-09 15:37:08 +01:00
parent d1381bbca2
commit edcad2ea88
3 changed files with 12 additions and 3 deletions

View file

@ -4699,11 +4699,16 @@ String String::property_name_encode() const {
static const char32_t invalid_node_name_characters[] = { '.', ':', '@', '/', '\"', UNIQUE_NODE_PREFIX[0], 0 };
String String::get_invalid_node_name_characters() {
String String::get_invalid_node_name_characters(bool p_allow_internal) {
// Do not use this function for critical validation.
String r;
const char32_t *c = invalid_node_name_characters;
while (*c) {
if (p_allow_internal && *c == '@') {
c++;
continue;
}
if (c != invalid_node_name_characters) {
r += " ";
}

View file

@ -437,7 +437,7 @@ public:
String property_name_encode() const;
// node functions
static String get_invalid_node_name_characters();
static String get_invalid_node_name_characters(bool p_allow_internal = false);
String validate_node_name() const;
String validate_identifier() const;
String validate_filename() const;