Skip to content

Add Raid Control panel (Blizz UI Enhanced)#462

Open
rafaelcustodio wants to merge 1 commit into
EllesmereGaming:mainfrom
rafaelcustodio:raid-control-upstream
Open

Add Raid Control panel (Blizz UI Enhanced)#462
rafaelcustodio wants to merge 1 commit into
EllesmereGaming:mainfrom
rafaelcustodio:raid-control-upstream

Conversation

@rafaelcustodio

@rafaelcustodio rafaelcustodio commented Jun 25, 2026

Copy link
Copy Markdown

Summary

Adds Raid Control — a compact, movable raid-management panel inspired by ElvUI's RaidUtility, but self-contained on EllesmereUI primitives (no Ace/oUF/ElvUI).

A "Raid Control" button appears whenever you are in a (non-PvP) group and opens a panel with:

  • Raid target / world markers (left-click = target icon, right-click = matching world flare; last button clears)
  • Raid Menu, Disband, Ready Check, Role Poll, Main Tank/Assist, Countdown
  • Dropdowns: Difficulty, Convert raid↔party, Restrict Pings
  • "Everyone is Assistant" toggle

Details

  • Implementation: EllesmereUI_RaidControl.lua (parent file). Open/close runs through SecureHandlerClickTemplate so it works in combat; the automatic group-based show/hide is deferred out of combat (PLAYER_REGEN_ENABLED). Secure frames are only built/attributed out of combat.
  • Markers: numbered icons use secure macros (/tm, /wm) with useOnKeyDown=false so the up-click action isn't dropped under the cast-on-down CVar. World flares are remapped to match the target-icon colors; the clear button clears the target icon (left) and all world markers (right, via the secure worldmarker action). Ordered like ElvUI (skull→star, then clear) at the bottom of the panel.
  • Dropdowns: re-generate on the relevant confirmation events (e.g. PLAYER_DIFFICULTY_CHANGED, GROUP_ROSTER_UPDATE) so the collapsed text reflects the new (async) value.
  • Positioning: handled through Unlock Mode (registered element); default placement mirrors ElvUI (TOP, -400, top edge).
  • Configuration: an Enable Raid Control toggle in Blizz UI Enhanced → Tooltips, Menus & Popups; enabling prompts a reload so the mover and secure frames register before positioning.
  • Blizzard manager: enabling Raid Control hides the Blizzard CompactRaidFrameManager (reusing the shared hide-party-frame helper), since Raid Control replaces it.
  • Regenerated Locales/_keys.txt.

Taint

The panel hosts SecureActionButton children (markers, Main Tank/Assist), so open/close goes through the secure environment and frames are built out of combat.

image image image

A compact, movable raid-management panel inspired by ElvUI's RaidUtility,
built on EllesmereUI primitives (no Ace/oUF/ElvUI). A "Raid Control" button
appears while in a (non-PvP) group and opens a panel with raid target/world
markers, Raid Menu, Disband, Ready Check, Role Poll, Main Tank/Assist,
Countdown, Difficulty/Convert/Restrict Pings dropdowns and an
Everyone-is-Assistant toggle.

- Implementation in EllesmereUI_RaidControl.lua (parent file). Open/close runs
  through SecureHandlerClickTemplate so it works in combat; the automatic
  group-based show/hide is deferred out of combat. Secure frames are only
  built/attributed out of combat.
- Markers use secure macros (/tm, /wm) with useOnKeyDown=false; world flares
  are remapped to match target-icon colors; the clear button clears the target
  icon and all world markers. Ordered like ElvUI (skull..star, then clear) at
  the bottom of the panel.
- Dropdowns regenerate on their confirmation events so the collapsed text
  reflects the new (async) value.
- Positioning is handled through Unlock Mode; default placement mirrors ElvUI.
- Enable toggle lives in Blizz UI Enhanced > Tooltips, Menus & Popups and
  prompts a reload so the mover/secure frames register before positioning.
- Enabling hides the Blizzard CompactRaidFrameManager, which it replaces.
- Regenerated Locales/_keys.txt.
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.

1 participant