forked from paulirwin/JavaToCSharp
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathAppBootstrapper.cs.orig
More file actions
80 lines (65 loc) · 2.24 KB
/
AppBootstrapper.cs.orig
File metadata and controls
80 lines (65 loc) · 2.24 KB
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
using System;
using System.Collections.Generic;
using System.Linq;
using Caliburn.Micro;
using JavaToCSharpGui.ViewModels;
namespace JavaToCSharpGui;
public class AppBootstrapper : BootstrapperBase
{
SimpleContainer _container;
public AppBootstrapper()
{
StartRuntime();
}
protected override void PrepareApplication()
{
var baseLocate = ViewLocator.LocateTypeForModelType;
ViewLocator.LocateTypeForModelType = (modelType, displayLocation, context) =>
{
var attribute = modelType.GetCustomAttributes(typeof(ViewAttribute), false).OfType<ViewAttribute>().FirstOrDefault(x => x.Context == context);
return attribute != null ? attribute.ViewType : baseLocate(modelType, displayLocation, context);
};
base.PrepareApplication();
}
protected override void Configure()
{
_container = new SimpleContainer();
_container.Singleton<IWindowManager, WindowManager>();
_container.Singleton<IEventAggregator, EventAggregator>();
_container.PerRequest<IShell, ShellViewModel>();
}
protected override object GetInstance(Type service, string key)
{
var instance = _container.GetInstance(service, key);
if (instance != null)
return instance;
throw new InvalidOperationException("Could not locate any instances.");
}
protected override IEnumerable<object> GetAllInstances(Type service)
{
return _container.GetAllInstances(service);
}
protected override void BuildUp(object instance)
{
_container.BuildUp(instance);
}
<<<<<<< HEAD
protected override void OnStartup(object sender, System.Windows.StartupEventArgs e)
{
DisplayRootViewFor<IShell>();
=======
protected override IEnumerable<object> GetAllInstances(Type service)
{
return container.GetAllInstances(service);
}
protected override void BuildUp(object instance)
{
container.BuildUp(instance);
}
protected override async void OnStartup(object sender, System.Windows.StartupEventArgs e)
{
await DisplayRootViewForAsync<IShell>();
}
>>>>>>> 36541dca5485d36c250c26755ba0773f808e6bfa
}
}