Fixed context menu items, made static function for it to be used

This commit is contained in:
cake
2025-11-29 22:42:55 +01:00
parent 740b58afc4
commit 1e88fe0cf3
3 changed files with 90 additions and 63 deletions

View File

@@ -6,8 +6,9 @@ using LightlessSync.API.Data.Extensions;
using LightlessSync.API.Dto.User;
using LightlessSync.Services.Mediator;
using LightlessSync.Services.ServerConfiguration;
using Microsoft.Extensions.Logging;
using LightlessSync.UI;
using LightlessSync.WebAPI;
using Microsoft.Extensions.Logging;
namespace LightlessSync.PlayerData.Pairs;
@@ -22,6 +23,8 @@ public class Pair
private readonly ServerConfigurationManager _serverConfigurationManager;
private readonly Lazy<ApiController> _apiController;
private const int _lightlessPrefixColor = 708;
public Pair(
ILogger<Pair> logger,
UserFullPairDto userPair,
@@ -89,48 +92,28 @@ public class Pair
return;
}
var openProfileSeString = new SeStringBuilder().AddText("Open Profile").Build();
var reapplyDataSeString = new SeStringBuilder().AddText("Reapply last data").Build();
var cyclePauseState = new SeStringBuilder().AddText("Cycle pause state").Build();
var changePermissions = new SeStringBuilder().AddText("Change Permissions").Build();
args.AddMenuItem(new MenuItem
UiSharedService.AddContextMenuItem(args, name: "Open Profile", prefixChar: 'L', colorMenuItem: _lightlessPrefixColor, onClick: () =>
{
Name = openProfileSeString,
OnClicked = _ => _mediator.Publish(new ProfileOpenStandaloneMessage(this)),
UseDefaultPrefix = false,
PrefixChar = 'L',
PrefixColor = 708
_mediator.Publish(new ProfileOpenStandaloneMessage(this));
return Task.CompletedTask;
});
args.AddMenuItem(new MenuItem
UiSharedService.AddContextMenuItem(args, name: "Reapply last data", prefixChar: 'L', colorMenuItem: _lightlessPrefixColor, onClick: () =>
{
Name = reapplyDataSeString,
OnClicked = _ => ApplyLastReceivedData(forced: true),
UseDefaultPrefix = false,
PrefixChar = 'L',
PrefixColor = 708
ApplyLastReceivedData(forced: true);
return Task.CompletedTask;
});
args.AddMenuItem(new MenuItem
UiSharedService.AddContextMenuItem(args, name: "Change Permissions", prefixChar: 'L', colorMenuItem: _lightlessPrefixColor, onClick: () =>
{
Name = changePermissions,
OnClicked = _ => _mediator.Publish(new OpenPermissionWindow(this)),
UseDefaultPrefix = false,
PrefixChar = 'L',
PrefixColor = 708
_mediator.Publish(new OpenPermissionWindow(this));
return Task.CompletedTask;
});
args.AddMenuItem(new MenuItem
UiSharedService.AddContextMenuItem(args, name: "Cycle pause state", prefixChar: 'L', colorMenuItem: _lightlessPrefixColor, onClick: () =>
{
Name = cyclePauseState,
OnClicked = _ =>
{
TriggerCyclePause();
},
UseDefaultPrefix = false,
PrefixChar = 'L',
PrefixColor = 708
TriggerCyclePause();
return Task.CompletedTask;
});
}