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.
Enabling the module
To enable the themes module, update your uvproj.yaml so that the theming 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: true
Then, 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>
Event safety
The entire module is flagged as event safe at All ready.
Testing out the module
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.
More information
The theme format is detailed here.
The library API is specified here.
Checking for the module
To check for the module at compile time, use the UIMGUI_THEME_MODULE_ENABLED macro.
Runtime checking can be done using the theming member of the ModuleSettings struct. The themeLocation member of the same struct also lets you change the auto-loaded theme. More info can be found
here.
C API
More info on the UntitledImGuiTheme library’s C API can be found here.