コード例 #1
0
        private void PlayMatchedArtist(iTunesApp itunes, String artist)
        {
            Logger.WriteLine("Playing Artist: " + artist);

            var pl = this.SetupAutomatedPlaylist(itunes);

            var tracks = new List <SamTrack>();

            // Rather than storing the handle (will be incorrect when itunes closes and is reopened, just find playlist by searching!
            foreach (IITTrack track_o in itunes.LibraryPlaylist.Tracks)
            {
                if (track_o.Kind != ITTrackKind.ITTrackKindFile)
                {
                    continue;
                }
                var track = new SamTrack(track_o);
                if (track._Artist != artist)
                {
                    continue;
                }
                tracks.Add(track);
            }
            if (tracks.Count > 0)
            {
                this.AddToPlaylist(pl, tracks.ToArray());
                this.PlayPlaylist(pl);
            }
            else
            {
                this.RefreshItunesData(itunes);
            }
        }
コード例 #2
0
        private void PlayMatchedSong(iTunesApp itunes, String song, String artist = null)
        {
            if (artist == null)
            {
                Logger.WriteLine("Playing Song: " + song);
            }
            else
            {
                Logger.WriteLine("Playing Song: " + song + ", by " + artist);
            }

            var pl = this.SetupAutomatedPlaylist(itunes);

            // Rather than storing the handle (will be incorrect when itunes closes and is reopened, just find playlist by searching!
            foreach (IITTrack track_o in itunes.LibraryPlaylist.Tracks)
            {
                if (track_o.Kind != ITTrackKind.ITTrackKindFile)
                {
                    continue;
                }
                if (track_o.Name != song)
                {
                    continue;
                }
                var track = new SamTrack(track_o);
                if (artist != null)
                {
                    if (track._Artist != artist)
                    {
                        continue;
                    }
                }

                this.AddToPlaylist(pl, track);
                this.PlayPlaylist(pl);
                return;
            }
            this.RefreshItunesData(itunes);
        }