API — ICoreEssentials/UI/Backends/WinUI/Values
The public contract of 5 header(s) under ICoreEssentials/UI/Backends/WinUI/Values — 0 class/struct definition(s), 0 declaration(s). Each section shows the header's banner and its public (and protected-virtual) surface exactly as the file writes it.
| Header | Defines | Declarations | Bases |
|---|---|---|---|
ICoreWinUICursorShapes.h | — | 0 | — |
ICoreWinUIFontAccess.h | — | 0 | — |
ICoreWinUIIconAccess.h | — | 0 | — |
ICoreWinUIKeySequenceAccess.h | — | 0 | — |
ICoreWinUIPixmapAccess.h | — | 0 | — |
ICoreWinUICursorShapes.h#
ICoreEssentials/UI/Backends/WinUI/Values/ICoreWinUICursorShapes.h
The shape -> Win32 cursor table, exposed so it can be VERIFIED.
ICoreCursor's public surface has no accessor for its shape and no accessor for its handle -- it is construct-and-hand-to-the-toolkit. That makes the mapping invisible from outside the seat, and an invisible table is one nobody notices going wrong. This header is the same device Events/ICoreWinUIEventMap.h uses for W1.4's key tables, and for the same reason: the backend's internal decisions get a runtime test.
It lives INSIDE the backend zone, so naming Win32 here is exactly where the boundary guard expects it. Nothing above the zone may include this.
Declares no class of its own — see the file.
ICoreWinUIFontAccess.h#
ICoreEssentials/UI/Backends/WinUI/Values/ICoreWinUIFontAccess.h
Backend-internal access to the one number an ICoreFont does NOT publish: the size in pixels that this backend will lay it out at.
⚠ NOTHING ABOVE THE BACKEND ZONE MAY INCLUDE THIS. The peers are Values/ICoreWinUIPixmapAccess.h, Values/ICoreWinUICursorShapes.h and Painting/ICoreWinUIPaintAccess.h, and the argument is the same one: a seat hands its own painter what its public surface deliberately does not.
⚠ IT IS DECLARED HERE AND DEFINED IN ICoreWinUIFontMetrics.cpp, NOT COPIED, and that is the whole reason the header exists. ICoreFont states its size as EITHER points or pixels and the conversion between them is a measured rule with a trap in it -- 96 DPI half-up, which is NOT the rule the sibling seat uses to read the system font's LOGFONT (that one divides by the LIVE dpi, because the OS has already scaled it). The two rules are both right, they are
Declares no class of its own — see the file.
ICoreWinUIIconAccess.h#
ICoreEssentials/UI/Backends/WinUI/Values/ICoreWinUIIconAccess.h
⚠ ICoreSvgDocument.h IS INCLUDED RATHER THAN FORWARD-DECLARED, and that is a decision W6.4 paid for once already (§78.4).
ICoreSvgDrawingis a struct; a forward declaration spellingclassgives the definition a different MSVC mangled name from every call, and a static library ARCHIVES WITHOUT RESOLVING -- so every TU compiles,lib.exeexits 0, and the symbol is missing. The header is toolkit-free and portable, so including it costs a parse and removes the whole class of mistake.
Declares no class of its own — see the file.
ICoreWinUIKeySequenceAccess.h#
ICoreEssentials/UI/Backends/WinUI/Values/ICoreWinUIKeySequenceAccess.h
IMPLEMENTATION SIDE ONLY, and the peer of ICoreWinUINativeHandleAccess.h: the one sanctioned way to read the chords out of an ICoreKeySequence on this backend.
WHY IT EXISTS. The wrapper's public seam is nativeStorage(), a const void* deliberately saying nothing about what is behind it. On the Qt backend that is a QKeySequence and icoreQt() casts it; here it is a pointer to a refcounted chord vector whose struct is private to ICoreWinUIKeySequence.cpp so that ONE file owns the layout. Shortcut and menu code needs those chords. Reaching into the storage at each call site would put the layout in three places and make the next change to it a silent miscompile rather than a link error.
NO WINRT AND NO WIN32 NAME HERE -- the chords are plain integers, so a suite
Declares no class of its own — see the file.
ICoreWinUIPixmapAccess.h#
ICoreEssentials/UI/Backends/WinUI/Values/ICoreWinUIPixmapAccess.h
Backend-internal access to an ICorePixmap's bits.
The peer of ../AppKit/Values/ICoreAppKitPixmapAccess.h, and of Values/ICoreWinUICursorShapes.h in this same directory: a wrapper whose public surface deliberately exposes no pixels still has to hand them to the painter that draws it, and to the test that proves it decoded correctly.
⚠ NOTHING ABOVE THE BACKEND ZONE MAY INCLUDE THIS. It exists so the WinUI painter (W1.5) and this backend's own verify suites can reach the buffer without widening ICorePixmap's public surface, which is the one thing the whole conversion is protecting.
Declares no class of its own — see the file.