Add the Avalonia application and the station network

The entry window types contacts and colours them as they are typed; the log,
check, bandmap, score and packet windows read the same session. Contacts are
shared with the other stations of a multi-operator entry in N1MM's contact
message, so an N1MM station on the same network sees them too.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Erik
2026-08-27 10:56:35 +00:00
parent ffeeb2cdc1
commit 2834f63c8e
45 changed files with 2667 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Nonemm.App.Configuration;
using Nonemm.App.Windows;
namespace Nonemm.App;
public partial class App : Application
{
public override void Initialize() => AvaloniaXamlLoader.Load(this);
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
UserPaths paths = UserPaths.Default();
paths.CreateFolders();
AppSession session = new(paths, Settings.Load(paths.SettingsFile));
desktop.MainWindow = new EntryWindow(session);
desktop.ShutdownRequested += (_, _) => session.Dispose();
}
base.OnFrameworkInitializationCompleted();
}
}