示例#1
0
        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);
            }
        }
示例#2
0
        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;
            }
        }