예제 #1
0
        private void AddButton_Click(object sender, RoutedEventArgs e)
        {
            var dir = new OpenDirectoryDialog().OpenDirectory();

            if (string.IsNullOrWhiteSpace(dir) == false)
            {
                var reader = new FolderSettingsFileReader();

                var settings = reader.ReadFileAsync(dir).Result;
                if (settings == null)
                {
                    var vm = AddDirectoryDialog.Show(dir);
                    if (vm == null)
                    {
                        return;
                    }
                    settings = new FolderSettings((uint)vm.DaysBeforeRemoval, (DirectoriesDeleteBehaviour)vm.BehaviourID);
                    var writer = new FolderSettingsFileSaver();
                    writer.SaveAsync(settings, dir).Wait();
                }

                var specificSettings = new SpecificFolderSetting(dir, settings);

                App.Oldi.AddSettings(specificSettings);
                vm.FolderSettingItems.Add(new FolderSettingItemViewModel(specificSettings));
            }
        }
예제 #2
0
        public void UpdateSetting(string directoryPath, FolderSettings newSett)
        {
            var sett = GetSetting(directoryPath);

            if (sett != null)
            {
                sett.DayAgeToRemove             = newSett.DayAgeToRemove;
                sett.DirectoriesDeleteBehaviour = newSett.DirectoriesDeleteBehaviour;

                var saver = new FolderSettingsFileSaver();
                saver.SaveAsync(newSett, directoryPath).Wait();
            }
        }