feat(ui): port retail selected-stack quantity
Bind the authored stack count entry and horizontal slider to one Core split-quantity owner, preserve retail count-first naming and exact 1000-step rounding, refresh on stack changes, and consume the selected amount during merges. Conformance covers the production DAT fixture and retained pointer/focus paths. Co-Authored-By: Codex <codex@openai.com>
This commit is contained in:
parent
dc1649c493
commit
a20e5c68c7
19 changed files with 595 additions and 51 deletions
|
|
@ -109,6 +109,7 @@ public sealed record RetailUiRuntimeBindings(
|
|||
public sealed class RetailUiRuntime : IDisposable
|
||||
{
|
||||
private readonly RetailUiRuntimeBindings _bindings;
|
||||
private readonly StackSplitQuantityState _stackSplitQuantity = new();
|
||||
private readonly RetailWindowLayoutPersistence? _persistence;
|
||||
private readonly RetailUiAutomationScriptRunner? _automation;
|
||||
private bool _disposed;
|
||||
|
|
@ -383,7 +384,10 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
b.HasHealth,
|
||||
b.StackSize,
|
||||
b.SendQueryHealth,
|
||||
_bindings.Assets.DefaultFont);
|
||||
_bindings.Assets.DefaultFont,
|
||||
_stackSplitQuantity,
|
||||
handler => b.Objects.ObjectUpdated += handler,
|
||||
handler => b.Objects.ObjectUpdated -= handler);
|
||||
|
||||
UiElement root = layout.Root;
|
||||
RetailWindowHandle handle = RetailWindowFrame.Mount(
|
||||
|
|
@ -597,7 +601,8 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
contents, sideBag, mainPack, b.SendUse, b.SendNoLongerViewing,
|
||||
b.SendPutItemInContainer, b.SendStackableMerge,
|
||||
notifyMergeAttempt, b.ItemInteraction,
|
||||
() => CloseWindow(WindowNames.Inventory));
|
||||
() => CloseWindow(WindowNames.Inventory),
|
||||
_stackSplitQuantity);
|
||||
PaperdollController paperdoll = PaperdollController.Bind(
|
||||
layout, b.Objects, b.PlayerGuid, b.ResolveIcon, b.Selection, b.SendWield,
|
||||
contents, _bindings.Assets.DefaultFont, b.ItemInteraction);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue