From 9bb76467b9f35e4587da24c327589aea5f611f6f Mon Sep 17 00:00:00 2001 From: Asriel Camora Date: Sat, 18 Nov 2023 01:07:31 -0800 Subject: [PATCH] Move macros instead of swapping --- Craftimizer/Configuration.cs | 9 +++++++++ Craftimizer/Windows/MacroList.cs | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Craftimizer/Configuration.cs b/Craftimizer/Configuration.cs index a892b46..23a8ff3 100644 --- a/Craftimizer/Configuration.cs +++ b/Craftimizer/Configuration.cs @@ -119,6 +119,15 @@ public class Configuration : IPluginConfiguration OnMacroListChanged?.Invoke(); } + public void MoveMacro(int fromIdx, int toIdx) + { + var macro = macros[fromIdx]; + macros.RemoveAt(fromIdx); + macros.Insert(toIdx, macro); + Save(); + OnMacroListChanged?.Invoke(); + } + public void Save() => Service.PluginInterface.SavePluginConfig(this); } diff --git a/Craftimizer/Windows/MacroList.cs b/Craftimizer/Windows/MacroList.cs index e15eab3..dfc1cf9 100644 --- a/Craftimizer/Windows/MacroList.cs +++ b/Craftimizer/Windows/MacroList.cs @@ -96,7 +96,7 @@ public sealed class MacroList : Window, IDisposable if (_target) { if (ImGuiExtras.AcceptDragDropPayload("macroListItem", out int j)) - Service.Configuration.SwapMacros(i, j); + Service.Configuration.MoveMacro(j, i); } } }