File Details
043
- R
- May 2, 2026
- 71.82 KB
- 17
- 12.0.5
- Retail
File Name
BazBars-043.zip
Supported Versions
- 12.0.5
BazBars
043 (2026-05-02)
Full Changelog Previous Releases
- BazBars v043 - Custom flyouts feature. Any slot can pop out a configurable grid of action cells. Two creation paths: drag a class flyout from the spellbook (Mage Teleport, Warlock Demon Summons, etc.) onto an empty slot for a live-bound copy that auto-updates as you learn new variants, or Shift+Right-Click an empty slot to spawn a default 1x3 custom flyout and fill cells via drop. Cells accept everything bar slots accept since the cell button routes through the same BazBars.Actions registry: spells, items, mounts (cast via /cast macro), toys, macros, battle pets, equipment sets. The popup is built on BazCore's new SecureActionPopup primitive (BazCore v101) so the chrome, grid layout, secure right-click toggle, click-outside dismissal, and drag-pickup all live in shared code. Gestures: left-click slot casts the current cell, right-click slot toggles the popup, click cell to cast (and in Last-Used mode it becomes the slot's new current), drop on cell to add or replace, drag cell out to pick it up, click outside the popup to dismiss. Shift+Right-Click a flyout slot opens a configuration form (rows/cols 1-12 each, pop-out direction, Last-Used vs Specific mode, persist toggle) - the actual flyout opens behind the dialog and updates live as the user moves sliders, sticky-pinned via popup:SetSticky(true) so click-outside doesn't dismiss it during config. Cancel restores a snapshot taken on open; Apply saves. Shift+Left-Drag a flyout slot picks up the whole flyout via an internal carrier (pendingFlyout module variable + a TOOLTIP-strata follower frame painted with the slot's current icon, so the visual matches what was on the button) - drop on another BazBar slot to move it. Bar.lua's PreClick/PostClick HasIncomingDrop helper checks both GetCursorInfo and Flyout.HasPending so the carry routes through the same drop pipeline real cursor contents use. ClearCursor hook auto-cancels (Esc, click empty world). Drops keep their position - sparse cell array, dropping on cell 5 lands at cell 5 even with 1-4 empty. Native flyout auto-converts to custom (pre-seeded with current spells) on first cell mutation. Fallback: pinned-but-unlearned cells fall through to the next usable cell; all-unusable reverts the slot to empty on next reload. New files: Actions/Flyout.lua (action handler with cell schema, ResolveCells, GetCurrentAction, SetCellAction, RecordCellClick, HasPending/ClearPending carrier, native cursor + internal carry fromCursor paths, native-flyout numSlots resolved via FlyoutNumSlots/FlyoutSlot helpers that fall back from C_SpellBook to the legacy GetFlyoutInfo/GetFlyoutSlotInfo globals so retail and classic-era APIs both work), FlyoutPopup.lua (thin wrapper that maps cell callbacks onto the Actions registry and owns the OpenConfig form). User Guide gets a new Flyouts page covering creation, gestures, configuration, and slot-to-slot moves, bump to 043

