- four return shapes were wrong — `UnitPowerType` returns ONE value in 5875 (the Era `(type, "RAGE")` pair does not exist, and its miss arm pushes the NUMBER 0, which `UnitFrame.lua:122` indexes `ManaBarColor` with), `UnitName` returns `(name, server)`, `GetTexCoord` returns EIGHT (ours four — a shape that exists nowhere, with zero call sites in FrameXML, so only the binary could have caught it), `GetLootMethod` answers `freeforall` ungrouped — the fifth right-name-wrong-arity finding in two days, so wow-re's `binding-shapes.tsv` (1722 rows over all 82 registrar tables) is vendored and a gate probes every binding's arity against it: 313 probes, eight divergences (seven global, one widget); `GetBuildInfo` pushed a fourth value no 1.12 client does (458 corpus sites take one, the four that destructure a fourth read nil on the real client), `GetAddOnInfo` RAISES on a numeric index, `Model:GetFogColor` is a packed `0xAARRGGBB` dword with no unset state, and the five miss branches are the reference's exact tuples - the panel-template kit is the reference's own `UIPanelTemplates` pair (our 18 templates were a strict subset — `TabButtonTemplate` and the `ScrollingEdit_*` family arrive, which unblocks the macro window and HelpFrame), and the swap found two structural facts: `FauxScrollFrameTemplate` is a `<ScrollFrame>` while every instance we declared was a `<Frame>` (fifteen elements across twelve files), and an instance `<OnLoad>` REPLACES the template's — four FriendsFrame lists set `updateFunc` in their own OnLoad, so `ScrollFrame_OnLoad` never ran and guild/friends/ignore/who had been silently painting nothing behind a `frame.offset or 0` - the options widget kit (`OptionFrameBoxTemplate`, `OptionsButtonTemplate`, `OptionsCheckButtonTemplate`, `OptionsSliderTemplate`) comes off the chain too, giving back the reference's own per-widget hover; one template of ours stays because `UIOptionsFrame.xml` is not built here, and the lesson is general — when a file SHRINKS rather than dies, every harness that named it gains the chain entry beside it, not instead of it Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
40 lines
2.3 KiB
XML
40 lines
2.3 KiB
XML
<Ui>
|
|
<!--
|
|
WHAT IS LEFT OF THIS FILE, AND WHY IT STILL EXISTS (decision 1841).
|
|
|
|
The four templates this file used to build — `OptionFrameBoxTemplate`,
|
|
`OptionsButtonTemplate`, `OptionsCheckButtonTemplate` and `OptionsSliderTemplate` — now come
|
|
off the player's chain out of `Interface\FrameXML\OptionsFrameTemplates.xml`, which the
|
|
manifest lists directly above this entry. Our transcription of them is gone.
|
|
|
|
**The same basename appears twice in benilla.toc on purpose.** A bare name is a file we
|
|
ship, a path is the reference's own (the manifest's rule since 1751), so the two entries are
|
|
unambiguous to the loader even though they read alike to a person. This one loads second and
|
|
adds exactly one name the chain's file does not have.
|
|
|
|
THAT NAME IS `UIOptionsCheckButtonTemplate`, and its home in the reference is
|
|
`UIOptionsFrame.xml` — a file we do not build at all, because benilla's own options window
|
|
is `OptionsFrame.xml`, a different design. So the template has no chain file to arrive from
|
|
and would simply vanish if this file did.
|
|
|
|
It is not ours and not invented: it is in `reference/1.12-globals.tsv`, and the corpus names
|
|
it at 8 `CreateFrame` call sites — the nameplate addons build their whole options panel out
|
|
of it. `panel_template_tests.rs` is the driver that says so.
|
|
|
|
WHEN THIS FILE GOES: the day `UIOptionsFrame.xml` migrates. The template comes from there,
|
|
this file has nothing left, and the manifest loses a line.
|
|
|
|
WHAT THE SWAP GAVE BACK. Our version factored the two widgets' hover into one
|
|
`BenillaOptionsWidget_ShowTooltip` helper, on the reasoning that "two copies of one
|
|
behaviour is how they end up disagreeing". The reference open-codes it inline in each
|
|
template's `<OnEnter>`, identically, and that is what runs now — the helper is gone with the
|
|
rest, and nothing else called it.
|
|
-->
|
|
|
|
<!-- ref UIOptionsFrame.xml l.6-10: a 26x26 override of the chain's own
|
|
`OptionsCheckButtonTemplate`, which it inherits from. -->
|
|
<CheckButton name="UIOptionsCheckButtonTemplate" inherits="OptionsCheckButtonTemplate" virtual="true">
|
|
<Size><AbsDimension x="26" y="26"/></Size>
|
|
</CheckButton>
|
|
</Ui>
|