rename
This commit is contained in:
parent
bef61f841d
commit
c3de5fdb63
107 changed files with 0 additions and 0 deletions
|
|
@ -1,92 +0,0 @@
|
|||
using Avalonia;
|
||||
using Avalonia.Controls.ApplicationLifetimes;
|
||||
using Avalonia.Markup.Xaml;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Poe2Trade.Bot;
|
||||
using Poe2Trade.Core;
|
||||
using Poe2Trade.Game;
|
||||
using Poe2Trade.GameLog;
|
||||
using Poe2Trade.Inventory;
|
||||
using Poe2Trade.Screen;
|
||||
using Poe2Trade.Screen.Ocr;
|
||||
using Poe2Trade.Trade;
|
||||
using Poe2Trade.Ui.Overlay;
|
||||
using Poe2Trade.Ui.ViewModels;
|
||||
using Poe2Trade.Ui.Views;
|
||||
|
||||
namespace Poe2Trade.Ui;
|
||||
|
||||
public partial class App : Application
|
||||
{
|
||||
public override void Initialize()
|
||||
{
|
||||
AvaloniaXamlLoader.Load(this);
|
||||
}
|
||||
|
||||
public override void OnFrameworkInitializationCompleted()
|
||||
{
|
||||
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
|
||||
{
|
||||
var services = new ServiceCollection();
|
||||
|
||||
// Config
|
||||
services.AddSingleton<ConfigStore>();
|
||||
services.AddSingleton(sp => sp.GetRequiredService<ConfigStore>().Settings);
|
||||
|
||||
// Services
|
||||
services.AddSingleton<IOcrEngine>(sp =>
|
||||
{
|
||||
var settings = sp.GetRequiredService<SavedSettings>();
|
||||
return OcrEngineFactory.Create(settings.OcrEngine);
|
||||
});
|
||||
services.AddSingleton<IGameController, GameController>();
|
||||
services.AddSingleton<IScreenReader, ScreenReader>();
|
||||
services.AddSingleton<IClientLogWatcher>(sp =>
|
||||
new ClientLogWatcher(sp.GetRequiredService<SavedSettings>().Poe2LogPath));
|
||||
services.AddSingleton<ITradeMonitor, TradeDaemonBridge>();
|
||||
services.AddSingleton<IInventoryManager, InventoryManager>();
|
||||
|
||||
// Bot
|
||||
services.AddSingleton<FramePipelineService>();
|
||||
services.AddSingleton<LinkManager>();
|
||||
services.AddSingleton<TradeExecutor>();
|
||||
services.AddSingleton<TradeQueue>();
|
||||
services.AddSingleton<BotOrchestrator>();
|
||||
|
||||
// ViewModels
|
||||
services.AddSingleton<MainWindowViewModel>();
|
||||
services.AddSingleton<DebugViewModel>();
|
||||
services.AddSingleton<SettingsViewModel>();
|
||||
services.AddSingleton<MappingViewModel>();
|
||||
services.AddSingleton<AtlasViewModel>();
|
||||
|
||||
var provider = services.BuildServiceProvider();
|
||||
|
||||
var store = provider.GetRequiredService<ConfigStore>();
|
||||
var bot = provider.GetRequiredService<BotOrchestrator>();
|
||||
|
||||
var mainVm = provider.GetRequiredService<MainWindowViewModel>();
|
||||
mainVm.DebugVm = provider.GetRequiredService<DebugViewModel>();
|
||||
mainVm.SettingsVm = provider.GetRequiredService<SettingsViewModel>();
|
||||
mainVm.MappingVm = provider.GetRequiredService<MappingViewModel>();
|
||||
mainVm.AtlasVm = provider.GetRequiredService<AtlasViewModel>();
|
||||
|
||||
var window = new MainWindow { DataContext = mainVm };
|
||||
window.SetConfigStore(store);
|
||||
desktop.MainWindow = window;
|
||||
desktop.ShutdownMode = Avalonia.Controls.ShutdownMode.OnMainWindowClose;
|
||||
|
||||
var overlay = new D2dOverlay(bot);
|
||||
overlay.Start();
|
||||
|
||||
desktop.ShutdownRequested += async (_, _) =>
|
||||
{
|
||||
overlay.Shutdown();
|
||||
mainVm.Shutdown();
|
||||
await bot.DisposeAsync();
|
||||
};
|
||||
}
|
||||
|
||||
base.OnFrameworkInitializationCompleted();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue