/
App.axaml.cs
40 lines (37 loc) · 1.22 KB
/
App.axaml.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using ModAPI.ViewModels;
using ModAPI.Views;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace ModAPI
{
public class App : Application
{
public static App Instance;
public Dictionary<string, Game> Games = new Dictionary<string, Game>();
public override void Initialize()
{
Instance = this;
AvaloniaXamlLoader.Load(this);
}
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
foreach (var g in Configuration.Games)
Games.Add(g.Key, new UnityMonoGame(g.Value));
var context = new AppViewModel();
context.Games = new ObservableCollection<Game>();
foreach (var g in Games)
context.Games.Add(g.Value);
desktop.MainWindow = new Views.MainWindow
{
DataContext = context
};
}
base.OnFrameworkInitializationCompleted();
}
}
}