using Inspectron.Settings; using Ninject; using Ninject.Extensions.ChildKernel; using System.ComponentModel; using VisionBuilder.UI.Common.NullClasses; using VisionBuilder.UI.Common.Plugins; using VisionBuilder.UI.Common.ViewModel; using VisionBuilder.UI.Common.ViewModel.Interfaces.UI; namespace VisionBuilder.UI.Common; public static class VisionBuilder { public static IKernel CreateMainKernel(InspectronSettings settings) { TypeDescriptor.AddAttributes(typeof(List), new TypeConverterAttribute(typeof(ErrorShortNameConverter))); StandardKernel mainKernel = new StandardKernel(); // GLOBAL SETTINGS // mainKernel.Bind().ToConstant(settings); mainKernel.Bind().ToConstant(new UIConfiguration()); mainKernel.Bind().To().InSingletonScope(); mainKernel.Bind().To().InSingletonScope(); // --- // mainKernel.Bind().ToSelf().InSingletonScope(); return mainKernel; } }