-
-
Notifications
You must be signed in to change notification settings - Fork 22.1k
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
Expose NodeDock and its children #47767
Conversation
3856da2
to
1850b21
Compare
I looked over the code and it looks fine. Needs rebase, so I can test it etc. EDIT: |
4d23379
to
9201781
Compare
That's expected. The idea behind this PR and #47985 is to expose relevant parts at the dock level, the dock itself should be exposed in a separate PR (#47520 is one possibility, but it was kinda rejected in a PR meeting). |
9201781
to
39b803d
Compare
39b803d
to
0833868
Compare
Simply exposing the class is rather useless as it can't be really used stand-alone from GDScript. For now I'd just add a method in EditorInterface, like Anyways, there is a regression. Clicking group button in scene tree will only focus the node dock, instead of opening the relevant tab. Same with signal button. |
76ae75a
to
e2eb4d9
Compare
Now that #47520 is closed, I expose it here.
Should be fixed, it was throwing an error too. |
Refractor NodeDock to allow an arbitrary number of tabs Add the missing GroupDialog::_group_selected bind
e2eb4d9
to
5851ddd
Compare
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.
Looks ok now. I only did a technical review, the actual decision whether we should expose the dock is still to be made. Personally I don't think there is much harm. It might be useful for some plugins and the PR also includes some refactoring.
Several points on this:
|
Also by the way, the plan was for a while to do away with NodeDock and merge most of that functionality in the inspector, so accessing this is likely a bad idea. |
Closing per @reduz comments and discussion on the Godot Contributor Chat. |
Part of godotengine/godot-proposals#2537
Indipendent from #47520
Expose NodeDock, ConnectionDock and GroupsEditor. NodeDock was refactored to allow an arbitrary number of tabs that can be added by plugins (no more show_* methods).
ConnectionDock and GroupsEditor exposes their main subcomponents (both trees). Dialogs are not exposed.
Also, I did some little unrelated changes (including a bugfix).
Docs for newly exposed classes are added, but I'm not sure about the quality of them, especially the descriptions.
IMO the brief description should state what component is and where it is, and the description should explain in short how it is structured and how a plugin can modify it.