Esempio n. 1
0
        private void AddTrackToPlaylist(DependencyObject originalSource, AddTracksToPlaylistType addToPlaylistType)
        {
            if (currentTrack != null)
            {
                List <int> trackIds = new List <int>();
                trackIds.Add(currentTrack.ID);

                HitbaseCommands.AddTracksToPlaylist.Execute(new AddTracksToPlaylistParameter()
                {
                    TrackIds = trackIds, AddTracksType = addToPlaylistType
                }, Application.Current.MainWindow);

                RequestClose();
                return;
            }

            if (!string.IsNullOrEmpty(lastPlayingFilename))
            {
                List <string> filenames = new List <string>();
                filenames.Add(lastPlayingFilename);

                HitbaseCommands.AddTracksToPlaylist.Execute(new AddTracksToPlaylistParameter()
                {
                    Filenames = filenames, AddTracksType = addToPlaylistType
                }, Application.Current.MainWindow);

                RequestClose();
            }
        }
Esempio n. 2
0
 private void AddTracksFromSearchResult(List <string> filenames, AddTracksToPlaylistType addTracksToPlaylistType)
 {
     HitbaseCommands.AddTracksToPlaylist.Execute(
         new AddTracksToPlaylistParameter()
     {
         Filenames = filenames, AddTracksType = addTracksToPlaylistType
     }, this);
 }
Esempio n. 3
0
        private void AddTracksFromSearchResult(string filename, AddTracksToPlaylistType addTracksToPlaylistType)
        {
            List <string> filenames = new List <string>();

            filenames.Add(filename);

            AddTracksFromSearchResult(filenames, addTracksToPlaylistType);
        }
Esempio n. 4
0
        private void AddTracksFromSearchResult(AddTracksToPlaylistType addTracksToPlaylistType)
        {
            List <string> filenames = new List <string>();

            foreach (MyMusicListItem item in dataGrid.SelectedItems)
            {
                string soundfile = DataBase.GetSoundfileByTrackId(item.ID);
                filenames.Add(soundfile);
            }

            AddTracksFromSearchResult(filenames, addTracksToPlaylistType);
        }
Esempio n. 5
0
        public void AddTracks(string[] filenames, AddTracksToPlaylistType addToPlaylistType, int addPosition = 0)
        {
            int count             = 0;
            int playNowFirstTrack = -1;

            foreach (string filename in filenames)
            {
                switch (addToPlaylistType)
                {
                case AddTracksToPlaylistType.None:
                    break;

                case AddTracksToPlaylistType.Now:
                {
                    AddTrack(filename, CurrentTrack + count + 1);

                    if (playNowFirstTrack < 0)
                    {
                        playNowFirstTrack = CurrentTrack + 1;
                    }

                    break;
                }

                case AddTracksToPlaylistType.Next:
                    AddTrack(filename, CurrentTrack + count + 1);
                    break;

                case AddTracksToPlaylistType.End:
                    AddTrack(filename);
                    break;

                case AddTracksToPlaylistType.InsertAtIndex:
                    AddTrack(filename, addPosition + count);
                    break;

                default:
                    break;
                }

                count++;
            }

            if (addToPlaylistType == AddTracksToPlaylistType.Now)
            {
                CurrentTrack = playNowFirstTrack;
            }
        }
Esempio n. 6
0
        private void AddTrackFromSearchResult(DependencyObject originalSource, AddTracksToPlaylistType addToPlaylistType)
        {
            Big3.Hitbase.DataBaseEngine.Track track = GetTrack(originalSource);

            List <int> trackIds = new List <int>();

            trackIds.Add(track.ID);
            HitbaseCommands.AddTracksToPlaylist.Execute(
                new AddTracksToPlaylistParameter()
            {
                TrackIds = trackIds, AddTracksType = addToPlaylistType
            }, this);

            /*if (track != null)
             * {
             *  AddTracksToPlaylist(new string[] { track.Soundfile }, addToPlaylistType);
             * }*/
        }
Esempio n. 7
0
        private void AddTracksFromSearchResult(object sender, AddTracksToPlaylistType addTracksToPlaylistType)
        {
            MenuItem mi = sender as MenuItem;

            ListBox listBox = mi.DataContext as ListBox;

            List <int> trackIds = new List <int>();

            foreach (Track track in listBox.SelectedItems)
            {
                trackIds.Add(track.ID);
            }

            HitbaseCommands.AddTracksToPlaylist.Execute(
                new AddTracksToPlaylistParameter()
            {
                TrackIds = trackIds, AddTracksType = addTracksToPlaylistType
            }, this);
        }
Esempio n. 8
0
        private void AddToPlaylist(int trackId, AddTracksToPlaylistType addtoPlaylistType)
        {
            AddCDTracksToPlaylistParameter addTracksParams = new AddCDTracksToPlaylistParameter();

            addTracksParams.AddTracksType = addtoPlaylistType;
            addTracksParams.PlayTrackId   = trackId;

            for (int i = 0; i < this.CD.Tracks.Count; i++)
            {
                if (this.CD.Type == AlbumType.AudioCD)
                {
                    this.CD.Tracks[i].CDDriveLetter = CDEngine.DriveLetter;
                }
                addTracksParams.Tracks.Add(this.CD.Tracks[i]);
            }

            addTracksParams.ClearPlaylist = true;
            addTracksParams.CD            = this.CD;
            Big3.Hitbase.SharedResources.HitbaseCommands.AddTracksToPlaylist.Execute(addTracksParams, Application.Current.MainWindow);
        }
Esempio n. 9
0
        public void AddTracks(DataBase db, Big3.Hitbase.DataBaseEngine.Track[] tracks, AddTracksToPlaylistType addToPlaylistType, int addPosition = 0, bool addCD = false, int autoPlayIndex = 0)
        {
            if (this.IsCDInPlaylist && !addCD)
            {
                return;
            }

            int count = 0;

            int startTrack = Math.Max(0, CurrentTrack);

            if (!IsPlaying && addToPlaylistType == AddTracksToPlaylistType.Next)
            {
                startTrack = -1;
            }

            int playNowFirstTrack = -1;

            foreach (Big3.Hitbase.DataBaseEngine.Track track in tracks)
            {
                switch (addToPlaylistType)
                {
                case AddTracksToPlaylistType.None:
                    break;

                case AddTracksToPlaylistType.Now:
                    AddTrack(db, track, startTrack + count, addCD);
                    if (playNowFirstTrack < 0 && count == autoPlayIndex)
                    {
                        playNowFirstTrack = startTrack + count;
                    }

                    break;

                case AddTracksToPlaylistType.Next:
                    AddTrack(db, track, startTrack + count + 1, addCD);
                    break;

                case AddTracksToPlaylistType.End:
                    AddTrack(db, track, -1, addCD);
                    break;

                case AddTracksToPlaylistType.InsertAtIndex:
                    AddTrack(db, track, addPosition + count, addCD);
                    break;

                default:
                    break;
                }

                count++;
            }

            if (addToPlaylistType == AddTracksToPlaylistType.Now)
            {
                CurrentTrack = playNowFirstTrack;
            }

            this.IsCDInPlaylist = addCD;
        }