-
-
Notifications
You must be signed in to change notification settings - Fork 7
Theme module
The UntitledImGuiTheme library, provides functions to load and save dear imgui themes to a YAML format, as well as a widget to edit the current theme.
To enable the themes module, update your uvproj.yaml so that the spinners key under enabled-modules is set to true like this:
name: "MyProject"
version: "1.0.0.0"
engine-version: "1.0.0.0"
enabled-modules:
theming: trueThen, regenerate the modules cache by running the following command:
user $ ./UVKBuildTool --generate <project directory>
After that, refresh your CMake project with cmake ..!
Next, in your source file, include the Modules.hpp like this:
#include <Modules/Modules.hpp>The entire module is flagged as event safe at All ready.
When the theming module is enabled, the framework will automatically try to load the theme specified in the theme-location key of the Modules.yaml file. If the string is empty, or is set to nullptr from your code, the theme will not be loaded.
The theme-location string is prefixed by <Application config location>/Theme/ and postfixed with .theme.yaml, so if trying to load default the library will attempt to load <Application config location>/Theme/default.theme.yaml.
The theme format is detailed here.
The library API is specified here.
More info on the UntitledImGuiTheme library's C API can be found here.
This project is supported by all the people who joined our discord server and became beta testers. If you want to join the discord you can click here.
- Home
- Beginner content
- Install guide
- Creating and using the UI components
- The Instance
- The Init Info struct
- Building better titlebar menus
- Textures
- Logging
- Unicode support
- Additional features
- Client-side bar
- Custom type definitions
- Memory management
- C API development
- Config files and Folders
- Interfaces
- Internal Event safety
- Customising the build system
- Modules system
- Collaborating with others
- Advanced content
- Loading dynamic libraries at runtime
- Understanding the library layout
- Compilation mode modifiers
- Supporting plugins
- Production export and deployment
- OS integration tips
- Targeting WASM
- Using a custom rendering engine:
- Using a custom windowing backend:
- Developer and contributor resources
- Misc