Exemplo n.º 1
0
        public async Task <IReadOnlyList <FolderListItem> > GetItemList()
        {
            List <string> tokenList = StorageHistoryManager.GetTokenList(StorageHistoryManager.DataType.Folder);

            Size thumSize = await FolderListItem.GetThumSizeFromWindow();

            int fontSize = FolderListItem.GetFontSizeFromThumImage((int)thumSize.Width);
            List <FolderListItem> itemList = new List <FolderListItem>();

            foreach (string token in tokenList)
            {
                if (!StorageApplicationPermissions.FutureAccessList.ContainsItem(token))
                {
                    continue;
                }
                IStorageItem storageItem = await getItemAsync(token);

                if (storageItem == null)
                {
                    continue;
                }

                if (storageItem.IsOfType(StorageItemTypes.Folder))
                {
                    itemList.Add(new FolderListItem()
                    {
                        Name       = storageItem.Name,
                        Path       = storageItem.Path,
                        Token      = token,
                        Type       = FolderListItem.FileType.Folder,
                        ThumWidth  = (int)thumSize.Width,
                        ThumHeight = (int)thumSize.Height,
                        TextSize   = fontSize,
                    });
                }
                else
                {
                    itemList.Add(new FolderListItem()
                    {
                        Name       = storageItem.Name,
                        Path       = storageItem.Path,
                        Token      = token,
                        Type       = FolderListItem.GetFileTypeFromStorage((StorageFile)storageItem),
                        ThumWidth  = (int)thumSize.Width,
                        ThumHeight = (int)thumSize.Height,
                        TextSize   = fontSize,
                    });
                }
            }

            return(itemList);
        }
Exemplo n.º 2
0
        private async Task <IStorageItem> getItemAsync(string token)
        {
            IStorageItem storageItem = null;

            try
            {
                storageItem = await StorageApplicationPermissions.FutureAccessList.GetItemAsync(token);
            }
            catch (Exception e)
            {
                StorageHistoryManager.RemoveStorage(token, StorageHistoryManager.DataType.Bookshelf);
                Debug.WriteLine("BookItemNavigateParameter#getItemAsync 読み込み失敗 e=" + e.Message);
                return(null);
            }

            return(storageItem);
        }
Exemplo n.º 3
0
        private async Task <IStorageItem> getItemAsync(string token)
        {
            IStorageItem storageItem = null;

            try
            {
                storageItem = await StorageApplicationPermissions.MostRecentlyUsedList.GetItemAsync(token);
            }
            catch (Exception e)
            {
                StorageHistoryManager.RemoveStorage(token, StorageHistoryManager.DataType.Latest);
                Debug.WriteLine("QuickAccessNavigateParameter#getItemAsync 読み込み失敗 e=" + e.Message);
                return(null);
            }

            return(storageItem);
        }