Theme Support #5
Description
@setzer22 I am creating an issue that we can use to track the idea of adding some theme support to GodotEgui as well as capture our dicussion from Discord in a more formalized way.
based on capability of using EGUI directly as a tool script, PR #4 I was thinking about how we should proceed to get some kind of unified theming support.
After spending some more time reviewing the egui styles module, I'm in agreement that it's probably best to not bother with Godot Theme support. It's probably far too much work to work on an abstraction layer.
As PR #4 indicates that we have the capability to run EGUI directly in the Godot Editor, I think there's very little reason we shouldn't just work on a theme editor using EGUI. In addition to the benefits of not having to do any theme translation between Godot types and egui types, we can also get an active preview of the theme.
From here, I think it would be useful to just determine some kind of serializable type that can be used to store the theme information such as json, ron, or a .tres (possibly supporting multiple) that contains the relevant EGUI Theme information. Being able to run this inside the editor would be a nice plus for the IDE experience :)
Based on the above There are a couple of points that I'd like to consider as well.
I have a few points I'd like to work on settling below.
- Theme Serialization/Deserialization (go for a more Rusty or more Godoty method?
- How do we want to proceed with creating the theme resource files?
- How should this be integrated with the
GodotEgui
class? - Where should we develop the addon?
- Should the addon be included in this repository?
- Would it be worth splitting the theme editor off into it's own repository so that we can potentially support more targets than just Godot?
- If hosted in this repository should it be included in the main crate or a separate crate?
Thanks again for getting the EGUI ball rolling!
Activity