godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.1k stars 69 forks source link

Add icons to important/easily distinguished main editor menu items #5306

Open the-sink opened 1 year ago

the-sink commented 1 year ago

Describe the project you are working on

Quite a few - I feel this is a general enough proposal that it doesn't warrant a specific project description.

Describe the problem or limitation you are having in your project

The main editor menus visually appear somewhat clunky and unintuitive in some aspects, considering they contain a bunch of text-only dropdown menu items. It's also a bit odd continuity-wise considering other aspects of the editor with dropdown-style item lists such as this do have icons.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Adding icons to important/worthy menu items would help more quickly & easily distinguish them, and is especially an accessibility improvement for those who may otherwise have trouble reading down the list. It also helps newcomers who are not accustomed to the layout of options in these menus, and may allow them to more quickly find the option they are looking for right off the bat. I feel this has similar benefits to the already existing icons in other menus, such as the right-click context menus for the Scene Tree & FileSystem docks.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Fairly simple - there should be icons for important menu items. Here's a basic example using existing icons (some don't match up very well - would need a few new icons):

menu-icons-example

I'm perfectly happy to work on this myself! The only issue is that I wouldn't personally be able to make the needed icons - unsure if there is some sort of design standard for Godot's icons and/or if someone else would be willing to make them.

If this enhancement will not be used often, can it be worked around with a few lines of script?

No

Is there a reason why this should be core and not an add-on in the asset library?

It can't be an add-on (and really shouldn't be), as it's an aspect of the core editor UI.

Mickeon commented 1 year ago

I do prefer the lack of icons, but I do understand the inconsistency. It's also fairly standardised across programs to have them.

I'm perfectly happy to work on this myself! The only issue is that I wouldn't personally be able to make the needed icons - unsure if there is some sort of design standard for Godot's icons and/or if someone else would be willing to make them.

It doesn't hurt to begin pushing a PR, and... I suppose having a few icons that don't match just right wouldn't be the end of the world, either.

RedMser commented 1 year ago

For such long menus, icons are great since they serve as landmarks for faster navigation (you can easily scan to find an icon). However, I strongly advice not to give every menu item an icon. You've already sort of mentioned this, but I just wanted to voice this opinion more clearly.

The mockup in the post is basically the maximum that I would suggest for such a menu, since any more icons would just unnecessarily clutter the menus. For example, save as and save all don't need an icon since the "save" icon applies to all three of them.

Blender seems to be a great comparison, as they follow a similar guideline: image

the-sink commented 1 year ago

It doesn't hurt to begin pushing a PR, and... I suppose having a few icons that don't match just right wouldn't be the end of the world, either.

I'll push a draft PR here in a bit, I agree the icons don't need to match the description 1:1. The only thing I can think of that I'd personally prefer is an Open Scene icon, so that the scene icon isn't used in two different areas of the menu, but it's not terribly important.

The mockup in the post is basically the maximum that I would suggest for such a menu, since any more icons would just unnecessarily clutter the menus.

Yep, we don't want to clutter up the menu lists unnecessarily. This is something I dislike about Unreal Engine's UI, virtually everything has its own icon and it makes me scan through the menus just like I would if there were no icons at all.

jordanlis commented 1 year ago

Not a big fan of this solution, even if it improves a bit the menu which is quite dense I would say.

Instead, I think it could be interesting to give a name to each group and an icon only for the group. Groups are already existing and separated with a line. Anyway, the dev is already done, so it should be done separately.