From c29b6b5e57f02f107c304080f47ac633b87cbf75 Mon Sep 17 00:00:00 2001 From: X3llus <17010070+X3llus@users.noreply.github.com> Date: Sat, 30 Dec 2023 10:52:59 -0500 Subject: [PATCH 1/3] Created a new glamour command that lets you delete a desgin using the given designs name --- Glamourer/Services/CommandService.cs | 37 +++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/Glamourer/Services/CommandService.cs b/Glamourer/Services/CommandService.cs index 2135357..fc402f7 100644 --- a/Glamourer/Services/CommandService.cs +++ b/Glamourer/Services/CommandService.cs @@ -84,7 +84,8 @@ public class CommandService : IDisposable _config.Ephemeral.Save(); return; default: - _chat.Print("Use without argument to toggle the main window."); + _chat.Print("Use without argument to toggle the main w" + + "indow."); _chat.Print(new SeStringBuilder().AddText("Use ").AddPurple("/glamour").AddText(" instead of ").AddRed("/glamourer").AddText(" for application commands.").BuiltString); _chat.Print(new SeStringBuilder().AddCommand("qdb", "Toggles the quick design bar on or off.").BuiltString); _chat.Print(new SeStringBuilder().AddCommand("lock", "Toggles the lock of the main window on or off.").BuiltString); @@ -113,6 +114,7 @@ public class CommandService : IDisposable "automation" => SetAutomation(argument), "copy" => CopyState(argument), "save" => SaveState(argument), + "delete" => Delete(argument), _ => PrintHelp(argumentList[0]), }; } @@ -410,6 +412,39 @@ public class CommandService : IDisposable return true; } + private bool Delete(string argument) + { + if (argument.Length == 0) + { + _chat.Print(new SeStringBuilder().AddText("Use with /glamour delete ").AddYellow("[Design Name]").BuiltString); + _chat.Print(new SeStringBuilder() + .AddText( + " 》 The design name is case-insensitive. If multiple designs of that name up to case exist, the first one is chosen.") + .BuiltString); + _chat.Print(new SeStringBuilder() + .AddText( + " 》 If using the design identifier, you need to specify at least 4 characters for it, and the first one starting with the provided characters is chosen.") + .BuiltString); + return false; + } + + //Design? design = _designManager.Designs.FirstOrDefault(design => design.Name == arguments); + var lower = argument.ToLowerInvariant(); + Design? design = _designManager.Designs.FirstOrDefault(d + => d.Name.Lower == lower || lower.Length > 3 && d.Identifier.ToString().StartsWith(lower)); + + if (design == null) + { + _chat.Print(new SeStringBuilder().AddRed("Error with finding the design.").BuiltString); + return false; + } + + _objects.Update(); + _designManager.Delete(design); + + return true; + } + private bool CopyState(string argument) { if (argument.Length == 0) From 9b82f856e1de984e62911b9095bb2b09cbaaa64b Mon Sep 17 00:00:00 2001 From: X3llus <17010070+X3llus@users.noreply.github.com> Date: Sat, 30 Dec 2023 11:04:47 -0500 Subject: [PATCH 2/3] small formatting fix --- Glamourer/Services/CommandService.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Glamourer/Services/CommandService.cs b/Glamourer/Services/CommandService.cs index fc402f7..9ff230f 100644 --- a/Glamourer/Services/CommandService.cs +++ b/Glamourer/Services/CommandService.cs @@ -84,8 +84,7 @@ public class CommandService : IDisposable _config.Ephemeral.Save(); return; default: - _chat.Print("Use without argument to toggle the main w" + - "indow."); + _chat.Print("Use without argument to toggle the main window."); _chat.Print(new SeStringBuilder().AddText("Use ").AddPurple("/glamour").AddText(" instead of ").AddRed("/glamourer").AddText(" for application commands.").BuiltString); _chat.Print(new SeStringBuilder().AddCommand("qdb", "Toggles the quick design bar on or off.").BuiltString); _chat.Print(new SeStringBuilder().AddCommand("lock", "Toggles the lock of the main window on or off.").BuiltString); From 0a3ca2430380a62563e9d0c799c03824bd5e0981 Mon Sep 17 00:00:00 2001 From: X3llus <17010070+X3llus@users.noreply.github.com> Date: Sat, 30 Dec 2023 11:06:46 -0500 Subject: [PATCH 3/3] removed commeted out code --- Glamourer/Services/CommandService.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Glamourer/Services/CommandService.cs b/Glamourer/Services/CommandService.cs index 9ff230f..022712f 100644 --- a/Glamourer/Services/CommandService.cs +++ b/Glamourer/Services/CommandService.cs @@ -427,7 +427,6 @@ public class CommandService : IDisposable return false; } - //Design? design = _designManager.Designs.FirstOrDefault(design => design.Name == arguments); var lower = argument.ToLowerInvariant(); Design? design = _designManager.Designs.FirstOrDefault(d => d.Name.Lower == lower || lower.Length > 3 && d.Identifier.ToString().StartsWith(lower));