summaryrefslogtreecommitdiffstats
path: root/editor/editor_node.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/editor_node.cpp')
-rw-r--r--editor/editor_node.cpp31
1 files changed, 27 insertions, 4 deletions
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 44c9afebb6..7de3f58997 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -3089,17 +3089,40 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
}
}
-String EditorNode::adjust_scene_name_casing(const String &root_name) {
+String EditorNode::adjust_scene_name_casing(const String &p_root_name) {
switch (GLOBAL_GET("editor/naming/scene_name_casing").operator int()) {
case SCENE_NAME_CASING_AUTO:
// Use casing of the root node.
break;
case SCENE_NAME_CASING_PASCAL_CASE:
- return root_name.to_pascal_case();
+ return p_root_name.replace("-", "_").to_pascal_case();
case SCENE_NAME_CASING_SNAKE_CASE:
- return root_name.replace("-", "_").to_snake_case();
+ return p_root_name.replace("-", "_").to_snake_case();
+ case SCENE_NAME_CASING_KEBAB_CASE:
+ return p_root_name.to_snake_case().replace("_", "-");
}
- return root_name;
+ return p_root_name;
+}
+
+String EditorNode::adjust_script_name_casing(const String &p_file_name, ScriptLanguage::ScriptNameCasing p_auto_casing) {
+ int editor_casing = GLOBAL_GET("editor/naming/script_name_casing");
+ if (editor_casing == ScriptLanguage::SCRIPT_NAME_CASING_AUTO) {
+ // Use the script language's preferred casing.
+ editor_casing = p_auto_casing;
+ }
+
+ switch (editor_casing) {
+ case ScriptLanguage::SCRIPT_NAME_CASING_AUTO:
+ // Script language has no preference, so do not adjust.
+ break;
+ case ScriptLanguage::SCRIPT_NAME_CASING_PASCAL_CASE:
+ return p_file_name.replace("-", "_").to_pascal_case();
+ case ScriptLanguage::SCRIPT_NAME_CASING_SNAKE_CASE:
+ return p_file_name.replace("-", "_").to_snake_case();
+ case ScriptLanguage::SCRIPT_NAME_CASING_KEBAB_CASE:
+ return p_file_name.to_snake_case().replace("_", "-");
+ }
+ return p_file_name;
}
void EditorNode::_request_screenshot() {