public sealed class DrawListBuilderTurns a laid-out, styled tree into a list of things to draw.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
The last step of the chain this assembly exists to complete: the cascade said what applies, the bridge turned that into lengths, flexbox turned those into rectangles, and this turns the rectangles into commands. Nothing here decides anything — it reads.
Painting order is PaintOrder, parent before its children and siblings in the order they were added unless a z-index says otherwise. That is the same property hit testing walks in reverse, and the two have to agree: an element drawn on top must be the one a click lands on, and any rule that made them disagree would be a UI where things are not where they look. Neither of them having its own opinion is what guarantees it.
Fields and properties (2)
public bool CompositingWhether a translucent subtree is isolated into a group, or faded element by element.
public IReadOnlyList<SelectorDiagnostic> DiagnosticsWhat this builder could not draw, and why.
Methods (5)
public DrawListBuilder(NameTable properties, NameTable values, NameTable keywords)Creates a builder over a style engine's name tables.
public DrawListBuilder(NameTable properties, NameTable values, NameTable keywords, SystemPalette? palette)Creates a builder that resolves and forces system colours against a palette.
public void ClearDiagnostics()Forgets every refusal recorded so far.
public bool Build(UiDocument document, DrawList into)Walks a document and fills a draw list.
public bool Build(UiDocument document, UiElement root, DrawList into)Walks one surface of a document and fills a draw list.
Used by (4)
- DrawContextVixen.Ui
- DrawListVixen.Ui
- OverflowTestsVixen.Ui.Tests
- UiDocumentVixen.Ui