Add hover styles to buttons in Script/Shader editor

This commit is contained in:
Giganzo 2025-07-22 21:59:43 +02:00
parent 0c51ede243
commit c21a03361a
9 changed files with 49 additions and 22 deletions

View file

@ -905,6 +905,8 @@ ShaderEditorPlugin::ShaderEditorPlugin() {
menu_hb = memnew(HBoxContainer);
main_container->add_child(menu_hb);
file_menu = memnew(MenuButton);
file_menu->set_flat(false);
file_menu->set_theme_type_variation("FlatMenuButton");
file_menu->set_text(TTR("File"));
file_menu->set_switch_on_hover(true);
file_menu->set_shortcut_context(files_split);
@ -921,7 +923,6 @@ ShaderEditorPlugin::ShaderEditorPlugin() {
menu_spacer = menu_hb->add_spacer();
make_floating = memnew(ScreenSelect);
make_floating->set_flat(true);
make_floating->connect("request_open_in_screen", callable_mp(window_wrapper, &WindowWrapper::enable_window_on_screen).bind(true));
if (!make_floating->is_disabled()) {
// Override default ScreenSelect tooltip if multi-window support is available.

View file

@ -1207,6 +1207,8 @@ TextShaderEditor::TextShaderEditor() {
hbc = memnew(HBoxContainer);
edit_menu = memnew(MenuButton);
edit_menu->set_flat(false);
edit_menu->set_theme_type_variation("FlatMenuButton");
edit_menu->set_shortcut_context(this);
edit_menu->set_text(TTR("Edit"));
edit_menu->set_switch_on_hover(true);
@ -1235,6 +1237,8 @@ TextShaderEditor::TextShaderEditor() {
edit_menu->get_popup()->connect(SceneStringName(id_pressed), callable_mp(this, &TextShaderEditor::_menu_option));
search_menu = memnew(MenuButton);
search_menu->set_flat(false);
search_menu->set_theme_type_variation("FlatMenuButton");
search_menu->set_shortcut_context(this);
search_menu->set_text(TTR("Search"));
search_menu->set_switch_on_hover(true);
@ -1246,6 +1250,8 @@ TextShaderEditor::TextShaderEditor() {
search_menu->get_popup()->connect(SceneStringName(id_pressed), callable_mp(this, &TextShaderEditor::_menu_option));
MenuButton *goto_menu = memnew(MenuButton);
goto_menu->set_flat(false);
goto_menu->set_theme_type_variation("FlatMenuButton");
goto_menu->set_shortcut_context(this);
goto_menu->set_text(TTR("Go To"));
goto_menu->set_switch_on_hover(true);
@ -1267,7 +1273,7 @@ TextShaderEditor::TextShaderEditor() {
hbc->add_spacer();
site_search = memnew(Button);
site_search->set_flat(true);
site_search->set_theme_type_variation(SceneStringName(FlatButton));
site_search->connect(SceneStringName(pressed), callable_mp(this, &TextShaderEditor::_menu_option).bind(HELP_DOCS));
site_search->set_text(TTR("Online Docs"));
site_search->set_tooltip_text(TTR("Open Godot online documentation."));

View file

@ -6672,7 +6672,7 @@ VisualShaderEditor::VisualShaderEditor() {
toolbar->move_child(edit_type_fog, 0);
add_node = memnew(Button);
add_node->set_flat(true);
add_node->set_theme_type_variation(SceneStringName(FlatButton));
add_node->set_text(TTR("Add Node..."));
toolbar->add_child(add_node);
toolbar->move_child(add_node, 0);
@ -6682,6 +6682,8 @@ VisualShaderEditor::VisualShaderEditor() {
graph->connect("frame_rect_changed", callable_mp(this, &VisualShaderEditor::_frame_rect_changed));
varying_button = memnew(MenuButton);
varying_button->set_flat(false);
varying_button->set_theme_type_variation("FlatMenuButton");
varying_button->set_text(TTR("Manage Varyings"));
varying_button->set_switch_on_hover(true);
toolbar->add_child(varying_button);
@ -6711,7 +6713,7 @@ VisualShaderEditor::VisualShaderEditor() {
toolbar->add_child(spacer);
site_search = memnew(Button);
site_search->set_flat(true);
site_search->set_theme_type_variation(SceneStringName(FlatButton));
site_search->connect(SceneStringName(pressed), callable_mp(this, &VisualShaderEditor::_help_open));
site_search->set_text(TTR("Online Docs"));
site_search->set_tooltip_text(TTR("Open Godot online documentation."));
@ -6727,7 +6729,7 @@ VisualShaderEditor::VisualShaderEditor() {
toolbar->move_child(separator, 0);
toggle_files_button = memnew(Button);
toggle_files_button->set_flat(true);
toggle_files_button->set_theme_type_variation(SceneStringName(FlatButton));
toggle_files_button->connect(SceneStringName(pressed), callable_mp(this, &VisualShaderEditor::_toggle_files_pressed));
toolbar->add_child(toggle_files_button);
toolbar->move_child(toggle_files_button, 0);