private void LoadSpotlightViewModel(FavoritesView view) { const ImageType imageType = ImageType.Backdrop; var tileWidth = TileWidth * 2 + TilePadding; var tileHeight = tileWidth * 9 / 16; BackdropItems = view.SpotlightItems.OrderBy(i => Guid.NewGuid()).ToArray(); var images = view.SpotlightItems.Select(i => new ImageViewerImage { Url = ApiClient.GetImageUrl(i, new ImageOptions { Height = Convert.ToInt32(tileHeight), Width = Convert.ToInt32(tileWidth), ImageType = imageType }), Caption = i.Name, Item = i }).ToList(); SpotlightViewModel.Images.AddRange(images); SpotlightViewModel.StartRotating(8000); }
private void LoadMiniSpotlightsViewModel2(FavoritesView view) { Func <ItemListViewModel, Task <ItemsResult> > getItems = vm => { var items = view.MiniSpotlights.Skip(2).Take(3).ToArray(); return(Task.FromResult(new ItemsResult { TotalRecordCount = items.Length, Items = items })); }; MiniSpotlightsViewModel2 = new ItemListViewModel(getItems, PresentationManager, _imageManager, ApiClient, _navService, _playbackManager, _logger, _serverEvents) { ImageDisplayWidth = TileWidth, ImageDisplayHeightGenerator = v => TileHeight, DisplayNameGenerator = HomePageViewModel.GetDisplayName, EnableBackdropsForCurrentItem = false, ImageStretch = Stretch.UniformToFill, PreferredImageTypesGenerator = vm => new[] { ImageType.Backdrop }, DownloadImageAtExactSize = true }; OnPropertyChanged("MiniSpotlightsViewModel2"); }
private void LoadEpisodesViewModel(FavoritesView view) { EpisodesViewModel = new ItemListViewModel(vm => Task.FromResult(new ItemsResult { Items = view.Episodes.ToArray(), TotalRecordCount = view.Episodes.Count }), PresentationManager, _imageManager, ApiClient, _navService, _playbackManager, _logger, _serverEvents) { ImageDisplayWidth = TileWidth, ImageDisplayHeightGenerator = v => TileHeight, DisplayNameGenerator = HomePageViewModel.GetDisplayName, EnableBackdropsForCurrentItem = false, PreferredImageTypesGenerator = vm => new[] { ImageType.Primary } }; OnPropertyChanged("EpisodesViewModel"); ShowEpisodes = view.Episodes.Count > 0; }
private void LoadSongsViewModel(FavoritesView view) { var tileHeight = (TileHeight * 1.46) + TilePadding / 2; var tileWidth = tileHeight; SongsViewModel = new ItemListViewModel(vm => Task.FromResult(new ItemsResult { Items = view.Songs.ToArray(), TotalRecordCount = view.Songs.Count }), PresentationManager, _imageManager, ApiClient, _navService, _playbackManager, _logger, _serverEvents) { ImageDisplayWidth = tileWidth, ImageDisplayHeightGenerator = v => tileHeight, DisplayNameGenerator = HomePageViewModel.GetDisplayName, EnableBackdropsForCurrentItem = false, PreferredImageTypesGenerator = vm => new[] { ImageType.Primary }, ImageStretch = Stretch.UniformToFill }; OnPropertyChanged("SongsViewModel"); ShowSongs = view.Songs.Count > 0; }
private void LoadMiniSpotlightsViewModel2(FavoritesView view) { Func<ItemListViewModel, Task<ItemsResult>> getItems = vm => { var items = view.MiniSpotlights.Skip(2).Take(3).ToArray(); return Task.FromResult(new ItemsResult { TotalRecordCount = items.Length, Items = items }); }; MiniSpotlightsViewModel2 = new ItemListViewModel(getItems, PresentationManager, _imageManager, ApiClient, _navService, _playbackManager, _logger, _serverEvents) { ImageDisplayWidth = TileWidth, ImageDisplayHeightGenerator = v => TileHeight, DisplayNameGenerator = HomePageViewModel.GetDisplayName, EnableBackdropsForCurrentItem = false, ImageStretch = Stretch.UniformToFill, PreferredImageTypesGenerator = vm => new[] { ImageType.Backdrop }, DownloadImageAtExactSize = true }; OnPropertyChanged("MiniSpotlightsViewModel2"); }