diff options
Diffstat (limited to 'editor/script_create_dialog.cpp')
| -rw-r--r-- | editor/script_create_dialog.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/editor/script_create_dialog.cpp b/editor/script_create_dialog.cpp index d1a8aa62e5..7808cae0cd 100644 --- a/editor/script_create_dialog.cpp +++ b/editor/script_create_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -359,20 +360,28 @@ ScriptCreateDialog::ScriptCreateDialog() { language_menu = memnew(OptionButton); vb->add_margin_child(TTR("Language"), language_menu); + int default_lang = 0; for (int i = 0; i < ScriptServer::get_language_count(); i++) { - language_menu->add_item(ScriptServer::get_language(i)->get_name()); + String lang = ScriptServer::get_language(i)->get_name(); + language_menu->add_item(lang); + if (lang == "GDScript") { + default_lang = i; + } } editor_settings = EditorSettings::get_singleton(); String last_selected_language = editor_settings->get_project_metadata("script_setup", "last_selected_language", ""); - if (last_selected_language != "") - for (int i = 0; i < language_menu->get_item_count(); i++) + if (last_selected_language != "") { + for (int i = 0; i < language_menu->get_item_count(); i++) { if (language_menu->get_item_text(i) == last_selected_language) { language_menu->select(i); break; - } else - language_menu->select(0); + } + } + } else { + language_menu->select(default_lang); + } language_menu->connect("item_selected", this, "_lang_changed"); |