Commit Graph

11 Commits

Author SHA1 Message Date
Narcasung 65dcb96c1d Remove the unconditional Default profile fallback
DeleteProfile no longer has a UI entry point, so the hardcoded
"Default" safety net it used to fall back to is no longer needed.
Unassigning a deleted profile now just clears the charProfile
mapping, and GetActiveProfileName/GetActiveClassSettings already
fall back to (and lazily recreate) the character's own auto-created
profile - the same thing that happens for a brand new character.
2026-07-08 00:30:53 +02:00
Narcasung 79f45e5c41 Add override notice on Classes tab, include class in profile names
- Show "These settings are currently overridden" and grey out the
  frame checkboxes on the Classes tab, but only while viewing the
  logged-in character's own class and its active profile has the
  override enabled - other classes stay fully editable.
- GetCharacterKey() now embeds the class token ("Name - Class -
  Realm"), so auto-created per-character profiles carry it too.
  Migrate existing "Name - Realm" profiles/assignments/overrides to
  the new key on the affected character's next login.
2026-07-08 00:26:58 +02:00
Narcasung 83a1cda15c Move frame-override storage from per-character to per-profile
The Character Override tab's enabled toggle and frame checkboxes now
live on each named profile (profiles[name].override) instead of being
keyed by character. This lets the tab's new profile-list dropdown pick
which profile's override to view/edit without touching which profile
is actually assigned/active for the character - selecting an entry
only changes what you're editing. Existing per-character override data
is migrated into the character's currently active profile on load.

Also style the profile dropdown with ElvUI when available, matching
the rest of the options panel.
2026-07-08 00:18:44 +02:00
Narcasung 3d048cb081 Rework Classes/Character Override options UI
- Fix checkbox/button click sound never playing: the sound hook was
  installed before the real OnClick handler, which SetScript then
  silently overwrote. Apply the click-sound hook after each button's
  real handler instead, and extend it to Hide All/Show All and the
  class tabs.
- Split the single bordered box around the Classes tab list and
  checkbox content into two separate boxes with a 3px gap, remove the
  bright edge texture, and lower the fill alpha so it reads closer to
  LootCollector's panel styling.
- Show "Name - Realm" above the Character Override checkbox and drop
  its trailing period.
- Add breathing room around the class name label and tab list.
2026-07-08 00:06:14 +02:00
Narcasung ea4849fc10 Revamp options UI: dropdown-based class picker and per-character override tab
Replaces the 21-tab class sidebar with a single Classes tab driven by a
dropdown plus Hide All/Show All bulk actions. Reworks the old Profiles tab
into "Character Override": a single toggle that lets a character's frame
hide/show choices bypass its class settings, backed by a new
characterOverrides table alongside the existing profile data. Adds an
empty About tab, restyles sidebar tabs gold/white, and drops the unused
subtitle line.
2026-07-07 23:23:25 +02:00
Narcasung 920b1b234b Add per-profile class settings with Reset/Copy/Delete and per-character profile assignment
Each profile now owns its own hide/show settings instead of sharing one
global table, and profile selection is tracked per character instead of
account-wide. Adds Reset Profile, Copy From, and Delete a Profile controls
to the Profiles tab, each ElvUI-skinned and gated behind a confirmation
popup.
2026-07-07 22:17:47 +02:00
Narcasung 5818fc66bc Guard profile dropdown against HideCoADB not being ready yet at load time 2026-07-07 20:40:56 +02:00
Narcasung ecaf3a7cb9 Add profile tab with Default/realm-character dropdown foundation 2026-07-07 20:39:17 +02:00
Narcasung d716f209cf Skin checkboxes with ElvUI when it's loaded 2026-07-07 20:28:24 +02:00
Narcasung 56d53d8f49 Guard forced Show() to frames already shown naturally by the game 2026-07-07 20:19:06 +02:00
Narcasung 55e82cf100 Initial commit: HideCoA addon 2026-07-07 19:03:58 +02:00