1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-08 12:40:44 +00:00

Fixes for visual shader member filter

This commit is contained in:
Yuri Roubinski
2019-08-25 10:33:18 +03:00
parent a7aacfef7f
commit 1d2e5f281e
2 changed files with 14 additions and 10 deletions

View File

@@ -230,6 +230,14 @@ void VisualShaderEditor::_update_custom_nodes() {
} }
} }
String VisualShaderEditor::_get_description(int i) {
if (add_options[i].highend) {
return TTR("(GLES3 only)") + " " + add_options[i].description; // TODO: change it to (Vulkan Only) when its ready
} else {
return add_options[i].description;
}
}
void VisualShaderEditor::_update_options_menu() { void VisualShaderEditor::_update_options_menu() {
node_desc->set_text(""); node_desc->set_text("");
@@ -333,12 +341,11 @@ void VisualShaderEditor::_update_options_menu() {
else if (add_options[i].highend) else if (add_options[i].highend)
item->set_custom_color(0, supported_color); item->set_custom_color(0, supported_color);
item->set_text(0, add_options[i].name); item->set_text(0, add_options[i].name);
if (p_category == sub_category) { if (is_first_item && use_filter) {
if (is_first_item) {
item->select(0); item->select(0);
node_desc->set_text(_get_description(i));
is_first_item = false; is_first_item = false;
} }
}
switch (add_options[i].return_type) { switch (add_options[i].return_type) {
case VisualShaderNode::PORT_TYPE_SCALAR: case VisualShaderNode::PORT_TYPE_SCALAR:
item->set_icon(0, EditorNode::get_singleton()->get_gui_base()->get_icon("float", "EditorIcons")); item->set_icon(0, EditorNode::get_singleton()->get_gui_base()->get_icon("float", "EditorIcons"));
@@ -1930,11 +1937,7 @@ void VisualShaderEditor::_member_selected() {
if (item != NULL && item->has_meta("id")) { if (item != NULL && item->has_meta("id")) {
members_dialog->get_ok()->set_disabled(false); members_dialog->get_ok()->set_disabled(false);
if (add_options[item->get_meta("id")].highend) { node_desc->set_text(_get_description(item->get_meta("id")));
node_desc->set_text(TTR("(GLES3 only)") + " " + add_options[item->get_meta("id")].description); // TODO: change it to (Vulkan Only) when its ready
} else {
node_desc->set_text(add_options[item->get_meta("id")].description);
}
} else { } else {
members_dialog->get_ok()->set_disabled(true); members_dialog->get_ok()->set_disabled(true);
node_desc->set_text(""); node_desc->set_text("");

View File

@@ -158,6 +158,7 @@ class VisualShaderEditor : public VBoxContainer {
void _show_preview_text(); void _show_preview_text();
void _update_preview(); void _update_preview();
String _get_description(int i);
static VisualShaderEditor *singleton; static VisualShaderEditor *singleton;