You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-12 13:20:55 +00:00
Popups are now windows also (broken!)
This commit is contained in:
@@ -201,19 +201,19 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
item->set_metadata(0, p_node->get_path());
|
||||
|
||||
if (connect_to_script_mode) {
|
||||
Color accent = get_color("accent_color", "Editor");
|
||||
Color accent = get_theme_color("accent_color", "Editor");
|
||||
|
||||
Ref<Script> script = p_node->get_script();
|
||||
if (!script.is_null() && EditorNode::get_singleton()->get_object_custom_type_base(p_node) != script) {
|
||||
//has script
|
||||
item->add_button(0, get_icon("Script", "EditorIcons"), BUTTON_SCRIPT);
|
||||
item->add_button(0, get_theme_icon("Script", "EditorIcons"), BUTTON_SCRIPT);
|
||||
} else {
|
||||
//has no script (or script is a custom type)
|
||||
item->set_custom_color(0, get_color("disabled_font_color", "Editor"));
|
||||
item->set_custom_color(0, get_theme_color("disabled_font_color", "Editor"));
|
||||
item->set_selectable(0, false);
|
||||
|
||||
if (!script.is_null()) { // make sure to mark the script if a custom type
|
||||
item->add_button(0, get_icon("Script", "EditorIcons"), BUTTON_SCRIPT);
|
||||
item->add_button(0, get_theme_icon("Script", "EditorIcons"), BUTTON_SCRIPT);
|
||||
item->set_button_disabled(0, item->get_button_count(0) - 1, true);
|
||||
}
|
||||
|
||||
@@ -231,7 +231,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
} else if (part_of_subscene) {
|
||||
|
||||
if (valid_types.size() == 0) {
|
||||
item->set_custom_color(0, get_color("disabled_font_color", "Editor"));
|
||||
item->set_custom_color(0, get_theme_color("disabled_font_color", "Editor"));
|
||||
}
|
||||
} else if (marked.has(p_node)) {
|
||||
|
||||
@@ -241,14 +241,14 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
}
|
||||
item->set_text(0, node_name);
|
||||
item->set_selectable(0, marked_selectable);
|
||||
item->set_custom_color(0, get_color("accent_color", "Editor"));
|
||||
item->set_custom_color(0, get_theme_color("accent_color", "Editor"));
|
||||
} else if (!marked_selectable && !marked_children_selectable) {
|
||||
|
||||
Node *node = p_node;
|
||||
while (node) {
|
||||
if (marked.has(node)) {
|
||||
item->set_selectable(0, false);
|
||||
item->set_custom_color(0, get_color("error_color", "Editor"));
|
||||
item->set_custom_color(0, get_theme_color("error_color", "Editor"));
|
||||
break;
|
||||
}
|
||||
node = node->get_parent();
|
||||
@@ -259,7 +259,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
String warning = p_node->get_configuration_warning();
|
||||
if (warning != String()) {
|
||||
item->add_button(0, get_icon("NodeWarning", "EditorIcons"), BUTTON_WARNING, false, TTR("Node configuration warning:") + "\n" + p_node->get_configuration_warning());
|
||||
item->add_button(0, get_theme_icon("NodeWarning", "EditorIcons"), BUTTON_WARNING, false, TTR("Node configuration warning:") + "\n" + p_node->get_configuration_warning());
|
||||
}
|
||||
|
||||
int num_connections = p_node->get_persistent_signal_connection_count();
|
||||
@@ -268,21 +268,21 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
if (num_connections >= 1 && num_groups >= 1) {
|
||||
item->add_button(
|
||||
0,
|
||||
get_icon("SignalsAndGroups", "EditorIcons"),
|
||||
get_theme_icon("SignalsAndGroups", "EditorIcons"),
|
||||
BUTTON_SIGNALS,
|
||||
false,
|
||||
vformat(TTR("Node has %s connection(s) and %s group(s).\nClick to show signals dock."), num_connections, num_groups));
|
||||
} else if (num_connections >= 1) {
|
||||
item->add_button(
|
||||
0,
|
||||
get_icon("Signals", "EditorIcons"),
|
||||
get_theme_icon("Signals", "EditorIcons"),
|
||||
BUTTON_SIGNALS,
|
||||
false,
|
||||
vformat(TTR("Node has %s connection(s).\nClick to show signals dock."), num_connections));
|
||||
} else if (num_groups >= 1) {
|
||||
item->add_button(
|
||||
0,
|
||||
get_icon("Groups", "EditorIcons"),
|
||||
get_theme_icon("Groups", "EditorIcons"),
|
||||
BUTTON_GROUPS,
|
||||
false,
|
||||
vformat(TTR("Node is in %s group(s).\nClick to show groups dock."), num_groups));
|
||||
@@ -290,7 +290,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
}
|
||||
|
||||
if (p_node == get_scene_node() && p_node->get_scene_inherited_state().is_valid()) {
|
||||
item->add_button(0, get_icon("InstanceOptions", "EditorIcons"), BUTTON_SUBSCENE, false, TTR("Open in Editor"));
|
||||
item->add_button(0, get_theme_icon("InstanceOptions", "EditorIcons"), BUTTON_SUBSCENE, false, TTR("Open in Editor"));
|
||||
|
||||
String tooltip = TTR("Inherits:") + " " + p_node->get_scene_inherited_state()->get_path() + "\n" + TTR("Type:") + " " + p_node->get_class();
|
||||
if (p_node->get_editor_description() != String()) {
|
||||
@@ -299,7 +299,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
item->set_tooltip(0, tooltip);
|
||||
} else if (p_node != get_scene_node() && p_node->get_filename() != "" && can_open_instance) {
|
||||
item->add_button(0, get_icon("InstanceOptions", "EditorIcons"), BUTTON_SUBSCENE, false, TTR("Open in Editor"));
|
||||
item->add_button(0, get_theme_icon("InstanceOptions", "EditorIcons"), BUTTON_SUBSCENE, false, TTR("Open in Editor"));
|
||||
|
||||
String tooltip = TTR("Instance:") + " " + p_node->get_filename() + "\n" + TTR("Type:") + " " + p_node->get_class();
|
||||
if (p_node->get_editor_description() != String()) {
|
||||
@@ -328,7 +328,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
Ref<Script> script = p_node->get_script();
|
||||
if (!script.is_null()) {
|
||||
item->add_button(0, get_icon("Script", "EditorIcons"), BUTTON_SCRIPT, false, TTR("Open Script:") + " " + script->get_path());
|
||||
item->add_button(0, get_theme_icon("Script", "EditorIcons"), BUTTON_SCRIPT, false, TTR("Open Script:") + " " + script->get_path());
|
||||
if (EditorNode::get_singleton()->get_object_custom_type_base(p_node) == script) {
|
||||
item->set_button_color(0, item->get_button_count(0) - 1, Color(1, 1, 1, 0.5));
|
||||
}
|
||||
@@ -338,17 +338,17 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
bool is_locked = p_node->has_meta("_edit_lock_"); //_edit_group_
|
||||
if (is_locked)
|
||||
item->add_button(0, get_icon("Lock", "EditorIcons"), BUTTON_LOCK, false, TTR("Node is locked.\nClick to unlock it."));
|
||||
item->add_button(0, get_theme_icon("Lock", "EditorIcons"), BUTTON_LOCK, false, TTR("Node is locked.\nClick to unlock it."));
|
||||
|
||||
bool is_grouped = p_node->has_meta("_edit_group_");
|
||||
if (is_grouped)
|
||||
item->add_button(0, get_icon("Group", "EditorIcons"), BUTTON_GROUP, false, TTR("Children are not selectable.\nClick to make selectable."));
|
||||
item->add_button(0, get_theme_icon("Group", "EditorIcons"), BUTTON_GROUP, false, TTR("Children are not selectable.\nClick to make selectable."));
|
||||
|
||||
bool v = p_node->call("is_visible");
|
||||
if (v)
|
||||
item->add_button(0, get_icon("GuiVisibilityVisible", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
item->add_button(0, get_theme_icon("GuiVisibilityVisible", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
else
|
||||
item->add_button(0, get_icon("GuiVisibilityHidden", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
item->add_button(0, get_theme_icon("GuiVisibilityHidden", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
|
||||
if (!p_node->is_connected("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed)))
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed), varray(p_node));
|
||||
@@ -358,17 +358,17 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
bool is_locked = p_node->has_meta("_edit_lock_");
|
||||
if (is_locked)
|
||||
item->add_button(0, get_icon("Lock", "EditorIcons"), BUTTON_LOCK, false, TTR("Node is locked.\nClick to unlock it."));
|
||||
item->add_button(0, get_theme_icon("Lock", "EditorIcons"), BUTTON_LOCK, false, TTR("Node is locked.\nClick to unlock it."));
|
||||
|
||||
bool is_grouped = p_node->has_meta("_edit_group_");
|
||||
if (is_grouped)
|
||||
item->add_button(0, get_icon("Group", "EditorIcons"), BUTTON_GROUP, false, TTR("Children are not selectable.\nClick to make selectable."));
|
||||
item->add_button(0, get_theme_icon("Group", "EditorIcons"), BUTTON_GROUP, false, TTR("Children are not selectable.\nClick to make selectable."));
|
||||
|
||||
bool v = p_node->call("is_visible");
|
||||
if (v)
|
||||
item->add_button(0, get_icon("GuiVisibilityVisible", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
item->add_button(0, get_theme_icon("GuiVisibilityVisible", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
else
|
||||
item->add_button(0, get_icon("GuiVisibilityHidden", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
item->add_button(0, get_theme_icon("GuiVisibilityHidden", "EditorIcons"), BUTTON_VISIBILITY, false, TTR("Toggle Visibility"));
|
||||
|
||||
if (!p_node->is_connected("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed)))
|
||||
p_node->connect("visibility_changed", callable_mp(this, &SceneTreeEditor::_node_visibility_changed), varray(p_node));
|
||||
@@ -379,7 +379,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
bool is_pinned = AnimationPlayerEditor::singleton->get_player() == p_node && AnimationPlayerEditor::singleton->is_pinned();
|
||||
|
||||
if (is_pinned) {
|
||||
item->add_button(0, get_icon("Pin", "EditorIcons"), BUTTON_PIN, false, TTR("AnimationPlayer is pinned.\nClick to unpin."));
|
||||
item->add_button(0, get_theme_icon("Pin", "EditorIcons"), BUTTON_PIN, false, TTR("AnimationPlayer is pinned.\nClick to unpin."));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -417,7 +417,7 @@ bool SceneTreeEditor::_add_nodes(Node *p_node, TreeItem *p_parent) {
|
||||
|
||||
if (!valid) {
|
||||
//item->set_selectable(0,marked_selectable);
|
||||
item->set_custom_color(0, get_color("disabled_font_color", "Editor"));
|
||||
item->set_custom_color(0, get_theme_color("disabled_font_color", "Editor"));
|
||||
item->set_selectable(0, false);
|
||||
}
|
||||
}
|
||||
@@ -462,9 +462,9 @@ void SceneTreeEditor::_node_visibility_changed(Node *p_node) {
|
||||
}
|
||||
|
||||
if (visible)
|
||||
item->set_button(0, idx, get_icon("GuiVisibilityVisible", "EditorIcons"));
|
||||
item->set_button(0, idx, get_theme_icon("GuiVisibilityVisible", "EditorIcons"));
|
||||
else
|
||||
item->set_button(0, idx, get_icon("GuiVisibilityHidden", "EditorIcons"));
|
||||
item->set_button(0, idx, get_theme_icon("GuiVisibilityHidden", "EditorIcons"));
|
||||
|
||||
_update_visibility_color(p_node, item);
|
||||
}
|
||||
@@ -1141,7 +1141,7 @@ SceneTreeEditor::SceneTreeEditor(bool p_label, bool p_can_rename, bool p_can_ope
|
||||
tree->set_anchor(MARGIN_BOTTOM, ANCHOR_END);
|
||||
tree->set_begin(Point2(0, p_label ? 18 : 0));
|
||||
tree->set_end(Point2(0, 0));
|
||||
tree->add_constant_override("button_margin", 0);
|
||||
tree->add_theme_constant_override("button_margin", 0);
|
||||
|
||||
add_child(tree);
|
||||
|
||||
@@ -1200,7 +1200,7 @@ void SceneTreeDialog::_notification(int p_what) {
|
||||
} break;
|
||||
case NOTIFICATION_ENTER_TREE: {
|
||||
connect("confirmed", callable_mp(this, &SceneTreeDialog::_select));
|
||||
filter->set_right_icon(tree->get_icon("Search", "EditorIcons"));
|
||||
filter->set_right_icon(tree->get_theme_icon("Search", "EditorIcons"));
|
||||
filter->set_clear_button_enabled(true);
|
||||
} break;
|
||||
case NOTIFICATION_EXIT_TREE: {
|
||||
@@ -1242,7 +1242,7 @@ SceneTreeDialog::SceneTreeDialog() {
|
||||
filter = memnew(LineEdit);
|
||||
filter->set_h_size_flags(Control::SIZE_EXPAND_FILL);
|
||||
filter->set_placeholder(TTR("Filter nodes"));
|
||||
filter->add_constant_override("minimum_spaces", 0);
|
||||
filter->add_theme_constant_override("minimum_spaces", 0);
|
||||
filter->connect("text_changed", callable_mp(this, &SceneTreeDialog::_filter_changed));
|
||||
vbc->add_child(filter);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user