Skip to content
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.

Theme Support #5

Closed
Closed
@jacobsky

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.

  1. Theme Serialization/Deserialization (go for a more Rusty or more Godoty method?
  2. How do we want to proceed with creating the theme resource files?
  3. How should this be integrated with the GodotEgui class?
  4. Where should we develop the addon?
    1. Should the addon be included in this repository?
    2. 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?
    3. 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

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions