From 4a86e31c5871df2b71e00ff27f166efa6598d67b Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Fri, 15 May 2026 07:21:05 +0200 Subject: [PATCH] Manage Assembly Lists dialog + Create List prompt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaces the NotImplementedDialog stub in FileCommands.cs's ManageAssemblyListsCommand with a real File → Manage Assembly Lists dialog. Assisted-by: Claude:claude-opus-4-7:Claude Code --- ILSpy/Commands/FileCommands.cs | 18 ++- ILSpy/Views/CreateListDialog.axaml | 15 ++ ILSpy/Views/CreateListDialog.axaml.cs | 58 ++++++++ ILSpy/Views/ManageAssemblyListsDialog.axaml | 21 +++ .../Views/ManageAssemblyListsDialog.axaml.cs | 140 ++++++++++++++++++ 5 files changed, 251 insertions(+), 1 deletion(-) create mode 100644 ILSpy/Views/CreateListDialog.axaml create mode 100644 ILSpy/Views/CreateListDialog.axaml.cs create mode 100644 ILSpy/Views/ManageAssemblyListsDialog.axaml create mode 100644 ILSpy/Views/ManageAssemblyListsDialog.axaml.cs diff --git a/ILSpy/Commands/FileCommands.cs b/ILSpy/Commands/FileCommands.cs index f37f97860..d7e64420d 100644 --- a/ILSpy/Commands/FileCommands.cs +++ b/ILSpy/Commands/FileCommands.cs @@ -96,7 +96,23 @@ namespace ILSpy.Commands [Shared] sealed class ManageAssemblyListsCommand : SimpleCommand { - public override void Execute(object? parameter) => NotImplementedDialog.Show(Resources.ManageAssembly_Lists); + readonly SettingsService settingsService; + + [ImportingConstructor] + public ManageAssemblyListsCommand(SettingsService settingsService) + { + this.settingsService = settingsService; + } + + public override void Execute(object? parameter) + { + var owner = (global::Avalonia.Application.Current?.ApplicationLifetime + as global::Avalonia.Controls.ApplicationLifetimes.IClassicDesktopStyleApplicationLifetime)?.MainWindow; + if (owner == null) + return; + var dlg = new Views.ManageAssemblyListsDialog(settingsService); + _ = dlg.ShowDialog(owner); + } } [ExportMainMenuCommand(ParentMenuID = nameof(Resources._File), Header = nameof(Resources._Reload), MenuIcon = "Images/Refresh", MenuCategory = nameof(Resources.Open), MenuOrder = 2, InputGestureText = "F5")] diff --git a/ILSpy/Views/CreateListDialog.axaml b/ILSpy/Views/CreateListDialog.axaml new file mode 100644 index 000000000..8fa1ffc9d --- /dev/null +++ b/ILSpy/Views/CreateListDialog.axaml @@ -0,0 +1,15 @@ + + + + + +