Skip to content

Expand coverage of themeable GUI elements#2789

Merged
daid merged 11 commits intodaid:masterfrom
oznogon:expand-themeables
Mar 15, 2026
Merged

Expand coverage of themeable GUI elements#2789
daid merged 11 commits intodaid:masterfrom
oznogon:expand-themeables

Conversation

@oznogon
Copy link
Contributor

@oznogon oznogon commented Mar 14, 2026

Expand coverage of UI element subclasses that can be themed using GuiThemeStyles.

  • Backgrounds (GuiCanvas, AlertOverlay)
  • GuiArrow (image)
  • GuiResizableDialog (handle)
  • GuiRotationDial (sprites, colors)
  • GuiSelector (background image, color)
  • GuiPowerDamageIndicator (color, sprite, font, font size for each overlay type)
  • GuiScrollingBanner (background sprite, font, size, color)
  • GuiShipInternalView (room tiles, door and crew sprites, selection reticle)
  • GuiSlider (tick color, label size)
  • GuiRadarView (radar outline, range indicator circles, sector and subsector grid colors and font, missile tube and target projection indicators, waypoints)
  • ShipsLog (panel background)
  • GuiFrequencyCurve (indicator icon)
  • Missile weapons (radar trace and color, sfx)
  • Signal band colors in GuiSignalQualityIndicator and RawScannerDataRadarOverlay
  • Comms messages (color by relationship)

Also:

  • Convert all colors managed in colorConfig to use GuiThemeStyle instead.
  • Remove colorConfig and colors.ini.
  • Apply textbox style to GuiScrollText.
  • Add GuiTheme getters for image, font, size, and sound.
  • Add theme selection functions for GuiImage and GuiOverlay.
  • Remove redundant luaconsole theme styles.

The removal of colorConfig in favor of themes is a potentially breaking change for users who have customized their colorConfig.

oznogon added 11 commits March 13, 2026 23:38
Add GuiThemeStyle support to GuiArrow (image), GuiResizableDialog
(resize handle), GuiRotationDial (images, color), and GuiSelector
(background image, color).

Also update some related parameter initializations and forward
declarations.
- Background images (tiled crosses, radar gradients, AlertOverlay
  image)
- GuiPowerDamageIndicator (overlay image, font, font size)
- GuiRotationDial and AimLock
- GuiScrollingBanner (image, font, size, color)
- GuiShipInternalView (GuiShipRoom sliced tiles, Door and Crew sprites,
  selection reticule)
- GuiSlider (tick color, label size)
  including coolant ticks on EngineeringScreen
- Electrical/gravitational/biological signal band colors in
  GuiSignalQualityIndicator and RawScannerDataRadarOverlay
- Range indicator circles
- Sector grid and subsector dots
- Missile tube indicators
- Target projection indicators

Also fixes leftover BebasNeue reference.
Add GuiTheme::getImage, getFont, getSize, and getSound getters.
Make missile weapon types' sound effect, radar trace icon, and
radar color themable.
@daid daid merged commit c5b5fae into daid:master Mar 15, 2026
5 checks passed
@daid
Copy link
Owner

daid commented Mar 15, 2026

You removed colorconfig, I love it :) that was a bit of a thorn in my eye.

@oznogon oznogon deleted the expand-themeables branch March 15, 2026 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants