Dalamud 13
This commit is contained in:
		 Submodule Glamourer.Api updated: 5e5c867a09...2fb517e2bb
									
								
							| @@ -1,5 +1,5 @@ | |||||||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||||||
| <Project Sdk="Dalamud.NET.Sdk/12.0.2"> | <Project Sdk="Dalamud.NET.Sdk/13.0.0"> | ||||||
|   <PropertyGroup> |   <PropertyGroup> | ||||||
|     <AssemblyName>LoporritSync</AssemblyName> |     <AssemblyName>LoporritSync</AssemblyName> | ||||||
|     <Version>9.9.0</Version> |     <Version>9.9.0</Version> | ||||||
|   | |||||||
| @@ -88,9 +88,11 @@ public class PluginWatcherService : MediatorSubscriberBase | |||||||
|                 Logger.LogError(e, "PluginWatcherService exception"); |                 Logger.LogError(e, "PluginWatcherService exception"); | ||||||
|             } |             } | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|  |         Update(publish: false); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     private void Update() |     private void Update(bool publish = true) | ||||||
|     { |     { | ||||||
|         if (!ExposedPluginsEqual(_pluginInterface.InstalledPlugins, _prevInstalledPluginState)) |         if (!ExposedPluginsEqual(_pluginInterface.InstalledPlugins, _prevInstalledPluginState)) | ||||||
|         { |         { | ||||||
| @@ -111,20 +113,20 @@ public class PluginWatcherService : MediatorSubscriberBase | |||||||
|             foreach (var internalName in newDict.Keys.Except(oldDict.Keys, StringComparer.Ordinal)) |             foreach (var internalName in newDict.Keys.Except(oldDict.Keys, StringComparer.Ordinal)) | ||||||
|             { |             { | ||||||
|                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); |                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); | ||||||
|                 Mediator.Publish(new PluginChangeMessage(internalName, p.Version, p.IsLoaded)); |                 if (publish) Mediator.Publish(new PluginChangeMessage(internalName, p.Version, p.IsLoaded)); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             foreach (var internalName in oldDict.Keys.Except(newDict.Keys, StringComparer.Ordinal)) |             foreach (var internalName in oldDict.Keys.Except(newDict.Keys, StringComparer.Ordinal)) | ||||||
|             { |             { | ||||||
|                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); |                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); | ||||||
|                 Mediator.Publish(new PluginChangeMessage(p.InternalName, p.Version, p.IsLoaded)); |                 if (publish) Mediator.Publish(new PluginChangeMessage(p.InternalName, p.Version, p.IsLoaded)); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             foreach (var changedGroup in newDict.Where(p => oldDict.TryGetValue(p.Key, out var old) && !old.SequenceEqual(p.Value))) |             foreach (var changedGroup in newDict.Where(p => oldDict.TryGetValue(p.Key, out var old) && !old.SequenceEqual(p.Value))) | ||||||
|             { |             { | ||||||
|                 var internalName = changedGroup.Value.First().InternalName; |                 var internalName = changedGroup.Value.First().InternalName; | ||||||
|                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); |                 var p = newDict[internalName].OrderBy(p => (!p.IsLoaded, p.Version)).First(); | ||||||
|                 Mediator.Publish(new PluginChangeMessage(p.InternalName, p.Version, p.IsLoaded)); |                 if (publish) Mediator.Publish(new PluginChangeMessage(p.InternalName, p.Version, p.IsLoaded)); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -46,8 +46,8 @@ public sealed class XivDataAnalyzer | |||||||
|                 if ((nint)handle == nint.Zero) continue; |                 if ((nint)handle == nint.Zero) continue; | ||||||
|                 var curBones = handle->BoneCount; |                 var curBones = handle->BoneCount; | ||||||
|                 // this is unrealistic, the filename shouldn't ever be that long |                 // this is unrealistic, the filename shouldn't ever be that long | ||||||
|                 if (handle->ResourceHandle.FileName.Length > 1024) continue; |                 if (handle->FileName.Length > 1024) continue; | ||||||
|                 var skeletonName = handle->ResourceHandle.FileName.ToString(); |                 var skeletonName = handle->FileName.ToString(); | ||||||
|                 if (string.IsNullOrEmpty(skeletonName)) continue; |                 if (string.IsNullOrEmpty(skeletonName)) continue; | ||||||
|                 outputIndices[skeletonName] = new(); |                 outputIndices[skeletonName] = new(); | ||||||
|                 for (ushort boneIdx = 0; boneIdx < curBones; boneIdx++) |                 for (ushort boneIdx = 0; boneIdx < curBones; boneIdx++) | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.Services.CharaData.Models; | using MareSynchronos.Services.CharaData.Models; | ||||||
|  |  | ||||||
| namespace MareSynchronos.UI; | namespace MareSynchronos.UI; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Dto.CharaData; | using MareSynchronos.API.Dto.CharaData; | ||||||
| using MareSynchronos.Services.CharaData.Models; | using MareSynchronos.Services.CharaData.Models; | ||||||
| using System.Numerics; | using System.Numerics; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using System.Numerics; | using System.Numerics; | ||||||
|  |  | ||||||
| namespace MareSynchronos.UI; | namespace MareSynchronos.UI; | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ using Dalamud.Interface.Colors; | |||||||
| using Dalamud.Interface.ImGuiFileDialog; | using Dalamud.Interface.ImGuiFileDialog; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Dto.CharaData; | using MareSynchronos.API.Dto.CharaData; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.MareConfiguration.Models; | using MareSynchronos.MareConfiguration.Models; | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ using Dalamud.Interface.Components; | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.API.Dto.User; | using MareSynchronos.API.Dto.User; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Components; | using Dalamud.Interface.Components; | ||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.WebAPI; | using MareSynchronos.WebAPI; | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.UI.Handlers; | using MareSynchronos.UI.Handlers; | ||||||
| using MareSynchronos.WebAPI; | using MareSynchronos.WebAPI; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Components; | using Dalamud.Interface.Components; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using System.Numerics; | using System.Numerics; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.WebAPI; | using MareSynchronos.WebAPI; | ||||||
| using System.Numerics; | using System.Numerics; | ||||||
| using System.Globalization; | using System.Globalization; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Components; | using Dalamud.Interface.Components; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.UI.Handlers; | using MareSynchronos.UI.Handlers; | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Dto.Group; | using MareSynchronos.API.Dto.Group; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.Services.Mediator; | using MareSynchronos.Services.Mediator; | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
| using MareSynchronos.Services.Mediator; | using MareSynchronos.Services.Mediator; | ||||||
| using Microsoft.Extensions.Logging; | using Microsoft.Extensions.Logging; | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.Services.Mediator; | using MareSynchronos.Services.Mediator; | ||||||
| using MareSynchronos.WebAPI; | using MareSynchronos.WebAPI; | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ using Dalamud.Interface; | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.UI.Handlers; | using MareSynchronos.UI.Handlers; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.UI.Handlers; | using MareSynchronos.UI.Handlers; | ||||||
| using System.Numerics; | using System.Numerics; | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Enum; | using MareSynchronos.API.Data.Enum; | ||||||
| using MareSynchronos.Interop.Ipc; | using MareSynchronos.Interop.Ipc; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.PlayerData.Handlers; | using MareSynchronos.PlayerData.Handlers; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
|   | |||||||
| @@ -105,7 +105,7 @@ public sealed class DtrEntry : IDisposable, IHostedService | |||||||
|     { |     { | ||||||
|         _logger.LogTrace("Creating new DtrBar entry"); |         _logger.LogTrace("Creating new DtrBar entry"); | ||||||
|         var entry = _dtrBar.Get("Loporrit"); |         var entry = _dtrBar.Get("Loporrit"); | ||||||
|         entry.OnClick = () => _mareMediator.Publish(new UiToggleMessage(typeof(CompactUi))); |         entry.OnClick = _ => _mareMediator.Publish(new UiToggleMessage(typeof(CompactUi))); | ||||||
|  |  | ||||||
|         return entry; |         return entry; | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ using Dalamud.Interface.Colors; | |||||||
| using Dalamud.Interface.ImGuiFileDialog; | using Dalamud.Interface.ImGuiFileDialog; | ||||||
| using Dalamud.Interface.Textures.TextureWraps; | using Dalamud.Interface.Textures.TextureWraps; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data; | using MareSynchronos.API.Data; | ||||||
| using MareSynchronos.API.Dto.User; | using MareSynchronos.API.Dto.User; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
| @@ -89,14 +89,14 @@ public class EditProfileUi : WindowMediatorSubscriberBase | |||||||
|  |  | ||||||
|         if (_pfpTextureWrap != null) |         if (_pfpTextureWrap != null) | ||||||
|         { |         { | ||||||
|             ImGui.Image(_pfpTextureWrap.ImGuiHandle, ImGuiHelpers.ScaledVector2(_pfpTextureWrap.Width, _pfpTextureWrap.Height)); |             ImGui.Image(_pfpTextureWrap.Handle, ImGuiHelpers.ScaledVector2(_pfpTextureWrap.Width, _pfpTextureWrap.Height)); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         var spacing = ImGui.GetStyle().ItemSpacing.X; |         var spacing = ImGui.GetStyle().ItemSpacing.X; | ||||||
|         ImGuiHelpers.ScaledRelativeSameLine(256, spacing); |         ImGuiHelpers.ScaledRelativeSameLine(256, spacing); | ||||||
|         using (_uiSharedService.GameFont.Push()) |         using (_uiSharedService.GameFont.Push()) | ||||||
|         { |         { | ||||||
|             var descriptionTextSize = ImGui.CalcTextSize(profile.Description, 256f); |             var descriptionTextSize = ImGui.CalcTextSize(profile.Description, hideTextAfterDoubleHash: false, 256f); | ||||||
|             var childFrame = ImGuiHelpers.ScaledVector2(256 + ImGui.GetStyle().WindowPadding.X + ImGui.GetStyle().WindowBorderSize, 256); |             var childFrame = ImGuiHelpers.ScaledVector2(256 + ImGui.GetStyle().WindowPadding.X + ImGui.GetStyle().WindowBorderSize, 256); | ||||||
|             if (descriptionTextSize.Y > childFrame.Y) |             if (descriptionTextSize.Y > childFrame.Y) | ||||||
|             { |             { | ||||||
| @@ -178,7 +178,7 @@ public class EditProfileUi : WindowMediatorSubscriberBase | |||||||
|  |  | ||||||
|         using (_uiSharedService.GameFont.Push()) |         using (_uiSharedService.GameFont.Push()) | ||||||
|         { |         { | ||||||
|             var descriptionTextSizeLocal = ImGui.CalcTextSize(_descriptionText, 256f); |             var descriptionTextSizeLocal = ImGui.CalcTextSize(_descriptionText, hideTextAfterDoubleHash: false, 256f); | ||||||
|             var childFrameLocal = ImGuiHelpers.ScaledVector2(256 + ImGui.GetStyle().WindowPadding.X + ImGui.GetStyle().WindowBorderSize, 200); |             var childFrameLocal = ImGuiHelpers.ScaledVector2(256 + ImGui.GetStyle().WindowPadding.X + ImGui.GetStyle().WindowBorderSize, 200); | ||||||
|             if (descriptionTextSizeLocal.Y > childFrameLocal.Y) |             if (descriptionTextSizeLocal.Y > childFrameLocal.Y) | ||||||
|             { |             { | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ using Dalamud.Interface.Components; | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
| using MareSynchronos.Services.Events; | using MareSynchronos.Services.Events; | ||||||
|   | |||||||
| @@ -1,10 +1,9 @@ | |||||||
| using Dalamud.Interface; | using Dalamud.Interface; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.Services.ServerConfiguration; | using MareSynchronos.Services.ServerConfiguration; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using ImGuiScene; |  | ||||||
| using MareSynchronos.Services.Mediator; | using MareSynchronos.Services.Mediator; | ||||||
| using MareSynchronos.UI.Components; | using MareSynchronos.UI.Components; | ||||||
|  |  | ||||||
| @@ -22,7 +21,6 @@ public class UidDisplayHandler | |||||||
|     private string _lastMouseOverUid = string.Empty; |     private string _lastMouseOverUid = string.Empty; | ||||||
|     private bool _popupShown = false; |     private bool _popupShown = false; | ||||||
|     private DateTime? _popupTime; |     private DateTime? _popupTime; | ||||||
|     private TextureWrap? _textureWrap; |  | ||||||
|  |  | ||||||
|     public UidDisplayHandler(MareMediator mediator, PairManager pairManager, |     public UidDisplayHandler(MareMediator mediator, PairManager pairManager, | ||||||
|         ServerConfigurationManager serverManager, MareConfigService mareConfigService) |         ServerConfigurationManager serverManager, MareConfigService mareConfigService) | ||||||
| @@ -96,8 +94,6 @@ public class UidDisplayHandler | |||||||
|                     _mediator.Publish(new ProfilePopoutToggle(null)); |                     _mediator.Publish(new ProfilePopoutToggle(null)); | ||||||
|                     _lastMouseOverUid = string.Empty; |                     _lastMouseOverUid = string.Empty; | ||||||
|                     _popupShown = false; |                     _popupShown = false; | ||||||
|                     _textureWrap?.Dispose(); |  | ||||||
|                     _textureWrap = null; |  | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.FileCache; | using MareSynchronos.FileCache; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.MareConfiguration.Models; | using MareSynchronos.MareConfiguration.Models; | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Enum; | using MareSynchronos.API.Data.Enum; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Enum; | using MareSynchronos.API.Data.Enum; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.Interop.Ipc; | using MareSynchronos.Interop.Ipc; | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Textures.TextureWraps; | using Dalamud.Interface.Textures.TextureWraps; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| @@ -149,12 +149,12 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase | |||||||
|             _uiSharedService.GameFont.Push(); |             _uiSharedService.GameFont.Push(); | ||||||
|             var remaining = ImGui.GetWindowContentRegionMax().Y - ImGui.GetCursorPosY(); |             var remaining = ImGui.GetWindowContentRegionMax().Y - ImGui.GetCursorPosY(); | ||||||
|             var descText = mareProfile.Description; |             var descText = mareProfile.Description; | ||||||
|             var textSize = ImGui.CalcTextSize(descText, 256f * ImGuiHelpers.GlobalScale); |             var textSize = ImGui.CalcTextSize(descText, hideTextAfterDoubleHash: false, 256f * ImGuiHelpers.GlobalScale); | ||||||
|             bool trimmed = textSize.Y > remaining; |             bool trimmed = textSize.Y > remaining; | ||||||
|             while (textSize.Y > remaining && descText.Contains(' ')) |             while (textSize.Y > remaining && descText.Contains(' ')) | ||||||
|             { |             { | ||||||
|                 descText = descText[..descText.LastIndexOf(' ')].TrimEnd(); |                 descText = descText[..descText.LastIndexOf(' ')].TrimEnd(); | ||||||
|                 textSize = ImGui.CalcTextSize(descText + $"...{Environment.NewLine}[Open Full Profile for complete description]", 256f * ImGuiHelpers.GlobalScale); |                 textSize = ImGui.CalcTextSize(descText + $"...{Environment.NewLine}[Open Full Profile for complete description]", hideTextAfterDoubleHash: false, 256f * ImGuiHelpers.GlobalScale); | ||||||
|             } |             } | ||||||
|             UiSharedService.TextWrapped(trimmed ? descText + $"...{Environment.NewLine}[Open Full Profile for complete description]" : mareProfile.Description); |             UiSharedService.TextWrapped(trimmed ? descText + $"...{Environment.NewLine}[Open Full Profile for complete description]" : mareProfile.Description); | ||||||
|  |  | ||||||
| @@ -167,12 +167,12 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase | |||||||
|             var newHeight = _textureWrap.Height * stretchFactor; |             var newHeight = _textureWrap.Height * stretchFactor; | ||||||
|             var remainingWidth = (256f * ImGuiHelpers.GlobalScale - newWidth) / 2f; |             var remainingWidth = (256f * ImGuiHelpers.GlobalScale - newWidth) / 2f; | ||||||
|             var remainingHeight = (256f * ImGuiHelpers.GlobalScale - newHeight) / 2f; |             var remainingHeight = (256f * ImGuiHelpers.GlobalScale - newHeight) / 2f; | ||||||
|             drawList.AddImage(_textureWrap.ImGuiHandle, new Vector2(rectMin.X + padding + remainingWidth, rectMin.Y + spacing.Y + imagePos.Y + remainingHeight), |             drawList.AddImage(_textureWrap.Handle, new Vector2(rectMin.X + padding + remainingWidth, rectMin.Y + spacing.Y + imagePos.Y + remainingHeight), | ||||||
|                 new Vector2(rectMin.X + padding + remainingWidth + newWidth, rectMin.Y + spacing.Y + imagePos.Y + remainingHeight + newHeight)); |                 new Vector2(rectMin.X + padding + remainingWidth + newWidth, rectMin.Y + spacing.Y + imagePos.Y + remainingHeight + newHeight)); | ||||||
|             if (_supporterTextureWrap != null) |             if (_supporterTextureWrap != null) | ||||||
|             { |             { | ||||||
|                 const float iconSize = 38; |                 const float iconSize = 38; | ||||||
|                 drawList.AddImage(_supporterTextureWrap.ImGuiHandle, |                 drawList.AddImage(_supporterTextureWrap.Handle, | ||||||
|                     new Vector2(rectMax.X - iconSize - spacing.X, rectMin.Y + (textPos / 2) - (iconSize / 2)), |                     new Vector2(rectMax.X - iconSize - spacing.X, rectMin.Y + (textPos / 2) - (iconSize / 2)), | ||||||
|                     new Vector2(rectMax.X - spacing.X, rectMin.Y + iconSize + (textPos / 2) - (iconSize / 2))); |                     new Vector2(rectMax.X - spacing.X, rectMin.Y + iconSize + (textPos / 2) - (iconSize / 2))); | ||||||
|             } |             } | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ using Dalamud.Interface.Colors; | |||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data; | using MareSynchronos.API.Data; | ||||||
| using MareSynchronos.API.Data.Comparer; | using MareSynchronos.API.Data.Comparer; | ||||||
| using MareSynchronos.API.Dto.Account; | using MareSynchronos.API.Dto.Account; | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Textures.TextureWraps; | using Dalamud.Interface.Textures.TextureWraps; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.PlayerData.Pairs; | using MareSynchronos.PlayerData.Pairs; | ||||||
| using MareSynchronos.Services; | using MareSynchronos.Services; | ||||||
| @@ -79,7 +79,7 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase | |||||||
|             ImGuiHelpers.ScaledDummy(new Vector2(256, 256 + spacing.Y)); |             ImGuiHelpers.ScaledDummy(new Vector2(256, 256 + spacing.Y)); | ||||||
|             var postDummy = ImGui.GetCursorPosY(); |             var postDummy = ImGui.GetCursorPosY(); | ||||||
|             ImGui.SameLine(); |             ImGui.SameLine(); | ||||||
|             var descriptionTextSize = ImGui.CalcTextSize(mareProfile.Description, 256f); |             var descriptionTextSize = ImGui.CalcTextSize(mareProfile.Description, hideTextAfterDoubleHash: false, 256f); | ||||||
|             var descriptionChildHeight = rectMax.Y - pos.Y - rectMin.Y - spacing.Y * 2; |             var descriptionChildHeight = rectMax.Y - pos.Y - rectMin.Y - spacing.Y * 2; | ||||||
|             if (descriptionTextSize.Y > descriptionChildHeight && !_adjustedForScrollBars) |             if (descriptionTextSize.Y > descriptionChildHeight && !_adjustedForScrollBars) | ||||||
|             { |             { | ||||||
| @@ -151,7 +151,7 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase | |||||||
|             var newHeight = _textureWrap.Height * stretchFactor; |             var newHeight = _textureWrap.Height * stretchFactor; | ||||||
|             var remainingWidth = (256f * ImGuiHelpers.GlobalScale - newWidth) / 2f; |             var remainingWidth = (256f * ImGuiHelpers.GlobalScale - newWidth) / 2f; | ||||||
|             var remainingHeight = (256f * ImGuiHelpers.GlobalScale - newHeight) / 2f; |             var remainingHeight = (256f * ImGuiHelpers.GlobalScale - newHeight) / 2f; | ||||||
|             drawList.AddImage(_textureWrap.ImGuiHandle, new Vector2(rectMin.X + padding + remainingWidth, rectMin.Y + spacing.Y + pos.Y + remainingHeight), |             drawList.AddImage(_textureWrap.Handle, new Vector2(rectMin.X + padding + remainingWidth, rectMin.Y + spacing.Y + pos.Y + remainingHeight), | ||||||
|                 new Vector2(rectMin.X + padding + remainingWidth + newWidth, rectMin.Y + spacing.Y + pos.Y + remainingHeight + newHeight)); |                 new Vector2(rectMin.X + padding + remainingWidth + newWidth, rectMin.Y + spacing.Y + pos.Y + remainingHeight + newHeight)); | ||||||
|         } |         } | ||||||
|         catch (Exception ex) |         catch (Exception ex) | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| using Dalamud.Interface.Colors; | using Dalamud.Interface.Colors; | ||||||
| using Dalamud.Interface.Utility; | using Dalamud.Interface.Utility; | ||||||
| using Dalamud.Interface.Utility.Raii; | using Dalamud.Interface.Utility.Raii; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.API.Data.Enum; | using MareSynchronos.API.Data.Enum; | ||||||
| using MareSynchronos.API.Data.Extensions; | using MareSynchronos.API.Data.Extensions; | ||||||
| using MareSynchronos.API.Dto.Group; | using MareSynchronos.API.Dto.Group; | ||||||
|   | |||||||
| @@ -10,7 +10,7 @@ using Dalamud.Interface.Utility.Raii; | |||||||
| using Dalamud.Plugin; | using Dalamud.Plugin; | ||||||
| using Dalamud.Plugin.Services; | using Dalamud.Plugin.Services; | ||||||
| using Dalamud.Utility; | using Dalamud.Utility; | ||||||
| using ImGuiNET; | using Dalamud.Bindings.ImGui; | ||||||
| using MareSynchronos.FileCache; | using MareSynchronos.FileCache; | ||||||
| using MareSynchronos.Interop.Ipc; | using MareSynchronos.Interop.Ipc; | ||||||
| using MareSynchronos.MareConfiguration; | using MareSynchronos.MareConfiguration; | ||||||
| @@ -237,7 +237,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase | |||||||
|     public static void DrawGroupedCenteredColorText(string text, Vector4 color, float? maxWidth = null) |     public static void DrawGroupedCenteredColorText(string text, Vector4 color, float? maxWidth = null) | ||||||
|     { |     { | ||||||
|         var availWidth = ImGui.GetContentRegionAvail().X; |         var availWidth = ImGui.GetContentRegionAvail().X; | ||||||
|         var textWidth = ImGui.CalcTextSize(text, availWidth).X; |         var textWidth = ImGui.CalcTextSize(text, hideTextAfterDoubleHash: false, availWidth).X; | ||||||
|         if (maxWidth != null && textWidth > maxWidth * ImGuiHelpers.GlobalScale) textWidth = maxWidth.Value * ImGuiHelpers.GlobalScale; |         if (maxWidth != null && textWidth > maxWidth * ImGuiHelpers.GlobalScale) textWidth = maxWidth.Value * ImGuiHelpers.GlobalScale; | ||||||
|         ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (availWidth / 2f) - (textWidth / 2f)); |         ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (availWidth / 2f) - (textWidth / 2f)); | ||||||
|         DrawGrouped(() => |         DrawGrouped(() => | ||||||
|   | |||||||
 Submodule Penumbra.Api updated: 2cbf4bace5...d8e0ad6ee2
									
								
							
		Reference in New Issue
	
	Block a user
	 Loporrit
					Loporrit