fix(ui): night-round review — F9/F10/F12 register + structure riders
F9: filed register row AD-108 for MapPageController.ResolveSwallowedIcon — the standalone re-import of the Map tab's player/house icons, which m_pMap's own Type-1 UiButton authoring swallows as dat children (UiButton.ConsumesDatChildren). This adaptation was implemented but never had a register row. F10: extracted the popup-locator pair (0x10000395/0x21000041), previously duplicated as three separately-cited private constants across UiItemSlot.cs, RetailTooltipPresenter.cs, and MapPageController.cs, into ONE public pair on RetailTooltipPresenter (SharedPopupSkinRootElementId/SharedPopupSkinLayoutDid) with a single canonical citation. The other two sites now reference it instead of carrying their own copy. F12: fixed TS-85's SetTooltip-site arithmetic. The register (and a mirrored ISSUES.md log entry) claimed "15 known sites, all accounted for" — recounting the row's own enumerated list finds 17 distinct sites (the tally had dropped gmPaperDollUI::UpdateItemSlotTooltip @0x004A52EF and undercounted by one more), of which 16 are ported and one — UIElement_Text::RecalculateTruncation @0x00466F80, the headline highest-volume site sub-mechanism (1) itself named as deliberately deferred — was never actually closed. The "all 15 accounted for" close was wrong twice over: wrong count, and a site the row's own text already scoped as open. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
df062d2eda
commit
c403f57815
6 changed files with 64 additions and 49 deletions
|
|
@ -19,25 +19,23 @@ public class UiItemSlot : UiElement
|
|||
/// live-DAT-probed 2026-08-16: every top-level catalog child (inventory's
|
||||
/// 32x32 cell <c>0x1000033A</c>, the toolbar's per-slot prototypes
|
||||
/// <c>0x1000043B</c>.., the container cell <c>0x1000033F</c>, and every
|
||||
/// paperdoll/armor slot skin alike) resolves <c>P0x47=0x10000395</c> /
|
||||
/// <c>P0x48=0x21000041</c> through catalog inheritance, matching one of
|
||||
/// the four popup skins <see cref="Layout.RetailTooltipPresenter"/> already
|
||||
/// mounts for every other tooltip-bearing element
|
||||
/// (<c>Layout.TooltipLiveDatTests.PopupSkinRootIds</c>). Since
|
||||
/// <see cref="UiItemSlot"/> cells are built programmatically (never through
|
||||
/// <c>LayoutImporter.Build</c>), this port hardcodes the uniform pair here
|
||||
/// rather than re-deriving it per instance — the same "exhaustive scan,
|
||||
/// then hardcode" shape as <c>RetailCursorCatalog</c>'s five window-control
|
||||
/// cursor DIDs and <c>ItemListCellTemplate.CatalogLayoutId</c> itself.
|
||||
/// paperdoll/armor slot skin alike) resolves through catalog inheritance
|
||||
/// to <see cref="Layout.RetailTooltipPresenter.SharedPopupSkinRootElementId"/>/
|
||||
/// <see cref="Layout.RetailTooltipPresenter.SharedPopupSkinLayoutDid"/> —
|
||||
/// see that class for the single canonical citation (night-round review
|
||||
/// F10 consolidated what used to be three separately-cited copies of the
|
||||
/// same pair into one). Since <see cref="UiItemSlot"/> cells are built
|
||||
/// programmatically (never through <c>LayoutImporter.Build</c>), this
|
||||
/// port hardcodes the uniform pair here rather than re-deriving it per
|
||||
/// instance — the same "exhaustive scan, then hardcode" shape as
|
||||
/// <c>RetailCursorCatalog</c>'s five window-control cursor DIDs and
|
||||
/// <c>ItemListCellTemplate.CatalogLayoutId</c> itself.
|
||||
/// </summary>
|
||||
private const uint ItemTooltipRootElementId = 0x10000395u;
|
||||
private const uint ItemTooltipLayoutDid = 0x21000041u;
|
||||
|
||||
public UiItemSlot()
|
||||
{
|
||||
ClickThrough = false;
|
||||
AuthoredTooltipRootElementId = ItemTooltipRootElementId;
|
||||
AuthoredTooltipLayoutDid = ItemTooltipLayoutDid;
|
||||
AuthoredTooltipRootElementId = Layout.RetailTooltipPresenter.SharedPopupSkinRootElementId;
|
||||
AuthoredTooltipLayoutDid = Layout.RetailTooltipPresenter.SharedPopupSkinLayoutDid;
|
||||
}
|
||||
|
||||
public override bool ConsumesDatChildren => true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue