summaryrefslogtreecommitdiff
path: root/editor
diff options
context:
space:
mode:
Diffstat (limited to 'editor')
-rw-r--r--editor/code_editor.cpp3
-rw-r--r--editor/doc/doc_data.cpp43
-rw-r--r--editor/doc/doc_dump.cpp8
-rw-r--r--editor/editor_audio_buses.cpp1
-rw-r--r--editor/editor_autoload_settings.cpp41
-rw-r--r--editor/editor_autoload_settings.h5
-rw-r--r--editor/editor_export.cpp2
-rw-r--r--editor/editor_feature_profile.cpp6
-rw-r--r--editor/editor_file_system.cpp10
-rw-r--r--editor/editor_help.cpp34
-rw-r--r--editor/editor_help_search.cpp2
-rw-r--r--editor/editor_inspector.cpp2
-rw-r--r--editor/editor_node.cpp13
-rw-r--r--editor/editor_plugin_settings.cpp12
-rw-r--r--editor/editor_profiler.cpp67
-rw-r--r--editor/editor_resource_preview.cpp2
-rw-r--r--editor/editor_sectioned_inspector.cpp6
-rw-r--r--editor/editor_settings.cpp8
-rw-r--r--editor/editor_themes.cpp105
-rw-r--r--editor/editor_vcs_interface.cpp2
-rw-r--r--editor/export_template_manager.cpp2
-rw-r--r--editor/filesystem_dock.cpp22
-rw-r--r--editor/groups_editor.cpp2
-rw-r--r--editor/import/editor_import_collada.cpp14
-rw-r--r--editor/import/editor_scene_importer_gltf.cpp17
-rw-r--r--editor/import/resource_importer_obj.cpp4
-rw-r--r--editor/inspector_dock.cpp1
-rw-r--r--editor/plugin_config_dialog.cpp14
-rw-r--r--editor/plugins/asset_library_editor_plugin.cpp5
-rw-r--r--editor/plugins/canvas_item_editor_plugin.cpp5
-rw-r--r--editor/plugins/script_editor_plugin.cpp6
-rw-r--r--editor/plugins/shader_editor_plugin.cpp4
-rw-r--r--editor/plugins/skeleton_editor_plugin.cpp9
-rw-r--r--editor/plugins/texture_region_editor_plugin.cpp11
-rw-r--r--editor/plugins/tile_map_editor_plugin.cpp11
-rw-r--r--editor/plugins/version_control_editor_plugin.cpp2
-rw-r--r--editor/plugins/visual_shader_editor_plugin.cpp35
-rw-r--r--editor/project_export.cpp2
-rw-r--r--editor/project_manager.cpp27
-rw-r--r--editor/rename_dialog.cpp53
-rw-r--r--editor/rename_dialog.h2
-rw-r--r--editor/scene_tree_dock.cpp2
-rw-r--r--editor/script_create_dialog.cpp10
-rw-r--r--editor/script_editor_debugger.cpp50
-rw-r--r--editor/script_editor_debugger.h1
-rw-r--r--editor/translations/af.po19
-rw-r--r--editor/translations/ar.po19
-rw-r--r--editor/translations/bg.po7
-rw-r--r--editor/translations/bn.po21
-rw-r--r--editor/translations/ca.po98
-rw-r--r--editor/translations/cs.po19
-rw-r--r--editor/translations/da.po19
-rw-r--r--editor/translations/de.po19
-rw-r--r--editor/translations/de_CH.po7
-rw-r--r--editor/translations/editor.pot7
-rw-r--r--editor/translations/el.po423
-rw-r--r--editor/translations/eo.po7
-rw-r--r--editor/translations/es.po24
-rw-r--r--editor/translations/es_AR.po26
-rw-r--r--editor/translations/et.po7
-rw-r--r--editor/translations/eu.po7
-rw-r--r--editor/translations/fa.po7
-rw-r--r--editor/translations/fi.po24
-rw-r--r--editor/translations/fil.po7
-rw-r--r--editor/translations/fr.po19
-rw-r--r--editor/translations/ga.po7
-rw-r--r--editor/translations/he.po7
-rw-r--r--editor/translations/hi.po7
-rw-r--r--editor/translations/hr.po7
-rw-r--r--editor/translations/hu.po19
-rw-r--r--editor/translations/id.po19
-rw-r--r--editor/translations/is.po7
-rw-r--r--editor/translations/it.po37
-rw-r--r--editor/translations/ja.po45
-rw-r--r--editor/translations/ka.po7
-rw-r--r--editor/translations/ko.po24
-rw-r--r--editor/translations/lt.po7
-rw-r--r--editor/translations/lv.po7
-rw-r--r--editor/translations/mi.po7
-rw-r--r--editor/translations/ml.po7
-rw-r--r--editor/translations/mr.po7
-rw-r--r--editor/translations/ms.po23
-rw-r--r--editor/translations/nb.po19
-rw-r--r--editor/translations/nl.po40
-rw-r--r--editor/translations/or.po7
-rw-r--r--editor/translations/pl.po30
-rw-r--r--editor/translations/pr.po7
-rw-r--r--editor/translations/pt_BR.po43
-rw-r--r--editor/translations/pt_PT.po24
-rw-r--r--editor/translations/ro.po19
-rw-r--r--editor/translations/ru.po23
-rw-r--r--editor/translations/si.po7
-rw-r--r--editor/translations/sk.po7
-rw-r--r--editor/translations/sl.po18
-rw-r--r--editor/translations/sq.po19
-rw-r--r--editor/translations/sr_Cyrl.po19
-rw-r--r--editor/translations/sr_Latn.po7
-rw-r--r--editor/translations/sv.po19
-rw-r--r--editor/translations/ta.po7
-rw-r--r--editor/translations/te.po7
-rw-r--r--editor/translations/th.po17
-rw-r--r--editor/translations/tr.po19
-rw-r--r--editor/translations/uk.po24
-rw-r--r--editor/translations/ur_PK.po7
-rw-r--r--editor/translations/vi.po7
-rw-r--r--editor/translations/zh_CN.po22
-rw-r--r--editor/translations/zh_HK.po7
-rw-r--r--editor/translations/zh_TW.po17
108 files changed, 980 insertions, 1175 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp
index 4f684c7bdc..e05ace53da 100644
--- a/editor/code_editor.cpp
+++ b/editor/code_editor.cpp
@@ -277,7 +277,8 @@ void FindReplaceBar::_replace_all() {
}
text_edit->set_v_scroll(vsval);
- set_error(vformat(TTR("Replaced %d occurrence(s)."), rc));
+ matches_label->add_color_override("font_color", rc > 0 ? get_color("font_color", "Label") : get_color("error_color", "Editor"));
+ matches_label->set_text(vformat(TTR("%d replaced."), rc));
text_edit->call_deferred("connect", "text_changed", this, "_editor_text_changed");
results_count = -1;
diff --git a/editor/doc/doc_data.cpp b/editor/doc/doc_data.cpp
index 26970446f5..adfffe27ba 100644
--- a/editor/doc/doc_data.cpp
+++ b/editor/doc/doc_data.cpp
@@ -233,7 +233,7 @@ void DocData::generate(bool p_basic_types) {
List<StringName> classes;
ClassDB::get_class_list(&classes);
classes.sort_custom<StringName::AlphCompare>();
- // Move ProjectSettings, so that other classes can register properties there
+ // Move ProjectSettings, so that other classes can register properties there.
classes.move_to_back(classes.find("ProjectSettings"));
bool skip_setter_getter_methods = true;
@@ -251,7 +251,6 @@ void DocData::generate(bool p_basic_types) {
ClassDoc &c = class_list[cname];
c.name = cname;
c.inherits = ClassDB::get_parent_class(name);
- c.category = ClassDB::get_category(name);
List<PropertyInfo> properties;
List<PropertyInfo> own_properties;
@@ -403,13 +402,10 @@ void DocData::generate(bool p_basic_types) {
} else {
const PropertyInfo &arginfo = E->get().arguments[i];
-
ArgumentDoc argument;
-
argument_doc_from_arginfo(argument, arginfo);
int darg_idx = i - (E->get().arguments.size() - E->get().default_arguments.size());
-
if (darg_idx >= 0) {
Variant default_arg = E->get().default_arguments[darg_idx];
argument.default_value = default_arg.get_construct_string();
@@ -433,14 +429,10 @@ void DocData::generate(bool p_basic_types) {
signal.name = EV->get().name;
for (int i = 0; i < EV->get().arguments.size(); i++) {
- PropertyInfo arginfo = EV->get().arguments[i];
+ const PropertyInfo &arginfo = EV->get().arguments[i];
ArgumentDoc argument;
- argument.name = arginfo.name;
- if (arginfo.type == Variant::OBJECT && arginfo.class_name != StringName()) {
- argument.type = arginfo.class_name.operator String();
- } else {
- argument.type = Variant::get_type_name(arginfo.type);
- }
+ argument_doc_from_arginfo(argument, arginfo);
+
signal.arguments.push_back(argument);
}
@@ -518,7 +510,7 @@ void DocData::generate(bool p_basic_types) {
}
{
- //so it can be documented that it does not exist
+ // So we can document the concept of Variant even if it's not a usable class per se.
class_list["Variant"] = ClassDoc();
class_list["Variant"].name = "Variant";
}
@@ -526,17 +518,18 @@ void DocData::generate(bool p_basic_types) {
if (!p_basic_types)
return;
+ // Add Variant types.
for (int i = 0; i < Variant::VARIANT_MAX; i++) {
-
+ if (i == Variant::NIL)
+ continue; // Not exposed outside of 'null', should not be in class list.
if (i == Variant::OBJECT)
- continue; //use the core type instead
+ continue; // Use the core type instead.
String cname = Variant::get_type_name(Variant::Type(i));
class_list[cname] = ClassDoc();
ClassDoc &c = class_list[cname];
c.name = cname;
- c.category = "Built-In Types";
Variant::CallError cerror;
Variant v = Variant::construct(Variant::Type(i), NULL, 0, cerror);
@@ -556,15 +549,10 @@ void DocData::generate(bool p_basic_types) {
for (int j = 0; j < mi.arguments.size(); j++) {
PropertyInfo arginfo = mi.arguments[j];
-
ArgumentDoc ad;
+ argument_doc_from_arginfo(ad, mi.arguments[j]);
ad.name = arginfo.name;
- if (arginfo.type == Variant::NIL)
- ad.type = "Variant";
- else
- ad.type = Variant::get_type_name(arginfo.type);
-
int defarg = mi.default_arguments.size() - mi.arguments.size() + j;
if (defarg >= 0)
ad.default_value = mi.default_arguments[defarg];
@@ -853,8 +841,6 @@ Error DocData::_load(Ref<XMLParser> parser) {
c.name = name;
if (parser->has_attribute("inherits"))
c.inherits = parser->get_attribute_value("inherits");
- if (parser->has_attribute("category"))
- c.category = parser->get_attribute_value("category");
while (parser->read() == OK) {
@@ -1044,25 +1030,24 @@ Error DocData::save_classes(const String &p_default_path, const Map<String, Stri
String header = "<class name=\"" + c.name + "\"";
if (c.inherits != "")
header += " inherits=\"" + c.inherits + "\"";
-
- String category = c.category;
- if (c.category == "")
- category = "Core";
- header += " category=\"" + category + "\"";
header += String(" version=\"") + VERSION_NUMBER + "\"";
header += ">";
_write_string(f, 0, header);
+
_write_string(f, 1, "<brief_description>");
_write_string(f, 2, c.brief_description.strip_edges().xml_escape());
_write_string(f, 1, "</brief_description>");
+
_write_string(f, 1, "<description>");
_write_string(f, 2, c.description.strip_edges().xml_escape());
_write_string(f, 1, "</description>");
+
_write_string(f, 1, "<tutorials>");
for (int i = 0; i < c.tutorials.size(); i++) {
_write_string(f, 2, "<link>" + c.tutorials.get(i).xml_escape() + "</link>");
}
_write_string(f, 1, "</tutorials>");
+
_write_string(f, 1, "<methods>");
c.methods.sort();
diff --git a/editor/doc/doc_dump.cpp b/editor/doc/doc_dump.cpp
index edb1a536c3..d7e1d257f2 100644
--- a/editor/doc/doc_dump.cpp
+++ b/editor/doc/doc_dump.cpp
@@ -93,16 +93,14 @@ void DocDump::dump(const String &p_file) {
String inherits = ClassDB::get_parent_class(name);
if (inherits != "")
header += " inherits=\"" + inherits + "\"";
- String category = ClassDB::get_category(name);
- if (category == "")
- category = "Core";
- header += " category=\"" + category + "\"";
- header += ">";
_write_string(f, 0, header);
+
_write_string(f, 1, "<brief_description>");
_write_string(f, 1, "</brief_description>");
+
_write_string(f, 1, "<description>");
_write_string(f, 1, "</description>");
+
_write_string(f, 1, "<methods>");
List<MethodInfo> method_list;
diff --git a/editor/editor_audio_buses.cpp b/editor/editor_audio_buses.cpp
index 3f773c646a..0a60aabd2d 100644
--- a/editor/editor_audio_buses.cpp
+++ b/editor/editor_audio_buses.cpp
@@ -856,7 +856,6 @@ EditorAudioBus::EditorAudioBus(EditorAudioBuses *p_buses, bool p_is_master) {
HBoxContainer *audioprev_hbc = memnew(HBoxContainer);
audioprev_hbc->set_v_size_flags(SIZE_EXPAND_FILL);
audioprev_hbc->set_h_size_flags(SIZE_EXPAND_FILL);
- audioprev_hbc->set_mouse_filter(MOUSE_FILTER_PASS);
audio_value_preview_box->add_child(audioprev_hbc);
audio_value_preview_label = memnew(Label);
diff --git a/editor/editor_autoload_settings.cpp b/editor/editor_autoload_settings.cpp
index 46a54969e0..dba8c2ec8c 100644
--- a/editor/editor_autoload_settings.cpp
+++ b/editor/editor_autoload_settings.cpp
@@ -120,6 +120,7 @@ void EditorAutoloadSettings::_autoload_add() {
autoload_add_path->get_line_edit()->set_text("");
autoload_add_name->set_text("");
+ add_autoload->set_disabled(true);
}
void EditorAutoloadSettings::_autoload_selected() {
@@ -312,7 +313,34 @@ void EditorAutoloadSettings::_autoload_open(const String &fpath) {
void EditorAutoloadSettings::_autoload_file_callback(const String &p_path) {
- autoload_add_name->set_text(p_path.get_file().get_basename());
+ // Convert the file name to PascalCase, which is the convention for classes in GDScript.
+ const String class_name = p_path.get_file().get_basename().capitalize().replace(" ", "");
+
+ // If the name collides with a built-in class, prefix the name to make it possible to add without having to edit the name.
+ // The prefix is subjective, but it provides better UX than leaving the Add button disabled :)
+ const String prefix = ClassDB::class_exists(class_name) ? "Global" : "";
+
+ autoload_add_name->set_text(prefix + class_name);
+ add_autoload->set_disabled(false);
+}
+
+void EditorAutoloadSettings::_autoload_text_entered(const String p_name) {
+
+ if (autoload_add_path->get_line_edit()->get_text() != "" && _autoload_name_is_valid(p_name, NULL)) {
+ _autoload_add();
+ }
+}
+
+void EditorAutoloadSettings::_autoload_path_text_changed(const String p_path) {
+
+ add_autoload->set_disabled(
+ p_path == "" || !_autoload_name_is_valid(autoload_add_name->get_text(), NULL));
+}
+
+void EditorAutoloadSettings::_autoload_text_changed(const String p_name) {
+
+ add_autoload->set_disabled(
+ autoload_add_path->get_line_edit()->get_text() == "" || !_autoload_name_is_valid(p_name, NULL));
}
Node *EditorAutoloadSettings::_create_autoload(const String &p_path) {
@@ -424,7 +452,7 @@ void EditorAutoloadSettings::update_autoload() {
item->set_editable(2, true);
item->set_text(2, TTR("Enable"));
item->set_checked(2, info.is_singleton);
- item->add_button(3, get_icon("FileList", "EditorIcons"), BUTTON_OPEN);
+ item->add_button(3, get_icon("Load", "EditorIcons"), BUTTON_OPEN);
item->add_button(3, get_icon("MoveUp", "EditorIcons"), BUTTON_MOVE_UP);
item->add_button(3, get_icon("MoveDown", "EditorIcons"), BUTTON_MOVE_DOWN);
item->add_button(3, get_icon("Remove", "EditorIcons"), BUTTON_DELETE);
@@ -713,7 +741,9 @@ void EditorAutoloadSettings::_bind_methods() {
ClassDB::bind_method("_autoload_edited", &EditorAutoloadSettings::_autoload_edited);
ClassDB::bind_method("_autoload_button_pressed", &EditorAutoloadSettings::_autoload_button_pressed);
ClassDB::bind_method("_autoload_activated", &EditorAutoloadSettings::_autoload_activated);
+ ClassDB::bind_method("_autoload_path_text_changed", &EditorAutoloadSettings::_autoload_path_text_changed);
ClassDB::bind_method("_autoload_text_entered", &EditorAutoloadSettings::_autoload_text_entered);
+ ClassDB::bind_method("_autoload_text_changed", &EditorAutoloadSettings::_autoload_text_changed);
ClassDB::bind_method("_autoload_open", &EditorAutoloadSettings::_autoload_open);
ClassDB::bind_method("_autoload_file_callback", &EditorAutoloadSettings::_autoload_file_callback);
@@ -806,6 +836,8 @@ EditorAutoloadSettings::EditorAutoloadSettings() {
autoload_add_path->set_h_size_flags(SIZE_EXPAND_FILL);
autoload_add_path->get_file_dialog()->set_mode(EditorFileDialog::MODE_OPEN_FILE);
autoload_add_path->get_file_dialog()->connect("file_selected", this, "_autoload_file_callback");
+ autoload_add_path->get_line_edit()->connect("text_changed", this, "_autoload_path_text_changed");
+
hbc->add_child(autoload_add_path);
l = memnew(Label);
@@ -815,11 +847,14 @@ EditorAutoloadSettings::EditorAutoloadSettings() {
autoload_add_name = memnew(LineEdit);
autoload_add_name->set_h_size_flags(SIZE_EXPAND_FILL);
autoload_add_name->connect("text_entered", this, "_autoload_text_entered");
+ autoload_add_name->connect("text_changed", this, "_autoload_text_changed");
hbc->add_child(autoload_add_name);
- Button *add_autoload = memnew(Button);
+ add_autoload = memnew(Button);
add_autoload->set_text(TTR("Add"));
add_autoload->connect("pressed", this, "_autoload_add");
+ // The button will be enabled once a valid name is entered (either automatically or manually).
+ add_autoload->set_disabled(true);
hbc->add_child(add_autoload);
tree = memnew(Tree);
diff --git a/editor/editor_autoload_settings.h b/editor/editor_autoload_settings.h
index e1a04644aa..653a1b0a78 100644
--- a/editor/editor_autoload_settings.h
+++ b/editor/editor_autoload_settings.h
@@ -76,6 +76,7 @@ class EditorAutoloadSettings : public VBoxContainer {
Tree *tree;
EditorLineEditFileChooser *autoload_add_path;
LineEdit *autoload_add_name;
+ Button *add_autoload;
bool _autoload_name_is_valid(const String &p_name, String *r_error = NULL);
@@ -84,7 +85,9 @@ class EditorAutoloadSettings : public VBoxContainer {
void _autoload_edited();
void _autoload_button_pressed(Object *p_item, int p_column, int p_button);
void _autoload_activated();
- void _autoload_text_entered(String) { _autoload_add(); }
+ void _autoload_path_text_changed(const String p_path);
+ void _autoload_text_entered(const String p_name);
+ void _autoload_text_changed(const String p_name);
void _autoload_open(const String &fpath);
void _autoload_file_callback(const String &p_path);
Node *_create_autoload(const String &p_path);
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp
index d66b386f93..3d8ea0b040 100644
--- a/editor/editor_export.cpp
+++ b/editor/editor_export.cpp
@@ -748,7 +748,7 @@ Error EditorExportPlatform::export_project_files(const Ref<EditorExportPreset> &
config.instance();
Error err = config->load(path + ".import");
if (err != OK) {
- ERR_PRINTS("Could not parse: '" + path + "', not exported.");
+ ERR_PRINT("Could not parse: '" + path + "', not exported.");
continue;
}
diff --git a/editor/editor_feature_profile.cpp b/editor/editor_feature_profile.cpp
index a4a7a0cd45..559a0ef0ea 100644
--- a/editor/editor_feature_profile.cpp
+++ b/editor/editor_feature_profile.cpp
@@ -192,14 +192,14 @@ Error EditorFeatureProfile::load_from_file(const String &p_path) {
Variant v;
err = JSON::parse(text, v, err_str, err_line);
if (err != OK) {
- ERR_PRINTS("Error parsing '" + p_path + "' on line " + itos(err_line) + ": " + err_str);
+ ERR_PRINT("Error parsing '" + p_path + "' on line " + itos(err_line) + ": " + err_str);
return ERR_PARSE_ERROR;
}
Dictionary json = v;
if (!json.has("type") || String(json["type"]) != "feature_profile") {
- ERR_PRINTS("Error parsing '" + p_path + "', it's not a feature profile.");
+ ERR_PRINT("Error parsing '" + p_path + "', it's not a feature profile.");
return ERR_PARSE_ERROR;
}
@@ -298,7 +298,7 @@ void EditorFeatureProfileManager::_notification(int p_what) {
current.instance();
Error err = current->load_from_file(EditorSettings::get_singleton()->get_feature_profiles_dir().plus_file(current_profile + ".profile"));
if (err != OK) {
- ERR_PRINTS("Error loading default feature profile: " + current_profile);
+ ERR_PRINT("Error loading default feature profile: " + current_profile);
current_profile = String();
current.unref();
}
diff --git a/editor/editor_file_system.cpp b/editor/editor_file_system.cpp
index 5abb3c4ec2..04fe6e5ce6 100644
--- a/editor/editor_file_system.cpp
+++ b/editor/editor_file_system.cpp
@@ -387,7 +387,7 @@ bool EditorFileSystem::_test_for_reimport(const String &p_path, bool p_only_impo
if (err == ERR_FILE_EOF) {
break;
} else if (err != OK) {
- ERR_PRINTS("ResourceFormatImporter::load - '" + p_path + ".import:" + itos(lines) + "' error '" + error_text + "'.");
+ ERR_PRINT("ResourceFormatImporter::load - '" + p_path + ".import:" + itos(lines) + "' error '" + error_text + "'.");
memdelete(f);
return false; //parse error, try reimport manually (Avoid reimport loop on broken file)
}
@@ -435,7 +435,7 @@ bool EditorFileSystem::_test_for_reimport(const String &p_path, bool p_only_impo
if (err == ERR_FILE_EOF) {
break;
} else if (err != OK) {
- ERR_PRINTS("ResourceFormatImporter::load - '" + p_path + ".import.md5:" + itos(lines) + "' error '" + error_text + "'.");
+ ERR_PRINT("ResourceFormatImporter::load - '" + p_path + ".import.md5:" + itos(lines) + "' error '" + error_text + "'.");
memdelete(md5s);
return false; // parse error
}
@@ -734,7 +734,7 @@ void EditorFileSystem::_scan_new_dir(EditorFileSystemDirectory *p_dir, DirAccess
da->change_dir("..");
}
} else {
- ERR_PRINTS("Cannot go into subdir '" + E->get() + "'.");
+ ERR_PRINT("Cannot go into subdir '" + E->get() + "'.");
}
p_progress.update(idx, total);
@@ -1114,7 +1114,7 @@ void EditorFileSystem::_notification(int p_what) {
Thread::wait_to_finish(thread);
memdelete(thread);
thread = NULL;
- WARN_PRINTS("Scan thread aborted...");
+ WARN_PRINT("Scan thread aborted...");
set_process(false);
}
@@ -1780,7 +1780,7 @@ void EditorFileSystem::_reimport_file(const String &p_file) {
Error err = importer->import(p_file, base_path, params, &import_variants, &gen_files, &metadata);
if (err != OK) {
- ERR_PRINTS("Error importing '" + p_file + "'.");
+ ERR_PRINT("Error importing '" + p_file + "'.");
}
//as import is complete, save the .import file
diff --git a/editor/editor_help.cpp b/editor/editor_help.cpp
index d3c50423b7..556dbcbfc4 100644
--- a/editor/editor_help.cpp
+++ b/editor/editor_help.cpp
@@ -468,39 +468,31 @@ void EditorHelp::_update_doc() {
}
// Online tutorials
- {
+ if (cd.tutorials.size()) {
class_desc->push_color(title_color);
class_desc->push_font(doc_title_font);
class_desc->add_text(TTR("Online Tutorials"));
class_desc->pop();
class_desc->pop();
- class_desc->push_indent(1);
+ class_desc->push_indent(1);
class_desc->push_font(doc_code_font);
-
class_desc->add_newline();
- // class_desc->add_newline();
-
- if (cd.tutorials.size() != 0) {
- for (int i = 0; i < cd.tutorials.size(); i++) {
- String link = cd.tutorials[i];
- String linktxt = link;
- int seppos = linktxt.find("//");
- if (seppos != -1) {
- linktxt = link.right(seppos + 2);
- }
-
- class_desc->push_color(symbol_color);
- class_desc->append_bbcode("[url=" + link + "]" + linktxt + "[/url]");
- class_desc->pop();
- class_desc->add_newline();
+ for (int i = 0; i < cd.tutorials.size(); i++) {
+ const String link = cd.tutorials[i];
+ String linktxt = link;
+ const int seppos = linktxt.find("//");
+ if (seppos != -1) {
+ linktxt = link.right(seppos + 2);
}
- } else {
- class_desc->push_color(comment_color);
- class_desc->append_bbcode(TTR("There are currently no tutorials for this class, you can [color=$color][url=$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/url][/color].").replace("$url2", REQUEST_URL).replace("$url", CONTRIBUTE2_URL).replace("$color", link_color_text));
+
+ class_desc->push_color(symbol_color);
+ class_desc->append_bbcode("[url=" + link + "]" + linktxt + "[/url]");
class_desc->pop();
+ class_desc->add_newline();
}
+
class_desc->pop();
class_desc->pop();
class_desc->add_newline();
diff --git a/editor/editor_help_search.cpp b/editor/editor_help_search.cpp
index 700d9b692b..80981e8fa1 100644
--- a/editor/editor_help_search.cpp
+++ b/editor/editor_help_search.cpp
@@ -307,7 +307,7 @@ bool EditorHelpSearch::Runner::_slice() {
case PHASE_MAX:
return true;
default:
- WARN_PRINTS("Invalid or unhandled phase in EditorHelpSearch::Runner, aborting search.");
+ WARN_PRINT("Invalid or unhandled phase in EditorHelpSearch::Runner, aborting search.");
return true;
};
diff --git a/editor/editor_inspector.cpp b/editor/editor_inspector.cpp
index 56da7d93fa..7c1e58862e 100644
--- a/editor/editor_inspector.cpp
+++ b/editor/editor_inspector.cpp
@@ -1596,7 +1596,7 @@ void EditorInspector::update_tree() {
if (capitalize_paths)
cat = cat.capitalize();
- if (!filter.is_subsequence_ofi(cat) && !filter.is_subsequence_ofi(name))
+ if (!filter.is_subsequence_ofi(cat) && !filter.is_subsequence_ofi(name) && property_prefix.to_lower().find(filter.to_lower()) == -1)
continue;
}
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index c5b67eb971..7d0601e8db 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -1765,6 +1765,8 @@ void EditorNode::_edit_current() {
return;
}
+ Object *prev_inspected_object = get_inspector()->get_edited_object();
+
bool capitalize = bool(EDITOR_GET("interface/inspector/capitalize_properties"));
bool disable_folding = bool(EDITOR_GET("interface/inspector/disable_folding"));
bool is_resource = current_obj->is_class("Resource");
@@ -1856,6 +1858,11 @@ void EditorNode::_edit_current() {
inspector_dock->update(NULL);
}
+ if (current_obj == prev_inspected_object) {
+ // Make sure inspected properties are restored.
+ get_inspector()->update_tree();
+ }
+
inspector_dock->set_warning(editable_warning);
if (get_inspector()->is_capitalize_paths_enabled() != capitalize) {
@@ -2725,7 +2732,7 @@ void EditorNode::_tool_menu_option(int p_idx) {
handler->call(callback, (const Variant **)&ud, 1, ce);
if (ce.error != Variant::CallError::CALL_OK) {
String err = Variant::get_call_error_text(handler, callback, (const Variant **)&ud, 1, ce);
- ERR_PRINTS("Error calling function from tool menu: " + err);
+ ERR_PRINT("Error calling function from tool menu: " + err);
}
} // else it's a submenu so don't do anything.
} break;
@@ -3035,7 +3042,7 @@ void EditorNode::set_addon_plugin_enabled(const String &p_addon, bool p_enabled,
}
ps->set("editor_plugins/enabled", enabled_plugins);
ps->save();
- WARN_PRINTS("Addon '" + p_addon + "' failed to load. No directory found. Removing from enabled plugins.");
+ WARN_PRINT("Addon '" + p_addon + "' failed to load. No directory found. Removing from enabled plugins.");
return;
}
Error err = cf->load(addon_path);
@@ -3981,7 +3988,7 @@ void EditorNode::show_warning(const String &p_text, const String &p_title) {
warning->set_title(p_title);
warning->popup_centered_minsize();
} else {
- WARN_PRINTS(p_title + " " + p_text);
+ WARN_PRINT(p_title + " " + p_text);
}
}
diff --git a/editor/editor_plugin_settings.cpp b/editor/editor_plugin_settings.cpp
index b81a996956..16decf5c04 100644
--- a/editor/editor_plugin_settings.cpp
+++ b/editor/editor_plugin_settings.cpp
@@ -96,28 +96,28 @@ void EditorPluginSettings::update_plugins() {
Error err2 = cf->load(path);
if (err2 != OK) {
- WARN_PRINTS("Can't load plugin config: " + path);
+ WARN_PRINT("Can't load plugin config: " + path);
} else {
bool key_missing = false;
if (!cf->has_section_key("plugin", "name")) {
- WARN_PRINTS("Plugin config misses \"plugin/name\" key: " + path);
+ WARN_PRINT("Plugin config misses \"plugin/name\" key: " + path);
key_missing = true;
}
if (!cf->has_section_key("plugin", "author")) {
- WARN_PRINTS("Plugin config misses \"plugin/author\" key: " + path);
+ WARN_PRINT("Plugin config misses \"plugin/author\" key: " + path);
key_missing = true;
}
if (!cf->has_section_key("plugin", "version")) {
- WARN_PRINTS("Plugin config misses \"plugin/version\" key: " + path);
+ WARN_PRINT("Plugin config misses \"plugin/version\" key: " + path);
key_missing = true;
}
if (!cf->has_section_key("plugin", "description")) {
- WARN_PRINTS("Plugin config misses \"plugin/description\" key: " + path);
+ WARN_PRINT("Plugin config misses \"plugin/description\" key: " + path);
key_missing = true;
}
if (!cf->has_section_key("plugin", "script")) {
- WARN_PRINTS("Plugin config misses \"plugin/script\" key: " + path);
+ WARN_PRINT("Plugin config misses \"plugin/script\" key: " + path);
key_missing = true;
}
diff --git a/editor/editor_profiler.cpp b/editor/editor_profiler.cpp
index 4807f8839c..e5a9c4d699 100644
--- a/editor/editor_profiler.cpp
+++ b/editor/editor_profiler.cpp
@@ -102,26 +102,28 @@ void EditorProfiler::clear() {
}
static String _get_percent_txt(float p_value, float p_total) {
- if (p_total == 0)
+ if (p_total == 0) {
p_total = 0.00001;
+ }
+
return String::num((p_value / p_total) * 100, 1) + "%";
}
String EditorProfiler::_get_time_as_text(const Metric &m, float p_time, int p_calls) {
- int dmode = display_mode->get_selected();
+ const int dmode = display_mode->get_selected();
if (dmode == DISPLAY_FRAME_TIME) {
- return rtos(p_time);
+ return rtos(p_time * 1000).pad_decimals(2) + " ms";
} else if (dmode == DISPLAY_AVERAGE_TIME) {
- if (p_calls == 0)
- return "0";
- else
- return rtos(p_time / p_calls);
+ if (p_calls == 0) {
+ return "0.00 ms";
+ } else {
+ return rtos((p_time / p_calls) * 1000).pad_decimals(2) + " ms";
+ }
} else if (dmode == DISPLAY_FRAME_PERCENT) {
return _get_percent_txt(p_time, m.frame_time);
} else if (dmode == DISPLAY_PHYSICS_FRAME_PERCENT) {
-
return _get_percent_txt(p_time, m.physics_frame_time);
}
@@ -163,12 +165,10 @@ void EditorProfiler::_item_edited() {
void EditorProfiler::_update_plot() {
- int w = graph->get_size().width;
- int h = graph->get_size().height;
-
+ const int w = graph->get_size().width;
+ const int h = graph->get_size().height;
bool reset_texture = false;
-
- int desired_len = w * h * 4;
+ const int desired_len = w * h * 4;
if (graph_image.size() != desired_len) {
reset_texture = true;
@@ -176,18 +176,19 @@ void EditorProfiler::_update_plot() {
}
PoolVector<uint8_t>::Write wr = graph_image.write();
+ const Color background_color = get_color("dark_color_2", "Editor");
- //clear
+ // Clear the previous frame and set the background color.
for (int i = 0; i < desired_len; i += 4) {
- wr[i + 0] = 0;
- wr[i + 1] = 0;
- wr[i + 2] = 0;
+ wr[i + 0] = Math::fast_ftoi(background_color.r * 255);
+ wr[i + 1] = Math::fast_ftoi(background_color.g * 255);
+ wr[i + 2] = Math::fast_ftoi(background_color.b * 255);
wr[i + 3] = 255;
}
//find highest value
- bool use_self = display_time->get_selected() == DISPLAY_SELF_TIME;
+ const bool use_self = display_time->get_selected() == DISPLAY_SELF_TIME;
float highest = 0;
for (int i = 0; i < frame_metrics.size(); i++) {
@@ -319,21 +320,23 @@ void EditorProfiler::_update_plot() {
for (int j = 0; j < h * 4; j += 4) {
- int a = column[j + 3];
+ const int a = column[j + 3];
if (a > 0) {
column[j + 0] /= a;
column[j + 1] /= a;
column[j + 2] /= a;
}
- uint8_t r = uint8_t(column[j + 0]);
- uint8_t g = uint8_t(column[j + 1]);
- uint8_t b = uint8_t(column[j + 2]);
+ const uint8_t red = uint8_t(column[j + 0]);
+ const uint8_t green = uint8_t(column[j + 1]);
+ const uint8_t blue = uint8_t(column[j + 2]);
+ const bool is_filled = red >= 1 || green >= 1 || blue >= 1;
+ const int widx = ((j >> 2) * w + i) * 4;
- int widx = ((j >> 2) * w + i) * 4;
- wr[widx + 0] = r;
- wr[widx + 1] = g;
- wr[widx + 2] = b;
+ // If the pixel isn't filled by any profiler line, apply the background color instead.
+ wr[widx + 0] = is_filled ? red : Math::fast_ftoi(background_color.r * 255);
+ wr[widx + 1] = is_filled ? green : Math::fast_ftoi(background_color.g * 255);
+ wr[widx + 2] = is_filled ? blue : Math::fast_ftoi(background_color.b * 255);
wr[widx + 3] = 255;
}
}
@@ -729,7 +732,7 @@ EditorProfiler::EditorProfiler() {
h_split->set_v_size_flags(SIZE_EXPAND_FILL);
variables = memnew(Tree);
- variables->set_custom_minimum_size(Size2(300, 0) * EDSCALE);
+ variables->set_custom_minimum_size(Size2(320, 0) * EDSCALE);
variables->set_hide_folding(true);
h_split->add_child(variables);
variables->set_hide_root(true);
@@ -737,10 +740,10 @@ EditorProfiler::EditorProfiler() {
variables->set_column_titles_visible(true);
variables->set_column_title(0, TTR("Name"));
variables->set_column_expand(0, true);
- variables->set_column_min_width(0, 60);
+ variables->set_column_min_width(0, 60 * EDSCALE);
variables->set_column_title(1, TTR("Time"));
variables->set_column_expand(1, false);
- variables->set_column_min_width(1, 60 * EDSCALE);
+ variables->set_column_min_width(1, 100 * EDSCALE);
variables->set_column_title(2, TTR("Calls"));
variables->set_column_expand(2, false);
variables->set_column_min_width(2, 60 * EDSCALE);
@@ -749,7 +752,6 @@ EditorProfiler::EditorProfiler() {
graph = memnew(TextureRect);
graph->set_expand(true);
graph->set_mouse_filter(MOUSE_FILTER_STOP);
- //graph->set_ignore_mouse(false);
graph->connect("draw", this, "_graph_tex_draw");
graph->connect("gui_input", this, "_graph_tex_input");
graph->connect("mouse_exited", this, "_graph_tex_mouse_exit");
@@ -760,13 +762,10 @@ EditorProfiler::EditorProfiler() {
int metric_size = CLAMP(int(EDITOR_DEF("debugger/profiler_frame_history_size", 600)), 60, 1024);
frame_metrics.resize(metric_size);
last_metric = -1;
- //cursor_metric=-1;
hover_metric = -1;
EDITOR_DEF("debugger/profiler_frame_max_functions", 64);
- //display_mode=DISPLAY_FRAME_TIME;
-
frame_delay = memnew(Timer);
frame_delay->set_wait_time(0.1);
frame_delay->set_one_shot(true);
@@ -784,6 +783,4 @@ EditorProfiler::EditorProfiler() {
seeking = false;
graph_height = 1;
-
- //activate->set_disabled(true);
}
diff --git a/editor/editor_resource_preview.cpp b/editor/editor_resource_preview.cpp
index f63d4884e2..1f2a02c9a0 100644
--- a/editor/editor_resource_preview.cpp
+++ b/editor/editor_resource_preview.cpp
@@ -297,7 +297,7 @@ void EditorResourcePreview::_thread() {
if (!f) {
// Not returning as this would leave the thread hanging and would require
// some proper cleanup/disabling of resource preview generation.
- ERR_PRINTS("Cannot create file '" + file + "'. Check user write permissions.");
+ ERR_PRINT("Cannot create file '" + file + "'. Check user write permissions.");
} else {
f->store_line(itos(thumbnail_size));
f->store_line(itos(has_small_texture));
diff --git a/editor/editor_sectioned_inspector.cpp b/editor/editor_sectioned_inspector.cpp
index 28825b45e1..2090c12c91 100644
--- a/editor/editor_sectioned_inspector.cpp
+++ b/editor/editor_sectioned_inspector.cpp
@@ -245,6 +245,9 @@ void SectionedInspector::update_category_list() {
if (pi.name.find(":") != -1 || pi.name == "script" || pi.name == "resource_name" || pi.name == "resource_path" || pi.name == "resource_local_to_scene" || pi.name.begins_with("_global_script"))
continue;
+ if (!filter.empty() && !filter.is_subsequence_ofi(pi.name) && !filter.is_subsequence_ofi(pi.name.replace("/", " ").capitalize()))
+ continue;
+
int sp = pi.name.find("/");
if (sp == -1)
pi.name = "global/" + pi.name;
@@ -252,9 +255,6 @@ void SectionedInspector::update_category_list() {
Vector<String> sectionarr = pi.name.split("/");
String metasection;
- if (!filter.empty() && !filter.is_subsequence_ofi(sectionarr[sectionarr.size() - 1].capitalize()))
- continue;
-
int sc = MIN(2, sectionarr.size() - 1);
for (int i = 0; i < sc; i++) {
diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp
index 92e3f61ca5..715ce6bea7 100644
--- a/editor/editor_settings.cpp
+++ b/editor/editor_settings.cpp
@@ -148,7 +148,7 @@ bool EditorSettings::_get(const StringName &p_name, Variant &r_ret) const {
const VariantContainer *v = props.getptr(p_name);
if (!v) {
- WARN_PRINTS("EditorSettings::_get - Property not found: " + String(p_name));
+ WARN_PRINT("EditorSettings::_get - Property not found: " + String(p_name));
return false;
}
r_ret = v->variant;
@@ -794,13 +794,13 @@ void EditorSettings::create() {
self_contained = true;
Error err = extra_config->load(exe_path + "/._sc_");
if (err != OK) {
- ERR_PRINTS("Can't load config from path '" + exe_path + "/._sc_'.");
+ ERR_PRINT("Can't load config from path '" + exe_path + "/._sc_'.");
}
} else if (d->file_exists(exe_path + "/_sc_")) {
self_contained = true;
Error err = extra_config->load(exe_path + "/_sc_");
if (err != OK) {
- ERR_PRINTS("Can't load config from path '" + exe_path + "/_sc_'.");
+ ERR_PRINT("Can't load config from path '" + exe_path + "/_sc_'.");
}
}
memdelete(d);
@@ -1056,7 +1056,7 @@ void EditorSettings::save() {
Error err = ResourceSaver::save(singleton->config_file_path, singleton);
if (err != OK) {
- ERR_PRINTS("Error saving editor settings to " + singleton->config_file_path);
+ ERR_PRINT("Error saving editor settings to " + singleton->config_file_path);
} else {
print_verbose("EditorSettings: Save OK!");
}
diff --git a/editor/editor_themes.cpp b/editor/editor_themes.cpp
index 621f531687..28bc20a957 100644
--- a/editor/editor_themes.cpp
+++ b/editor/editor_themes.cpp
@@ -35,7 +35,11 @@
#include "editor_icons.gen.h"
#include "editor_scale.h"
#include "editor_settings.h"
+
+#include "modules/modules_enabled.gen.h"
+#ifdef MODULE_SVG_ENABLED
#include "modules/svg/image_loader_svg.h"
+#endif
static Ref<StyleBoxTexture> make_stylebox(Ref<Texture> p_texture, float p_left, float p_top, float p_right, float p_botton, float p_margin_left = -1, float p_margin_top = -1, float p_margin_right = -1, float p_margin_botton = -1, bool p_draw_center = true) {
Ref<StyleBoxTexture> style(memnew(StyleBoxTexture));
@@ -89,7 +93,11 @@ Ref<ImageTexture> editor_generate_icon(int p_index, bool p_convert_color, float
// dumb gizmo check
bool is_gizmo = String(editor_icons_names[p_index]).begins_with("Gizmo");
- ImageLoaderSVG::create_image_from_string(img, editor_icons_sources[p_index], p_scale, true, p_convert_color);
+ // Upsample icon generation only if the editor scale isn't an integer multiplier.
+ // Generating upsampled icons is slower, and the benefit is hardly visible
+ // with integer editor scales.
+ const bool upsample = !Math::is_equal_approx(Math::round(p_scale), p_scale);
+ ImageLoaderSVG::create_image_from_string(img, editor_icons_sources[p_index], p_scale, upsample, p_convert_color);
if ((p_scale - (float)((int)p_scale)) > 0.0 || is_gizmo || p_force_filter)
icon->create_from_image(img); // in this case filter really helps
@@ -105,8 +113,16 @@ Ref<ImageTexture> editor_generate_icon(int p_index, bool p_convert_color, float
void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme = true, int p_thumb_size = 32, bool p_only_thumbs = false) {
-#ifdef SVG_ENABLED
+#ifdef MODULE_SVG_ENABLED
+ // The default icon theme is designed to be used for a dark theme.
+ // This dictionary stores color codes to convert to other colors
+ // for better readability on a light theme.
Dictionary dark_icon_color_dictionary;
+
+ // The names of the icons to never convert, even if one of their colors
+ // are contained in the dictionary above.
+ Set<StringName> exceptions;
+
if (!p_dark_theme) {
// convert color: FROM TO
ADD_CONVERT_COLOR(dark_icon_color_dictionary, "#e0e0e0", "#5a5a5a"); // common icon color
@@ -172,9 +188,31 @@ void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme =
ADD_CONVERT_COLOR(dark_icon_color_dictionary, "#69ec9a", "#2ce573"); // VS rid
ADD_CONVERT_COLOR(dark_icon_color_dictionary, "#79f3e8", "#12d5c3"); // VS object
ADD_CONVERT_COLOR(dark_icon_color_dictionary, "#77edb1", "#57e99f"); // VS dict
+
+ exceptions.insert("EditorPivot");
+ exceptions.insert("EditorHandle");
+ exceptions.insert("Editor3DHandle");
+ exceptions.insert("Godot");
+ exceptions.insert("PanoramaSky");
+ exceptions.insert("ProceduralSky");
+ exceptions.insert("EditorControlAnchor");
+ exceptions.insert("DefaultProjectIcon");
+ exceptions.insert("GuiCloseCustomizable");
+ exceptions.insert("GuiGraphNodePort");
+ exceptions.insert("GuiResizer");
+ exceptions.insert("ZoomMore");
+ exceptions.insert("ZoomLess");
+ exceptions.insert("ZoomReset");
+ exceptions.insert("LockViewport");
+ exceptions.insert("GroupViewport");
+ exceptions.insert("StatusError");
+ exceptions.insert("StatusSuccess");
+ exceptions.insert("StatusWarning");
+ exceptions.insert("NodeWarning");
+ exceptions.insert("OverbrightIndicator");
}
- // these ones should be converted even if we are using a dark theme
+ // These ones should be converted even if we are using a dark theme.
const Color error_color = p_theme->get_color("error_color", "Editor");
const Color success_color = p_theme->get_color("success_color", "Editor");
const Color warning_color = p_theme->get_color("warning_color", "Editor");
@@ -182,65 +220,44 @@ void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme =
dark_icon_color_dictionary[Color::html("#45ff8b")] = success_color;
dark_icon_color_dictionary[Color::html("#dbab09")] = warning_color;
- List<String> exceptions;
- exceptions.push_back("EditorPivot");
- exceptions.push_back("EditorHandle");
- exceptions.push_back("Editor3DHandle");
- exceptions.push_back("Godot");
- exceptions.push_back("PanoramaSky");
- exceptions.push_back("ProceduralSky");
- exceptions.push_back("EditorControlAnchor");
- exceptions.push_back("DefaultProjectIcon");
- exceptions.push_back("GuiCloseCustomizable");
- exceptions.push_back("GuiGraphNodePort");
- exceptions.push_back("GuiResizer");
- exceptions.push_back("ZoomMore");
- exceptions.push_back("ZoomLess");
- exceptions.push_back("ZoomReset");
- exceptions.push_back("LockViewport");
- exceptions.push_back("GroupViewport");
- exceptions.push_back("StatusError");
- exceptions.push_back("StatusSuccess");
- exceptions.push_back("StatusWarning");
- exceptions.push_back("NodeWarning");
- exceptions.push_back("OverbrightIndicator");
-
ImageLoaderSVG::set_convert_colors(&dark_icon_color_dictionary);
- // generate icons
- if (!p_only_thumbs)
+ // Generate icons.
+ if (!p_only_thumbs) {
for (int i = 0; i < editor_icons_count; i++) {
- List<String>::Element *is_exception = exceptions.find(editor_icons_names[i]);
- if (is_exception) exceptions.erase(is_exception);
- Ref<ImageTexture> icon = editor_generate_icon(i, !is_exception);
+ const int is_exception = exceptions.has(editor_icons_names[i]);
+ const Ref<ImageTexture> icon = editor_generate_icon(i, !is_exception);
+
p_theme->set_icon(editor_icons_names[i], "EditorIcons", icon);
}
+ }
- // generate thumb files with the given thumb size
- bool force_filter = p_thumb_size != 64 && p_thumb_size != 32; // we don't need filter with original resolution
+ // Generate thumbnail icons with the given thumbnail size.
+ // We don't need filtering when generating at one of the default resolutions.
+ const bool force_filter = p_thumb_size != 64 && p_thumb_size != 32;
if (p_thumb_size >= 64) {
- float scale = (float)p_thumb_size / 64.0 * EDSCALE;
+ const float scale = (float)p_thumb_size / 64.0 * EDSCALE;
for (int i = 0; i < editor_bg_thumbs_count; i++) {
- int index = editor_bg_thumbs_indices[i];
- List<String>::Element *is_exception = exceptions.find(editor_icons_names[index]);
- if (is_exception) exceptions.erase(is_exception);
- Ref<ImageTexture> icon = editor_generate_icon(index, !p_dark_theme && !is_exception, scale, force_filter);
+ const int index = editor_bg_thumbs_indices[i];
+ const int is_exception = exceptions.has(editor_icons_names[index]);
+ const Ref<ImageTexture> icon = editor_generate_icon(index, !p_dark_theme && !is_exception, scale, force_filter);
+
p_theme->set_icon(editor_icons_names[index], "EditorIcons", icon);
}
} else {
- float scale = (float)p_thumb_size / 32.0 * EDSCALE;
+ const float scale = (float)p_thumb_size / 32.0 * EDSCALE;
for (int i = 0; i < editor_md_thumbs_count; i++) {
- int index = editor_md_thumbs_indices[i];
- List<String>::Element *is_exception = exceptions.find(editor_icons_names[index]);
- if (is_exception) exceptions.erase(is_exception);
- Ref<ImageTexture> icon = editor_generate_icon(index, !p_dark_theme && !is_exception, scale, force_filter);
+ const int index = editor_md_thumbs_indices[i];
+ const bool is_exception = exceptions.has(editor_icons_names[index]);
+ const Ref<ImageTexture> icon = editor_generate_icon(index, !p_dark_theme && !is_exception, scale, force_filter);
+
p_theme->set_icon(editor_icons_names[index], "EditorIcons", icon);
}
}
ImageLoaderSVG::set_convert_colors(NULL);
#else
- print_line("SVG support disabled, editor icons won't be rendered.");
+ WARN_PRINT("SVG support disabled, editor icons won't be rendered.");
#endif
}
diff --git a/editor/editor_vcs_interface.cpp b/editor/editor_vcs_interface.cpp
index 0562c3ba43..c420cf44e7 100644
--- a/editor/editor_vcs_interface.cpp
+++ b/editor/editor_vcs_interface.cpp
@@ -63,7 +63,7 @@ void EditorVCSInterface::_bind_methods() {
bool EditorVCSInterface::_initialize(String p_project_root_path) {
- WARN_PRINT("Selected VCS addon does not implement an initialization function. This warning will be suppressed.")
+ WARN_PRINT("Selected VCS addon does not implement an initialization function. This warning will be suppressed.");
return true;
}
diff --git a/editor/export_template_manager.cpp b/editor/export_template_manager.cpp
index cb636f8cdc..7ed6688154 100644
--- a/editor/export_template_manager.cpp
+++ b/editor/export_template_manager.cpp
@@ -638,7 +638,7 @@ Error ExportTemplateManager::install_android_template() {
FileAccess::set_unix_permissions(to_write, (info.external_fa >> 16) & 0x01FF);
#endif
} else {
- ERR_PRINTS("Can't uncompress file: " + to_write);
+ ERR_PRINT("Can't uncompress file: " + to_write);
}
}
diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp
index 62effb406d..5041441ac3 100644
--- a/editor/filesystem_dock.cpp
+++ b/editor/filesystem_dock.cpp
@@ -1413,17 +1413,13 @@ void FileSystemDock::_move_operation_confirm(const String &p_to_path, bool overw
if (!can_move) {
// Ask to do something.
overwrite_dialog->popup_centered_minsize();
- overwrite_dialog->grab_focus();
return;
}
}
// Check groups.
for (int i = 0; i < to_move.size(); i++) {
-
- print_line("is group: " + to_move[i].path + ": " + itos(EditorFileSystem::get_singleton()->is_group_file(to_move[i].path)));
if (to_move[i].is_file && EditorFileSystem::get_singleton()->is_group_file(to_move[i].path)) {
- print_line("move to: " + p_to_path.plus_file(to_move[i].path.get_file()));
EditorFileSystem::get_singleton()->move_group_file(to_move[i].path, p_to_path.plus_file(to_move[i].path.get_file()));
}
}
@@ -1442,7 +1438,7 @@ void FileSystemDock::_move_operation_confirm(const String &p_to_path, bool overw
if (is_moved) {
int current_tab = editor->get_current_tab();
- _save_scenes_after_move(file_renames); //save scenes before updating
+ _save_scenes_after_move(file_renames); // Save scenes before updating.
_update_dependencies_after_move(file_renames);
_update_resource_paths_after_move(file_renames);
_update_project_settings_after_move(file_renames);
@@ -1948,7 +1944,7 @@ bool FileSystemDock::can_drop_data_fw(const Point2 &p_point, const Variant &p_da
return false;
// Attempting to move a folder into itself will fail later,
- // rather than bring up a message don't try to do it in the first place
+ // rather than bring up a message don't try to do it in the first place.
to_dir = to_dir.ends_with("/") ? to_dir : (to_dir + "/");
Vector<String> fnames = drag_data["files"];
for (int i = 0; i < fnames.size(); ++i) {
@@ -2050,11 +2046,15 @@ void FileSystemDock::drop_data_fw(const Point2 &p_point, const Variant &p_data,
Vector<String> fnames = drag_data["files"];
to_move.clear();
for (int i = 0; i < fnames.size(); i++) {
- to_move.push_back(FileOrFolder(fnames[i], !fnames[i].ends_with("/")));
+ if (fnames[i].get_base_dir() != to_dir) {
+ to_move.push_back(FileOrFolder(fnames[i], !fnames[i].ends_with("/")));
+ }
+ }
+ if (!to_move.empty()) {
+ _move_operation_confirm(to_dir);
}
- _move_operation_confirm(to_dir);
} else if (favorite) {
- // Add the files from favorites
+ // Add the files from favorites.
Vector<String> fnames = drag_data["files"];
Vector<String> favorites = EditorSettings::get_singleton()->get_favorites();
for (int i = 0; i < fnames.size(); i++) {
@@ -2103,6 +2103,10 @@ void FileSystemDock::_get_drag_target_folder(String &target, bool &target_favori
// We drop on a folder.
target = fpath;
return;
+ } else {
+ // We drop on the folder that the target file is in.
+ target = fpath.get_base_dir();
+ return;
}
} else {
if (ti->get_parent() != tree->get_root()->get_children()) {
diff --git a/editor/groups_editor.cpp b/editor/groups_editor.cpp
index 83259afb35..c76ff9d679 100644
--- a/editor/groups_editor.cpp
+++ b/editor/groups_editor.cpp
@@ -197,7 +197,7 @@ void GroupDialog::_add_group(String p_name) {
}
String name = p_name.strip_edges();
- if (name == "" || groups->search_item_text(name)) {
+ if (name.empty() || groups->get_item_with_text(name)) {
return;
}
diff --git a/editor/import/editor_import_collada.cpp b/editor/import/editor_import_collada.cpp
index b3f97714ae..e2d8dc8962 100644
--- a/editor/import/editor_import_collada.cpp
+++ b/editor/import/editor_import_collada.cpp
@@ -892,7 +892,7 @@ Error ColladaImport::_create_mesh_surfaces(bool p_optimize, Ref<ArrayMesh> &p_me
material = material_cache[target];
} else if (p.material != "") {
- WARN_PRINTS("Collada: Unreferenced material in geometry instance: " + p.material);
+ WARN_PRINT("Collada: Unreferenced material in geometry instance: " + p.material);
}
}
@@ -1210,7 +1210,7 @@ Error ColladaImport::_create_resources(Collada::Node *p_node, bool p_use_compres
mesh_cache[meshid] = mesh;
} else {
- WARN_PRINTS("Collada: Will not import geometry: " + meshid);
+ WARN_PRINT("Collada: Will not import geometry: " + meshid);
}
}
@@ -1237,7 +1237,7 @@ Error ColladaImport::_create_resources(Collada::Node *p_node, bool p_use_compres
mi->set_surface_material(i, material);
} else if (matname != "") {
- WARN_PRINTS("Collada: Unreferenced material in geometry instance: " + matname);
+ WARN_PRINT("Collada: Unreferenced material in geometry instance: " + matname);
}
}
}
@@ -1408,7 +1408,7 @@ void ColladaImport::create_animations(bool p_make_tracks_in_all_bones, bool p_im
node = node_name_map[at.target];
} else {
- WARN_PRINTS("Collada: Couldn't find node: " + at.target);
+ WARN_PRINT("Collada: Couldn't find node: " + at.target);
continue;
}
} else {
@@ -1588,7 +1588,7 @@ void ColladaImport::create_animation(int p_clip, bool p_make_tracks_in_all_bones
}
if (xform_idx == -1) {
- WARN_PRINTS("Collada: Couldn't find matching node " + at.target + " xform for track " + at.param + ".");
+ WARN_PRINT("Collada: Couldn't find matching node " + at.target + " xform for track " + at.param + ".");
continue;
}
@@ -1666,7 +1666,7 @@ void ColladaImport::create_animation(int p_clip, bool p_make_tracks_in_all_bones
Collada::Node *cn = collada.state.scene_map[E->key()];
if (cn->ignore_anim) {
- WARN_PRINTS("Collada: Ignoring animation on node: " + path);
+ WARN_PRINT("Collada: Ignoring animation on node: " + path);
continue;
}
@@ -1735,7 +1735,7 @@ void ColladaImport::create_animation(int p_clip, bool p_make_tracks_in_all_bones
//matrix
WARN_PRINT("Collada: Value keys for matrices not supported.");
} else {
- WARN_PRINTS("Collada: Unexpected amount of value keys: " + itos(data.size()));
+ WARN_PRINT("Collada: Unexpected amount of value keys: " + itos(data.size()));
}
animation->track_insert_key(track, time, value);
diff --git a/editor/import/editor_scene_importer_gltf.cpp b/editor/import/editor_scene_importer_gltf.cpp
index a418915830..d4664e1bb9 100644
--- a/editor/import/editor_scene_importer_gltf.cpp
+++ b/editor/import/editor_scene_importer_gltf.cpp
@@ -29,6 +29,7 @@
/*************************************************************************/
#include "editor_scene_importer_gltf.h"
+
#include "core/crypto/crypto_core.h"
#include "core/io/json.h"
#include "core/math/disjoint_set.h"
@@ -233,7 +234,7 @@ Error EditorSceneImporterGLTF::_parse_scenes(GLTFState &state) {
if (state.json.has("scene")) {
loaded_scene = state.json["scene"];
} else {
- WARN_PRINT("The load-time scene is not defined in the glTF2 file. Picking the first scene.")
+ WARN_PRINT("The load-time scene is not defined in the glTF2 file. Picking the first scene.");
}
if (scenes.size()) {
@@ -2438,7 +2439,7 @@ Error EditorSceneImporterGLTF::_parse_animations(GLTFState &state) {
track->weight_tracks.write[k] = cf;
}
} else {
- WARN_PRINTS("Invalid path '" + path + "'.");
+ WARN_PRINT("Invalid path '" + path + "'.");
}
}
@@ -2634,22 +2635,22 @@ template <>
struct EditorSceneImporterGLTFInterpolate<Quat> {
Quat lerp(const Quat &a, const Quat &b, const float c) const {
- ERR_FAIL_COND_V(!a.is_normalized(), Quat());
- ERR_FAIL_COND_V(!b.is_normalized(), Quat());
+ ERR_FAIL_COND_V_MSG(!a.is_normalized(), Quat(), "The quaternion \"a\" must be normalized.");
+ ERR_FAIL_COND_V_MSG(!b.is_normalized(), Quat(), "The quaternion \"b\" must be normalized.");
return a.slerp(b, c).normalized();
}
Quat catmull_rom(const Quat &p0, const Quat &p1, const Quat &p2, const Quat &p3, const float c) {
- ERR_FAIL_COND_V(!p1.is_normalized(), Quat());
- ERR_FAIL_COND_V(!p2.is_normalized(), Quat());
+ ERR_FAIL_COND_V_MSG(!p1.is_normalized(), Quat(), "The quaternion \"p1\" must be normalized.");
+ ERR_FAIL_COND_V_MSG(!p2.is_normalized(), Quat(), "The quaternion \"p2\" must be normalized.");
return p1.slerp(p2, c).normalized();
}
Quat bezier(const Quat start, const Quat control_1, const Quat control_2, const Quat end, const float t) {
- ERR_FAIL_COND_V(!start.is_normalized(), Quat());
- ERR_FAIL_COND_V(!end.is_normalized(), Quat());
+ ERR_FAIL_COND_V_MSG(!start.is_normalized(), Quat(), "The start quaternion must be normalized.");
+ ERR_FAIL_COND_V_MSG(!end.is_normalized(), Quat(), "The end quaternion must be normalized.");
return start.slerp(end, t).normalized();
}
diff --git a/editor/import/resource_importer_obj.cpp b/editor/import/resource_importer_obj.cpp
index b1ed59a2db..bdd6a197f8 100644
--- a/editor/import/resource_importer_obj.cpp
+++ b/editor/import/resource_importer_obj.cpp
@@ -63,7 +63,7 @@ static Error _parse_material_library(const String &p_path, Map<String, Ref<Spati
material_map[current_name] = current;
} else if (l.begins_with("Ka ")) {
//uv
- WARN_PRINTS("OBJ: Ambient light for material '" + current_name + "' is ignored in PBR");
+ WARN_PRINT("OBJ: Ambient light for material '" + current_name + "' is ignored in PBR");
} else if (l.begins_with("Kd ")) {
//normal
@@ -119,7 +119,7 @@ static Error _parse_material_library(const String &p_path, Map<String, Ref<Spati
} else if (l.begins_with("map_Ka ")) {
//uv
- WARN_PRINTS("OBJ: Ambient light texture for material '" + current_name + "' is ignored in PBR");
+ WARN_PRINT("OBJ: Ambient light texture for material '" + current_name + "' is ignored in PBR");
} else if (l.begins_with("map_Kd ")) {
//normal
diff --git a/editor/inspector_dock.cpp b/editor/inspector_dock.cpp
index 2be3464d30..b65482cc6b 100644
--- a/editor/inspector_dock.cpp
+++ b/editor/inspector_dock.cpp
@@ -584,6 +584,7 @@ InspectorDock::InspectorDock(EditorNode *p_editor, EditorData &p_editor_data) {
add_child(warning);
warning->set_text(TTR("Changes may be lost!"));
warning->set_icon(get_icon("NodeWarning", "EditorIcons"));
+ warning->set_clip_text(true);
warning->hide();
warning->connect("pressed", this, "_warning_pressed");
diff --git a/editor/plugin_config_dialog.cpp b/editor/plugin_config_dialog.cpp
index 07b87633a9..1506ba319c 100644
--- a/editor/plugin_config_dialog.cpp
+++ b/editor/plugin_config_dialog.cpp
@@ -35,9 +35,13 @@
#include "editor/editor_plugin.h"
#include "editor/editor_scale.h"
#include "editor/project_settings_editor.h"
-#include "modules/gdscript/gdscript.h"
#include "scene/gui/grid_container.h"
+#include "modules/modules_enabled.gen.h"
+#ifdef MODULE_GDSCRIPT_ENABLED
+#include "modules/gdscript/gdscript.h"
+#endif
+
void PluginConfigDialog::_clear_fields() {
name_edit->set_text("");
subfolder_edit->set_text("");
@@ -75,6 +79,9 @@ void PluginConfigDialog::_on_confirmed() {
// TODO Use script templates. Right now, this code won't add the 'tool' annotation to other languages.
// TODO Better support script languages with named classes (has_named_classes).
+ // FIXME: It's hacky to have hardcoded access to the GDScript module here.
+ // The editor code should not have to know what languages are enabled.
+#ifdef MODULE_GDSCRIPT_ENABLED
if (lang_name == GDScriptLanguage::get_singleton()->get_name()) {
// Hard-coded GDScript template to keep usability until we use script templates.
Ref<Script> gdscript = memnew(GDScript);
@@ -95,12 +102,15 @@ void PluginConfigDialog::_on_confirmed() {
ResourceSaver::save(script_path, gdscript);
script = gdscript;
} else {
+#endif
String script_path = path.plus_file(script_edit->get_text());
String class_name = script_path.get_file().get_basename();
script = ScriptServer::get_language(lang_idx)->get_template(class_name, "EditorPlugin");
script->set_path(script_path);
ResourceSaver::save(script_path, script);
+#ifdef MODULE_GDSCRIPT_ENABLED
}
+#endif
emit_signal("plugin_ready", script.operator->(), active_edit->is_pressed() ? subfolder_edit->get_text() : "");
} else {
@@ -229,9 +239,11 @@ PluginConfigDialog::PluginConfigDialog() {
for (int i = 0; i < ScriptServer::get_language_count(); i++) {
ScriptLanguage *lang = ScriptServer::get_language(i);
script_option_edit->add_item(lang->get_name());
+#ifdef MODULE_GDSCRIPT_ENABLED
if (lang == GDScriptLanguage::get_singleton()) {
default_lang = i;
}
+#endif
}
script_option_edit->select(default_lang);
grid->add_child(script_option_edit);
diff --git a/editor/plugins/asset_library_editor_plugin.cpp b/editor/plugins/asset_library_editor_plugin.cpp
index 4f73a5eaea..2428bf82d4 100644
--- a/editor/plugins/asset_library_editor_plugin.cpp
+++ b/editor/plugins/asset_library_editor_plugin.cpp
@@ -139,8 +139,6 @@ EditorAssetLibraryItem::EditorAssetLibraryItem() {
set_custom_minimum_size(Size2(250, 100) * EDSCALE);
set_h_size_flags(SIZE_EXPAND_FILL);
-
- set_mouse_filter(MOUSE_FILTER_PASS);
}
//////////////////////////////////////////////////////////////////////////////
@@ -812,7 +810,7 @@ void EditorAssetLibrary::_image_request_completed(int p_status, int p_code, cons
_image_update(p_code == HTTPClient::RESPONSE_NOT_MODIFIED, true, p_data, p_queue_id);
} else {
- WARN_PRINTS("Error getting image file from URL: " + image_queue[p_queue_id].image_url);
+ WARN_PRINT("Error getting image file from URL: " + image_queue[p_queue_id].image_url);
Object *obj = ObjectDB::get_instance(image_queue[p_queue_id].target);
if (obj) {
obj->call("set_image", image_queue[p_queue_id].image_type, image_queue[p_queue_id].image_index, get_icon("FileBrokenBigThumb", "EditorIcons"));
@@ -1455,7 +1453,6 @@ EditorAssetLibrary::EditorAssetLibrary(bool p_templates_only) {
library_scroll->add_child(library_vb_border);
library_vb_border->add_style_override("panel", border2);
library_vb_border->set_h_size_flags(SIZE_EXPAND_FILL);
- library_vb_border->set_mouse_filter(MOUSE_FILTER_PASS);
library_vb = memnew(VBoxContainer);
library_vb->set_h_size_flags(SIZE_EXPAND_FILL);
diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp
index d3cbf2947e..a0e5b1c6ea 100644
--- a/editor/plugins/canvas_item_editor_plugin.cpp
+++ b/editor/plugins/canvas_item_editor_plugin.cpp
@@ -2599,14 +2599,14 @@ void CanvasItemEditor::_draw_guides() {
Color text_color = get_color("font_color", "Editor");
text_color.a = 0.5;
if (drag_type == DRAG_DOUBLE_GUIDE || drag_type == DRAG_V_GUIDE) {
- String str = vformat("%d px", xform.affine_inverse().xform(dragged_guide_pos).x);
+ String str = vformat("%d px", Math::round(xform.affine_inverse().xform(dragged_guide_pos).x));
Ref<Font> font = get_font("font", "Label");
Size2 text_size = font->get_string_size(str);
viewport->draw_string(font, Point2(dragged_guide_pos.x + 10, RULER_WIDTH + text_size.y / 2 + 10), str, text_color);
viewport->draw_line(Point2(dragged_guide_pos.x, 0), Point2(dragged_guide_pos.x, viewport->get_size().y), guide_color, Math::round(EDSCALE));
}
if (drag_type == DRAG_DOUBLE_GUIDE || drag_type == DRAG_H_GUIDE) {
- String str = vformat("%d px", xform.affine_inverse().xform(dragged_guide_pos).y);
+ String str = vformat("%d px", Math::round(xform.affine_inverse().xform(dragged_guide_pos).y));
Ref<Font> font = get_font("font", "Label");
Size2 text_size = font->get_string_size(str);
viewport->draw_string(font, Point2(RULER_WIDTH + 10, dragged_guide_pos.y + text_size.y / 2 + 10), str, text_color);
@@ -4967,6 +4967,7 @@ void CanvasItemEditor::_focus_selection(int p_op) {
zoom = scale_x < scale_y ? scale_x : scale_y;
zoom *= 0.90;
viewport->update();
+ _update_zoom_label();
call_deferred("_popup_callback", VIEW_CENTER_TO_SELECTION);
}
}
diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp
index f13abd47a9..1da47196f8 100644
--- a/editor/plugins/script_editor_plugin.cpp
+++ b/editor/plugins/script_editor_plugin.cpp
@@ -3209,7 +3209,7 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) {
script_list = memnew(ItemList);
scripts_vbox->add_child(script_list);
- script_list->set_custom_minimum_size(Size2(150, 90) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
+ script_list->set_custom_minimum_size(Size2(150, 60) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
script_list->set_v_size_flags(SIZE_EXPAND_FILL);
script_split->set_split_offset(140);
_sort_list_on_update = true;
@@ -3254,14 +3254,14 @@ ScriptEditor::ScriptEditor(EditorNode *p_editor) {
overview_vbox->add_child(members_overview);
members_overview->set_allow_reselect(true);
- members_overview->set_custom_minimum_size(Size2(0, 90) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
+ members_overview->set_custom_minimum_size(Size2(0, 60) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
members_overview->set_v_size_flags(SIZE_EXPAND_FILL);
members_overview->set_allow_rmb_select(true);
help_overview = memnew(ItemList);
overview_vbox->add_child(help_overview);
help_overview->set_allow_reselect(true);
- help_overview->set_custom_minimum_size(Size2(0, 90) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
+ help_overview->set_custom_minimum_size(Size2(0, 60) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
help_overview->set_v_size_flags(SIZE_EXPAND_FILL);
tab_container = memnew(TabContainer);
diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp
index c24a666c55..a19f0b4975 100644
--- a/editor/plugins/shader_editor_plugin.cpp
+++ b/editor/plugins/shader_editor_plugin.cpp
@@ -369,6 +369,7 @@ void ShaderEditor::_editor_settings_changed() {
shader_editor->get_text_edit()->set_indent_using_spaces(EditorSettings::get_singleton()->get("text_editor/indent/type"));
shader_editor->get_text_edit()->set_auto_indent(EditorSettings::get_singleton()->get("text_editor/indent/auto_indent"));
shader_editor->get_text_edit()->set_draw_tabs(EditorSettings::get_singleton()->get("text_editor/indent/draw_tabs"));
+ shader_editor->get_text_edit()->set_draw_spaces(EditorSettings::get_singleton()->get("text_editor/indent/draw_spaces"));
shader_editor->get_text_edit()->set_show_line_numbers(EditorSettings::get_singleton()->get("text_editor/appearance/show_line_numbers"));
shader_editor->get_text_edit()->set_syntax_coloring(EditorSettings::get_singleton()->get("text_editor/highlighting/syntax_highlighting"));
shader_editor->get_text_edit()->set_highlight_all_occurrences(EditorSettings::get_singleton()->get("text_editor/highlighting/highlight_all_occurrences"));
@@ -381,6 +382,9 @@ void ShaderEditor::_editor_settings_changed() {
shader_editor->get_text_edit()->set_v_scroll_speed(EditorSettings::get_singleton()->get("text_editor/navigation/v_scroll_speed"));
shader_editor->get_text_edit()->set_draw_minimap(EditorSettings::get_singleton()->get("text_editor/navigation/show_minimap"));
shader_editor->get_text_edit()->set_minimap_width((int)EditorSettings::get_singleton()->get("text_editor/navigation/minimap_width") * EDSCALE);
+ shader_editor->get_text_edit()->set_show_line_length_guideline(EditorSettings::get_singleton()->get("text_editor/appearance/show_line_length_guideline"));
+ shader_editor->get_text_edit()->set_line_length_guideline_column(EditorSettings::get_singleton()->get("text_editor/appearance/line_length_guideline_column"));
+ shader_editor->get_text_edit()->set_breakpoint_gutter_enabled(false);
}
void ShaderEditor::_bind_methods() {
diff --git a/editor/plugins/skeleton_editor_plugin.cpp b/editor/plugins/skeleton_editor_plugin.cpp
index 8b5fe7d2c5..9101c64eab 100644
--- a/editor/plugins/skeleton_editor_plugin.cpp
+++ b/editor/plugins/skeleton_editor_plugin.cpp
@@ -103,8 +103,10 @@ void SkeletonEditor::create_physical_skeleton() {
PhysicalBone *SkeletonEditor::create_physical_bone(int bone_id, int bone_child_id, const Vector<BoneInfo> &bones_infos) {
- real_t half_height(skeleton->get_bone_rest(bone_child_id).origin.length() * 0.5);
- real_t radius(half_height * 0.2);
+ const Transform child_rest = skeleton->get_bone_rest(bone_child_id);
+
+ const real_t half_height(child_rest.origin.length() * 0.5);
+ const real_t radius(half_height * 0.2);
CapsuleShape *bone_shape_capsule = memnew(CapsuleShape);
bone_shape_capsule->set_height((half_height - radius) * 2);
@@ -114,7 +116,8 @@ PhysicalBone *SkeletonEditor::create_physical_bone(int bone_id, int bone_child_i
bone_shape->set_shape(bone_shape_capsule);
Transform body_transform;
- body_transform.origin = Vector3(0, 0, -half_height);
+ body_transform.set_look_at(Vector3(0, 0, 0), child_rest.origin, Vector3(0, 1, 0));
+ body_transform.origin = body_transform.basis.xform(Vector3(0, 0, -half_height));
Transform joint_transform;
joint_transform.origin = Vector3(0, 0, half_height);
diff --git a/editor/plugins/texture_region_editor_plugin.cpp b/editor/plugins/texture_region_editor_plugin.cpp
index 507ea0b83d..94aef60f1f 100644
--- a/editor/plugins/texture_region_editor_plugin.cpp
+++ b/editor/plugins/texture_region_editor_plugin.cpp
@@ -546,6 +546,17 @@ void TextureRegionEditor::_region_input(const Ref<InputEvent> &p_input) {
edit_draw->update();
}
}
+
+ Ref<InputEventMagnifyGesture> magnify_gesture = p_input;
+ if (magnify_gesture.is_valid()) {
+ _zoom_on_position(draw_zoom * magnify_gesture->get_factor(), magnify_gesture->get_position());
+ }
+
+ Ref<InputEventPanGesture> pan_gesture = p_input;
+ if (pan_gesture.is_valid()) {
+ hscroll->set_value(hscroll->get_value() + hscroll->get_page() * pan_gesture->get_delta().x / 8);
+ vscroll->set_value(vscroll->get_value() + vscroll->get_page() * pan_gesture->get_delta().y / 8);
+ }
}
void TextureRegionEditor::_scroll_changed(float) {
diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp
index a107cb020d..f889228f87 100644
--- a/editor/plugins/tile_map_editor_plugin.cpp
+++ b/editor/plugins/tile_map_editor_plugin.cpp
@@ -627,13 +627,14 @@ PoolVector<Vector2> TileMapEditor::_bucket_fill(const Point2i &p_start, bool era
if (r != bucket_cache_rect)
_clear_bucket_cache();
// Cache grid is not initialized
- if (bucket_cache_visited == 0) {
+ if (bucket_cache_visited == NULL) {
bucket_cache_visited = new bool[area];
invalidate_cache = true;
}
// Tile ID changed or position wasn't visited by the previous fill
- int loc = (p_start.x - r.position.x) + (p_start.y - r.position.y) * r.get_size().x;
- if (prev_id != bucket_cache_tile || !bucket_cache_visited[loc]) {
+ const int loc = (p_start.x - r.position.x) + (p_start.y - r.position.y) * r.get_size().x;
+ const bool in_range = 0 <= loc && loc < area;
+ if (prev_id != bucket_cache_tile || (in_range && !bucket_cache_visited[loc])) {
invalidate_cache = true;
}
if (invalidate_cache) {
@@ -893,7 +894,7 @@ void TileMapEditor::_draw_fill_preview(Control *p_viewport, int p_cell, const Po
void TileMapEditor::_clear_bucket_cache() {
if (bucket_cache_visited) {
delete[] bucket_cache_visited;
- bucket_cache_visited = 0;
+ bucket_cache_visited = NULL;
}
}
@@ -1924,7 +1925,7 @@ TileMapEditor::TileMapEditor(EditorNode *p_editor) {
transpose = false;
bucket_cache_tile = -1;
- bucket_cache_visited = 0;
+ bucket_cache_visited = NULL;
invalid_cell.resize(1);
invalid_cell.write[0] = TileMap::INVALID_CELL;
diff --git a/editor/plugins/version_control_editor_plugin.cpp b/editor/plugins/version_control_editor_plugin.cpp
index c53fc7e6c5..3622ca8d61 100644
--- a/editor/plugins/version_control_editor_plugin.cpp
+++ b/editor/plugins/version_control_editor_plugin.cpp
@@ -203,7 +203,7 @@ void VersionControlEditorPlugin::_refresh_stage_area() {
}
} else {
- WARN_PRINT("No VCS addon is initialized. Select a Version Control Addon from Project menu.")
+ WARN_PRINT("No VCS addon is initialized. Select a Version Control Addon from Project menu.");
}
}
diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp
index e334d4b093..fb095692bc 100644
--- a/editor/plugins/visual_shader_editor_plugin.cpp
+++ b/editor/plugins/visual_shader_editor_plugin.cpp
@@ -556,6 +556,7 @@ void VisualShaderEditor::_update_graph() {
}
Ref<VisualShaderNodeUniform> uniform = vsnode;
+ Ref<VisualShaderNodeScalarUniform> scalar_uniform = vsnode;
if (uniform.is_valid()) {
graph->add_child(node);
_update_created_node(node);
@@ -570,7 +571,9 @@ void VisualShaderEditor::_update_graph() {
//shortcut
VisualShaderNode::PortType port_right = vsnode->get_output_port_type(0);
node->set_slot(0, false, VisualShaderNode::PORT_TYPE_SCALAR, Color(), true, port_right, type_color[port_right]);
- continue;
+ if (!scalar_uniform.is_valid()) {
+ continue;
+ }
}
port_offset++;
}
@@ -582,11 +585,16 @@ void VisualShaderEditor::_update_graph() {
}
}
- if (custom_editor && vsnode->get_output_port_count() > 0 && vsnode->get_output_port_name(0) == "" && (vsnode->get_input_port_count() == 0 || vsnode->get_input_port_name(0) == "")) {
+ if (custom_editor && !scalar_uniform.is_valid() && vsnode->get_output_port_count() > 0 && vsnode->get_output_port_name(0) == "" && (vsnode->get_input_port_count() == 0 || vsnode->get_input_port_name(0) == "")) {
//will be embedded in first port
} else if (custom_editor) {
+
port_offset++;
node->add_child(custom_editor);
+ if (scalar_uniform.is_valid()) {
+ custom_editor->call_deferred("_show_prop_names", true);
+ continue;
+ }
custom_editor = NULL;
}
@@ -2972,6 +2980,13 @@ public:
bool updating;
Ref<VisualShaderNode> node;
Vector<EditorProperty *> properties;
+ Vector<Label *> prop_names;
+
+ void _show_prop_names(bool p_show) {
+ for (int i = 0; i < prop_names.size(); i++) {
+ prop_names[i]->set_visible(p_show);
+ }
+ }
void setup(Ref<Resource> p_parent_resource, Vector<EditorProperty *> p_properties, const Vector<StringName> &p_names, Ref<VisualShaderNode> p_node) {
parent_resource = p_parent_resource;
@@ -2981,7 +2996,20 @@ public:
for (int i = 0; i < p_properties.size(); i++) {
- add_child(p_properties[i]);
+ HBoxContainer *hbox = memnew(HBoxContainer);
+ hbox->set_h_size_flags(SIZE_EXPAND_FILL);
+ add_child(hbox);
+
+ Label *prop_name = memnew(Label);
+ String prop_name_str = p_names[i];
+ prop_name_str = prop_name_str.capitalize() + ":";
+ prop_name->set_text(prop_name_str);
+ prop_name->set_visible(false);
+ hbox->add_child(prop_name);
+ prop_names.push_back(prop_name);
+
+ p_properties[i]->set_h_size_flags(SIZE_EXPAND_FILL);
+ hbox->add_child(p_properties[i]);
bool res_prop = Object::cast_to<EditorPropertyResource>(p_properties[i]);
if (res_prop) {
@@ -3003,6 +3031,7 @@ public:
ClassDB::bind_method("_refresh_request", &VisualShaderNodePluginDefaultEditor::_refresh_request);
ClassDB::bind_method("_resource_selected", &VisualShaderNodePluginDefaultEditor::_resource_selected);
ClassDB::bind_method("_open_inspector", &VisualShaderNodePluginDefaultEditor::_open_inspector);
+ ClassDB::bind_method("_show_prop_names", &VisualShaderNodePluginDefaultEditor::_show_prop_names);
}
};
diff --git a/editor/project_export.cpp b/editor/project_export.cpp
index 8245264e0d..3c8fef6233 100644
--- a/editor/project_export.cpp
+++ b/editor/project_export.cpp
@@ -974,7 +974,7 @@ void ProjectExportDialog::_export_project_to_path(const String &p_path) {
error_dialog->set_text(vformat(TTR("Failed to export the project for platform '%s'.\nThis might be due to a configuration issue in the export preset or your export settings."), platform->get_name()));
}
- ERR_PRINTS(vformat("Failed to export the project for platform '%s'.", platform->get_name()));
+ ERR_PRINT(vformat("Failed to export the project for platform '%s'.", platform->get_name()));
error_dialog->show();
error_dialog->popup_centered_minsize(Size2(300, 80));
}
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index 30e31cb530..ee434aaac2 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -163,7 +163,7 @@ private:
}
if (valid_path == "") {
- set_message(TTR("The path does not exist."), MESSAGE_ERROR);
+ set_message(TTR("The path specified doesn't exist."), MESSAGE_ERROR);
memdelete(d);
get_ok()->set_disabled(true);
return "";
@@ -177,7 +177,7 @@ private:
}
if (valid_install_path == "") {
- set_message(TTR("The path does not exist."), MESSAGE_ERROR, INSTALL_PATH);
+ set_message(TTR("The path specified doesn't exist."), MESSAGE_ERROR, INSTALL_PATH);
memdelete(d);
get_ok()->set_disabled(true);
return "";
@@ -195,7 +195,7 @@ private:
unzFile pkg = unzOpen2(valid_path.utf8().get_data(), &io);
if (!pkg) {
- set_message(TTR("Error opening package file, not in ZIP format."), MESSAGE_ERROR);
+ set_message(TTR("Error opening package file (it's not in ZIP format)."), MESSAGE_ERROR);
memdelete(d);
get_ok()->set_disabled(true);
unzClose(pkg);
@@ -216,7 +216,7 @@ private:
}
if (ret == UNZ_END_OF_LIST_OF_FILE) {
- set_message(TTR("Invalid '.zip' project file, does not contain a 'project.godot' file."), MESSAGE_ERROR);
+ set_message(TTR("Invalid \".zip\" project file; it doesn't contain a \"project.godot\" file."), MESSAGE_ERROR);
memdelete(d);
get_ok()->set_disabled(true);
unzClose(pkg);
@@ -230,7 +230,11 @@ private:
bool is_empty = true;
String n = d->get_next();
while (n != String()) {
- if (n != "." && n != "..") {
+ if (!n.begins_with(".")) {
+ // Allow `.`, `..` (reserved current/parent folder names)
+ // and hidden files/folders to be present.
+ // For instance, this lets users initialize a Git repository
+ // and still be able to create a project in the directory afterwards.
is_empty = false;
break;
}
@@ -247,7 +251,7 @@ private:
}
} else {
- set_message(TTR("Please choose a 'project.godot' or '.zip' file."), MESSAGE_ERROR);
+ set_message(TTR("Please choose a \"project.godot\" or \".zip\" file."), MESSAGE_ERROR);
memdelete(d);
install_path_container->hide();
get_ok()->set_disabled(true);
@@ -256,7 +260,7 @@ private:
} else if (valid_path.ends_with("zip")) {
- set_message(TTR("Directory already contains a Godot project."), MESSAGE_ERROR, INSTALL_PATH);
+ set_message(TTR("This directory already contains a Godot project."), MESSAGE_ERROR, INSTALL_PATH);
memdelete(d);
get_ok()->set_disabled(true);
return "";
@@ -269,7 +273,11 @@ private:
bool is_empty = true;
String n = d->get_next();
while (n != String()) {
- if (n != "." && n != "..") { // i don't know if this is enough to guarantee an empty dir
+ if (!n.begins_with(".")) {
+ // Allow `.`, `..` (reserved current/parent folder names)
+ // and hidden files/folders to be present.
+ // For instance, this lets users initialize a Git repository
+ // and still be able to create a project in the directory afterwards.
is_empty = false;
break;
}
@@ -332,7 +340,7 @@ private:
install_path_container->show();
get_ok()->set_disabled(false);
} else {
- set_message(TTR("Please choose a 'project.godot' or '.zip' file."), MESSAGE_ERROR);
+ set_message(TTR("Please choose a \"project.godot\" or \".zip\" file."), MESSAGE_ERROR);
get_ok()->set_disabled(true);
return;
}
@@ -1316,6 +1324,7 @@ void ProjectList::create_project_item_control(int p_index) {
// The project icon may not be loaded by the time the control is displayed,
// so use a loading placeholder.
tf->set_texture(get_icon("ProjectIconLoading", "EditorIcons"));
+ tf->set_v_size_flags(SIZE_SHRINK_CENTER);
if (item.missing) {
tf->set_modulate(Color(1, 1, 1, 0.5));
}
diff --git a/editor/rename_dialog.cpp b/editor/rename_dialog.cpp
index 32fcdab4c6..317be309a3 100644
--- a/editor/rename_dialog.cpp
+++ b/editor/rename_dialog.cpp
@@ -109,9 +109,13 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
const int feature_min_height = 160 * EDSCALE;
- CheckButton *chk_collapse_features = memnew(CheckButton);
- chk_collapse_features->set_text(TTR("Advanced Options"));
- vbc->add_child(chk_collapse_features);
+ cbut_regex = memnew(CheckButton);
+ cbut_regex->set_text(TTR("Use Regular Expressions"));
+ vbc->add_child(cbut_regex);
+
+ CheckButton *cbut_collapse_features = memnew(CheckButton);
+ cbut_collapse_features->set_text(TTR("Advanced Options"));
+ vbc->add_child(cbut_collapse_features);
tabc_features = memnew(TabContainer);
tabc_features->set_tab_align(TabContainer::ALIGN_LEFT);
@@ -195,7 +199,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
grd_substitute->add_child(but_insert_count);
chk_per_level_counter = memnew(CheckBox);
- chk_per_level_counter->set_text(TTR("Per Level counter"));
+ chk_per_level_counter->set_text(TTR("Per-level Counter"));
chk_per_level_counter->set_tooltip(TTR("If set the counter restarts for each group of child nodes"));
vbc_substitute->add_child(chk_per_level_counter);
@@ -233,18 +237,6 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
spn_count_padding->set_step(1);
hbc_count_options->add_child(spn_count_padding);
- // ---- Tab RegEx
-
- VBoxContainer *vbc_regex = memnew(VBoxContainer);
- vbc_regex->set_h_size_flags(SIZE_EXPAND_FILL);
- vbc_regex->set_name(TTR("Regular Expressions"));
- vbc_regex->set_custom_minimum_size(Size2(0, feature_min_height));
- tabc_features->add_child(vbc_regex);
-
- cbut_regex = memnew(CheckBox);
- cbut_regex->set_text(TTR("Regular Expressions"));
- vbc_regex->add_child(cbut_regex);
-
// ---- Tab Process
VBoxContainer *vbc_process = memnew(VBoxContainer);
@@ -268,8 +260,8 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
opt_style = memnew(OptionButton);
opt_style->add_item(TTR("Keep"));
- opt_style->add_item(TTR("CamelCase to under_scored"));
- opt_style->add_item(TTR("under_scored to CamelCase"));
+ opt_style->add_item(TTR("PascalCase to snake_case"));
+ opt_style->add_item(TTR("snake_case to PascalCase"));
hbc_style->add_child(opt_style);
// ------ Case
@@ -299,7 +291,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
lbl_preview = memnew(Label);
lbl_preview->set_text("");
- lbl_preview->add_color_override("font_color", Color(1, 0.5f, 0, 1));
+ lbl_preview->add_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_color("error_color", "Editor"));
vbc->add_child(lbl_preview);
// ---- Dialog related
@@ -314,7 +306,7 @@ RenameDialog::RenameDialog(SceneTreeEditor *p_scene_tree_editor, UndoRedo *p_und
// ---- Connections
- chk_collapse_features->connect("toggled", this, "_features_toggled");
+ cbut_collapse_features->connect("toggled", this, "_features_toggled");
// Substitite Buttons
@@ -414,9 +406,12 @@ void RenameDialog::_update_preview(String new_text) {
lbl_preview->set_text(new_name);
if (new_name == preview_node->get_name()) {
- lbl_preview->add_color_override("font_color", Color(0, 0.5f, 0.25f, 1));
+ // New name is identical to the old one. Don't color it as much to avoid distracting the user.
+ const Color accent_color = EditorNode::get_singleton()->get_gui_base()->get_color("accent_color", "Editor");
+ const Color text_color = EditorNode::get_singleton()->get_gui_base()->get_color("default_color", "RichTextLabel");
+ lbl_preview->add_color_override("font_color", accent_color.linear_interpolate(text_color, 0.5));
} else {
- lbl_preview->add_color_override("font_color", Color(0, 1, 0.5f, 1));
+ lbl_preview->add_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_color("success_color", "Editor"));
}
}
@@ -501,9 +496,9 @@ void RenameDialog::_error_handler(void *p_self, const char *p_func, const char *
}
self->has_errors = true;
- self->lbl_preview_title->set_text(TTR("Error"));
- self->lbl_preview->add_color_override("font_color", Color(1, 0.25f, 0, 1));
- self->lbl_preview->set_text(err_str);
+ self->lbl_preview_title->set_text(TTR("Regular Expression Error"));
+ self->lbl_preview->add_color_override("font_color", EditorNode::get_singleton()->get_gui_base()->get_color("error_color", "Editor"));
+ self->lbl_preview->set_text(vformat(TTR("At character %s"), err_str));
}
String RenameDialog::_regex(const String &pattern, const String &subject, const String &replacement) {
@@ -520,18 +515,18 @@ String RenameDialog::_postprocess(const String &subject) {
String result = subject;
if (style_id == 1) {
+ // PascalCase to snake_case
- // CamelCase to Under_Line
result = result.camelcase_to_underscore(true);
result = _regex("_+", result, "_");
} else if (style_id == 2) {
+ // snake_case to PascalCase
- // Under_Line to CamelCase
RegEx pattern("_+(.?)");
Array matches = pattern.search_all(result);
- // _ name would become empty. Ignore
+ // The name `_` would become empty; ignore it.
if (matches.size() && result != "_") {
String buffer;
int start = 0;
@@ -617,7 +612,7 @@ void RenameDialog::rename() {
const String &new_name = to_rename[i].second;
if (!n) {
- ERR_PRINTS("Skipping missing node: " + to_rename[i].first.get_concatenated_subnames());
+ ERR_PRINT("Skipping missing node: " + to_rename[i].first.get_concatenated_subnames());
continue;
}
diff --git a/editor/rename_dialog.h b/editor/rename_dialog.h
index 692e56f1a4..2825cb2cd2 100644
--- a/editor/rename_dialog.h
+++ b/editor/rename_dialog.h
@@ -75,7 +75,7 @@ class RenameDialog : public ConfirmationDialog {
TabContainer *tabc_features;
CheckBox *cbut_substitute;
- CheckBox *cbut_regex;
+ CheckButton *cbut_regex;
CheckBox *cbut_process;
CheckBox *chk_per_level_counter;
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp
index dca6087f8b..7410a998ad 100644
--- a/editor/scene_tree_dock.cpp
+++ b/editor/scene_tree_dock.cpp
@@ -981,7 +981,7 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) {
if (!new_node) {
new_node = memnew(Node);
- ERR_PRINTS("Creating root from favorite '" + selected_favorite_root + "' failed. Creating 'Node' instead.");
+ ERR_PRINT("Creating root from favorite '" + selected_favorite_root + "' failed. Creating 'Node' instead.");
}
} else {
switch (p_tool) {
diff --git a/editor/script_create_dialog.cpp b/editor/script_create_dialog.cpp
index 35d5fe5f70..c4627e6627 100644
--- a/editor/script_create_dialog.cpp
+++ b/editor/script_create_dialog.cpp
@@ -84,7 +84,9 @@ void ScriptCreateDialog::_path_hbox_sorted() {
int filename_start_pos = initial_bp.find_last("/") + 1;
int filename_end_pos = initial_bp.length();
- file_path->select(filename_start_pos, filename_end_pos);
+ if (!is_built_in) {
+ file_path->select(filename_start_pos, filename_end_pos);
+ }
// First set cursor to the end of line to scroll LineEdit view
// to the right and then set the actual cursor position.
@@ -575,6 +577,10 @@ void ScriptCreateDialog::_browse_class_in_tree() {
void ScriptCreateDialog::_path_changed(const String &p_path) {
+ if (is_built_in) {
+ return;
+ }
+
is_path_valid = false;
is_new_script_created = true;
@@ -644,7 +650,7 @@ void ScriptCreateDialog::_update_dialog() {
}
if (script_ok) {
- _msg_script_valid(true, TTR("Script is valid."));
+ _msg_script_valid(true, TTR("Script path/name is valid."));
}
// Does script have named classes?
diff --git a/editor/script_editor_debugger.cpp b/editor/script_editor_debugger.cpp
index 71a946b256..34547717fd 100644
--- a/editor/script_editor_debugger.cpp
+++ b/editor/script_editor_debugger.cpp
@@ -338,7 +338,7 @@ void ScriptEditorDebugger::_file_selected(const String &p_file) {
FileAccessRef file = FileAccess::open(p_file, FileAccess::WRITE, &err);
if (err != OK) {
- ERR_PRINTS("Failed to open " + p_file);
+ ERR_PRINT("Failed to open " + p_file);
return;
}
Vector<String> line;
@@ -484,8 +484,10 @@ int ScriptEditorDebugger::_update_scene_tree(TreeItem *parent, const Array &node
void ScriptEditorDebugger::_video_mem_request() {
- ERR_FAIL_COND(connection.is_null());
- ERR_FAIL_COND(!connection->is_connected_to_host());
+ if (connection.is_null() || !connection->is_connected_to_host()) {
+ // Video RAM usage is only available while a project is being debugged.
+ return;
+ }
Array msg;
msg.push_back("request_video_mem");
@@ -806,25 +808,25 @@ void ScriptEditorDebugger::_parse_message(const String &p_msg, const Array &p_da
p.write[i] = arr[i];
if (i < perf_items.size()) {
- float v = p[i];
- String vs = rtos(v);
- String tt = vs;
+ const float value = p[i];
+ String label = rtos(value);
+ String tooltip = label;
switch (Performance::MonitorType((int)perf_items[i]->get_metadata(1))) {
case Performance::MONITOR_TYPE_MEMORY: {
- vs = String::humanize_size(v);
- tt = vs;
+ label = String::humanize_size(value);
+ tooltip = label;
} break;
case Performance::MONITOR_TYPE_TIME: {
- tt += " seconds";
- vs += " s";
+ label = rtos(value * 1000).pad_decimals(2) + " ms";
+ tooltip = label;
} break;
default: {
- tt += " " + perf_items[i]->get_text(0);
+ tooltip += " " + perf_items[i]->get_text(0);
} break;
}
- perf_items[i]->set_text(1, vs);
- perf_items[i]->set_tooltip(1, tt);
+ perf_items[i]->set_text(1, label);
+ perf_items[i]->set_tooltip(1, tooltip);
if (p[i] > perf_max[i])
perf_max.write[i] = p[i];
}
@@ -1323,6 +1325,7 @@ void ScriptEditorDebugger::_notification(int p_what) {
inspect_scene_tree->clear();
le_set->set_disabled(true);
le_clear->set_disabled(false);
+ vmem_refresh->set_disabled(false);
error_tree->clear();
error_count = 0;
warning_count = 0;
@@ -1523,6 +1526,7 @@ void ScriptEditorDebugger::stop() {
le_clear->set_disabled(false);
le_set->set_disabled(true);
profiler->set_enabled(true);
+ vmem_refresh->set_disabled(true);
inspect_scene_tree->clear();
inspector->edit(NULL);
@@ -1622,6 +1626,7 @@ void ScriptEditorDebugger::_output_clear() {
void ScriptEditorDebugger::_export_csv() {
file_dialog->set_mode(EditorFileDialog::MODE_SAVE_FILE);
+ file_dialog->set_access(EditorFileDialog::ACCESS_FILESYSTEM);
file_dialog_mode = SAVE_CSV;
file_dialog->popup_centered_ratio();
}
@@ -2187,6 +2192,13 @@ void ScriptEditorDebugger::_item_menu_id_pressed(int p_option) {
}
}
+void ScriptEditorDebugger::_tab_changed(int p_tab) {
+ if (tabs->get_tab_title(p_tab) == TTR("Video RAM")) {
+ // "Video RAM" tab was clicked, refresh the data it's dislaying when entering the tab.
+ _video_mem_request();
+ }
+}
+
void ScriptEditorDebugger::_bind_methods() {
ClassDB::bind_method(D_METHOD("_stack_dump_frame_selected"), &ScriptEditorDebugger::_stack_dump_frame_selected);
@@ -2218,6 +2230,7 @@ void ScriptEditorDebugger::_bind_methods() {
ClassDB::bind_method(D_METHOD("_error_tree_item_rmb_selected"), &ScriptEditorDebugger::_error_tree_item_rmb_selected);
ClassDB::bind_method(D_METHOD("_item_menu_id_pressed"), &ScriptEditorDebugger::_item_menu_id_pressed);
+ ClassDB::bind_method(D_METHOD("_tab_changed"), &ScriptEditorDebugger::_tab_changed);
ClassDB::bind_method(D_METHOD("_paused"), &ScriptEditorDebugger::_paused);
@@ -2258,13 +2271,13 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) {
tabs->add_style_override("panel", editor->get_gui_base()->get_stylebox("DebuggerPanel", "EditorStyles"));
tabs->add_style_override("tab_fg", editor->get_gui_base()->get_stylebox("DebuggerTabFG", "EditorStyles"));
tabs->add_style_override("tab_bg", editor->get_gui_base()->get_stylebox("DebuggerTabBG", "EditorStyles"));
+ tabs->connect("tab_changed", this, "_tab_changed");
add_child(tabs);
{ //debugger
VBoxContainer *vbc = memnew(VBoxContainer);
vbc->set_name(TTR("Debugger"));
- //tabs->add_child(vbc);
Control *dbg = vbc;
HBoxContainer *hbc = memnew(HBoxContainer);
@@ -2522,6 +2535,7 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) {
vmem_total->set_custom_minimum_size(Size2(100, 0) * EDSCALE);
vmem_hb->add_child(vmem_total);
vmem_refresh = memnew(ToolButton);
+ vmem_refresh->set_disabled(true);
vmem_hb->add_child(vmem_refresh);
vmem_vb->add_child(vmem_hb);
vmem_refresh->connect("pressed", this, "_video_mem_request");
@@ -2534,20 +2548,20 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) {
vmmc->set_v_size_flags(SIZE_EXPAND_FILL);
vmem_vb->add_child(vmmc);
- vmem_vb->set_name(TTR("Video Mem"));
+ vmem_vb->set_name(TTR("Video RAM"));
vmem_tree->set_columns(4);
vmem_tree->set_column_titles_visible(true);
vmem_tree->set_column_title(0, TTR("Resource Path"));
vmem_tree->set_column_expand(0, true);
vmem_tree->set_column_expand(1, false);
vmem_tree->set_column_title(1, TTR("Type"));
- vmem_tree->set_column_min_width(1, 100);
+ vmem_tree->set_column_min_width(1, 100 * EDSCALE);
vmem_tree->set_column_expand(2, false);
vmem_tree->set_column_title(2, TTR("Format"));
- vmem_tree->set_column_min_width(2, 150);
+ vmem_tree->set_column_min_width(2, 150 * EDSCALE);
vmem_tree->set_column_expand(3, false);
vmem_tree->set_column_title(3, TTR("Usage"));
- vmem_tree->set_column_min_width(3, 80);
+ vmem_tree->set_column_min_width(3, 80 * EDSCALE);
vmem_tree->set_hide_root(true);
tabs->add_child(vmem_vb);
diff --git a/editor/script_editor_debugger.h b/editor/script_editor_debugger.h
index 7d91e247b6..589a011bff 100644
--- a/editor/script_editor_debugger.h
+++ b/editor/script_editor_debugger.h
@@ -226,6 +226,7 @@ private:
void _error_tree_item_rmb_selected(const Vector2 &p_pos);
void _item_menu_id_pressed(int p_option);
+ void _tab_changed(int p_tab);
void _export_csv();
diff --git a/editor/translations/af.po b/editor/translations/af.po
index 9a5fb53edd..23917c09e6 100644
--- a/editor/translations/af.po
+++ b/editor/translations/af.po
@@ -2022,16 +2022,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-#, fuzzy
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Daar is tans geen beskrywing vir hierdie metode nie. Help ons asseblief deur "
-"[color=$color][url=$url]een by te dra[/url][/color]!"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Eienskappe"
@@ -12550,6 +12540,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Daar is tans geen beskrywing vir hierdie metode nie. Help ons asseblief "
+#~ "deur [color=$color][url=$url]een by te dra[/url][/color]!"
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ar.po b/editor/translations/ar.po
index d887027616..6a3dba2b43 100644
--- a/editor/translations/ar.po
+++ b/editor/translations/ar.po
@@ -1999,16 +1999,6 @@ msgid "Online Tutorials"
msgstr "الدورس علي الإنترنت:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"ليس هناك دروس تعليمية في هذا الفصل، يمكنك [color=$color][url=$url] المساهمة "
-"في إحداها [/url][/color] أو [color=$color][url=$url2]أطلب أحداها [/url][/"
-"color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "خصائص"
@@ -12816,6 +12806,15 @@ msgstr "يمكن تعيين المتغيرات فقط في الذروة ."
msgid "Constants cannot be modified."
msgstr "لا يمكن تعديل الثوابت."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "ليس هناك دروس تعليمية في هذا الفصل، يمكنك [color=$color][url=$url] "
+#~ "المساهمة في إحداها [/url][/color] أو [color=$color][url=$url2]أطلب أحداها "
+#~ "[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "التعداد "
diff --git a/editor/translations/bg.po b/editor/translations/bg.po
index 727d9a1200..a42e873790 100644
--- a/editor/translations/bg.po
+++ b/editor/translations/bg.po
@@ -1986,13 +1986,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/bn.po b/editor/translations/bn.po
index 1043ab377b..3cfcc98809 100644
--- a/editor/translations/bn.po
+++ b/editor/translations/bn.po
@@ -2076,17 +2076,6 @@ msgstr "টিউটোরিয়ালসমূহ"
#: editor/editor_help.cpp
#, fuzzy
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"এই মেথড সম্পর্কে বিস্তারিত তথ্য লিপিবদ্ধ করা হয়নি। অনুগ্রহ করে তথ্য প্রদানের মাধ্যমে "
-"সহায়তা করুন। তথ্য প্রদানের জন্য [color=$color][url=$url], [/url][/color] ফরম্যাট "
-"ব্যাবহার করুন !"
-
-#: editor/editor_help.cpp
-#, fuzzy
msgid "Properties"
msgstr "প্রোপার্টি-সমূহ:"
@@ -13395,6 +13384,16 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "এই মেথড সম্পর্কে বিস্তারিত তথ্য লিপিবদ্ধ করা হয়নি। অনুগ্রহ করে তথ্য প্রদানের "
+#~ "মাধ্যমে সহায়তা করুন। তথ্য প্রদানের জন্য [color=$color][url=$url], [/url][/"
+#~ "color] ফরম্যাট ব্যাবহার করুন !"
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ca.po b/editor/translations/ca.po
index ea6eec97d2..dc618c880f 100644
--- a/editor/translations/ca.po
+++ b/editor/translations/ca.po
@@ -9,12 +9,13 @@
# roger <616steam@gmail.com>, 2019.
# Roger BR <drai_kin@hotmail.com>, 2019.
# Adolfo Jayme Barrientos <fitojb@ubuntu.com>, 2020.
+# Xavier Gomez <hiulit@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-03 21:21+0000\n"
-"Last-Translator: Adolfo Jayme Barrientos <fitojb@ubuntu.com>\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
+"Last-Translator: Xavier Gomez <hiulit@gmail.com>\n"
"Language-Team: Catalan <https://hosted.weblate.org/projects/godot-engine/"
"godot/ca/>\n"
"Language: ca\n"
@@ -22,7 +23,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 3.10\n"
+"X-Generator: Weblate 3.11-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -431,7 +432,7 @@ msgstr "No es pot afegir una nova pista sense cap arrel"
#: editor/animation_track_editor.cpp
msgid "Invalid track for Bezier (no suitable sub-properties)"
-msgstr ""
+msgstr "La pista no és vàlida per a Bezier (no hi ha subpropietats adequades)"
#: editor/animation_track_editor.cpp
msgid "Add Bezier Track"
@@ -500,16 +501,23 @@ msgid ""
"Alternatively, use an import preset that imports animations to separate "
"files."
msgstr ""
+"Aquesta animació pertany a una escena importada, de manera que no es desaran "
+"els canvis a les pistes importades.\n"
+"\n"
+"Per habilitar la possibilitat d’afegir pistes personalitzades, navegueu a la "
+"configuració d’importació de l’escena i establiu\n"
+"\"Animation > Storage\" a \"Files\", activeu \"Animation > Keep Custom Tracks"
+"\", i, després, reimporteu.\n"
+"També podeu fer servir una configuració preestablerta que importi animacions "
+"a fitxers separats."
#: editor/animation_track_editor.cpp
msgid "Warning: Editing imported animation"
msgstr "Advertiment: Edició d'animació importada"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Select an AnimationPlayer node to create and edit animations."
-msgstr ""
-"Selecciona un AnimationPlayer a l'Arbre de l'Escena per editar-ne l'animació."
+msgstr "Seleccioneu un node AnimationPlayer per a crear i editar animacions."
#: editor/animation_track_editor.cpp
msgid "Only show tracks from nodes selected in tree."
@@ -811,9 +819,8 @@ msgid "Extra Call Arguments:"
msgstr "Arguments de Crida addicionals:"
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Receiver Method:"
-msgstr "Selecciona un Mètode"
+msgstr "Mètode Receptor:"
#: editor/connections_dialog.cpp
msgid "Advanced"
@@ -1166,22 +1173,21 @@ msgid "License"
msgstr "Llicència"
#: editor/editor_about.cpp
-#, fuzzy
msgid "Third-party Licenses"
msgstr "Llicències de Tercers"
#: editor/editor_about.cpp
-#, fuzzy
msgid ""
"Godot Engine relies on a number of third-party free and open source "
"libraries, all compatible with the terms of its MIT license. The following "
"is an exhaustive list of all such third-party components with their "
"respective copyright statements and license terms."
msgstr ""
-"El motor Godot es recolza en una sèrie de biblioteques lliures i de codi "
-"obert, totes elles compatibles amb els termes de la llicència MIT. Tot "
-"seguit podeu trobar la llista exhaustiva de tots aquests components externs "
-"amb llurs respectius drets d'autor i termes de llicenciament."
+"Godot Engine compta amb diverses biblioteques gratuïtes i de codi obert de "
+"tercers, totes compatibles amb els termes de la seva llicència MIT. A "
+"continuació, es mostra una llista exhaustiva de tots aquests components de "
+"tercers amb les seves respectives declaracions de copyright i termes de "
+"llicència."
#: editor/editor_about.cpp
msgid "All Components"
@@ -1196,14 +1202,13 @@ msgid "Licenses"
msgstr "Llicències"
#: editor/editor_asset_installer.cpp editor/project_manager.cpp
-#, fuzzy
msgid "Error opening package file, not in ZIP format."
-msgstr "Error en obrir el arxiu comprimit, el fitxer no té el format ZIP."
+msgstr ""
+"S'ha produit un error en obrir el fitxer comprimit, no té el format ZIP."
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "%s (Already Exists)"
-msgstr "Ja existeix"
+msgstr "%s (Ja existeix)"
#: editor/editor_asset_installer.cpp
msgid "Uncompressing Assets"
@@ -1214,9 +1219,8 @@ msgid "The following files failed extraction from package:"
msgstr "Ha fracassat l'extracció del paquet dels següents fitxers:"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "And %s more files."
-msgstr "%d fitxer(s) més"
+msgstr "I %d fitxer(s) més."
#: editor/editor_asset_installer.cpp editor/project_manager.cpp
msgid "Package installed successfully!"
@@ -1228,9 +1232,8 @@ msgid "Success!"
msgstr "Èxit!"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Package Contents:"
-msgstr "Continguts:"
+msgstr "Contingut del Paquet:"
#: editor/editor_asset_installer.cpp editor/editor_node.cpp
msgid "Install"
@@ -1285,9 +1288,8 @@ msgid "Delete Bus Effect"
msgstr "Elimina l'Efecte de Bus"
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Drag & drop to rearrange."
-msgstr "Arrossegueu i deixeu anar per reordenar."
+msgstr "Arrossegueu i deixeu anar per a reorganitzar."
#: editor/editor_audio_buses.cpp
msgid "Solo"
@@ -1371,9 +1373,8 @@ msgid "Invalid file, not an audio bus layout."
msgstr "Fitxer incorrecte. No és un disseny de bus d'àudio."
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Error saving file: %s"
-msgstr "Error en desar el fitxer!"
+msgstr "S'ha produit un error al desar el fitxer! %s"
#: editor/editor_audio_buses.cpp
msgid "Add Bus"
@@ -1422,28 +1423,20 @@ msgid "Valid characters:"
msgstr "Caràcters vàlids:"
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "Must not collide with an existing engine class name."
-msgstr "No pot coincidir amb noms de classe del motor ja existents."
+msgstr "No ha de coincidir amb un nom de classe de motor existent."
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "Must not collide with an existing built-in type name."
-msgstr ""
-"El Nom no és vàlid. No pot coincidir amb noms de tipus integrats ja "
-"existents."
+msgstr "No ha de coincidir amb un nom de tipus incorporat existent."
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "Must not collide with an existing global constant name."
-msgstr ""
-"El Nom no és vàlid. No pot coincidir amb noms de constants globals ja "
-"existents."
+msgstr "No ha de coincidir amb una constant global existent."
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "Keyword cannot be used as an autoload name."
-msgstr "Una paraula clau no es pot utilitzar com a nom de càrrega automàtica."
+msgstr "La paraula clau no es pot utilitzar com a nom d'autocàrrega."
#: editor/editor_autoload_settings.cpp
msgid "Autoload '%s' already exists!"
@@ -1595,6 +1588,10 @@ msgid ""
"Enable 'Import Etc' in Project Settings, or disable 'Driver Fallback "
"Enabled'."
msgstr ""
+"La plataforma de destinació requereix una compressió de textura 'ETC' per a "
+"utilitzar GLES2 com a controlador alternatiu.\n"
+"Activeu \"Import Etc\" a Configuració del Projecte o desactiveu la opció "
+"'Driver Fallback Enabled''."
#: editor/editor_export.cpp platform/android/export/export.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
@@ -1613,11 +1610,9 @@ msgid "Template file not found:"
msgstr "No s'ha trobat la Plantilla:"
#: editor/editor_export.cpp
-#, fuzzy
msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB."
msgstr ""
-"En les exportacions de 32 bits, el PCK incrustat no pot ser més gran que 4 "
-"GiB."
+"En les exportacions de 32 bits, el PCK incrustat no pot ser superior a 4 GiB."
#: editor/editor_feature_profile.cpp
msgid "3D Editor"
@@ -1970,16 +1965,6 @@ msgid "Online Tutorials"
msgstr "Tutorials en línia:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Aquesta classe no disposa encara de cap Tutorial. Podeu contribuir [color="
-"$color][url=$url] tot aportant-ne un[/url][/color] o [color=$color][url="
-"$url2]sol·licitant-lo[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propietats"
@@ -12991,6 +12976,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr "Les constants no es poden modificar."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Aquesta classe no disposa encara de cap Tutorial. Podeu contribuir "
+#~ "[color=$color][url=$url] tot aportant-ne un[/url][/color] o [color="
+#~ "$color][url=$url2]sol·licitant-lo[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/cs.po b/editor/translations/cs.po
index 4146be71b3..b060c0c234 100644
--- a/editor/translations/cs.po
+++ b/editor/translations/cs.po
@@ -1963,16 +1963,6 @@ msgid "Online Tutorials"
msgstr "Online návody"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"V současné době pro tuto třídu neexistují žádné návody, můžete nějaký [color="
-"$color][url=$url]vytvořit[/url][/color] nebo o něj [color=$color][url="
-"$url2]zažádat[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Vlastnosti"
@@ -12741,6 +12731,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr "Konstanty není možné upravovat."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "V současné době pro tuto třídu neexistují žádné návody, můžete nějaký "
+#~ "[color=$color][url=$url]vytvořit[/url][/color] nebo o něj [color=$color]"
+#~ "[url=$url2]zažádat[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "výčet "
diff --git a/editor/translations/da.po b/editor/translations/da.po
index 2c59e0b611..aed35d2dc6 100644
--- a/editor/translations/da.po
+++ b/editor/translations/da.po
@@ -2033,16 +2033,6 @@ msgid "Online Tutorials"
msgstr "Online Undervisning:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Der er i øjeblikket ingen vejledninger for denne klasse, du kan [color="
-"$color][url=$url]bidrage med en[/url][/color] eller [color=$color][url="
-"$url2]anmode en[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Egenskaber"
@@ -12878,6 +12868,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr "Konstanter kan ikke ændres."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Der er i øjeblikket ingen vejledninger for denne klasse, du kan [color="
+#~ "$color][url=$url]bidrage med en[/url][/color] eller [color=$color][url="
+#~ "$url2]anmode en[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/de.po b/editor/translations/de.po
index 70014a4569..1b1ada4825 100644
--- a/editor/translations/de.po
+++ b/editor/translations/de.po
@@ -1993,16 +1993,6 @@ msgid "Online Tutorials"
msgstr "Anleitungen im Netz"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Es gibt zurzeit keine Tutorials zu dieser Klasse. Mitwirkungen durch [color="
-"$color][url=$url]eigene Beiträge[/url][/color] oder [color=$color][url="
-"$url2]Meldung von Problemen[/url][/color] sind sehr erwünscht."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Eigenschaften"
@@ -12747,6 +12737,15 @@ msgstr "Varyings können nur in Vertex-Funktion zugewiesen werden."
msgid "Constants cannot be modified."
msgstr "Konstanten können nicht verändert werden."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Es gibt zurzeit keine Tutorials zu dieser Klasse. Mitwirkungen durch "
+#~ "[color=$color][url=$url]eigene Beiträge[/url][/color] oder [color=$color]"
+#~ "[url=$url2]Meldung von Problemen[/url][/color] sind sehr erwünscht."
+
#~ msgid "enum "
#~ msgstr "Enum "
diff --git a/editor/translations/de_CH.po b/editor/translations/de_CH.po
index 924f367a25..fc524de9ad 100644
--- a/editor/translations/de_CH.po
+++ b/editor/translations/de_CH.po
@@ -1966,13 +1966,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot
index 7891c0adbd..c1b2932a6f 100644
--- a/editor/translations/editor.pot
+++ b/editor/translations/editor.pot
@@ -1888,13 +1888,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/el.po b/editor/translations/el.po
index 3b7473eb03..99e7a49f85 100644
--- a/editor/translations/el.po
+++ b/editor/translations/el.po
@@ -2,7 +2,7 @@
# Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur.
# Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md).
# This file is distributed under the same license as the Godot source code.
-# George Tsiamasiotis <gtsiam@windowslive.com>, 2017-2018, 2019.
+# George Tsiamasiotis <gtsiam@windowslive.com>, 2017-2018, 2019, 2020.
# Georgios Katsanakis <geo.elgeo@gmail.com>, 2019.
# Overloaded <manoschool@yahoo.gr>, 2019.
# Eternal Death <eternaldeath0001@gmail.com>, 2019.
@@ -11,9 +11,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-03 21:21+0000\n"
-"Last-Translator: Overloaded @ Orama Interactive http://orama-interactive."
-"com/ <manoschool@yahoo.gr>\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
+"Last-Translator: George Tsiamasiotis <gtsiam@windowslive.com>\n"
"Language-Team: Greek <https://hosted.weblate.org/projects/godot-engine/godot/"
"el/>\n"
"Language: el\n"
@@ -21,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 3.10\n"
+"X-Generator: Weblate 3.11-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -426,7 +425,7 @@ msgstr "Αδύνατη η προσθήκη κομματιού χωρίς ρίζ
#: editor/animation_track_editor.cpp
msgid "Invalid track for Bezier (no suitable sub-properties)"
-msgstr ""
+msgstr "Άκυρο κομμάτι καμπύλης Bezier (χωρίς κατάλληλες υπό-ιδιότητες)"
#: editor/animation_track_editor.cpp
msgid "Add Bezier Track"
@@ -1200,9 +1199,8 @@ msgid "Error opening package file, not in ZIP format."
msgstr "Σφάλμα ανοίγματος αρχείου πακέτου, δεν είναι σε μορφή ZIP."
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "%s (Already Exists)"
-msgstr "Υπάρχει ήδη"
+msgstr "%s (Υπάρχει ήδη)"
#: editor/editor_asset_installer.cpp
msgid "Uncompressing Assets"
@@ -1213,9 +1211,8 @@ msgid "The following files failed extraction from package:"
msgstr "Η εξαγωγή των ακόλουθων αρχείων από το πακέτο απέτυχε:"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "And %s more files."
-msgstr "%d περισσότερα αρχεία"
+msgstr "Και %s αρχεία ακόμα."
#: editor/editor_asset_installer.cpp editor/project_manager.cpp
msgid "Package installed successfully!"
@@ -1227,9 +1224,8 @@ msgid "Success!"
msgstr "Επιτυχία!"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Package Contents:"
-msgstr "Περιεχόμενα:"
+msgstr "Περιεχόμενα Πακέτου:"
#: editor/editor_asset_installer.cpp editor/editor_node.cpp
msgid "Install"
@@ -1369,9 +1365,8 @@ msgid "Invalid file, not an audio bus layout."
msgstr "Άκυρο αρχείο, δεν είναι διάταξη διαύλων ήχου."
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Error saving file: %s"
-msgstr "Σφάλμα αποθήκευσης αρχείου!"
+msgstr "Σφάλμα αποθήκευσης αρχείου: %s"
#: editor/editor_audio_buses.cpp
msgid "Add Bus"
@@ -1947,37 +1942,24 @@ msgid "Inherited by:"
msgstr "Κληρονομείται από:"
#: editor/editor_help.cpp
-#, fuzzy
msgid "Description"
-msgstr "Περιγραφή:"
+msgstr "Περιγραφή"
#: editor/editor_help.cpp
msgid "Online Tutorials"
msgstr "Διαδικτυακή Εκμάθηση"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Δεν υπάρχει ακόμα βοήθεια για αυτήν την κλάση, μπορείτε να την [color=$color]"
-"[url=$url]γράψετε[/url][/color] ή να την [color=$color][url=$url2]ζητήσετε[/"
-"url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Ιδιότητες"
#: editor/editor_help.cpp
-#, fuzzy
msgid "override:"
-msgstr "Αντικατάσταση"
+msgstr "παράκαμψη:"
#: editor/editor_help.cpp
-#, fuzzy
msgid "default:"
-msgstr "Προεπιλογή"
+msgstr "προεπιλογή:"
#: editor/editor_help.cpp
msgid "Methods"
@@ -2000,9 +1982,8 @@ msgid "Property Descriptions"
msgstr "Περιγραφές ιδιοτήτων"
#: editor/editor_help.cpp
-#, fuzzy
msgid "(value)"
-msgstr "Τιμή"
+msgstr "(τιμή)"
#: editor/editor_help.cpp
msgid ""
@@ -2034,9 +2015,8 @@ msgid "Case Sensitive"
msgstr "Διάκριση πεζών-κεφαλαίων"
#: editor/editor_help_search.cpp
-#, fuzzy
msgid "Show Hierarchy"
-msgstr "Εμφάνιση Βοηθών"
+msgstr "Εμφάνιση Ιεραρχίας"
#: editor/editor_help_search.cpp
msgid "Display All"
@@ -2075,9 +2055,8 @@ msgid "Class"
msgstr "Κλάση"
#: editor/editor_help_search.cpp
-#, fuzzy
msgid "Method"
-msgstr "Συναρτήσεις"
+msgstr "Μέθοδος"
#: editor/editor_help_search.cpp editor/plugins/script_text_editor.cpp
msgid "Signal"
@@ -2088,14 +2067,12 @@ msgid "Constant"
msgstr "Σταθερή"
#: editor/editor_help_search.cpp
-#, fuzzy
msgid "Property"
-msgstr "Ιδιότητα:"
+msgstr "Ιδιότητα"
#: editor/editor_help_search.cpp
-#, fuzzy
msgid "Theme Property"
-msgstr "Ιδιότητες θέματος"
+msgstr "Ιδιότητα Θέματος"
#: editor/editor_inspector.cpp editor/project_settings_editor.cpp
msgid "Property:"
@@ -2876,10 +2853,10 @@ msgid ""
"When used remotely on a device, this is more efficient with network "
"filesystem."
msgstr ""
-"Όταν αυτή η επιλογή είναι ενεργοποιημένη, ό,τι αλλαγές γίνουν στη σκηνή θα "
-"αναπαραχθούν και στο παιχνίδι.\n"
-"Όταν χρησιμοποιηθεί απομακρυσμένα σε μία συσκευή, αυτό είναι ποιο "
-"αποτελεσματικό με δικτυωμένο σύστημα αρχείων."
+"Η ενεργοποίηση της επιλογής αυτής θα συγχρονίσει αλλαγές της σκηνής εντός "
+"του επεξεργαστή με το παιχνίδι που εκτελείται.\n"
+"Σε απομακρυσμένες συσκευές, η επιλογή είναι ποιο αποδοτική με δικτυωμένο "
+"σύστημα αρχείων."
#: editor/editor_node.cpp
msgid "Sync Script Changes"
@@ -2892,10 +2869,10 @@ msgid ""
"When used remotely on a device, this is more efficient with network "
"filesystem."
msgstr ""
-"Όταν αυτή η επιλογή είναι ενεργοποιημένη, όποια δέσμη ενεργειών αποθηκευτεί "
-"θα επαναφορτωθεί στο παιχνίδι.\n"
-"Όταν χρησιμοποιηθεί απομακρυσμένα σε μία συσκευή, αυτό είναι ποιο "
-"αποτελεσματικό με δικτυωμένο σύστημα αρχείων."
+"Η ενεργοποίηση της επιλογής αυτής θα συγχρονίσει κάθε δέσμη ενεργειών που "
+"αποθηκεύεται με το παιχνίδι που εκτελείται.\n"
+"Σε απομακρυσμένες συσκευές, η επιλογή είναι ποιο αποδοτική με δικτυωμένο "
+"σύστημα αρχείων."
#: editor/editor_node.cpp editor/script_create_dialog.cpp
msgid "Editor"
@@ -3482,13 +3459,14 @@ msgid "Importing:"
msgstr "Εισαγωγή:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Error getting the list of mirrors."
-msgstr "Σφάλμα κατά τη δημιουργία της υπογραφής του αντικειμένου."
+msgstr "Σφάλμα απόκτησης λίστας κατοπτρισμού."
#: editor/export_template_manager.cpp
msgid "Error parsing JSON of mirror list. Please report this issue!"
msgstr ""
+"Σφάλμα ανάλυσης JSON της λίστας κατοπτρισμού. Παρακαλούμε να αναφέρετε αυτό "
+"το πρόβλημα!"
#: editor/export_template_manager.cpp
msgid ""
@@ -4678,9 +4656,8 @@ msgid "Move Node"
msgstr "Μετακίνηση Κόμβου"
#: editor/plugins/animation_state_machine_editor.cpp
-#, fuzzy
msgid "Transition exists!"
-msgstr "Μετάβαση: "
+msgstr "Υπαρκτή μετάφραση!"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Add Transition"
@@ -5655,9 +5632,8 @@ msgid "Auto Insert Key"
msgstr "Αυτόματη Εισαγωγή Κλειδιού"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Το κλειδί κίνησης έχει εισαχθεί."
+msgstr "Επιλογές Κλειδιού και Πόζας Κίνησης"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -5768,20 +5744,18 @@ msgstr "Μάσκα εκπομπής"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
-#, fuzzy
msgid "Solid Pixels"
-msgstr "Σμίκρυνση (Εικονοστοιχεία): "
+msgstr "Αμιγή Εικονοστοιχεία"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
msgid "Border Pixels"
-msgstr ""
+msgstr "Εικονοστοιχεία Περιγράμματος"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
-#, fuzzy
msgid "Directed Border Pixels"
-msgstr "Φάκελοι & Αρχεία:"
+msgstr "Εικονοστοιχεία Προσανατολισμένου Περιγράμματος"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
@@ -6009,18 +5983,19 @@ msgstr "Μέγεθος περιγράμματος:"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "UV Channel Debug"
-msgstr ""
+msgstr "Αποσφαλμάτωση Καναλιού UV"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Remove item %d?"
msgstr "Αφαίρεση του στοιχείου %d?"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid ""
"Update from existing scene?:\n"
"%s"
-msgstr "Αναπροσαρμογή από την σκηνή"
+msgstr ""
+"Ανανέωση από υπαρκτό δέντρο; :\n"
+"%s"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Mesh Library"
@@ -6935,6 +6910,8 @@ msgstr "Μόνο οι πόροι από το σύστημα αρχείων μπ
#: modules/visual_script/visual_script_editor.cpp
msgid "Can't drop nodes because script '%s' is not used in this scene."
msgstr ""
+"Σφάλμα τοποθέτησης κόμβων, καθώς η δέσμη ενεργειών «%s» δεν χρησιμοποιείται "
+"σε αυτήν την σκηνή."
#: editor/plugins/script_text_editor.cpp
msgid "Lookup Symbol"
@@ -7342,7 +7319,7 @@ msgstr "Κινηματογραφική Προεπισκόπηση"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Not available when using the GLES2 renderer."
-msgstr ""
+msgstr "Δεν είναι διαθέσιμο στην απόδοση GLES2."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Freelook Left"
@@ -7587,9 +7564,8 @@ msgid "Create Mesh2D"
msgstr "Δημιουργία Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Mesh2D Preview"
-msgstr "Δημιουργία προεπισκοπήσεων πλεγμάτων"
+msgstr "Προεπισκόπηση Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Create Polygon2D"
@@ -7597,25 +7573,23 @@ msgstr "Δημιουργία Polygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Polygon2D Preview"
-msgstr ""
+msgstr "Προεπισκόπηση Polygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Create CollisionPolygon2D"
msgstr "Δημιουργία CollisionPolygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "CollisionPolygon2D Preview"
-msgstr "Δημιουργία CollisionPolygon2D"
+msgstr "Προεπισκόπηση CollisionPolygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Create LightOccluder2D"
msgstr "Δημιουργία LightOccluder2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "LightOccluder2D Preview"
-msgstr "Δημιουργία LightOccluder2D"
+msgstr "Προεπισκόπηση LightOccluder2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Sprite is empty!"
@@ -7694,9 +7668,8 @@ msgid "Add Frame"
msgstr "Προσθήκη καρέ"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Unable to load images"
-msgstr "Δεν ήταν δυνατή η φόρτωση της εικόνας:"
+msgstr "Αδυναμία φόρτωσης εικόνων"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "ERROR: Couldn't load frame resource!"
@@ -8387,14 +8360,12 @@ msgid "Edit Tile Z Index"
msgstr "Αλλαγή Δείκτη Z Πλακιδίου"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Make Convex"
-msgstr "Μετατροπή Πολυγώνου σε Κυρτό"
+msgstr "Μετατροπή σε Κυρτό"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Make Concave"
-msgstr "Μετατροπή Πολυγώνου σε Κοίλο"
+msgstr "Μετατροπή σε Κοίλο"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create Collision Polygon"
@@ -10543,13 +10514,13 @@ msgstr ""
"του κόμβου στις προεπιλογές τους."
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid ""
"Enabling \"Load As Placeholder\" will disable \"Editable Children\" and "
"cause all properties of the node to be reverted to their default."
msgstr ""
-"Η απενεργοποίηση του «editable_instance» θα επαναφέρει όλες τις ιδιότητες "
-"του κόμβου στις προεπιλογές τους."
+"Η ενεργοποίηση του «Φόρτωση ως μέσο κράτησης» θα απενεργοποιήσει το "
+"«Επεξεργάσιμα παιδιά» και θα επαναφέρει όλες τις ιδιότητες του κόμβου στις "
+"προεπιλογές τους."
#: editor/scene_tree_dock.cpp
msgid "Make Local"
@@ -10598,9 +10569,8 @@ msgid "Remove Node(s)"
msgstr "Αφαίρεση κόμβων"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Change type of node(s)"
-msgstr "Αλλαγή ονόματος θύρας εξόδου"
+msgstr "Αλλαγή τύπου κόμβων"
#: editor/scene_tree_dock.cpp
msgid ""
@@ -10632,7 +10602,7 @@ msgstr "Επεξεργάσιμα παιδιά"
#: editor/scene_tree_dock.cpp
msgid "Load As Placeholder"
-msgstr "Φόρτωση ως μέσο κράτησης θέσης"
+msgstr "Φόρτωση ως μέσο κράτησης"
#: editor/scene_tree_dock.cpp
msgid "Open Documentation"
@@ -10727,31 +10697,28 @@ msgid "Node configuration warning:"
msgstr "Προειδοποίηση διαμόρφωσης κόμβου:"
#: editor/scene_tree_editor.cpp
-#, fuzzy
msgid ""
"Node has %s connection(s) and %s group(s).\n"
"Click to show signals dock."
msgstr ""
-"Ο κόμβος έχει συνδέσεις και ομάδες.\n"
-"Πατήστε για να δείξετε την πλατφόρμα σημάτων."
+"Ο κόμβος έχει %s σύνδεση/-εις και %s ομάδα/-ες.\n"
+"Πατήστε για εμφάνιση της πλατφόρμας σημάτων."
#: editor/scene_tree_editor.cpp
-#, fuzzy
msgid ""
"Node has %s connection(s).\n"
"Click to show signals dock."
msgstr ""
-"Ο κόμβος έχει συνδέσεις\n"
-"Πατήστε για να δείξετε την πλατφόρμα σημάτων."
+"Ο κόμβος έχει %s σύνδεση/-εις.\n"
+"Πατήστε για εμφάνιση της πλατφόρμας σημάτων."
#: editor/scene_tree_editor.cpp
-#, fuzzy
msgid ""
"Node is in %s group(s).\n"
"Click to show groups dock."
msgstr ""
-"Ο κόμβος έχει και ομάδες\n"
-"Πατήστε για να δείξετε την πλατφόρμα σημάτων."
+"Ο κόμβος είναι σε %s ομάδα/-ες\n"
+"Πατήστε για εμφάνιση της πλατφόρμας ομάδων."
#: editor/scene_tree_editor.cpp
msgid "Open Script:"
@@ -10846,9 +10813,8 @@ msgid "Error loading script from %s"
msgstr "Σφάλμα κατά την φόρτωση δέσμής ενεργειών από %s"
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Overrides"
-msgstr "Αντικατάσταση"
+msgstr "Παρακάμπτει"
#: editor/script_create_dialog.cpp
msgid "N/A"
@@ -10895,24 +10861,20 @@ msgid "Will load an existing script file."
msgstr "Θα φορτώσει υπαρκτό αρχείο δέσμης ενεργειών."
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Script file already exists."
-msgstr "Η ενέργεια '%s' υπάρχει ήδη!"
+msgstr "Υπαρκτό αρχείο δέσμης ενεργειών."
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Class Name:"
-msgstr "Όνομα κλάσης"
+msgstr "Όνομα Κλάσης:"
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Template:"
-msgstr "Πρότυπο"
+msgstr "Πρότυπο:"
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Built-in Script:"
-msgstr "Ενσωμάτωση"
+msgstr "Ενσωμάτωση:"
#: editor/script_create_dialog.cpp
msgid "Attach Node Script"
@@ -10927,38 +10889,32 @@ msgid "Bytes:"
msgstr "Ψηφιολέξεις:"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Warning:"
-msgstr "Προειδοποιήσεις:"
+msgstr "Προειδοποίηση:"
#: editor/script_editor_debugger.cpp
msgid "Error:"
msgstr "Σφάλμα:"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "C++ Error"
-msgstr "Αντιγραφή σφάλματος"
+msgstr "Σφάλμα C++"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "C++ Error:"
-msgstr "Σφάλμα:"
+msgstr "Σφάλμα C++:"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "C++ Source"
-msgstr "Πηγή"
+msgstr "Πηγή C++"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Source:"
-msgstr "Πηγή"
+msgstr "Πηγή:"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "C++ Source:"
-msgstr "Πηγή"
+msgstr "Πηγή C++:"
#: editor/script_editor_debugger.cpp
msgid "Stack Trace"
@@ -10969,18 +10925,16 @@ msgid "Errors"
msgstr "Σφάλματα"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Child process connected."
-msgstr "Η παιδική διαδικασία συνδέθηκε"
+msgstr "Η παιδική διεργασία συνδέθηκε."
#: editor/script_editor_debugger.cpp
msgid "Copy Error"
msgstr "Αντιγραφή σφάλματος"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Skip Breakpoints"
-msgstr "Σημεία Διακοπής"
+msgstr "Παράλειψη Σημείων Διακοπής"
#: editor/script_editor_debugger.cpp
msgid "Inspect Previous Instance"
@@ -11073,19 +11027,16 @@ msgid "Export measures as CSV"
msgstr "Εξαγωγή μετρικών ως CSV"
#: editor/settings_config_dialog.cpp
-#, fuzzy
msgid "Erase Shortcut"
-msgstr "Ομαλά έξω"
+msgstr "Διαγραφή Συνόμευσης"
#: editor/settings_config_dialog.cpp
-#, fuzzy
msgid "Restore Shortcut"
-msgstr "Συντομεύσεις"
+msgstr "Επαναφορά Συντόμευσης"
#: editor/settings_config_dialog.cpp
-#, fuzzy
msgid "Change Shortcut"
-msgstr "Αλλαγή αγκυρών"
+msgstr "Αλλαγή Συντόμευσης"
#: editor/settings_config_dialog.cpp
msgid "Editor Settings"
@@ -11116,9 +11067,8 @@ msgid "Change Camera Size"
msgstr "Αλλαγή μεγέθους κάμερας"
#: editor/spatial_editor_gizmos.cpp
-#, fuzzy
msgid "Change Notifier AABB"
-msgstr "Αλλαγή διαστάσεων ειδοποιητή"
+msgstr "Ειδοποιητής Αλλαγής AABB"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Particles AABB"
@@ -11145,38 +11095,32 @@ msgid "Change Capsule Shape Height"
msgstr "Αλλαγή ύψους κάψουλας"
#: editor/spatial_editor_gizmos.cpp
-#, fuzzy
msgid "Change Cylinder Shape Radius"
-msgstr "Αλλαγή ακτίνας κάψουλας"
+msgstr "Αλλαγή Ακτίνας Σχήματος Κυλίνδρου"
#: editor/spatial_editor_gizmos.cpp
-#, fuzzy
msgid "Change Cylinder Shape Height"
-msgstr "Αλλαγή ύψους κάψουλας"
+msgstr "Αλλαγή Ύψους Σχήματος Κυλίνδρου"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Ray Shape Length"
msgstr "Αλλαγή μήκους ακτίνας"
#: modules/csg/csg_gizmos.cpp
-#, fuzzy
msgid "Change Cylinder Radius"
-msgstr "Αλλαγή διαμέτρου φωτός"
+msgstr "Αλλαγή Ακτίνας Κυλίνδρου"
#: modules/csg/csg_gizmos.cpp
-#, fuzzy
msgid "Change Cylinder Height"
-msgstr "Αλλαγή ύψους κάψουλας"
+msgstr "Αλλαγή Ύψους Κυλίνδρου"
#: modules/csg/csg_gizmos.cpp
-#, fuzzy
msgid "Change Torus Inner Radius"
-msgstr "Αλλαγή ακτίνας σφαιρικού σχήματος"
+msgstr "Αλλαγή Εσωτερική Ακτίνας Τόρου"
#: modules/csg/csg_gizmos.cpp
-#, fuzzy
msgid "Change Torus Outer Radius"
-msgstr "Αλλαγή διαμέτρου φωτός"
+msgstr "Αλλαγή Εξωτερικής Ακτίνας Τόρου"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
msgid "Select the dynamic library for this entry"
@@ -11216,12 +11160,11 @@ msgstr "Βιβλιοθήκη GDNative"
#: modules/gdnative/gdnative_library_singleton_editor.cpp
msgid "Enabled GDNative Singleton"
-msgstr ""
+msgstr "Ενεργοποίηση Μονοσυνόλου GDNative"
#: modules/gdnative/gdnative_library_singleton_editor.cpp
-#, fuzzy
msgid "Disabled GDNative Singleton"
-msgstr "Απενεργοποίηση δείκτη ενημέρωσης"
+msgstr "Απενεργοποίηση Μονοσυνόλου GDNative"
#: modules/gdnative/gdnative_library_singleton_editor.cpp
msgid "Library"
@@ -11236,9 +11179,8 @@ msgid "GDNative"
msgstr "GDNative"
#: modules/gdscript/gdscript_functions.cpp
-#, fuzzy
msgid "Step argument is zero!"
-msgstr "Η παράμετρος step είναι μηδέν!"
+msgstr "Μηδενική παράμετρος step!"
#: modules/gdscript/gdscript_functions.cpp
msgid "Not a script with an instance"
@@ -11303,14 +11245,12 @@ msgid "GridMap Delete Selection"
msgstr "GridMap Διαγραφή επιλογής"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "GridMap Fill Selection"
-msgstr "GridMap Διαγραφή επιλογής"
+msgstr "GridMap Γέμισμα Επιλογής"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "GridMap Paste Selection"
-msgstr "GridMap Διαγραφή επιλογής"
+msgstr "GridMap Επικόλληση Επιλογής"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "GridMap Paint"
@@ -11377,9 +11317,8 @@ msgid "Cursor Clear Rotation"
msgstr "Εκκαθάριση περιστροφής δρομέα"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Paste Selects"
-msgstr "Διαγραφή επιλογής"
+msgstr "Επιλογή Επικόλλησης"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Clear Selection"
@@ -11398,13 +11337,12 @@ msgid "Pick Distance:"
msgstr "Επιλογή απόστασης:"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Filter meshes"
-msgstr "Φιλτράρισμα μεθόδων"
+msgstr "Φιλτράρισμα πλεγμάτων"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Give a MeshLibrary resource to this GridMap to use its meshes."
-msgstr ""
+msgstr "Ορίστε έναν πόρο MeshLibrary στο GridMap για χρήση των πλεγμάτων του."
#: modules/mono/csharp_script.cpp
msgid "Class name can't be a reserved keyword"
@@ -11415,9 +11353,8 @@ msgid "End of inner exception stack trace"
msgstr "Τέλος ιχνηλάτησης στοίβας εσωτερικής εξαίρεσης"
#: modules/recast/navigation_mesh_editor_plugin.cpp
-#, fuzzy
msgid "Bake NavMesh"
-msgstr "Ψήσιμο NavMesh (πλέγματος πλοήγησης)"
+msgstr "Ψήσιμο NavMesh"
#: modules/recast/navigation_mesh_editor_plugin.cpp
msgid "Clear the navigation mesh."
@@ -11534,42 +11471,36 @@ msgid "Set Variable Type"
msgstr "Ορισμός τύπου μεταβλητής"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Input Port"
-msgstr "Προσθήκη θύρας εισόδου"
+msgstr "Προσθήκη Θύρας Εισόδου"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Output Port"
-msgstr "Προσθήκη θύρας εξόδου"
+msgstr "Προσθήκη Θύρας Εξόδου"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Override an existing built-in function."
-msgstr "Δεν μπορεί να συγχέεται με υπαρκτό ενσωματωμένο όνομα τύπου."
+msgstr "Παράκαμψη υπαρκτής ενσωματωμένης συνάρτησης."
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create a new function."
-msgstr "Δημιουργία νέου ορθογωνίου."
+msgstr "Δημιουργία νέας συνάρτησης."
#: modules/visual_script/visual_script_editor.cpp
msgid "Variables:"
msgstr "Μεταβλητές:"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create a new variable."
-msgstr "Δημιουργία νέου ορθογωνίου."
+msgstr "Δημιουργία νέας μεταβλητής."
#: modules/visual_script/visual_script_editor.cpp
msgid "Signals:"
msgstr "Σήματα:"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create a new signal."
-msgstr "Δημιουργία νέου πολυγώνου."
+msgstr "Δημιουργία νέου σήματος."
#: modules/visual_script/visual_script_editor.cpp
msgid "Name is not a valid identifier:"
@@ -11596,9 +11527,8 @@ msgid "Add Function"
msgstr "Προσθήκη συνάρτησης"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Delete input port"
-msgstr "Αφαίρεση θύρας εισόδου"
+msgstr "Διαγραφή θύρας εισόδου"
#: modules/visual_script/visual_script_editor.cpp
msgid "Add Variable"
@@ -11609,14 +11539,12 @@ msgid "Add Signal"
msgstr "Προσθήκη σήματος"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Remove Input Port"
-msgstr "Αφαίρεση θύρας εισόδου"
+msgstr "Αφαίρεση Θύρας Εισόδου"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Remove Output Port"
-msgstr "Αφαίρεση θύρας εξόδου"
+msgstr "Αφαίρεση Θύρας Εξόδου"
#: modules/visual_script/visual_script_editor.cpp
msgid "Change Expression"
@@ -11673,6 +11601,10 @@ msgid ""
"Can't drop properties because script '%s' is not used in this scene.\n"
"Drop holding 'Shift' to just copy the signature."
msgstr ""
+"Σφάλμα τοποθέτησης ιδιοτήτων, καθώς η δέσμη ενεργειών «%s» δεν "
+"χρησιμοποιείται σε αυτήν την σκηνή.\n"
+"Τοποθετήστε τες κρατώντας παρατεταμένα στο «Shift» για απλή αντιγραφή της "
+"υπογραφής."
#: modules/visual_script/visual_script_editor.cpp
msgid "Add Getter Property"
@@ -11699,19 +11631,16 @@ msgid "Connect Nodes"
msgstr "Σύνδεση κόμβων"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Disconnect Nodes"
-msgstr "Αποσύνδεση κόμβων γραφήματος"
+msgstr "Αποσύνδεση Κόμβων"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Connect Node Data"
-msgstr "Σύνδεση κόμβων"
+msgstr "Σύνδεση Δεδομένων Κόμβων"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Connect Node Sequence"
-msgstr "Σύνδεση κόμβων"
+msgstr "Σύνδεση Εκτέλεσης Κόμβων"
#: modules/visual_script/visual_script_editor.cpp
msgid "Script already has function '%s'"
@@ -11722,9 +11651,8 @@ msgid "Change Input Value"
msgstr "Αλλαγή τιμής εισόδου"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Resize Comment"
-msgstr "Αλλαγή μεγέθους CanvasItem"
+msgstr "Αλλαγή Μεγέθους Σχολίου"
#: modules/visual_script/visual_script_editor.cpp
msgid "Can't copy the function node."
@@ -11739,26 +11667,24 @@ msgid "Paste VisualScript Nodes"
msgstr "Επικόλληση κόμβων VisualScript"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Can't create function with a function node."
-msgstr "Αδύνατη η αντιγραφή του κόμβου συνάρτησης."
+msgstr "Αδυναμία δημιουργίας συνάρτησης με κόμβου συνάρτησης."
#: modules/visual_script/visual_script_editor.cpp
msgid "Can't create function of nodes from nodes of multiple functions."
-msgstr ""
+msgstr "Αδυναμία δημιουργίας συνάρτησης κόμβων από κόμβους συναρτήσεων."
#: modules/visual_script/visual_script_editor.cpp
msgid "Select at least one node with sequence port."
-msgstr ""
+msgstr "Επιλέξτε τουλάχιστον έναν κόμβο με θύρα εκτέλεσης."
#: modules/visual_script/visual_script_editor.cpp
msgid "Try to only have one sequence input in selection."
-msgstr ""
+msgstr "Προσπαθήστε να έχετε μόνο μία είσοδο εκτέλεσης στην επιλογή."
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create Function"
-msgstr "Μετονομασία συνάρτησης"
+msgstr "Δημιουργία Συνάρτησης"
#: modules/visual_script/visual_script_editor.cpp
msgid "Remove Function"
@@ -11781,38 +11707,33 @@ msgid "Editing Signal:"
msgstr "Επεξεργασία σήματος:"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Make Tool:"
-msgstr "Κάνε τοπικό"
+msgstr "Κάνε Εργαλείο (tool):"
#: modules/visual_script/visual_script_editor.cpp
msgid "Members:"
msgstr "Μέλη:"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Change Base Type:"
-msgstr "Αλλαγή βασικού τύπου"
+msgstr "Αλλαγή Βασικού Τύπου:"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Nodes..."
-msgstr "Προσθήκη Κόμβου..."
+msgstr "Προσθήκη Κόμβων..."
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Function..."
-msgstr "Προσθήκη συνάρτησης"
+msgstr "Προσθήκη Συνάρτησης..."
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "function_name"
-msgstr "Συνάρτηση:"
+msgstr "όνομα_συνάρτησης"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Select or create a function to edit its graph."
-msgstr "Επιλέξτε ή δημιουργήστε μία συνάρτηση για να επεξεργαστείτε το γράφημα"
+msgstr ""
+"Επιλέξτε ή δημιουργήστε μία συνάρτηση για να επεξεργαστείτε το γράφημα της."
#: modules/visual_script/visual_script_editor.cpp
msgid "Delete Selected"
@@ -11831,19 +11752,16 @@ msgid "Cut Nodes"
msgstr "Αποκοπή κόμβων"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Make Function"
-msgstr "Μετονομασία συνάρτησης"
+msgstr "Κάνε Συνάρτηση"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Refresh Graph"
-msgstr "Αναναίωση"
+msgstr "Ανανέωση Γραφήματος"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Edit Member"
-msgstr "Μέλη"
+msgstr "Επεξεργασία Μέλους"
#: modules/visual_script/visual_script_flow_control.cpp
msgid "Input type not iterable: "
@@ -11903,17 +11821,16 @@ msgstr ""
"ή ακολουθία χαρακτήρων (error)."
#: modules/visual_script/visual_script_property_selector.cpp
-#, fuzzy
msgid "Search VisualScript"
-msgstr "Αφαίρεση κόμβου VisualScript"
+msgstr "Αναζήτηση VisualScript"
#: modules/visual_script/visual_script_property_selector.cpp
msgid "Get %s"
-msgstr ""
+msgstr "Διάβασε %s"
#: modules/visual_script/visual_script_property_selector.cpp
msgid "Set %s"
-msgstr ""
+msgstr "Θέσε %s"
#: platform/android/export/export.cpp
msgid "Package name is missing."
@@ -11924,10 +11841,9 @@ msgid "Package segments must be of non-zero length."
msgstr "Τα τμήματα του πακέτου πρέπει να έχουν μη μηδενικό μήκος."
#: platform/android/export/export.cpp
-#, fuzzy
msgid "The character '%s' is not allowed in Android application package names."
msgstr ""
-"Ο χαρακτήρας '%s' δεν επιτρέπεται στα ονόματα των πακέτων εφαρμογών Android."
+"Ο χαρακτήρας «%s» απαγορεύεται στο όνομα πακέτου των εφαρμογών Android."
#: platform/android/export/export.cpp
msgid "A digit cannot be the first character in a package segment."
@@ -11958,11 +11874,10 @@ msgid "OpenJDK jarsigner not configured in the Editor Settings."
msgstr "Το OpenJDK jarsigner δεν έχει ρυθμιστεί στις Ρυθμίσεις Επεξεργαστή."
#: platform/android/export/export.cpp
-#, fuzzy
msgid "Debug keystore not configured in the Editor Settings nor in the preset."
msgstr ""
-"Το Debug keystore δεν έχει ρυθμιστεί στις Ρυθμίσεις Επεξεργαστή ή στην "
-"προεπιλεγμένη ρύθμιση."
+"Το «debug keystore» δεν έχει καθοριστεί στις Ρυθμίσεις Επεξεργαστή ή την "
+"διαμόρφωση."
#: platform/android/export/export.cpp
msgid "Custom build requires a valid Android SDK path in Editor Settings."
@@ -11989,9 +11904,8 @@ msgid "Invalid public key for APK expansion."
msgstr "Μη έγκυρο δημόσιο κλειδί (public key) για επέκταση APK."
#: platform/android/export/export.cpp
-#, fuzzy
msgid "Invalid package name:"
-msgstr "Μη έγκυρο όνομα κλάσης"
+msgstr "Άκυρο όνομα πακέτου:"
#: platform/android/export/export.cpp
msgid ""
@@ -12036,30 +11950,26 @@ msgid "Identifier is missing."
msgstr "Το αναγνωριστικό λείπει."
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "The character '%s' is not allowed in Identifier."
-msgstr "Το όνομα δεν είναι έγκυρο αναγνωριστικό:"
+msgstr "Ο χαρακτήρας «%s» είναι άκυρος σε αναγνωριστικό."
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "App Store Team ID not specified - cannot configure the project."
msgstr ""
-"Το ομαδικό αναγνωριστικό (Team ID) App Store δεν έχει καθοριστεί - δεν "
-"είναι δυνατή η διαμόρφωση του έργου."
+"Δεν έχει καθοριστεί αναγνωριστικό ομάδας (Team ID) του App Store - αδυναμία "
+"διαμόρφωσης έργου."
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Invalid Identifier:"
-msgstr "Το όνομα δεν είναι έγκυρο αναγνωριστικό:"
+msgstr "Άκυρο Αναγνωριστικό:"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Required icon is not specified in the preset."
-msgstr "Το απαιτούμενο εικονίδιο δεν έχει καθοριστεί στην προεπιλογή."
+msgstr "Το απαιτούμενο εικονίδιο δεν έχει καθοριστεί στην διαμόρφωση."
#: platform/javascript/export/export.cpp
msgid "Stop HTTP Server"
-msgstr ""
+msgstr "Τερματισμός Διακομιστή HTTP"
#: platform/javascript/export/export.cpp
msgid "Run in Browser"
@@ -12094,19 +12004,16 @@ msgid "Using default boot splash image."
msgstr "Χρήση προεπιλεγμένης εικόνας εκκίνησης."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package short name."
-msgstr "Μη έγκυρο όνομα κλάσης"
+msgstr "Άκυρο σύντομο όνομα πακέτου."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package unique name."
-msgstr "Άκυρο μοναδικό όνομα."
+msgstr "Άκυρο μοναδικό όνομα πακέτου."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package publisher display name."
-msgstr "Άκυρο μοναδικό όνομα."
+msgstr "Άκυρο όνομα εμφάνισης εκδότη πακέτου."
#: platform/uwp/export/export.cpp
msgid "Invalid product GUID."
@@ -12217,6 +12124,8 @@ msgid ""
"CPUParticles2D animation requires the usage of a CanvasItemMaterial with "
"\"Particles Animation\" enabled."
msgstr ""
+"Η κίνηση CPUParticles2D απαιτεί την χρήση CanvasItemMaterial με το "
+"«Particles Animation» ενεργό."
#: scene/2d/light_2d.cpp
#, fuzzy
@@ -12268,6 +12177,9 @@ msgid ""
"Use the CPUParticles2D node instead. You can use the \"Convert to "
"CPUParticles\" option for this purpose."
msgstr ""
+"Τα σωματίδια GPU δεν υποστηρίζονται από τον οδηγό βίντεο GLES2.\n"
+"Χρησιμοποιήστε τον κόμβο CPUParticles2D. Μπορείτε να χρησιμοποιήσετε την "
+"επιλογή «Convert to CPUParticles» για αυτόν τον σκοπό."
#: scene/2d/particles_2d.cpp scene/3d/particles.cpp
msgid ""
@@ -12282,6 +12194,8 @@ msgid ""
"Particles2D animation requires the usage of a CanvasItemMaterial with "
"\"Particles Animation\" enabled."
msgstr ""
+"Η κίνηση Particles2D απαιτεί την χρήση ενός CanvasItemMaterial με το "
+"«Particles Animation» ενεργό."
#: scene/2d/path_2d.cpp
msgid "PathFollow2D only works when set as a child of a Path2D node."
@@ -12305,16 +12219,20 @@ msgstr ""
#: scene/2d/skeleton_2d.cpp
msgid "This Bone2D chain should end at a Skeleton2D node."
-msgstr ""
+msgstr "Αυτή η αλυσίδα Bone2D πρέπει να τελειώνει σε έναν κόμβο Skeleton2D."
#: scene/2d/skeleton_2d.cpp
msgid "A Bone2D only works with a Skeleton2D or another Bone2D as parent node."
msgstr ""
+"Ένα Bone2D δουλεύει μόνο με ένα Skeleton2D ή άλλο Bone2D σαν τον γονικό του "
+"κόμβο."
#: scene/2d/skeleton_2d.cpp
msgid ""
"This bone lacks a proper REST pose. Go to the Skeleton2D node and set one."
msgstr ""
+"Αυτό το κόκαλο δεν έχει θέση REST. Πηγαίνετε στον κόμβο Skeleton2D και "
+"ορίστε την."
#: scene/2d/tile_map.cpp
#, fuzzy
@@ -12465,6 +12383,8 @@ msgid ""
"CPUParticles animation requires the usage of a SpatialMaterial whose "
"Billboard Mode is set to \"Particle Billboard\"."
msgstr ""
+"Η κίνηση CPUParticles απαιτεί την χρήση ενός SpatialMaterial με το Billboard "
+"Mode ίσο με «Particle Billboard»."
#: scene/3d/gi_probe.cpp
msgid "Plotting Meshes"
@@ -12506,6 +12426,9 @@ msgid ""
"Use the CPUParticles node instead. You can use the \"Convert to CPUParticles"
"\" option for this purpose."
msgstr ""
+"Τα σωματίδια GPU δεν υποστηρίζονται από τον οδηγό βίντεο GLES2.\n"
+"Χρησιμοποιήστε τον κόμβο CPUParticles. Μπορείτε να χρησιμοποιήσετε την "
+"επιλογή «Convert to CPUParticles» για αυτόν τον σκοπό."
#: scene/3d/particles.cpp
msgid ""
@@ -12518,6 +12441,8 @@ msgid ""
"Particles animation requires the usage of a SpatialMaterial whose Billboard "
"Mode is set to \"Particle Billboard\"."
msgstr ""
+"Η κίνηση Particles απαιτεί την χρήση ενός SpatialMaterial με το Billboard "
+"Mode ίσο με «Particle Billboard»."
#: scene/3d/path.cpp
#, fuzzy
@@ -12529,6 +12454,8 @@ msgid ""
"PathFollow's ROTATION_ORIENTED requires \"Up Vector\" to be enabled in its "
"parent Path's Curve resource."
msgstr ""
+"Το ROTATION_ORIENTED του PathFollow απαιτεί το «Up Vector» να είναι ενεργό "
+"στον πόρο Curve του γονικού Path."
#: scene/3d/physics_body.cpp
msgid ""
@@ -12586,6 +12513,8 @@ msgid ""
"WorldEnvironment requires its \"Environment\" property to contain an "
"Environment to have a visible effect."
msgstr ""
+"Το WorldEnvironment απαιτεί τον ορισμό της ιδιότητας «Environment» για να "
+"έχει ορατό αποτέλεσμα."
#: scene/3d/world_environment.cpp
msgid ""
@@ -12604,7 +12533,7 @@ msgstr ""
#: scene/animation/animation_blend_tree.cpp
msgid "On BlendTree node '%s', animation not found: '%s'"
-msgstr ""
+msgstr "Στον κόμβο BlendTree «%s», δεν βρέθηκε η κίνηση: «%s»"
#: scene/animation/animation_blend_tree.cpp
#, fuzzy
@@ -12628,7 +12557,7 @@ msgstr "Αποσύνδεση του '%s' απο το '%s'"
#: scene/animation/animation_tree.cpp
msgid "No root AnimationNode for the graph is set."
-msgstr ""
+msgstr "Δεν έχει οριστεί ριζικό AnimationNode για το γράφημα."
#: scene/animation/animation_tree.cpp
#, fuzzy
@@ -12640,6 +12569,7 @@ msgstr ""
#: scene/animation/animation_tree.cpp
msgid "Path set for AnimationPlayer does not lead to an AnimationPlayer node."
msgstr ""
+"Το όρισμα διαδρομής AnimationPlayer δεν οδηγεί σε κόμβο AnimationPlayer."
#: scene/animation/animation_tree.cpp
#, fuzzy
@@ -12657,6 +12587,9 @@ msgid ""
"LMB: Set color\n"
"RMB: Remove preset"
msgstr ""
+"Χρώμα: #%s\n"
+"LMB: Ορισμός χρώματος\n"
+"RMB: Κατάργηση διαμόρφωσης"
#: scene/gui/color_picker.cpp
#, fuzzy
@@ -12674,7 +12607,7 @@ msgstr "Παρέκκλιση"
#: scene/gui/color_picker.cpp
msgid "Switch between hexadecimal and code values."
-msgstr ""
+msgstr "Εναλλαγή δεκαεξαδικών και κωδικοποιημένων τιμών."
#: scene/gui/color_picker.cpp
msgid "Add current color as a preset."
@@ -12697,6 +12630,9 @@ msgid ""
"The Hint Tooltip won't be displayed as the control's Mouse Filter is set to "
"\"Ignore\". To solve this, set the Mouse Filter to \"Stop\" or \"Pass\"."
msgstr ""
+"Το Hint Tooltip δεν θα εμφανιστεί, καθώς το Mouse Filter του Control είναι "
+"«Ignore». Για επίλυση του προβλήματος, θέστε το Mouse Filter σε «Stop» ή "
+"«Pass»."
#: scene/gui/dialogs.cpp
msgid "Alert!"
@@ -12720,6 +12656,8 @@ msgstr ""
#: scene/gui/range.cpp
msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0."
msgstr ""
+"Εάν το «Exp Edit» είναι ενεργό, το «Min Value» πρέπει να είναι μεγαλύτερο "
+"του 0."
#: scene/gui/scroll_container.cpp
#, fuzzy
@@ -12774,20 +12712,29 @@ msgstr "Μη έγκυρη πηγή!"
#: servers/visual/shader_language.cpp
msgid "Assignment to function."
-msgstr ""
+msgstr "Ανάθεση σε συνάρτηση."
#: servers/visual/shader_language.cpp
msgid "Assignment to uniform."
-msgstr ""
+msgstr "Ανάθεση σε ενιαία μεταβλητή."
#: servers/visual/shader_language.cpp
msgid "Varyings can only be assigned in vertex function."
-msgstr ""
+msgstr "Τα «varying» μπορούν να ανατεθούν μόνο στην σκίαση κορυφής."
#: servers/visual/shader_language.cpp
msgid "Constants cannot be modified."
msgstr "Οι σταθερές δεν μπορούν να τροποποιηθούν."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Δεν υπάρχει ακόμα βοήθεια για αυτήν την κλάση, μπορείτε να την [color="
+#~ "$color][url=$url]γράψετε[/url][/color] ή να την [color=$color][url="
+#~ "$url2]ζητήσετε[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "απαρίθμηση "
diff --git a/editor/translations/eo.po b/editor/translations/eo.po
index 4ba9442205..f8818961c6 100644
--- a/editor/translations/eo.po
+++ b/editor/translations/eo.po
@@ -1935,13 +1935,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/es.po b/editor/translations/es.po
index 34036a30b9..7ae1e60572 100644
--- a/editor/translations/es.po
+++ b/editor/translations/es.po
@@ -46,7 +46,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 22:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot/es/>\n"
@@ -1990,16 +1990,6 @@ msgid "Online Tutorials"
msgstr "Tutoriales en línea"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Actualmente no existen tutoriales para esta clase, puedes [color=$color][url="
-"$url]contribuir uno[/url][/color] o [color=$color][url=$url2]solicitar uno[/"
-"url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propiedades"
@@ -5676,9 +5666,8 @@ msgid "Auto Insert Key"
msgstr "Auto Insertar Clave"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Clave de animación insertada."
+msgstr "Clave de animación y Opciones de Pose"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12727,6 +12716,15 @@ msgstr "Solo se pueden asignar variaciones en funciones de vértice."
msgid "Constants cannot be modified."
msgstr "Las constantes no pueden modificarse."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Actualmente no existen tutoriales para esta clase, puedes [color=$color]"
+#~ "[url=$url]contribuir uno[/url][/color] o [color=$color][url="
+#~ "$url2]solicitar uno[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po
index d3a4c75d71..c367f694c1 100644
--- a/editor/translations/es_AR.po
+++ b/editor/translations/es_AR.po
@@ -18,8 +18,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 11:39+0000\n"
-"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
+"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n"
"Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/"
"godot-engine/godot/es_AR/>\n"
"Language: es_AR\n"
@@ -1959,16 +1959,6 @@ msgid "Online Tutorials"
msgstr "Tutoriales en línea"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Actualmente no existen tutoriales para esta clase, podés [color=$color][url="
-"$url]contribuir uno[/url][/color] o [color=$color][url=$url2]solicitar uno[/"
-"url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propiedades"
@@ -5642,9 +5632,8 @@ msgid "Auto Insert Key"
msgstr "Auto Insertar Clave"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Clave de Animación Insertada."
+msgstr "Clave de animación y Opciones de Pose"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12686,6 +12675,15 @@ msgstr "Solo se pueden asignar variaciones en funciones de vértice."
msgid "Constants cannot be modified."
msgstr "Las constantes no pueden modificarse."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Actualmente no existen tutoriales para esta clase, podés [color=$color]"
+#~ "[url=$url]contribuir uno[/url][/color] o [color=$color][url="
+#~ "$url2]solicitar uno[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/et.po b/editor/translations/et.po
index 774f6dd7f6..1db95acc83 100644
--- a/editor/translations/et.po
+++ b/editor/translations/et.po
@@ -1898,13 +1898,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/eu.po b/editor/translations/eu.po
index 9d3a506fce..b9a682553e 100644
--- a/editor/translations/eu.po
+++ b/editor/translations/eu.po
@@ -1893,13 +1893,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/fa.po b/editor/translations/fa.po
index 92e3422d44..5d071126c6 100644
--- a/editor/translations/fa.po
+++ b/editor/translations/fa.po
@@ -2020,13 +2020,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/fi.po b/editor/translations/fi.po
index 70a9c21e7f..bac46bbf8b 100644
--- a/editor/translations/fi.po
+++ b/editor/translations/fi.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 22:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: Tapani Niemi <tapani.niemi@kapsi.fi>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/"
"godot/fi/>\n"
@@ -1944,16 +1944,6 @@ msgid "Online Tutorials"
msgstr "Online-oppaat"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Tälle luokalle ei vielä löydy kuvausta. Voit [color=$color][url=$url]auttaa "
-"luomalla sellaisen[/url][/color] tai [color=$color][url=$url2]pyytää "
-"sellaisen[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Ominaisuudet"
@@ -5599,9 +5589,8 @@ msgid "Auto Insert Key"
msgstr "Lisää avainruutuja automaattisesti"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Animaatioavain lisätty."
+msgstr "Animaatioavaimen ja asennon valinnat"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12614,6 +12603,15 @@ msgstr "Varying tyypin voi sijoittaa vain vertex-funktiossa."
msgid "Constants cannot be modified."
msgstr "Vakioita ei voi muokata."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Tälle luokalle ei vielä löydy kuvausta. Voit [color=$color][url="
+#~ "$url]auttaa luomalla sellaisen[/url][/color] tai [color=$color][url="
+#~ "$url2]pyytää sellaisen[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/fil.po b/editor/translations/fil.po
index b930a1dc6b..c8a2a20684 100644
--- a/editor/translations/fil.po
+++ b/editor/translations/fil.po
@@ -1900,13 +1900,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/fr.po b/editor/translations/fr.po
index 78f04cd166..c92a8d3bb0 100644
--- a/editor/translations/fr.po
+++ b/editor/translations/fr.po
@@ -2017,16 +2017,6 @@ msgid "Online Tutorials"
msgstr "Tutoriels en ligne"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Il n'y a pas de tutoriels disponibles pour cette classe, vous pouvez [color="
-"$color][url=$url]en créer un[/url][/color] ou [color=$color][url=$url2]en "
-"demander un[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propriétés"
@@ -12796,6 +12786,15 @@ msgstr "Les variations ne peuvent être affectées que dans la fonction vertex."
msgid "Constants cannot be modified."
msgstr "Les constantes ne peuvent être modifiées."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Il n'y a pas de tutoriels disponibles pour cette classe, vous pouvez "
+#~ "[color=$color][url=$url]en créer un[/url][/color] ou [color=$color][url="
+#~ "$url2]en demander un[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum_ "
diff --git a/editor/translations/ga.po b/editor/translations/ga.po
index c82b19b5de..f1db3d5a78 100644
--- a/editor/translations/ga.po
+++ b/editor/translations/ga.po
@@ -1896,13 +1896,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/he.po b/editor/translations/he.po
index 316171b7b7..6a153b6f11 100644
--- a/editor/translations/he.po
+++ b/editor/translations/he.po
@@ -2014,13 +2014,6 @@ msgid "Online Tutorials"
msgstr "מסמכים מקוונים"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "מאפיינים"
diff --git a/editor/translations/hi.po b/editor/translations/hi.po
index 1f205dc7c7..424a9a6bc1 100644
--- a/editor/translations/hi.po
+++ b/editor/translations/hi.po
@@ -1988,13 +1988,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/hr.po b/editor/translations/hr.po
index 8b6c214e13..bc5abb76fc 100644
--- a/editor/translations/hr.po
+++ b/editor/translations/hr.po
@@ -1910,13 +1910,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/hu.po b/editor/translations/hu.po
index 5dc81bf15f..af13990fdc 100644
--- a/editor/translations/hu.po
+++ b/editor/translations/hu.po
@@ -2033,16 +2033,6 @@ msgid "Online Tutorials"
msgstr "Online Oktatóanyagok:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Jelenleg nincsenek oktatóanyagok ehhez az osztályhoz. [color=$color][url="
-"$url]Hozzájárulhat eggyel[/url][/color], vagy [color=$color][url="
-"$url2]kérvényezhet egyet[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Tulajdonságok"
@@ -12913,6 +12903,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Jelenleg nincsenek oktatóanyagok ehhez az osztályhoz. [color=$color][url="
+#~ "$url]Hozzájárulhat eggyel[/url][/color], vagy [color=$color][url="
+#~ "$url2]kérvényezhet egyet[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/id.po b/editor/translations/id.po
index 4dcb1c53cf..4208edb582 100644
--- a/editor/translations/id.po
+++ b/editor/translations/id.po
@@ -1965,16 +1965,6 @@ msgid "Online Tutorials"
msgstr "Tutorial Daring"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Untuk saat ini tidak ada tutorial dalam kelas ini, anda bisa [color=$color]"
-"[url=$url]ikut berkontribusi[/url][/color] atau [color=$color][url="
-"$url2]memberikan usulan[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Properti Objek"
@@ -12693,6 +12683,15 @@ msgstr "Variasi hanya bisa ditetapkan dalam fungsi vertex."
msgid "Constants cannot be modified."
msgstr "Konstanta tidak dapat dimodifikasi."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Untuk saat ini tidak ada tutorial dalam kelas ini, anda bisa [color="
+#~ "$color][url=$url]ikut berkontribusi[/url][/color] atau [color=$color][url="
+#~ "$url2]memberikan usulan[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/is.po b/editor/translations/is.po
index 9a91b52352..7a2250c0b2 100644
--- a/editor/translations/is.po
+++ b/editor/translations/is.po
@@ -1931,13 +1931,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/it.po b/editor/translations/it.po
index a96b5716d3..a549df218c 100644
--- a/editor/translations/it.po
+++ b/editor/translations/it.po
@@ -36,7 +36,7 @@
# Davide Giuliano <davidegiuliano00@gmail.com>, 2019.
# Stefano Merazzi <asso99@hotmail.com>, 2019.
# Sinapse X <sinapsex13@gmail.com>, 2019.
-# Micila Micillotto <micillotto@gmail.com>, 2019.
+# Micila Micillotto <micillotto@gmail.com>, 2019, 2020.
# Mirko Soppelsa <miknsop@gmail.com>, 2019.
# No <kingofwizards.kw7@gmail.com>, 2019.
# StarFang208 <polaritymanx@yahoo.it>, 2019.
@@ -47,8 +47,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-21 23:23+0000\n"
-"Last-Translator: Fabio Iotti <fabiogiopla@gmail.com>\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
+"Last-Translator: Micila Micillotto <micillotto@gmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot/it/>\n"
"Language: it\n"
@@ -1983,23 +1983,12 @@ msgid "Online Tutorials"
msgstr "Tutorial Online"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Al momento non esiste alcuna descrizione per questa classe. Aiutaci [color="
-"$color][url=$url]aggiungendone una[/url][/color] oppure [color=$color][url="
-"$url2]richiedendone una[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Proprietà"
#: editor/editor_help.cpp
-#, fuzzy
msgid "override:"
-msgstr "ridefinizione:"
+msgstr "sovrascrivi:"
#: editor/editor_help.cpp
msgid "default:"
@@ -4699,7 +4688,6 @@ msgid "Move Node"
msgstr "Sposta Nodo"
#: editor/plugins/animation_state_machine_editor.cpp
-#, fuzzy
msgid "Transition exists!"
msgstr "La transizione esiste!"
@@ -5671,9 +5659,8 @@ msgid "Auto Insert Key"
msgstr "Inserimento Automatico Chiave"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Key d'Animazione Inserito."
+msgstr "Chiavi d'Animazione e Opzioni Posa"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -5794,7 +5781,6 @@ msgstr "Pixel del Bordo"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
-#, fuzzy
msgid "Directed Border Pixels"
msgstr "Pixel dei Bordi Diretti"
@@ -7702,7 +7688,6 @@ msgid "Add Frame"
msgstr "Aggiungi frame"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Unable to load images"
msgstr "Impossibile caricare le immagini"
@@ -11349,9 +11334,8 @@ msgid "Cursor Clear Rotation"
msgstr "Cursore Cancella Rotazione"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Paste Selects"
-msgstr "Cancella Selezione"
+msgstr "Incolla Selezioni"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Clear Selection"
@@ -12723,6 +12707,15 @@ msgstr "Varyings può essere assegnato soltanto nella funzione del vertice."
msgid "Constants cannot be modified."
msgstr "Le constanti non possono essere modificate."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Al momento non esiste alcuna descrizione per questa classe. Aiutaci "
+#~ "[color=$color][url=$url]aggiungendone una[/url][/color] oppure [color="
+#~ "$color][url=$url2]richiedendone una[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ja.po b/editor/translations/ja.po
index 4cc71bc321..af2cca2ca6 100644
--- a/editor/translations/ja.po
+++ b/editor/translations/ja.po
@@ -35,7 +35,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-23 15:05+0000\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
"Last-Translator: Wataru Onuki <bettawat@yahoo.co.jp>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/"
"godot/ja/>\n"
@@ -681,7 +681,7 @@ msgstr "コピー"
#: editor/animation_track_editor.cpp
msgid "Select All/None"
-msgstr "全てを選択/解除"
+msgstr "すべてを選択/解除"
#: editor/animation_track_editor_plugins.cpp
msgid "Add Audio Track Clip"
@@ -928,7 +928,7 @@ msgstr "このシグナルから全ての接続を除去してもよろしいで
#: editor/connections_dialog.cpp
msgid "Disconnect All"
-msgstr "全て切断"
+msgstr "すべて切断"
#: editor/connections_dialog.cpp
msgid "Edit..."
@@ -1202,7 +1202,7 @@ msgstr ""
#: editor/editor_about.cpp
msgid "All Components"
-msgstr "全てのコンポーネント"
+msgstr "すべてのコンポーネント"
#: editor/editor_about.cpp
msgid "Components"
@@ -1968,16 +1968,6 @@ msgid "Online Tutorials"
msgstr "オンラインチュートリアル"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"現在、このクラスのチュートリアルはありませんが、[color=$color][url=$url]貢献"
-"[/url][/color]、または[color=$color][url=$url2]リクエスト[/url][/color]は可能"
-"です。"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "プロパティ"
@@ -2630,7 +2620,7 @@ msgstr "他のタブを閉じる"
#: editor/editor_node.cpp
msgid "Close Tabs to the Right"
-msgstr "タブを右に閉じる"
+msgstr "右側のタブを閉じる"
#: editor/editor_node.cpp
msgid "Close All Tabs"
@@ -2718,7 +2708,7 @@ msgstr "シーンを保存"
#: editor/editor_node.cpp
msgid "Save All Scenes"
-msgstr "全てのシーンを保存"
+msgstr "すべてのシーンを保存"
#: editor/editor_node.cpp
msgid "Convert To..."
@@ -4745,7 +4735,7 @@ msgstr "プレイモード:"
#: editor/plugins/animation_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "AnimationTree"
-msgstr "アニメーションツリー"
+msgstr "AnimationTree(アニメーションツリー)"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "New name:"
@@ -5976,11 +5966,12 @@ msgid "Remove item %d?"
msgstr "アイテム%dを取り除きますか?"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid ""
"Update from existing scene?:\n"
"%s"
-msgstr "シーンからアップデート"
+msgstr ""
+"既存シーンからアップデートしますか?:\n"
+"%s"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Mesh Library"
@@ -7341,9 +7332,8 @@ msgstr ""
"ゲーム内のパフォーマンスを確実に示すものとして使用することはできません。"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "View Rotation Locked"
-msgstr "情報を表示"
+msgstr "ビューの回転を固定中"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "XForm Dialog"
@@ -7423,7 +7413,7 @@ msgstr "フリールックの切り替え"
#: editor/plugins/spatial_editor_plugin.cpp
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Transform"
-msgstr "変形"
+msgstr "幾何学変換(変形)"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Snap Object to Floor"
@@ -10982,7 +10972,7 @@ msgstr "フォーマット"
#: editor/script_editor_debugger.cpp
msgid "Usage"
-msgstr "使用"
+msgstr "使用法"
#: editor/script_editor_debugger.cpp
msgid "Misc"
@@ -12663,6 +12653,15 @@ msgstr "Varyingは頂点関数にのみ割り当てることができます。"
msgid "Constants cannot be modified."
msgstr "定数は変更できません。"
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "現在、このクラスのチュートリアルはありませんが、[color=$color][url=$url]貢"
+#~ "献[/url][/color]、または[color=$color][url=$url2]リクエスト[/url][/color]"
+#~ "は可能です。"
+
#~ msgid "enum "
#~ msgstr "列挙型 "
diff --git a/editor/translations/ka.po b/editor/translations/ka.po
index 066a1b1036..4808e9177b 100644
--- a/editor/translations/ka.po
+++ b/editor/translations/ka.po
@@ -1997,13 +1997,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/ko.po b/editor/translations/ko.po
index 2f3724c67a..ae7e1edf52 100644
--- a/editor/translations/ko.po
+++ b/editor/translations/ko.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-22 23:17+0000\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
"Last-Translator: 송태섭 <xotjq237@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/"
"godot/ko/>\n"
@@ -1942,16 +1942,6 @@ msgid "Online Tutorials"
msgstr "온라인 튜토리얼"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"현재 이 클래스에 대한 튜토리얼이 없어요. [color=$color][url=$url]튜토리얼에 "
-"기여하거나[/url][/color] [color=$color][url=$url2]튜토리얼을 요청할 수[/url]"
-"[/color] 있어요."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "속성"
@@ -5564,9 +5554,8 @@ msgid "Auto Insert Key"
msgstr "자동으로 키 삽입하기"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "애니메이션 키를 삽입했어요."
+msgstr "애니메이션 키와 포즈 설정"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12489,6 +12478,15 @@ msgstr "Varying은 꼭짓점 함수에만 지정할 수 있어요."
msgid "Constants cannot be modified."
msgstr "상수는 수정할 수 없어요."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "현재 이 클래스에 대한 튜토리얼이 없어요. [color=$color][url=$url]튜토리얼"
+#~ "에 기여하거나[/url][/color] [color=$color][url=$url2]튜토리얼을 요청할 수"
+#~ "[/url][/color] 있어요."
+
#~ msgid "enum "
#~ msgstr "이넘 "
diff --git a/editor/translations/lt.po b/editor/translations/lt.po
index 0028b63bdd..f3118b9942 100644
--- a/editor/translations/lt.po
+++ b/editor/translations/lt.po
@@ -1964,13 +1964,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/lv.po b/editor/translations/lv.po
index 361e385cb4..b6066df271 100644
--- a/editor/translations/lv.po
+++ b/editor/translations/lv.po
@@ -1967,13 +1967,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/mi.po b/editor/translations/mi.po
index 9bdc2bf47f..24d1f213e2 100644
--- a/editor/translations/mi.po
+++ b/editor/translations/mi.po
@@ -1886,13 +1886,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/ml.po b/editor/translations/ml.po
index 59b1a54065..dbf8e76d3f 100644
--- a/editor/translations/ml.po
+++ b/editor/translations/ml.po
@@ -1896,13 +1896,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/mr.po b/editor/translations/mr.po
index c073f32ec7..43f7620d28 100644
--- a/editor/translations/mr.po
+++ b/editor/translations/mr.po
@@ -1892,13 +1892,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/ms.po b/editor/translations/ms.po
index e8d33c28cc..0207d83de5 100644
--- a/editor/translations/ms.po
+++ b/editor/translations/ms.po
@@ -6,12 +6,14 @@
# Shaqir Rafiq <moshamoradev@gmail.com>, 2018.
# Syaz Amirin <amirin123z@gmail.com>, 2018.
# Nafis Ibrahim <thepreciousnafis@gmail.com>, 2018.
+# Muhammad Hazim bin Hafizalshah <muhammadhazimhafizalshah@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2018-12-13 14:41+0100\n"
-"Last-Translator: Nafis Ibrahim <thepreciousnafis@gmail.com>\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
+"Last-Translator: Muhammad Hazim bin Hafizalshah "
+"<muhammadhazimhafizalshah@gmail.com>\n"
"Language-Team: Malay <https://hosted.weblate.org/projects/godot-engine/godot/"
"ms/>\n"
"Language: ms\n"
@@ -19,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 2.2\n"
+"X-Generator: Weblate 3.11-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -1915,13 +1917,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
@@ -4261,9 +4256,8 @@ msgid "Audio Clips"
msgstr "Anim Tambah Trek"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Functions"
-msgstr "Semua Pilihan"
+msgstr "Fungsi"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
#: editor/plugins/animation_state_machine_editor.cpp
@@ -4590,7 +4584,7 @@ msgstr ""
#: editor/plugins/animation_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "AnimationTree"
-msgstr ""
+msgstr "AnimationTree"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "New name:"
@@ -9765,9 +9759,8 @@ msgid "Action:"
msgstr ""
#: editor/project_settings_editor.cpp
-#, fuzzy
msgid "Action"
-msgstr "Semua Pilihan"
+msgstr "Aksi"
#: editor/project_settings_editor.cpp
msgid "Deadzone"
diff --git a/editor/translations/nb.po b/editor/translations/nb.po
index c9071e232d..dcbe8e6950 100644
--- a/editor/translations/nb.po
+++ b/editor/translations/nb.po
@@ -2059,16 +2059,6 @@ msgid "Online Tutorials"
msgstr "Online dokumentasjon:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Det finnes i øyeblikket ingen beskrivelse av denne metoden, men du kan "
-"[colour=$color][url=$url]bidra med en[/url][/color] eller [color=$color][url="
-"$url2]be om en[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Egenskaper"
@@ -13044,6 +13034,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr "Konstanter kan ikke endres."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Det finnes i øyeblikket ingen beskrivelse av denne metoden, men du kan "
+#~ "[colour=$color][url=$url]bidra med en[/url][/color] eller [color=$color]"
+#~ "[url=$url2]be om en[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "num "
diff --git a/editor/translations/nl.po b/editor/translations/nl.po
index 093cb067eb..39bca63def 100644
--- a/editor/translations/nl.po
+++ b/editor/translations/nl.po
@@ -44,8 +44,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-22 23:17+0000\n"
-"Last-Translator: Julian <jdhoogvorst@gmail.com>\n"
+"PO-Revision-Date: 2020-01-27 07:09+0000\n"
+"Last-Translator: Stijn Hinlopen <f.a.hinlopen@gmail.com>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/"
"nl/>\n"
"Language: nl\n"
@@ -1979,16 +1979,6 @@ msgid "Online Tutorials"
msgstr "Online Zelfstudie"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Er is momenteel geen handleiding voor deze methode. Help ons alsjeblieft "
-"door [color=$color][url=$url]een toe te voegen[/url][/color] of [color="
-"$color][url=$url2]een aan te vragen[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Eigenschappen"
@@ -5648,9 +5638,8 @@ msgid "Auto Insert Key"
msgstr "Sleutel automatisch invoegen"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Animatiesleutel Ingevoegd."
+msgstr "Opties voor animatiesleutels en -poses"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -9721,7 +9710,7 @@ msgstr "Naamloos Project"
#: editor/project_manager.cpp
msgid "Missing Project"
-msgstr "Ontbrekend project"
+msgstr "Bestanden ontbreken"
#: editor/project_manager.cpp
msgid "Error: Project is missing on the filesystem."
@@ -9829,7 +9818,7 @@ msgid ""
"The project folders' contents won't be modified."
msgstr ""
"Alle ontbrekende projecten uit de lijst verwijderen?\n"
-"De inhoud van de projectmap wordt niet geraakt."
+"De inhoud van de projectmap wordt niet veranderd."
#: editor/project_manager.cpp
msgid ""
@@ -9874,7 +9863,7 @@ msgstr "Nieuw Project"
#: editor/project_manager.cpp
msgid "Remove Missing"
-msgstr "Ontbrekende verwijderen"
+msgstr "Lijst opruimen"
#: editor/project_manager.cpp
msgid "Templates"
@@ -10396,7 +10385,7 @@ msgstr "Knoopouder wijzigen"
#: editor/reparent_dialog.cpp
msgid "Reparent Location (Select new Parent):"
-msgstr "Reparent Locatie (Selecteer nieuwe Ouder):"
+msgstr "Plaats instellen (selecteer nieuwe ouder):"
#: editor/reparent_dialog.cpp
msgid "Keep Global Transform"
@@ -10404,7 +10393,7 @@ msgstr "Houd Globale Transformatie"
#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp
msgid "Reparent"
-msgstr "Reparent"
+msgstr "Ouder veranderen"
#: editor/run_settings_dialog.cpp
msgid "Run Mode:"
@@ -10627,11 +10616,11 @@ msgstr "Knoop hieronder toevoegen"
#: editor/scene_tree_dock.cpp
msgid "Expand/Collapse All"
-msgstr "Alles Uitklappen/Inklappen"
+msgstr "Alles uit-/inklappen"
#: editor/scene_tree_dock.cpp
msgid "Change Type"
-msgstr "Verander het type"
+msgstr "Type veranderen"
#: editor/scene_tree_dock.cpp
msgid "Reparent to New Node"
@@ -12684,6 +12673,15 @@ msgstr "Varyings kunnen alleen worden toegewezenin vertex functies."
msgid "Constants cannot be modified."
msgstr "Constanten kunnen niet worden aangepast."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Er is momenteel geen handleiding voor deze methode. Help ons alsjeblieft "
+#~ "door [color=$color][url=$url]een toe te voegen[/url][/color] of [color="
+#~ "$color][url=$url2]een aan te vragen[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/or.po b/editor/translations/or.po
index 29eb0522e2..5cddf8dee7 100644
--- a/editor/translations/or.po
+++ b/editor/translations/or.po
@@ -1892,13 +1892,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/pl.po b/editor/translations/pl.po
index b19edb41ef..e5e5e91d65 100644
--- a/editor/translations/pl.po
+++ b/editor/translations/pl.po
@@ -42,7 +42,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 22:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: Tomek <kobewi4e@gmail.com>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/"
"godot/pl/>\n"
@@ -1970,22 +1970,12 @@ msgid "Online Tutorials"
msgstr "Poradniki online"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Obecnie nie ma żadnych samouczków dla tej klasy, możesz [color=$color][url="
-"$url]dodać jeden[/url][/color] lub [color=$color][url=$url2]poprosić o "
-"jakiś[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Właściwości"
#: editor/editor_help.cpp
msgid "override:"
-msgstr "przeciążenie:"
+msgstr "nadpisanie:"
#: editor/editor_help.cpp
msgid "default:"
@@ -5632,9 +5622,8 @@ msgid "Auto Insert Key"
msgstr "Automatycznie wstaw klucz"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Wstawiono klucz animacji."
+msgstr "Opcje kluczy animacji i pozy"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -8018,8 +8007,8 @@ msgid ""
"Shift+LMB: Line Draw\n"
"Shift+Ctrl+LMB: Rectangle Paint"
msgstr ""
-"Shift+PPM: Rysowanie linii\n"
-"Shift+Ctrl+PPM: Malowanie prostokąta"
+"Shift+LPM: Rysowanie linii\n"
+"Shift+Ctrl+LPM: Malowanie prostokąta"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Pick Tile"
@@ -12647,6 +12636,15 @@ msgstr "Varying może być przypisane tylko w funkcji wierzchołków."
msgid "Constants cannot be modified."
msgstr "Stałe nie mogą być modyfikowane."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Obecnie nie ma żadnych samouczków dla tej klasy, możesz [color=$color]"
+#~ "[url=$url]dodać jeden[/url][/color] lub [color=$color][url=$url2]poprosić "
+#~ "o jakiś[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/pr.po b/editor/translations/pr.po
index 4a5395fed0..e77bf47b81 100644
--- a/editor/translations/pr.po
+++ b/editor/translations/pr.po
@@ -1962,13 +1962,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po
index 154306cc26..a7d921b78e 100644
--- a/editor/translations/pt_BR.po
+++ b/editor/translations/pt_BR.po
@@ -79,12 +79,13 @@
# Gian Penna <gianfrancopen@gmail.com>, 2020.
# sribgui <sribgui@gmail.com>, 2020.
# patrickvob <patrickvob@gmail.com>, 2020.
+# Michael Leocádio <aeronmike@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: 2016-05-30\n"
-"PO-Revision-Date: 2020-01-16 22:23+0000\n"
-"Last-Translator: patrickvob <patrickvob@gmail.com>\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
+"Last-Translator: Michael Leocádio <aeronmike@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_BR/>\n"
"Language: pt_BR\n"
@@ -92,7 +93,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 3.10.2-dev\n"
+"X-Generator: Weblate 3.11-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -2004,37 +2005,24 @@ msgid "Inherited by:"
msgstr "Herdado por:"
#: editor/editor_help.cpp
-#, fuzzy
msgid "Description"
-msgstr "Descrição:"
+msgstr "Descrição"
#: editor/editor_help.cpp
msgid "Online Tutorials"
msgstr "Tutoriais Online"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Atualmente não há tutoriais para essa classe. Você pode [color=$color][url="
-"$url]contribuir criando um[/url][/color] ou [color=$color][url="
-"$url2]solicitar[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propriedades"
#: editor/editor_help.cpp
-#, fuzzy
msgid "override:"
-msgstr "Sobrescreve"
+msgstr "sobrescrever:"
#: editor/editor_help.cpp
-#, fuzzy
msgid "default:"
-msgstr "Padrão"
+msgstr "padrão:"
#: editor/editor_help.cpp
msgid "Methods"
@@ -2057,9 +2045,8 @@ msgid "Property Descriptions"
msgstr "Descrições da Propriedade"
#: editor/editor_help.cpp
-#, fuzzy
msgid "(value)"
-msgstr "Valor"
+msgstr "(valor)"
#: editor/editor_help.cpp
msgid ""
@@ -5691,9 +5678,8 @@ msgid "Auto Insert Key"
msgstr "Inserir Chave Automaticamente"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Chave de Animação Inserida."
+msgstr "Opções de Chave e Pose de Animação"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -7368,7 +7354,7 @@ msgstr "Pré-visualização Cinemática"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Not available when using the GLES2 renderer."
-msgstr ""
+msgstr "Não disponível ao usar o renderizador GLES2."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Freelook Left"
@@ -12707,6 +12693,15 @@ msgstr "Variáveis só podem ser atribuídas na função de vértice."
msgid "Constants cannot be modified."
msgstr "Constantes não podem serem modificadas."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Atualmente não há tutoriais para essa classe. Você pode [color=$color]"
+#~ "[url=$url]contribuir criando um[/url][/color] ou [color=$color][url="
+#~ "$url2]solicitar[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/pt_PT.po b/editor/translations/pt_PT.po
index c8e4adf472..d293860dec 100644
--- a/editor/translations/pt_PT.po
+++ b/editor/translations/pt_PT.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 11:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: João Lopes <linux-man@hotmail.com>\n"
"Language-Team: Portuguese (Portugal) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_PT/>\n"
@@ -1953,16 +1953,6 @@ msgid "Online Tutorials"
msgstr "Tutoriais Online"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Atualmente não existem tutoriais para esta classe, pode [color=$color][url="
-"$url]contribuir com um[/url][/color] ou [color=$color][url=$url2]solicitar "
-"um[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Propriedades"
@@ -5612,9 +5602,8 @@ msgid "Auto Insert Key"
msgstr "Inserir Chave automaticamente"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Chave de Animação inserida."
+msgstr "Chave de Animação e Opções de Pose"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12611,6 +12600,15 @@ msgstr "Variações só podem ser atribuídas na função vértice."
msgid "Constants cannot be modified."
msgstr "Constantes não podem ser modificadas."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Atualmente não existem tutoriais para esta classe, pode [color=$color]"
+#~ "[url=$url]contribuir com um[/url][/color] ou [color=$color][url="
+#~ "$url2]solicitar um[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ro.po b/editor/translations/ro.po
index 161c4d800e..e73e0c1703 100644
--- a/editor/translations/ro.po
+++ b/editor/translations/ro.po
@@ -1923,16 +1923,6 @@ msgid "Online Tutorials"
msgstr "Tutoriale Online"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Nu există în prezent nici un tutorial pentru această clasă, puteţi [culoare "
-"= $color] [url = $url] contribui unul [/ URL] [/ color] sau [culoare = "
-"$color] [url = $url2] cerere unul[/ URL] [/ color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Proprietăți"
@@ -12736,6 +12726,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Nu există în prezent nici un tutorial pentru această clasă, puteţi "
+#~ "[culoare = $color] [url = $url] contribui unul [/ URL] [/ color] sau "
+#~ "[culoare = $color] [url = $url2] cerere unul[/ URL] [/ color]."
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ru.po b/editor/translations/ru.po
index bf844ac58b..9c56393ae8 100644
--- a/editor/translations/ru.po
+++ b/editor/translations/ru.po
@@ -66,7 +66,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-23 15:05+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: Danil Alexeev <danil@alexeev.xyz>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot/ru/>\n"
@@ -2003,16 +2003,6 @@ msgid "Online Tutorials"
msgstr "Онлайн-уроки"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"В настоящее время отсутствуют учебники для этого класса, вы можете его "
-"[color=$color][url=$url]добавить[/url][/color] или [color=$color][url="
-"$url2]запросить[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Свойства"
@@ -6706,7 +6696,7 @@ msgstr "Сохранить тему как..."
#: editor/plugins/script_editor_plugin.cpp
msgid "%s Class Reference"
-msgstr "%s Справка по классу"
+msgstr "Справка по классу %s"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
@@ -12697,6 +12687,15 @@ msgstr "Изменения могут быть назначены только
msgid "Constants cannot be modified."
msgstr "Константы не могут быть изменены."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "В настоящее время отсутствуют учебники для этого класса, вы можете его "
+#~ "[color=$color][url=$url]добавить[/url][/color] или [color=$color][url="
+#~ "$url2]запросить[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "перечисление "
diff --git a/editor/translations/si.po b/editor/translations/si.po
index d12b49fa59..bd57c6a782 100644
--- a/editor/translations/si.po
+++ b/editor/translations/si.po
@@ -1915,13 +1915,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/sk.po b/editor/translations/sk.po
index 912ffaa776..a81d842616 100644
--- a/editor/translations/sk.po
+++ b/editor/translations/sk.po
@@ -1971,13 +1971,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/sl.po b/editor/translations/sl.po
index b70c05b2d4..6f63bb7483 100644
--- a/editor/translations/sl.po
+++ b/editor/translations/sl.po
@@ -2042,15 +2042,6 @@ msgid "Online Tutorials"
msgstr "Spletne Vaje:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Trenutno ni vaj za ta razred, lahko ga [color=$color][url=$url]prispevate[/"
-"url][/color] ali [color=$color][url=$url2]zahtevate enega[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Lastnosti"
@@ -12885,6 +12876,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr "Konstante ni možno spreminjati."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Trenutno ni vaj za ta razred, lahko ga [color=$color][url="
+#~ "$url]prispevate[/url][/color] ali [color=$color][url=$url2]zahtevate "
+#~ "enega[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "oštevil "
diff --git a/editor/translations/sq.po b/editor/translations/sq.po
index 9ef7a98572..3c55191a34 100644
--- a/editor/translations/sq.po
+++ b/editor/translations/sq.po
@@ -1976,16 +1976,6 @@ msgid "Online Tutorials"
msgstr "Tutorialet Online:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Nuk ka për momentin tutoriale për këtë klas, ti mund të [color=$color][url="
-"$url]contribute one[/url][/color] ose [color=$color][url=$url2]request one[/"
-"url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Vetitë"
@@ -12440,6 +12430,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Nuk ka për momentin tutoriale për këtë klas, ti mund të [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] ose [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+
#, fuzzy
#~ msgid "Brief Description"
#~ msgstr "Përshkrim i Shkurtër:"
diff --git a/editor/translations/sr_Cyrl.po b/editor/translations/sr_Cyrl.po
index b5d5d3d489..366c12b77c 100644
--- a/editor/translations/sr_Cyrl.po
+++ b/editor/translations/sr_Cyrl.po
@@ -2046,16 +2046,6 @@ msgid "Online Tutorials"
msgstr "Онлајн документација"
#: editor/editor_help.cpp
-#, fuzzy
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Тренутно нема описа ове методе. Молимо помозите нама тако што ћете [color="
-"$color][url=$url]написати једну[/url][/color]!"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Особине"
@@ -12991,6 +12981,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Тренутно нема описа ове методе. Молимо помозите нама тако што ћете [color="
+#~ "$color][url=$url]написати једну[/url][/color]!"
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/sr_Latn.po b/editor/translations/sr_Latn.po
index 5d6d1fdf26..e55a90f6f8 100644
--- a/editor/translations/sr_Latn.po
+++ b/editor/translations/sr_Latn.po
@@ -1927,13 +1927,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/sv.po b/editor/translations/sv.po
index 3502d59988..0da6531121 100644
--- a/editor/translations/sv.po
+++ b/editor/translations/sv.po
@@ -2032,16 +2032,6 @@ msgid "Online Tutorials"
msgstr "Dokumentation Online"
#: editor/editor_help.cpp
-#, fuzzy
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Det finns för närvarande ingen beskrivning för denna metod. Snälla hjälp oss "
-"genom att [color=$color][url=$url]bidra med en[/url][/color]!"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Egenskaper"
@@ -12832,6 +12822,15 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Det finns för närvarande ingen beskrivning för denna metod. Snälla hjälp "
+#~ "oss genom att [color=$color][url=$url]bidra med en[/url][/color]!"
+
#~ msgid "enum "
#~ msgstr "enum "
diff --git a/editor/translations/ta.po b/editor/translations/ta.po
index a7bce9a32a..0c08e2f565 100644
--- a/editor/translations/ta.po
+++ b/editor/translations/ta.po
@@ -1917,13 +1917,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/te.po b/editor/translations/te.po
index d2d5f1fb68..2efe179ce6 100644
--- a/editor/translations/te.po
+++ b/editor/translations/te.po
@@ -1894,13 +1894,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/th.po b/editor/translations/th.po
index 9d0a9912c4..73a18a006d 100644
--- a/editor/translations/th.po
+++ b/editor/translations/th.po
@@ -2044,15 +2044,6 @@ msgid "Online Tutorials"
msgstr "สอนใช้งานออนไลน์:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"คลาสนี้ยังไม่มีการสอนการใช้งาน ท่านสามารถ[color=$color][url=$url]ช่วยเขียน[/url][/"
-"color] หรือ [color=$color][url=$url2]ขอให้จัดทำ[/url][/color]"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "คุณสมบัติ"
@@ -12992,6 +12983,14 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "คลาสนี้ยังไม่มีการสอนการใช้งาน ท่านสามารถ[color=$color][url=$url]ช่วยเขียน[/url][/"
+#~ "color] หรือ [color=$color][url=$url2]ขอให้จัดทำ[/url][/color]"
+
#~ msgid "enum "
#~ msgstr "กลุ่มค่าคงที่ "
diff --git a/editor/translations/tr.po b/editor/translations/tr.po
index 23604465a5..192364f0c6 100644
--- a/editor/translations/tr.po
+++ b/editor/translations/tr.po
@@ -1983,16 +1983,6 @@ msgid "Online Tutorials"
msgstr "Çevrimiçi Rehberler"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Bu metot için henüz bir rehber yok. Siz de\n"
-"[color=$color][url=$url]hazırlayabilir[/url][/color] ya da \n"
-"[color=$color][url=$url2]öneride bulunabilirsiniz[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Özellikler"
@@ -12747,6 +12737,15 @@ msgstr "Değişkenler yalnızca tepe işlevinde atanabilir."
msgid "Constants cannot be modified."
msgstr "Sabit değerler değiştirilemez."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Bu metot için henüz bir rehber yok. Siz de\n"
+#~ "[color=$color][url=$url]hazırlayabilir[/url][/color] ya da \n"
+#~ "[color=$color][url=$url2]öneride bulunabilirsiniz[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "enum… "
diff --git a/editor/translations/uk.po b/editor/translations/uk.po
index 3d8fb94711..aca5040517 100644
--- a/editor/translations/uk.po
+++ b/editor/translations/uk.po
@@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Ukrainian (Godot Engine)\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-01-20 11:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/"
"godot/uk/>\n"
@@ -1958,16 +1958,6 @@ msgid "Online Tutorials"
msgstr "Підручники в інтернеті"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"Настанов щодо цього класу ще немає. Ви можете [color=$color][url="
-"$url]створити їх[/url][/color] або [color=$color][url=$url2]надіслати запит "
-"щодо їхнього створення[/url][/color]."
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Властивості"
@@ -5627,9 +5617,8 @@ msgid "Auto Insert Key"
msgstr "Автовставлення ключового кадру"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "Вставлено ключ анімації."
+msgstr "Параметри ключового кадру та пози анімації"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12669,6 +12658,15 @@ msgstr "Змінні величини можна пов'язувати лише
msgid "Constants cannot be modified."
msgstr "Сталі не можна змінювати."
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "Настанов щодо цього класу ще немає. Ви можете [color=$color][url="
+#~ "$url]створити їх[/url][/color] або [color=$color][url=$url2]надіслати "
+#~ "запит щодо їхнього створення[/url][/color]."
+
#~ msgid "enum "
#~ msgstr "перелічуваний "
diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po
index ffcf13710c..5cbc202847 100644
--- a/editor/translations/ur_PK.po
+++ b/editor/translations/ur_PK.po
@@ -1933,13 +1933,6 @@ msgid "Online Tutorials"
msgstr ""
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/vi.po b/editor/translations/vi.po
index b4c1b9aad7..d6f5114a98 100644
--- a/editor/translations/vi.po
+++ b/editor/translations/vi.po
@@ -1956,13 +1956,6 @@ msgid "Online Tutorials"
msgstr "Hướng dẫn trực tuyến:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "Thuộc tính"
diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po
index e3c42d17f9..67f2738f86 100644
--- a/editor/translations/zh_CN.po
+++ b/editor/translations/zh_CN.po
@@ -63,7 +63,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Chinese (Simplified) (Godot Engine)\n"
"POT-Creation-Date: 2018-01-20 12:15+0200\n"
-"PO-Revision-Date: 2020-01-20 11:39+0000\n"
+"PO-Revision-Date: 2020-01-27 07:10+0000\n"
"Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"godot-engine/godot/zh_Hans/>\n"
@@ -1969,15 +1969,6 @@ msgid "Online Tutorials"
msgstr "在线教程"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"当前没有此类型的教程,你可以[color=$color][url=$url]贡献一个[/url][/color]或"
-"[color=$color][url=$url2]请求一个[/url][/color]。"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "属性"
@@ -5548,9 +5539,8 @@ msgid "Auto Insert Key"
msgstr "自动插入关键帧"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Animation Key and Pose Options"
-msgstr "插入动画键。"
+msgstr "动画关键帧与姿势选项"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Insert Key (Existing Tracks)"
@@ -12381,6 +12371,14 @@ msgstr "变量只能在顶点函数中指定。"
msgid "Constants cannot be modified."
msgstr "不允许修改常量。"
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "当前没有此类型的教程,你可以[color=$color][url=$url]贡献一个[/url][/color]"
+#~ "或[color=$color][url=$url2]请求一个[/url][/color]。"
+
#~ msgid "enum "
#~ msgstr "枚举 "
diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po
index 446214e3f8..e57c2c0303 100644
--- a/editor/translations/zh_HK.po
+++ b/editor/translations/zh_HK.po
@@ -2069,13 +2069,6 @@ msgid "Online Tutorials"
msgstr "關閉場景"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr ""
diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po
index 54b52c93fe..6dfb9304f9 100644
--- a/editor/translations/zh_TW.po
+++ b/editor/translations/zh_TW.po
@@ -2069,15 +2069,6 @@ msgid "Online Tutorials"
msgstr "線上教學:"
#: editor/editor_help.cpp
-msgid ""
-"There are currently no tutorials for this class, you can [color=$color][url="
-"$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/"
-"url][/color]."
-msgstr ""
-"目前沒有這個 class 的教學,你可以[color=$color][url=$url]貢獻一個[/url][/"
-"color]或[color=$color][url=$url2]要求一個[/url][/color]。"
-
-#: editor/editor_help.cpp
msgid "Properties"
msgstr "性質"
@@ -12913,6 +12904,14 @@ msgstr ""
msgid "Constants cannot be modified."
msgstr ""
+#~ msgid ""
+#~ "There are currently no tutorials for this class, you can [color=$color]"
+#~ "[url=$url]contribute one[/url][/color] or [color=$color][url="
+#~ "$url2]request one[/url][/color]."
+#~ msgstr ""
+#~ "目前沒有這個 class 的教學,你可以[color=$color][url=$url]貢獻一個[/url][/"
+#~ "color]或[color=$color][url=$url2]要求一個[/url][/color]。"
+
#~ msgid "enum "
#~ msgstr "枚舉 "