diff --git a/Craftimizer/ImGuiUtils.cs b/Craftimizer/ImGuiUtils.cs index 88afbb8..1a98d3b 100644 --- a/Craftimizer/ImGuiUtils.cs +++ b/Craftimizer/ImGuiUtils.cs @@ -446,9 +446,8 @@ internal static class ImGuiUtils public static bool IconButtonSized(FontAwesomeIcon icon, Vector2 size) { - ImGui.PushFont(UiBuilder.IconFont); + using var font = ImRaii.PushFont(UiBuilder.IconFont); var ret = ImGui.Button(icon.ToIconString(), size); - ImGui.PopFont(); return ret; } diff --git a/Craftimizer/Windows/Settings.cs b/Craftimizer/Windows/Settings.cs index 03deb24..ff16a8e 100644 --- a/Craftimizer/Windows/Settings.cs +++ b/Craftimizer/Windows/Settings.cs @@ -1,10 +1,13 @@ using Craftimizer.Solver; +using Dalamud.Interface; +using Dalamud.Interface.Colors; using Dalamud.Interface.Utility; using Dalamud.Interface.Utility.Raii; using Dalamud.Interface.Windowing; using FFXIVClientStructs.FFXIV.Client.UI; using ImGuiNET; using System; +using System.Linq; using System.Numerics; namespace Craftimizer.Plugin.Windows; @@ -252,7 +255,7 @@ public sealed class Settings : Window, IDisposable } DrawOption( - "Use MacroChain's /nextmacro", + "Use Macro Chain's /nextmacro", "Replaces the last step with /nextmacro to run the next macro\n" + "automatically. Overrides Add End Notification except for the\n" + "last macro.", @@ -261,6 +264,18 @@ public sealed class Settings : Window, IDisposable ref isDirty ); + if (Config.MacroCopy.UseNextMacro && !Service.PluginInterface.InstalledPlugins.Any(p => p.IsLoaded && string.Equals(p.InternalName, "MacroChain", StringComparison.Ordinal))) + { + ImGui.SameLine(); + using (var color = ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudOrange)) + { + using var font = ImRaii.PushFont(UiBuilder.IconFont); + ImGui.Text(FontAwesomeIcon.ExclamationCircle.ToIconString()); + } + if (ImGui.IsItemHovered()) + ImGui.SetTooltip("Macro Chain is not installed"); + } + DrawOption( "Add Macro Lock", "Adds /mlock to the beginning of every macro. Prevents other\n" +