feat(render): implement Campaign AR and terrain fidelity
This commit is contained in:
parent
99cf26e00c
commit
7a5f96ede5
368 changed files with 50611 additions and 950 deletions
|
|
@ -272,6 +272,29 @@ public sealed class UiTemplateListBox : UiDatElement
|
|||
return row;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Removes the dynamically-owned suffix after <paramref name="retainedItemCount"/>
|
||||
/// without disturbing the retained prefix. This is the structural seam used by
|
||||
/// optional Config-page extensions whose schema can change at runtime: retail's
|
||||
/// authored prefix remains mounted, while only extension rows are detached.
|
||||
/// Existing scroll is preserved and clamped by <see cref="UiScrollablePanel"/>.
|
||||
/// </summary>
|
||||
public void RemoveTail(int retainedItemCount)
|
||||
{
|
||||
int count = _viewport?.Children.Count ?? 0;
|
||||
if (retainedItemCount < 0 || retainedItemCount > count)
|
||||
throw new ArgumentOutOfRangeException(nameof(retainedItemCount));
|
||||
if (_viewport is null || retainedItemCount == count)
|
||||
return;
|
||||
|
||||
for (int i = count - 1; i >= retainedItemCount; i--)
|
||||
_viewport.RemoveChild(_viewport.Children[i]);
|
||||
}
|
||||
|
||||
/// <summary>Current number of materialized row widgets. Reading this does
|
||||
/// not wake a dormant list box.</summary>
|
||||
public int ItemCount => _viewport?.Children.Count ?? 0;
|
||||
|
||||
/// <summary>
|
||||
/// Campaign FA slice FA3: removes every row previously added via
|
||||
/// <see cref="AddItemFromTemplateList"/>/<see cref="AddPrebuiltRow"/>, resetting
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue