-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make GraphEdit
toolbar more customizable
#81582
Conversation
0784f0d
to
e6577ca
Compare
Great stuff! Is it possible to give the user the option to hide the scrollbars too? |
@lostdisplay Sure, but it would be a considerable usability downgrade to do so if panning and zooming is still allowed. What would be the use case? |
@YuriSizov I can think of a use case, and that's for my personal project 😅, an app for taking notes with an infinite whiteboard. The scroll bars would just be a hindrance. Right now I'm connecting the visibility_changed signal of the internal scrollbars to a function that hides them again, which is hacky at best. But to be honest, this has a very limited use case. I've seen some people using GraphEdits for skill trees though? |
I haven't, and I'm not sure |
e6577ca
to
4edb931
Compare
Rebased on |
That's right, we would have to add the old properties to the That said, since |
Outside of the automated system that we have, no, I don't think so. But for GDExt we want to keep binary compatibility as intact as possible, so methods at least are worth adding when we remove or rename them. |
I don't disagree with that. My point was that if we are already breaking binary compatibility in the |
4edb931
to
8a0ea2f
Compare
Most of it was renames, so a compatibility method that routes to the new method should be sufficient for GDExtension users who may be using them. That said, I'm not particularly sure where the line would be in this specific case. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall solid work, the visual usability improvement looks nice!
I was actually just planning to implement this after I took another look at my GraphEdit refactoring todo list. Luckily I noticed your PR before that :)
8a0ea2f
to
4505716
Compare
4505716
to
ff8a862
Compare
ff8a862
to
1e8b8a8
Compare
Thats' good!!!! |
Also adds a semi-transparent background to make the toolbar stand out in front of nodes.
1e8b8a8
to
b07c664
Compare
Thanks! |
Depends on #81551
(drafting for now).This should address the issues mentioned in godotengine/godot-proposals#7061, possibly enough to close the proposal.
I'm introducing a set of exposed properties to hide parts of the menu bar, and the menu bar itself. Previously existing properties to hide the arrange button and to show the zoom label are grouped together with the new properties in the inspector. The property to hide the arrange button has been renamed, because its appearance in the inspector can be very misleading:
Now the property is called
hide_arrange_button
, and its methods areset_hide_arrange_button
andis_hiding_arrange_button
. Similar naming scheme was used for the new properties. The property to show the zoom label remains unchanged.This can be discussed further because the problem of negative and positive names is a pretty annoying one. But for now this is my proposal.
godot.windows.editor.dev.x86_64_2023-09-12_20-03-27.mp4
Additionally I addressed a usability issue with the toolbar that I had noticed long ago. Since the toolbar didn't have a background and could easily appear on top of various text and icons, it could be hard to read and use under certain circumstances:
So I added a semi-transparent background (both in the default theme and in the editor):
PS. There are some changes in unrelated files because I've cleaned up includes in
graph_edit.h
.