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

@@ -1,4 +1,6 @@
using Dalamud.Bindings.ImGui;
using Dalamud.Game.Gui.ContextMenu;
using Dalamud.Game.Text.SeStringHandling;
using Dalamud.Interface;
using Dalamud.Interface.Colors;
using Dalamud.Interface.GameFonts;
@@ -8,7 +10,6 @@ using Dalamud.Interface.Textures;
using Dalamud.Interface.Textures.TextureWraps;
using Dalamud.Interface.Utility;
using Dalamud.Interface.Utility.Raii;
using System;
using Dalamud.Plugin;
using Dalamud.Plugin.Services;
using Dalamud.Utility;
@@ -25,6 +26,7 @@ using LightlessSync.Utils;
using LightlessSync.WebAPI;
using LightlessSync.WebAPI.SignalR;
using Microsoft.Extensions.Logging;
using System;
using System.IdentityModel.Tokens.Jwt;
using System.Numerics;
using System.Runtime.InteropServices;
@@ -487,6 +489,21 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
);
}
public static void AddContextMenuItem(IMenuOpenedArgs args, SeString name, char prefixChar, ushort colorMenuItem, Func<Task> onClick)
{
args.AddMenuItem(new MenuItem
{
Name = name,
PrefixChar = prefixChar,
UseDefaultPrefix = false,
PrefixColor = colorMenuItem,
OnClicked = _ =>
{
onClick();
},
});
}
public static void ColoredSeparator(Vector4? color = null, float thickness = 1f, float indent = 0f)
{
var drawList = ImGui.GetWindowDrawList();