fix #234: port retail appraisal floaty and inscriptions
This commit is contained in:
parent
643cdfe66e
commit
f1a7912160
23 changed files with 1310 additions and 106 deletions
|
|
@ -159,6 +159,11 @@ public sealed record RetailUiCursorBindings(
|
|||
public sealed record ConfirmationRuntimeBindings(
|
||||
Action<uint, uint, bool> SendResponse);
|
||||
|
||||
public sealed record AppraisalRuntimeBindings(
|
||||
Func<string> PlayerName,
|
||||
Action<uint, string> SendSetInscription,
|
||||
Action<string> DisplaySystemMessage);
|
||||
|
||||
public sealed record RetailUiRuntimeBindings(
|
||||
UiHost Host,
|
||||
RetailUiAssets Assets,
|
||||
|
|
@ -177,6 +182,7 @@ public sealed record RetailUiRuntimeBindings(
|
|||
ExternalContainerRuntimeBindings ExternalContainer,
|
||||
RetailUiCursorBindings Cursor,
|
||||
ConfirmationRuntimeBindings Confirmations,
|
||||
AppraisalRuntimeBindings Appraisal,
|
||||
StackSplitQuantityState StackSplitQuantity,
|
||||
BufferedUiRegistry? Plugins,
|
||||
RetailUiPersistenceBindings? Persistence,
|
||||
|
|
@ -431,7 +437,7 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
{
|
||||
ResetSessionDialogs();
|
||||
AppraisalController?.ResetSession();
|
||||
_panelUi.SetPanelVisibility(RetailPanelCatalog.Examination, visible: false);
|
||||
Host.HideWindow(WindowNames.Examination);
|
||||
}
|
||||
|
||||
public void UpdateCursor(IEnumerable<IMouse> mice)
|
||||
|
|
@ -971,9 +977,10 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
_bindings.Inventory.ItemInteraction,
|
||||
_bindings.Combat.State,
|
||||
_bindings.Magic.Spellbook,
|
||||
show: () => _panelUi.SetPanelVisibility(
|
||||
RetailPanelCatalog.Examination,
|
||||
visible: true),
|
||||
_bindings.Appraisal.PlayerName,
|
||||
_bindings.Appraisal.SendSetInscription,
|
||||
_bindings.Appraisal.DisplaySystemMessage,
|
||||
show: () => Host.ShowWindow(WindowNames.Examination),
|
||||
close: () => CloseWindow(WindowNames.Examination));
|
||||
if (controller is null)
|
||||
{
|
||||
|
|
@ -984,7 +991,7 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
|
||||
AppraisalController = controller;
|
||||
UiElement root = layout.Root;
|
||||
RetailWindowHandle handle = RetailWindowFrame.Mount(
|
||||
_ = RetailWindowFrame.Mount(
|
||||
Host.Root,
|
||||
root,
|
||||
_bindings.Assets.ResolveSprite,
|
||||
|
|
@ -1006,10 +1013,6 @@ public sealed class RetailUiRuntime : IDisposable
|
|||
ContentClickThrough = false,
|
||||
Controller = controller,
|
||||
});
|
||||
_panelUi.RegisterMainPanel(
|
||||
RetailPanelCatalog.Examination,
|
||||
WindowNames.Examination,
|
||||
handle);
|
||||
Console.WriteLine(
|
||||
"[M4] retail examination window from LayoutDesc 0x2100006B.");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue