imgui-platform-kit 2.0.0
Cross-platform Dear ImGui application framework
Loading...
Searching...
No Matches
themes.h
Go to the documentation of this file.
1#pragma once
2
11#include "imgui.h"
12#include <functional>
13#include <string>
14#include <unordered_map>
15
16namespace imgui_kit
17{
23 void showImGuiKitThemeSelector(bool* p_open = nullptr);
24
32 // theme list from https://github.com/Patitotective/ImThemes
75
77 inline const std::unordered_map<Theme, std::string> themeNames = {
78 {Theme::Light, "Light"},
79 {Theme::Dark, "Dark"},
80 {Theme::Classic, "Classic"},
81 {Theme::AdobeInspired, "Adobe Inspired"},
82 {Theme::BlackDevil, "Black Devil"},
83 {Theme::BootstrapDark, "Bootstrap Dark"},
84 {Theme::Cherry, "Cherry"},
85 {Theme::ClassicSteam, "Classic Steam"},
86 {Theme::CleanDarkRed, "Clean Dark Red"},
87 {Theme::Comfy, "Comfy"},
88 {Theme::DuckRed, "Duck Red"},
89 {Theme::Darcula, "Darcula"},
90 {Theme::DarkRuda, "Dark Ruda"},
91 {Theme::Darky, "Darky"},
92 {Theme::DeepDark, "Deep Dark"},
93 {Theme::DiscordDark, "Discord Dark"},
94 {Theme::EnemyMouse, "Enemy Mouse"},
95 {Theme::EverForest, "Ever Forest"},
96 {Theme::FutureDark, "Future Dark"},
97 {Theme::Gold, "Gold"},
98 {Theme::GreenFont, "Green Font"},
99 {Theme::GreenLeaf, "Green Leaf"},
100 {Theme::HazyDark, "Hazy Dark"},
101 {Theme::MaterialFlat, "Material Flat"},
102 {Theme::Microsoft, "Microsoft"},
103 {Theme::Modern, "Modern"},
104 {Theme::Moonlight, "Moonlight"},
105 {Theme::Photoshoop, "Photoshoop"},
106 {Theme::PurpleComfy, "Purple Comfy"},
107 {Theme::QuickMinimal, "Quick Minimal"},
108 {Theme::RedFont, "Red Font"},
109 {Theme::RedOni, "Red Oni"},
110 {Theme::RoundedVisualStudio, "Rounded Visual Studio"},
111 {Theme::SoftCherry, "Soft Cherry"},
112 {Theme::SonicRiders, "Sonic Riders"},
113 {Theme::Unreal, "Unreal"},
114 {Theme::VisualStudio, "Visual Studio"},
115 {Theme::Windark, "Windark"},
116 {Theme::LedSynthmaster, "Led Synthmaster"}
117 };
118
128 // Stub functions for theme application
168 inline std::unordered_map<Theme, std::function<void()>> themes = {
169 {Theme::Light, []() { ImGui::StyleColorsLight(); }},
170 {Theme::Dark, []() { ImGui::StyleColorsDark(); }},
171 {Theme::Classic, []() { ImGui::StyleColorsClassic(); }},
175 {Theme::Cherry, []() { applyCherryTheme(); }},
178 {Theme::Comfy, []() { applyComfyTheme(); }},
179 {Theme::DuckRed, []() { applyDuckRedTheme(); }},
180 {Theme::Darcula, []() { applyDarculaTheme(); }},
181 {Theme::DarkRuda, []() { applyDarkRudaTheme(); }},
182 {Theme::Darky, []() { applyDarkyTheme(); }},
183 {Theme::DeepDark, []() { applyDeepDarkTheme(); }},
188 {Theme::Gold, []() { applyGoldTheme(); }},
191 {Theme::HazyDark, []() { applyHazyDarkTheme(); }},
194 {Theme::Modern, []() { applyModernTheme(); }},
199 {Theme::RedFont, []() { applyRedFontTheme(); }},
200 {Theme::RedOni, []() { applyRedOniTheme(); }},
204 {Theme::Unreal, []() { applyUnrealTheme(); }},
206 {Theme::Windark, []() { applyWindarkTheme(); }},
208 };
209}
Definition colour_palette.h:11
void applyEverForestTheme()
void applyCleanDarkRedTheme()
void applyRedOniTheme()
void showImGuiKitThemeSelector(bool *p_open=nullptr)
Shows a window that lets the user switch themes at runtime.
void applyMoonlightTheme()
void applyBlackDevilTheme()
void applySonicRidersTheme()
Theme
Available colour themes.
Definition themes.h:34
@ AdobeInspired
Dark grey theme inspired by Adobe applications.
@ QuickMinimal
Minimal dark theme.
@ EnemyMouse
Dark theme with cyan accents.
@ SoftCherry
Softer variant of the Cherry theme.
@ Microsoft
Light theme inspired by Microsoft's design language.
@ VisualStudio
Theme based on the Visual Studio dark palette.
@ RoundedVisualStudio
Visual Studio-like theme with rounded corners.
@ PurpleComfy
Soft dark theme with purple accents.
@ DuckRed
Dark theme with warm red accents.
@ Moonlight
Dark blue-purple night theme.
@ Comfy
Soft, rounded dark theme.
@ DarkRuda
Dark blue-grey theme.
@ ClassicSteam
Olive-green theme reminiscent of classic Steam.
@ BootstrapDark
Dark theme with Bootstrap-like blue accents.
@ Cherry
Dark theme with cherry-red accents.
@ EverForest
Muted green theme based on the Everforest palette.
@ SonicRiders
Colourful theme inspired by Sonic Riders.
@ GreenLeaf
Green-tinted theme.
@ RedOni
Dark theme with strong red accents.
@ MaterialFlat
Flat theme following Material Design colours.
@ Gold
Dark theme with gold accents.
@ Light
ImGui built-in light style.
@ Unreal
Grey theme inspired by Unreal Engine.
@ HazyDark
Hazy, low-contrast dark theme.
@ Darky
Plain dark theme.
@ Dark
ImGui built-in dark style (default).
@ RedFont
Dark theme with red text.
@ GreenFont
Dark theme with green text.
@ FutureDark
Futuristic dark theme.
@ DiscordDark
Theme based on Discord's dark palette.
@ Modern
Modern-looking dark theme.
@ BlackDevil
Black theme with red accents.
@ CleanDarkRed
Clean dark theme with red highlights.
@ Darcula
Theme based on the JetBrains Darcula palette.
@ LedSynthmaster
Dark theme inspired by the LED Synthmaster plugin.
@ Classic
ImGui built-in classic style.
@ DeepDark
Very dark, high-contrast theme.
@ Photoshoop
Dark grey theme inspired by Photoshop.
@ Windark
Windows-like dark theme.
void applyComfyTheme()
void applyLedSynthmasterTheme()
void applyHazyDarkTheme()
const std::unordered_map< Theme, std::string > themeNames
Human-readable display name for each Theme value.
Definition themes.h:77
void applyMicrosoftTheme()
void applyVisualStudioTheme()
void applyDeepDarkTheme()
void applyBootstrapDarkTheme()
void applyQuickMinimalTheme()
void applyEnemyMouseTheme()
void applyAdobeInspiredTheme()
void applyGreenLeafTheme()
std::unordered_map< Theme, std::function< void()> > themes
Maps each Theme value to the function that applies it.
Definition themes.h:168
void applyGoldTheme()
void applyFutureDarkTheme()
void applyModernTheme()
void applyDarkyTheme()
void applyDarkRudaTheme()
void applyRoundedVisualStudioTheme()
void applyMaterialFlatTheme()
void applyClassicSteamTheme()
void applyWindarkTheme()
void applyPurpleComfyTheme()
void applyCherryTheme()
void applyRedFontTheme()
void applyUnrealTheme()
void applyGreenFontTheme()
void applyDarculaTheme()
void applyDiscordDarkTheme()
void applySoftCherryTheme()
void applyPhotoshoopTheme()
void applyDuckRedTheme()