Files
Basalt2/docs/references/plugins/theme.md
2025-09-14 08:55:45 +00:00

1.8 KiB

BaseElement

This is the theme plugin. It provides a theming system that allows for consistent styling across elements with support for inheritance, named styles, and dynamic theme switching.

Functions

Method Returns Description
BaseElement.____getElementPath -
BaseElement:applyTheme BaseElement Applies theme styles to the element
BaseElement:getTheme table Gets theme properties for the element

BaseElement.____getElementPath()

BaseElement:applyTheme(self, applyToChildren)

Applies the current theme to this element

Parameters

  • self BaseElement The element to apply theme to
  • applyToChildren boolean ? Whether to apply theme to child elements (default: true)

Returns

  • BaseElement self The element instance

BaseElement:getTheme(self)

Gets the theme properties for this element

Parameters

  • self BaseElement The element to get theme for

Returns

  • table styles The theme properties

ThemeAPI

The Theme API provides methods for managing themes globally

Functions

Method Returns Description
ThemeAPI.setTheme - Sets a new theme
ThemeAPI.getTheme table Gets the current theme
ThemeAPI.loadTheme - Loads theme from JSON file

ThemeAPI.setTheme(newTheme)

Sets the current theme

Parameters

  • newTheme table The theme configuration to set

ThemeAPI.getTheme()

Gets the current theme configuration

Returns

  • table theme The current theme configuration

ThemeAPI.loadTheme(path)

Loads a theme from a JSON file

Parameters

  • path string Path to the theme JSON file