GUI Theme
App: apps/gui_theme/
A live theme editor: two panels side by side — controls on the left, a preview of styled widgets on the right. All style changes apply immediately to the Nuklear backend.
Run from root
Section titled “Run from root”% ./plume3d gui_themeWhat it shows
Section titled “What it shows”| Control | Method | Notes |
|---|---|---|
| Theme toggle | setTheme("dark"/"light") | Switches all colors |
| Accent color | setAccentColor(r, g, b) | 0–255 sliders for R/G/B |
| Corner rounding | setRounding(pixels) | 0 = sharp, 20+ = pill |
| Window alpha | setWindowAlpha(alpha) | 0–1; controls translucency |
| Font size | setFontSize(size) | Scales current font |
| Font switch | loadFont(path, size, name) + setFont(name, size) | Load TTF and activate |
Key patterns
Section titled “Key patterns”// Toggle dark/lightGui.setTheme(_isDark ? "dark" : "light")
// Accent color (0-255 int sliders)_accentR = Gui.sliderInt(0, _accentR, 255, 1)_accentG = Gui.sliderInt(0, _accentG, 255, 1)_accentB = Gui.sliderInt(0, _accentB, 255, 1)Gui.setAccentColor(_accentR, _accentG, _accentB)
// Rounding (pixel radius)_rounding = Gui.sliderInt(0, _rounding, 20, 1)Gui.setRounding(_rounding)
// Window alpha (0-1)_alpha = Gui.sliderFloat(0, _alpha, 1, 0.01)Gui.setWindowAlpha(_alpha)
// Load a custom fontGui.loadFont("fonts/inter.ttf", 16, "inter")Gui.setFont("inter", 16)