GUI Avalonia multipiattaforma in solo C# e rinomina in agent-wiki-ui

Sostituisce WinForms, WebView2 e ui.html con una GUI Avalonia (XAML,
ViewModel, tema chiaro/scuro) e un renderer markdown che trasforma l'albero
di Markdig in controlli. Un solo progetto net10.0 per Windows e Linux, con
publish single-file compresso. L'avvio di claude è in un solo punto
(Core/Claude.cs) condiviso da CLI e GUI. Il nome dell'app viene
dall'AssemblyName; ChatStore migra la cartella dati LlmRun alla nuova.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
davideandClaude Sonnet 5.5 committed 2026-10-15 11:18:46 +02:00
1 parent 9c6a679e6a
commit 941d02110d
13 files changed
+966 -50

No files matched your search

+31
View File
@@ -0,0 +1,31 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Layout;
namespace AgentWikiUi.Gui;
static class ConfirmDialog
{
public static Task<bool> Ask(Window owner, string question)
{
var yes = new Button { Content = "Elimina", MinWidth = 90 };
var no = new Button { Content = "Annulla", MinWidth = 90 };
var dlg = new Window
{
Title = question, Width = 340, SizeToContent = SizeToContent.Height, CanResize = false,
WindowStartupLocation = WindowStartupLocation.CenterOwner,
Content = new StackPanel
{
Margin = new(20), Spacing = 18,
Children =
{
new TextBlock { Text = question, TextWrapping = Avalonia.Media.TextWrapping.Wrap },
new StackPanel { Orientation = Orientation.Horizontal, Spacing = 8, HorizontalAlignment = HorizontalAlignment.Right, Children = { no, yes } },
},
},
};
yes.Click += (_, _) => dlg.Close(true);
no.Click += (_, _) => dlg.Close(false);
return dlg.ShowDialog<bool>(owner);
}
}