private void tracklist_Sorting(object sender, System.Windows.Controls.DataGridSortingEventArgs e) { switch (e.Column.Header.ToString()) { case "Songs": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Songs; break; case "Artist": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Artist; break; case "Album": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Album; break; case "Genre": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Genre; break; case "Bitrate": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Bitrate; break; case "": EnumerationsContainer.LibraryTrackFilter = TrackFilter.Rate; break; } e.Handled = true; if (CurrentSearchPackage != null) { TrackQuery.FindTracks(CurrentSearchPackage, Dispatcher); } else { var mySearchType = SearchType.trYear; if (Settings.Default.SearchSongs) { mySearchType |= SearchType.trTitle; } if (Settings.Default.SearchArtists) { mySearchType |= SearchType.trArtist; } if (Settings.Default.SearchAlbums) { mySearchType |= SearchType.trAlbum; } if (Settings.Default.SearchGenres) { mySearchType |= SearchType.trGenre; } TrackQuery.FindTracks( new SearchPackage { Data = "", SearchType = mySearchType }, Dispatcher); } }
private void TabSelectionChanged(object sender, SelectionChangedEventArgs e) { if (Tabs.SelectedIndex != prevTabIndex) { switch (Tabs.SelectedIndex) { case 0: if (trackPackage != CurrentSearchPackage) { TrackQuery.FindTracks(CurrentSearchPackage, Dispatcher); trackPackage = CurrentSearchPackage; } EnumerationsContainer.LibraryUi = LibraryUiMode.Songs; //Dispatcher.BeginInvoke(new Action(() => Scrolls(tracklist))); break; case 1: if (artPackage != CurrentSearchPackage) { ArtistQuery.FindArtists(CurrentSearchPackage, Dispatcher); artPackage = CurrentSearchPackage; artistList.RefreshUI(); } EnumerationsContainer.LibraryUi = LibraryUiMode.Artist; break; case 2: if (albPackage != CurrentSearchPackage) { AlbumQuery.FindAlbums(CurrentSearchPackage, Dispatcher); albPackage = CurrentSearchPackage; albumLst.RefreshUI(); } EnumerationsContainer.LibraryUi = LibraryUiMode.Album; break; case 3: if (genPackage != CurrentSearchPackage) { GenreQuery.FindGenres(CurrentSearchPackage, Dispatcher); albPackage = CurrentSearchPackage; genreLst.RefreshUI(); } EnumerationsContainer.LibraryUi = LibraryUiMode.Genre; break; } RefreshPlugs(); prevTabIndex = Tabs.SelectedIndex; } }