1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

Add more template to Script_Create_dialog.cpp

This commit is contained in:
sersoong
2017-11-13 14:24:51 +08:00
parent aafb06cf9f
commit 875fd90467
5 changed files with 52 additions and 1 deletions

View File

@@ -123,7 +123,17 @@ void ScriptCreateDialog::_create_new() {
if (class_name->is_editable())
cname = class_name->get_text();
String text = ScriptServer::get_language(language_menu->get_selected())->get_template(cname, parent_name->get_text());
String text;
if (template_select==0) {
text = ScriptServer::get_language(language_menu->get_selected())->get_template(cname, parent_name->get_text());
} else if (template_select==1) {
text = ScriptServer::get_language(language_menu->get_selected())->get_empty_template(cname, parent_name->get_text());
} else if (template_select == 2) {
text = ScriptServer::get_language(language_menu->get_selected())->get_nocomment_template(cname, parent_name->get_text());
} else {
text = ScriptServer::get_language(language_menu->get_selected())->get_template(cname, parent_name->get_text());
}
Script *script = ScriptServer::get_language(language_menu->get_selected())->create_script();
script->set_source_code(text);
if (cname != "")
@@ -209,6 +219,11 @@ void ScriptCreateDialog::_lang_changed(int l) {
_class_name_changed(class_name->get_text());
}
void ScriptCreateDialog::_template_changed(int p_template) {
template_select = p_template;
}
void ScriptCreateDialog::_built_in_pressed() {
if (internal->is_pressed()) {
@@ -330,6 +345,7 @@ void ScriptCreateDialog::_bind_methods() {
ObjectTypeDB::bind_method("_class_name_changed", &ScriptCreateDialog::_class_name_changed);
ObjectTypeDB::bind_method("_lang_changed", &ScriptCreateDialog::_lang_changed);
ObjectTypeDB::bind_method("_template_changed", &ScriptCreateDialog::_template_changed);
ObjectTypeDB::bind_method("_built_in_pressed", &ScriptCreateDialog::_built_in_pressed);
ObjectTypeDB::bind_method("_browse_path", &ScriptCreateDialog::_browse_path);
ObjectTypeDB::bind_method("_file_selected", &ScriptCreateDialog::_file_selected);
@@ -370,6 +386,15 @@ ScriptCreateDialog::ScriptCreateDialog() {
language_menu->select(0);
language_menu->connect("item_selected", this, "_lang_changed");
template_menu = memnew(OptionButton);
vb->add_margin_child(TTR("Template"), template_menu);
template_menu->add_item(TTR("Default"));
template_menu->add_item(TTR("Empty GD File"));
template_menu->add_item(TTR("No Comment GD File"));
template_menu->select(0);
template_menu->connect("item_selected", this, "_template_changed");
//parent_name->set_text();
vb2 = memnew(VBoxContainer);