Add Options, Functions and Settings to convert Node-Names and Strings to kebab-case
- refactored and renamed String::_camelcase_to_underscore to String:_separate_compound_words - refactored String::to_snake_case to work with the refactored String::_separate_compound_words - created char_utils::is_hyphen to catch all hyphen variants in kebab-case conversion - created String::to_kebab_case using the new String::_separate_compound_words - created corresponding Documentation in String and StringName - simplified both switch statements in EditorNode and ProjectDialog - added new kebab-casing Option for Node Names in ProjectSettings - added missing camelCase Options to Scene- and Node-Names in ProjectSettings - simplified Mono RuntimeInterop Functions - hooked up the ConnectionsDialog - created additional Unit Tests
This commit is contained in:
@ -1641,6 +1641,8 @@ String Node::adjust_name_casing(const String &p_name) {
|
||||
return p_name.to_camel_case();
|
||||
case NAME_CASING_SNAKE_CASE:
|
||||
return p_name.to_snake_case();
|
||||
case NAME_CASING_KEBAB_CASE:
|
||||
return p_name.to_kebab_case();
|
||||
}
|
||||
return p_name;
|
||||
}
|
||||
@ -3830,7 +3832,7 @@ RID Node::get_accessibility_element() const {
|
||||
|
||||
void Node::_bind_methods() {
|
||||
GLOBAL_DEF(PropertyInfo(Variant::INT, "editor/naming/node_name_num_separator", PROPERTY_HINT_ENUM, "None,Space,Underscore,Dash"), 0);
|
||||
GLOBAL_DEF(PropertyInfo(Variant::INT, "editor/naming/node_name_casing", PROPERTY_HINT_ENUM, "PascalCase,camelCase,snake_case"), NAME_CASING_PASCAL_CASE);
|
||||
GLOBAL_DEF(PropertyInfo(Variant::INT, "editor/naming/node_name_casing", PROPERTY_HINT_ENUM, "PascalCase,camelCase,snake_case,kebab-case"), NAME_CASING_PASCAL_CASE);
|
||||
|
||||
ClassDB::bind_static_method("Node", D_METHOD("print_orphan_nodes"), &Node::print_orphan_nodes);
|
||||
ClassDB::bind_method(D_METHOD("add_sibling", "sibling", "force_readable_name"), &Node::add_sibling, DEFVAL(false));
|
||||
|
||||
Reference in New Issue
Block a user