Syncshell and user ID colours

This commit is contained in:
2025-10-24 03:04:11 +01:00
parent d6320ed16a
commit b268571907
10 changed files with 260 additions and 220 deletions

View File

@@ -697,11 +697,21 @@ public class CompactUi : WindowMediatorSubscriberBase
private Vector4 GetUidColor()
{
var uidCol = _apiController.DisplayColour;
Vector4 uidColour;
if (uidCol.IsNullOrEmpty())
{
uidColour = UiSharedService.AccentColor;
} else
{
uidColour = SnowcloakSync.Utils.Colours.Hex2Vector4(uidCol);
}
return _apiController.ServerState switch
{
ServerState.Connecting => ImGuiColors.DalamudYellow,
ServerState.Reconnecting => ImGuiColors.DalamudRed,
ServerState.Connected => UiSharedService.AccentColor,
ServerState.Connected => uidColour,
ServerState.Disconnected => ImGuiColors.DalamudYellow,
ServerState.Disconnecting => ImGuiColors.DalamudYellow,
ServerState.Unauthorized => ImGuiColors.DalamudRed,

View File

@@ -250,7 +250,7 @@ internal sealed class GroupPanel
}
if (textIsGid) ImGui.PushFont(UiBuilder.MonoFont);
ImGui.SameLine();
ImGui.TextUnformatted(groupName);
ImGui.TextColored(SnowcloakSync.Utils.Colours.Hex2Vector4(groupDto.Group.DisplayColour), groupName);
if (textIsGid) ImGui.PopFont();
UiSharedService.AttachToolTip("Left click to switch between GID display and comment" + Environment.NewLine +
"Right click to change comment for " + groupName + Environment.NewLine + Environment.NewLine

View File

@@ -1,11 +1,13 @@
using Dalamud.Bindings.ImGui;
using Dalamud.Interface;
using Dalamud.Interface.Utility.Raii;
using Lumina.Data.Parsing;
using MareSynchronos.MareConfiguration;
using MareSynchronos.PlayerData.Pairs;
using MareSynchronos.Services.Mediator;
using MareSynchronos.Services.ServerConfiguration;
using MareSynchronos.UI.Components;
using System.Numerics;
namespace MareSynchronos.UI.Handlers;
@@ -63,9 +65,8 @@ public class UidDisplayHandler
if (!string.Equals(_editNickEntry, pair.UserData.UID, StringComparison.Ordinal))
{
ImGui.SetCursorPosY(originalY);
using (ImRaii.PushFont(UiBuilder.MonoFont, textIsUid)) ImGui.TextUnformatted(playerText);
Vector4 pairColour = SnowcloakSync.Utils.Colours.Hex2Vector4(pair.UserData.DisplayColour);
using (ImRaii.PushFont(UiBuilder.MonoFont, textIsUid)) ImGui.TextColored(pairColour, playerText);
if (ImGui.IsItemHovered())
{
if (!string.Equals(_lastMouseOverUid, id))