Beispiel #1
0
        /// <summary>
        /// Handles the DeleteFolderRequested event.
        /// </summary>
        /// <param name="sender">The sender<see cref="object"/>.</param>
        /// <param name="e">The e<see cref="EventArgs"/>.</param>
        private void Vm_DeleteFolderRequested(object sender, EventArgs e)
        {
            Debug.Assert(sender is FolderViewModel);
            var vm = sender as FolderViewModel;

            var proceed = App.LastChance("Delete Folder Request", $"Deleting {vm.FolderName}!", $"This operation will delete the {vm.FolderName} folder and remove this entry from the database The operation is not reversable! Do you really want to do this?", true);
            var su      = Locator.SetupViewModel;

            if (proceed)
            {
                vm.DeleteScheduled = true;
                FileOps.Delete(vm.FolderName, vm.IsHidden ? su.HiddenFilesFolder : su.CommunityFolder);

                var win = Window.GetWindow(this);
                Debug.Assert(win != null);
                win.Close();
            }
        }
Beispiel #2
0
        /// <summary>
        /// Handles the DeleteSelectedItemsRequested event.
        /// </summary>
        /// <param name="sender">The sender<see cref="object"/>.</param>
        /// <param name="e">The e<see cref="EventArgs"/>.</param>
        private void Vm_DeleteSelectedFoldersRequested(object sender, EventArgs e)
        {
            Debug.Assert(sender is MainViewModel);
            var vm = sender as MainViewModel;

            var selectedToDelete = new List <FolderViewModel>();

            foreach (var item in vm.SelectedFoldersCollection)
            {
                selectedToDelete.Add(item);
            }

            var folderNames = Environment.NewLine +
                              Environment.NewLine;

            foreach (var item in selectedToDelete)
            {
                folderNames += item.FolderName + Environment.NewLine;
            }

            var proceed = App.LastChance("Delete Folders Request", $"Deleting Selected Folders", $"This operation will delete these (this) {selectedToDelete.Count} folder(s) from the community or hidden directories:" +
                                         folderNames +
                                         Environment.NewLine +
                                         "Is this what you want to do?");

            if (proceed)
            {
                var hiddenFolder    = AppSettings.Default.HiddenFilesFolder;
                var communityFolder = AppSettings.Default.CommunityFolder;

                foreach (var item in selectedToDelete)
                {
                    FileOps.Delete(item.FolderName, item.IsHidden ? hiddenFolder : communityFolder);
                    vm.FolderCollection.Remove(item);
                }

                DbCore.Delete(selectedToDelete);
            }
        }