public void ShowGeneralOptions() { var generalOptions = _generalOptionsDataAccess.LoadOptions(); using (var optionsForm = new GeneralOptionsForm()) { optionsForm.Options = generalOptions; if (optionsForm.Display()) { var newOptions = optionsForm.Options; ConfigureServicePointManager(newOptions); ConfigureLogLevel(newOptions.EnableDebugLog); _updateChecker.IsEnabled = newOptions.ShouldCheckForNewerVersions; _reportGarbageCollection.MaxAge = TimeSpan.FromDays(newOptions.MaxReportAgeInDays); _generalOptionsDataAccess.SaveOptions(newOptions); UpdateGeneralOptionDependencies(newOptions); _scheduler.SetOptions(_optionsDataAccess.LoadOptions(), newOptions.CheckIfOnline); if (newOptions.EnableTrayIcon != generalOptions.EnableTrayIcon) { _trayNotifier.Dispose(); _trayNotifier = newOptions.EnableTrayIcon ? new TrayNotifier(this) : NullTrayNotifer.Instance; } } } }
public void ShowGeneralOptionsNoThrow() { try { var generalOptions = _generalOptionsDataAccess.LoadOptions(); using (var optionsForm = new GeneralOptionsForm()) { optionsForm.Options = generalOptions; if (optionsForm.Display()) { var newOptions = optionsForm.Options; ConfigureServicePointManager(newOptions); ConfigureLogLevel(newOptions.EnableDebugLog); _updateChecker.IsEnabled = newOptions.ShouldCheckForNewerVersions; _reportGarbageCollection.MaxAge = TimeSpan.FromDays(newOptions.MaxReportAgeInDays); _generalOptionsDataAccess.SaveOptions(newOptions); UpdateGeneralOptionDependencies(newOptions); _scheduler.SetOptions(_optionsDataAccess.LoadOptions(), newOptions.CheckIfOnline); } } } catch (Exception x) { ExceptionHandler.Instance.HandleException(x, s_logger); } }
public async Task ShowGeneralOptions() { var generalOptions = _generalOptionsDataAccess.LoadOptions(); using (var optionsForm = new GeneralOptionsForm()) { optionsForm.Options = generalOptions; if (optionsForm.Display()) { var newOptions = optionsForm.Options; ConfigureServicePointManager(newOptions); ConfigureLogLevel(newOptions.EnableDebugLog); _updateChecker.IsEnabled = newOptions.ShouldCheckForNewerVersions; _reportGarbageCollection.MaxAge = TimeSpan.FromDays(newOptions.MaxReportAgeInDays); _generalOptionsDataAccess.SaveOptions(newOptions); UpdateGeneralOptionDependencies(newOptions); await _scheduler.SetOptions(_optionsDataAccess.LoadOptions(), newOptions); if (newOptions.EnableTrayIcon != generalOptions.EnableTrayIcon) { _trayNotifier.Dispose(); _trayNotifier = newOptions.EnableTrayIcon ? new TrayNotifier(this) : NullTrayNotifer.Instance; } if (_syncObject != null && newOptions.TriggerSyncAfterSendReceive != generalOptions.TriggerSyncAfterSendReceive) { if (newOptions.TriggerSyncAfterSendReceive) { _syncObject.SyncEnd += _sync_SyncEnd; } else { _syncObject.SyncEnd -= _sync_SyncEnd; } } } } }
public async Task EditGeneralOptionsAsync(Func <GeneralOptions, Tuple <bool, GeneralOptions> > editOptions) { var generalOptions = _generalOptionsDataAccess.LoadOptions(); var editResult = editOptions(generalOptions); if (editResult.Item1) { var newOptions = editResult.Item2; ConfigureServicePointManager(newOptions); ConfigureLogLevel(newOptions.EnableDebugLog); _updateChecker.IsEnabled = newOptions.ShouldCheckForNewerVersions; _reportGarbageCollection.MaxAge = TimeSpan.FromDays(newOptions.MaxReportAgeInDays); _generalOptionsDataAccess.SaveOptions(newOptions); UpdateGeneralOptionDependencies(newOptions); await _scheduler.SetOptions(_optionsDataAccess.Load(), newOptions); if (newOptions.EnableTrayIcon != generalOptions.EnableTrayIcon) { _trayNotifier.Dispose(); _trayNotifier = newOptions.EnableTrayIcon ? new TrayNotifier(this) : NullTrayNotifer.Instance; } if (_syncObject != null && newOptions.TriggerSyncAfterSendReceive != generalOptions.TriggerSyncAfterSendReceive) { if (newOptions.TriggerSyncAfterSendReceive) { _syncObject.SyncEnd += SyncObject_SyncEnd; } else { _syncObject.SyncEnd -= SyncObject_SyncEnd; } } } }