public GenericOptionsViewModel( NameSpace session, IOptionsViewModelParent parent, bool fixInvalidSettings, IOutlookAccountPasswordProvider outlookAccountPasswordProvider, Func <ISettingsFaultFinder, ICurrentOptions, IServerSettingsViewModel> serverSettingsViewModelFactory, Func <ICurrentOptions, IMappingConfigurationViewModelFactory> mappingConfigurationViewModelFactoryFactory) : base(parent) { if (session == null) { throw new ArgumentNullException(nameof(session)); } if (outlookAccountPasswordProvider == null) { throw new ArgumentNullException(nameof(outlookAccountPasswordProvider)); } if (mappingConfigurationViewModelFactoryFactory == null) { throw new ArgumentNullException(nameof(mappingConfigurationViewModelFactoryFactory)); } _syncSettingsViewModel = new SyncSettingsViewModel(); _networkSettingsViewModel = new NetworkSettingsViewModel(); var faultFinder = fixInvalidSettings ? new SettingsFaultFinder(this) : NullSettingsFaultFinder.Instance; _serverSettingsViewModel = serverSettingsViewModelFactory(faultFinder, this); _outlookAccountPasswordProvider = outlookAccountPasswordProvider; _mappingConfigurationViewModelFactory = mappingConfigurationViewModelFactoryFactory(this); _outlookFolderViewModel = new OutlookFolderViewModel(session, faultFinder); _outlookFolderViewModel.PropertyChanged += OutlookFolderViewModel_PropertyChanged; _timeRangeViewModel = new TimeRangeViewModel(); }
public GenericOptionsViewModel ( IOptionsViewModelParent parent, GeneralOptions generalOptions, IOutlookAccountPasswordProvider outlookAccountPasswordProvider, Func<ISettingsFaultFinder, ICurrentOptions, IServerSettingsViewModel> serverSettingsViewModelFactory, Func<ICurrentOptions, IMappingConfigurationViewModelFactory> mappingConfigurationViewModelFactoryFactory, IOptionTasks optionTasks) : base (parent) { if (generalOptions == null) throw new ArgumentNullException (nameof (generalOptions)); if (outlookAccountPasswordProvider == null) throw new ArgumentNullException (nameof (outlookAccountPasswordProvider)); if (mappingConfigurationViewModelFactoryFactory == null) throw new ArgumentNullException (nameof (mappingConfigurationViewModelFactoryFactory)); _syncSettingsViewModel = new SyncSettingsViewModel(); _networkSettingsViewModel = new NetworkSettingsViewModel(); var faultFinder = generalOptions.FixInvalidSettings ? new SettingsFaultFinder (this) : NullSettingsFaultFinder.Instance; _serverSettingsViewModel = serverSettingsViewModelFactory (faultFinder, this); _generalOptions = generalOptions; _outlookAccountPasswordProvider = outlookAccountPasswordProvider; _mappingConfigurationViewModelFactory = mappingConfigurationViewModelFactoryFactory(this); _outlookFolderViewModel = new OutlookFolderViewModel (faultFinder, optionTasks); _outlookFolderViewModel.PropertyChanged += OutlookFolderViewModel_PropertyChanged; _timeRangeViewModel = new TimeRangeViewModel(); }
public static ISubOptionsViewModel CoerceMappingConfiguration( ISubOptionsViewModel currentMappingConfiguration, OlItemType?outlookFolderType, bool isGoogleProfile, IMappingConfigurationViewModelFactory factory) { switch (outlookFolderType) { case OlItemType.olAppointmentItem: return(currentMappingConfiguration as EventMappingConfigurationViewModel ?? factory.Create(new EventMappingConfiguration())); case OlItemType.olContactItem: return(currentMappingConfiguration as ContactMappingConfigurationViewModel ?? factory.Create(new ContactMappingConfiguration())); case OlItemType.olTaskItem: return(isGoogleProfile ? null : currentMappingConfiguration as TaskMappingConfigurationViewModel ?? factory.Create(new TaskMappingConfiguration())); default: return(currentMappingConfiguration); } }
public override ISubOptionsViewModel CreateConfigurationViewModel(IMappingConfigurationViewModelFactory factory) { return(factory.Create(this)); }
public override ISubOptionsViewModel CreateConfigurationViewModel (IMappingConfigurationViewModelFactory factory) { return factory.Create (this); }
public abstract ISubOptionsViewModel CreateConfigurationViewModel(IMappingConfigurationViewModelFactory factory);
public abstract ISubOptionsViewModel CreateConfigurationViewModel (IMappingConfigurationViewModelFactory factory);