Beispiel #1
0
 private void Button_PlayFolder_Click(object sender, RoutedEventArgs e)
 {
     PhotoGallery.ActualScreenHeight = this.ActualHeight;
     if (ExplorerItems != null)
     {
         Frame.Navigate(typeof(PhotoGallery), ExplorerItems.ToList());
     }
 }
Beispiel #2
0
        private async void PageExplorerPasteButtonClick(object sender, RoutedEventArgs e)
        {
            if (_isPasting == true)
            {
                return;
            }
            _isPasting = true;
            LoadingProgressBar.Visibility = Windows.UI.Xaml.Visibility.Visible;
            if (CopiedCuttedItems.GetInstance().Items.Count > 0)
            {
                foreach (var item in CopiedCuttedItems.GetInstance().Items)
                {
                    if (item.Type == ExplorerItemType.File)
                    {
                        try
                        {
                            await item.StorageFile.CopyAsync(DataSource.CurrentStorageFolder, item.Name, NameCollisionOption.GenerateUniqueName);

                            if (CopiedCuttedItems.GetInstance().CutOrCopy == CopyCutState.Cut)
                            {
                                if (ExplorerItems.Contains(item))
                                {
                                    ExplorerItems.Remove(item);
                                }
                                await item.StorageFile.DeleteAsync(StorageDeleteOption.Default);
                            }
                        }
                        catch
                        { }
                    }
                }
                if (CopiedCuttedItems.GetInstance().CutOrCopy == CopyCutState.Cut)
                {
                    CopiedCuttedItems.GetInstance().Items.Clear();
                }
            }
            else if (DataSource.ShareStorageItems.Count > 0)
            {
                foreach (IStorageItem item in DataSource.ShareStorageItems)
                {
                    if (item is StorageFile)
                    {
                        try
                        {
                            StorageFile file = (StorageFile)item;
                            await file.CopyAsync(DataSource.CurrentStorageFolder, item.Name, NameCollisionOption.GenerateUniqueName);
                        }
                        catch
                        { }
                    }
                }
            }
            RefreshAfterAddNewItem();
            _isPasting = false;
        }
Beispiel #3
0
        protected async Task AppendAdditionalItems()
        {
            if (ItemsState == ExplorerItemsStates.Default && CurrentFolder != null)
            {
                var upperFolder = await((StorageFolder)CurrentFolder).GetParentAsync();
                if (upperFolder != null)
                {
                    var upperFolderModel = await ExplorerUpperFolderLinkItem.CreateAsync(upperFolder);

                    ExplorerItems.Insert(0, upperFolderModel);
                }
            }
        }
Beispiel #4
0
        protected void UpdateSelectedItem()
        {
            IExplorerItem selectedItem = null;

            if (SelectedItemBeforeExpanding != null)
            {
                selectedItem = ExplorerItems.FirstOrDefault(x => x.Path == SelectedItemBeforeExpanding.Path);
            }

            if (selectedItem == null)
            {
                selectedItem = ExplorerItems.FirstOrDefault();
            }

            SelectedItem = selectedItem;
            SelectedItemBeforeExpanding = null;
        }
        private void RerangeDataSource(IOrderedEnumerable <ExplorerItem> sortedSource)
        {
            if (ExplorerItems == null)
            {
                return;
            }
            List <ExplorerItem> sortedItems = new List <ExplorerItem>();

            foreach (var item in sortedSource)
            {
                sortedItems.Add(item);
            }
            ExplorerItems.Clear();
            foreach (var item in sortedItems)
            {
                ExplorerItems.Add(item);
            }
        }
Beispiel #6
0
        private async void Button_RemoveDiskFolder_Click(object sender, RoutedEventArgs e)
        {
            MessageDialog confrimMsg = new MessageDialog(StringResources.ResourceLoader.GetString("RemoveFolderConfirmationContentString"), StringResources.ResourceLoader.GetString("RemoveFolderConfirmationTitleString"));

            confrimMsg.Commands.Add(new UICommand(StringResources.ResourceLoader.GetString("RemoveFolderConfirmationYesButtonString"), async(UICommandInvokedHandler) =>
            {
                MessageDialog msg = null;
                try
                {
                    if (itemGridView.SelectedItems == null || itemGridView.SelectedItems.Count == 0)
                    {
                        return;
                    }
                    while (itemGridView.SelectedItems.Count > 0)
                    {
                        if (ExplorerItems.Contains(itemGridView.SelectedItems[0] as ExplorerItem) && (itemGridView.SelectedItems[0] as ExplorerItem).StorageFolder != null)
                        {
                            await(itemGridView.SelectedItems[0] as ExplorerItem).StorageFolder.DeleteAsync();
                            ExplorerItems.Remove(itemGridView.SelectedItems[0] as ExplorerItem);
                        }
                        else if (ExplorerItems.Contains(itemGridView.SelectedItems[0] as ExplorerItem))
                        {
                            await(itemGridView.SelectedItems[0] as ExplorerItem).StorageFile.DeleteAsync();
                            ExplorerItems.Remove(itemGridView.SelectedItems[0] as ExplorerItem);
                        }
                    }
                    await InitializeNavigator();
                    BottomAppBar.IsOpen = false;
                }
                catch (Exception exp)
                {
                    msg = new MessageDialog(exp.Message + " ; " + (exp.InnerException == null ? "" : exp.InnerException.Message)
                                            + " ; " + (exp.InnerException.InnerException == null ? "" : exp.InnerException.InnerException.Message), "Remove denied");
                }
                if (msg != null)
                {
                    await msg.ShowAsync();
                }
            }));
            confrimMsg.Commands.Add(new UICommand(StringResources.ResourceLoader.GetString("RemoveFolderConfirmationNoButtonString")));
            await confrimMsg.ShowAsync();
        }
Beispiel #7
0
        public void Sort(SortMethod sortMethod)
        {
            switch (sortMethod)
            {
            case SortMethod.ByDateAsc:
                ExplorerItems = new ObservableCollection <IExplorerItem>(ExplorerItems.Where(x => x.IsPhysical).OrderBy(i => i.DateCreated));
                break;

            case SortMethod.ByDateDesc:
                ExplorerItems = new ObservableCollection <IExplorerItem>(ExplorerItems.Where(x => x.IsPhysical).OrderByDescending(i => i.DateCreated));
                break;

            case SortMethod.ByNameAsc:
                ExplorerItems = new ObservableCollection <IExplorerItem>(ExplorerItems.Where(x => x.IsPhysical).OrderBy(i => i.Name));
                break;

            case SortMethod.ByNameDesc:
                ExplorerItems = new ObservableCollection <IExplorerItem>(ExplorerItems.Where(x => x.IsPhysical).OrderByDescending(i => i.Name));
                break;
            }
        }