예제 #1
0
        /// <summary>
        /// Adds one or more tracks to an existing playlist in the catalog.
        /// </summary>

        private void AddTracksToPlaylist()
        {
            PersistentID playlistPID = controller.GetPersistentID(action.PlaylistOID);

            if (!playlistPID.IsEmpty)
            {
                PersistentIDCollection trackPIDs = new PersistentIDCollection();

                ObjectIDCollection trackOIDs = action.TrackOIDs;
                foreach (ObjectID trackOID in trackOIDs)
                {
                    PersistentID trackPID = controller.GetPersistentID(trackOID);
                    if (!trackPID.IsEmpty)
                    {
                        trackPID.TransientID = trackOID.TrackID;
                        trackPIDs.Add(trackPID);
                    }
                }

                if (trackPIDs.Count > 0)
                {
                    catalog.AddTracksToPlaylist(trackPIDs, playlistPID);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Removes a playlist from the catalog.
        /// </summary>

        private void RemovePlaylist()
        {
            PersistentIDCollection playlistPIDs = new PersistentIDCollection();

            foreach (Playlist playlist in controller.Playlists.Values)
            {
                if (playlist != null)
                {
                    playlistPIDs.Add(playlist.PersistentID);
                    playlist.Dispose();
                }
            }

            if (playlistPIDs.Count > 0)
            {
                catalog.RefreshPlaylists(playlistPIDs);
            }
        }