Skip to content
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

Add a built-in way to load theme resources as editor theme #3310

Closed
atirut-w opened this issue Sep 17, 2021 · 10 comments
Closed

Add a built-in way to load theme resources as editor theme #3310

atirut-w opened this issue Sep 17, 2021 · 10 comments

Comments

@atirut-w
Copy link

Describe the project you are working on

Nothing in particular.

Describe the problem or limitation you are having in your project

(none)

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

I just thought it'd be a nice idea to be able to completely customize the look of Godot's editor and not just a few stuff provided in the settings. This could allow more in-depth customizations such as custom fonts, or even revamping the look of the editor.

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

This can already be done from an EditorPlugin script by getting the editor's interface(get_editor_interface()) and from the editor's interface, getting the base control of the editor(get_base_control() and setting the base control's theme. Althought this kind of works, it is very hacky, can cause visual glitches, and require doing it all over again when loading a new theme.

If this is to be implemented into Godot's editor, there have to be a few requirements, such as that when the theme is unset, the editor should reset to the built-in theme.

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

(Can't find the old script I used to do this, but it can be implemented as explained above)

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

As I said, while it can be done from an EditorPlugin script, it is hacky and can sometimes cause visual glitches.

@Calinou
Copy link
Member

Calinou commented Sep 17, 2021

I don't understand the difference between this proposal and the custom theme editor setting that's already available. Custom fonts can also be specified in the editor settings already.

@atirut-w
Copy link
Author

atirut-w commented Sep 17, 2021 via email

@YuriSizov
Copy link
Contributor

No, you can have a fully custom theme if you want:

image

So closing, as this feature already exists.

@atirut-w
Copy link
Author

atirut-w commented Sep 17, 2021 via email

@YuriSizov
Copy link
Contributor

YuriSizov commented Sep 17, 2021

Well, that's what it is for.

image

As of 3.3.3 it requires you to provide a full theme resource for the editor. You can create a copy of the current editor theme and edit it using the old theme editor.

Starting 3.4 you can have a partial theme resource, i.e. a resource that only overrides the necessary stuff on top of the base editor theme. And you can also create as granular copy as you want from the editor theme using the new theme editor.

@atirut-w
Copy link
Author

atirut-w commented Sep 17, 2021 via email

@YuriSizov
Copy link
Contributor

I don’t think editor settings are documented in general at the moment?

@atirut-w
Copy link
Author

Sad

@Calinou
Copy link
Member

Calinou commented Sep 17, 2021

I don’t think editor settings are documented in general at the moment?

See #1339 and its implementation godotengine/godot#48548.

@atirut-w
Copy link
Author

atirut-w commented Sep 20, 2021

As of 3.3.3 it requires you to provide a full theme resource for the editor. You can create a copy of the current editor theme and edit it using the old theme editor.

Something to note, 3.3.3 seem to crash if I try to use a partial theme resource.

Themes replicated from current editor theme got me a little bit further but also crashes. Potential issue maybe?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants