private Dictionary <String, Func <String> > CreateTextPlaceholderReplacingFuncs()
        {
            var result = new Dictionary <String, Func <String> >();

            result.Add("$ModName", () => GetGeneralSettings(GeneralSettingEntryType.ModName).Value);

            result.Add("$WargameVersion", () => {
                return(WargameVersionType.GetByName(GetGeneralSettings(GeneralSettingEntryType.WargameVersion).Value).FullName);
            });

            return(result);
        }
예제 #2
0
        protected override void Configure()
        {
            kernel = new StandardKernel();
            kernel.Load(AppDomain.CurrentDomain.GetAssemblies());

            kernel.Bind <IEventAggregator>().To <EventAggregator>().InSingletonScope();
            kernel.Bind <IWindowManager>().To <WindowManager>().InSingletonScope();

            kernel.Bind <IInstallScreenViewModelFactory>().To <InstallScreenViewModelFactory>().InSingletonScope();
            kernel.Bind <IMessageService>().To <MessageService>().InSingletonScope();
            kernel.Bind <IDirectoryLocationService>().To <DirectoryLocationService>().InSingletonScope();

            kernel.Bind <IBackupService>().To <BackupService>().InSingletonScope();
            kernel.Bind <IProgressManager>().To <PercentageProgressManager>().InSingletonScope();
            kernel.Bind <IInstallerService>().To <InstallerService>().InSingletonScope();

            kernel.Bind <IGeneralSettingReader>().To <GeneralSettingReader>();
            kernel.Bind <IScreenSettingsReader>().To <ScreenSettingsReader>();
            kernel.Bind <ISettingsProvider>().To <SettingsProvider>().InSingletonScope();
            kernel.Bind <ISettingsFactory>().To <SettingsFactory>().InSingletonScope();

            String versionName = WargameVersionProvider.GetVersion();

            if (!WargameVersionType.IsKnownVersion(versionName))
            {
                versionName = WargameVersionType.GetDefault().Name;
            }

            if (versionName == WargameVersionType.AirLandBattle.Name)
            {
                ConfigureForALB(kernel);
            }
            else if (versionName == WargameVersionType.RedDragon.Name)
            {
                ConfigureForRD(kernel);
            }
        }