You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#1983 Editor fixes relating to version CRUD tasks.
GSE.ReplaceSequence stored the caller's own table into GSE.Library, so from
the first Save of a session the editor's working sequence and the Library
entry were the same object. Every per-version handler carries a "mirror into
the Library so the tree updates before Save" block, and post-Save that block
was writing into the same array a second time: Delete removed two versions,
New Version inserted two, drag reorder moved twice. The extra version also
left the tree pointing at an index the reloaded sequence did not have, which
is the nil-index error on the way back into the editor. The Library now holds
a clone, which is the invariant those mirror blocks were written against —
fixed at the source rather than by guarding each mirror site.
New Version left the Save button disabled. The macro-length gate is the only
thing that disables Save, and the newversion branch refreshed it BEFORE
inserting, so it measured the previously selected version; if that one was
over the limit, a brand-new copy of Default inherited a disabled Save and
nothing re-evaluated it until macro text happened to change.
GUIDrawMacroEditor does not refresh the gate itself, so the branch now does
it against the new index.
Version-delete metadata rules, which were wrong in both directions:
- MetaData.Default was decremented on EVERY delete, so removing version 5
while Default was 4 silently moved Default to 3 and the sequence ran a
macro the author never chose. Only references AFTER the deleted version
move now.
- A context override pointing AT the deleted version was silently
repointed at Default. It now blocks the delete and names the entries to
change first, the same way Default already did.
The rule and the key list move to Storage.lua as GSE.VersionReferencesInUse
and GSE.ShiftVersionReferencesAfterDelete, with the keys derived from
contextVersionPriority instead of hand-listed. The editor had three separate
copies of that list; a context added to the runtime and missed in one of them
is a reference silently left pointing at the wrong version.
Drops the ten "X setting changed to Default." strings, dead now that the
silent repoint is gone. No other locale carried them.
spec/versionrefs_spec.lua covers the three delete cases, the ten keys, string
indexes, junk input, and that the Library no longer aliases the caller.
163 busted tests, luacheck clean.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017wmCKbEwmEgWW8SpWnXJhC
"Macro found by the name %sPVP%s. Rename this macro to a different name to be able to use it. WOW has a global object called PVP that is referenced instead of this macro."
361
357
] =true
@@ -365,7 +361,6 @@ L["Random - It will select .... a spell, any spell"] = true
365
361
366
362
-- GSE 2.3.00
367
363
L["The GUI has not been loaded. Please activate this plugin amongst WoW's addons to use the GSE GUI."] =true
368
-
L["Arena setting changed to Default."] =true
369
364
L["Arena"] =true
370
365
L["Local Macro"] =true
371
366
L["Updated Macro"] =true
@@ -388,8 +383,6 @@ L[" was imported as a new macro."] = true
388
383
L["New Sequence Name"] =true
389
384
390
385
-- GSE 2.3.09
391
-
L["Mythic+ setting changed to Default."] =true
392
-
L["Timewalking setting changed to Default."] =true
393
386
394
387
-- GSE 2.4.01
395
388
L[
@@ -441,8 +434,6 @@ L["Hide Minimap Icon"] = true
441
434
L["Hide Minimap Icon for LibDataBroker (LDB) data text."] =true
442
435
443
436
-- GSE 2.4.15 - Missing translations
444
-
L["Raid setting changed to Default."] =true
445
-
L["Mythic setting changed to Default."] =true
446
437
447
438
-- GSE 2.5.0
448
439
L["The milliseconds being used in key click delay."] =true
@@ -457,7 +448,6 @@ L["Version"] = true
457
448
458
449
-- 2.5.9
459
450
L["The version of this macro to use in Delves and Scenarios."] =true
460
-
L["Delves and Scenarios setting changed to Default."] =true
461
451
462
452
-- 2.6.01
463
453
L["Variables"] =true
@@ -951,3 +941,6 @@ L["The delay in seconds between Out of Combat Queue Polls. The Out of Combat Qu
951
941
L["The following people donate monthly via Patreon for the ongoing maintenance and development of GSE. Their support is greatly appreciated."] =true
952
942
L["These options combine to allow you to reset a sequence while it is running. These options are Cumulative ie they add to each other. Options Like LeftClick and RightClick won't work together very well."] =true
953
943
L["This is a common WoW setting used by all addons; it controls when your action buttons respond. On: they react when you press the key (key-down). Off: they react when you release it (key-up). GSE now works either way -- Actionbar Overrides and keybinds fire a single step in both states. With this on, GSE keybinds also fire on key-down for a faster response. Changes apply immediately out of combat (or on your next rebind if toggled mid-combat)."] =true
944
+
L["Version %d is in use by: %s. Point %s at another version on the Configuration tab before deleting this one."] =true
0 commit comments