Skip to content

Elements

R41z0r edited this page Jun 13, 2026 · 4 revisions

Contents

Elements are the building blocks rendered by LibSettingsDesigner. Categories, pages, and groups define structure. Controls edit values or run actions. Content elements provide dashboard, notes, and help/info pages.

For all shared fields and aliases, see Field Glossary.

Element Purpose
Category Top-level sidebar category.
Page A settings page under a category.
Group A section of controls inside a page.
Element Purpose
Toggle Boolean on/off setting.
Slider Numeric range setting.
Dropdown Single choice from a list.
MultiDropdown Multiple choices stored as a boolean map.
Input Text, numeric, or multiline input.
Button Action row.
ColorPicker Single color value.
ColorOverrides Multiple keyed color overrides.
SoundDropdown Single sound choice with preview support.
CheckboxDropdown Boolean setting plus related dropdown.
ReorderList Ordered editable list.
Element Purpose
Notes Hover notes, rich notes, text, images, and spacers.
Dashboard Landing dashboard configuration.
InfoPage Static/help pages with text, commands, buttons, and spacers.
Expandable Collapsible info-page sections for changelogs, FAQs, and release notes.
Need Use
Enable/disable a feature Toggle
Numeric value with min/max Slider
Pick exactly one option Dropdown
Pick multiple options MultiDropdown
Free text or number entry Input
Run an action instead of storing a setting Button
Store one color ColorPicker
Store several keyed colors ColorOverrides
Pick and preview a sound SoundDropdown
Toggle plus related mode/threshold CheckboxDropdown
Let users reorder entries ReorderList
Add long explanatory hover help Notes
Create a non-settings help page InfoPage
Add collapsible changelog text Expandable
Create a landing overview Dashboard

Most controls share these fields:

{
  id = "stableControlID",
  key = "directDBKey",
  type = "toggle",
  label = "Visible label",
  description = "Short row description.",
  default = true,
  groupID = "behavior",
  order = 100,
  keywords = { "alias", "old setting name" },
}

Use explicit getValue/setValue instead of key for nested DB values or runtime refresh that cannot be handled by a simple direct assignment.

Wiki
  • Home
  • Architecture
  • Vendoring
  • Quick Start
  • Field Glossary
  • Troubleshooting
  • Validation

Reference
  ⚬ Config API
  ⚬ UI API
  ⚬ Elements
  ⚬ Examples

Elements
  Structure
   • Category
   • Page
   • Group
   • Dashboard
   • InfoPage
   • Custom
  Controls
   • Toggle
   • CheckboxDropdown
   • Dropdown
   • MultiDropdown
   • SoundDropdown
   • Input
   • Slider
   • Button
  Advanced
   • ColorPicker
   • ColorPalette
   • ColorOverrides
   • ReorderList
   • Expandable
   • Notes

Examples
  Start
   • Minimal Addon
   • Complete Settings Center
   • Wrapper Bridge Pattern
  Data and Behavior
   • Dependent Controls
   • Nested Database Values
   • Dynamic Dropdowns
   • Runtime Refresh
   • Search and New Badges
   • Custom Hosted Editors
  Polish
   • Support Links
   • Theme Colors
   • Theme Borders

Clone this wiki locally