Skip to content

Desuq Cafe

Documentation menu

Style System

The plugin uses a consistent style system (FOBSDetailsPanelStyle) for all editor UI. Every section in the Details Panels is built from these helpers, so spacing, colours, and status indicators stay uniform across the OBS Component and Trigger Volume panels.

Spacing Constants

ConstantValueUse
SpacingTight2.0fBetween closely related items
SpacingNormal4.0fStandard row padding
SpacingRelaxed8.0fBetween groups
SpacingSpacious12.0fMajor section breaks

Status Colors

ColorUse
GetActiveColor()Connected, running, unmuted (green)
GetInactiveColor()Disconnected, stopped (gray)
GetWarningColor()Transitioning, paused (yellow)
GetErrorColor()Error states (red)
GetRecordingColor()Recording active (red)
GetLiveColor()Streaming live (red)
GetMutedColor()Audio muted (muted red)

Widget Builders

// Create status indicator dot
FOBSDetailsPanelStyle::CreateStatusIndicator(ColorAttribute);

// Create labeled row
FOBSDetailsPanelStyle::CreateLabel(LOCTEXT("Label", "My Label"), Width);

// Create styled value text
FOBSDetailsPanelStyle::CreateValueText(TextAttribute, ColorAttribute);

// Create separator
FOBSDetailsPanelStyle::CreateSeparator();

// Create subsection header
FOBSDetailsPanelStyle::CreateSubsectionHeader(LOCTEXT("Header", "Section"));

Volume Style System

The OBS Trigger Volume’s Appearance section also exposes a Volume Style (None / Glow / Hologram / Pulse / Custom) for the styled mesh that renders the volume in-editor and in-game. The built-in presets resolve to a shipped switch-material, and the Custom option lets you assign any material. The Custom material picker appears only when Volume Style is set to Custom. See the Details Panels Appearance section for where these controls live.