public void add_song_to_album(WMPLib.IWMPMedia media_item) { if (albumYear == "" || albumYear.Length < 4) albumYear = media_item.getItemInfo("WM/OriginalReleaseYear"); if (albumYear == "" || albumYear.Length < 4) albumYear = media_item.getItemInfo("WM/Year"); genre = media_item.getItemInfo("WM/Genre"); albumGenre_add(genre); if (albumImage.Length == 0) findAlbumCover(media_item.sourceURL); albumTrackCount++; artistTrackCount++; trackCount++; song = media_item.getItemInfo("Title"); songLocation = media_item.sourceURL; songTrackNumber = media_item.getItemInfo("WM/TrackNumber"); songLength = media_item.durationString; string s = media_item.getItemInfo("WM/AlbumTitle"); if (album != s) nextAlbum = s; s = media_item.getItemInfo("WM/AlbumArtist"); if (s == "") s = media_item.getItemInfo("Author"); if (artist != s) nextArtist = s; return; }
private OpResult do_detailed_list(OpResult or, WMPLib.IWMPMedia media_item, int idx, string template) { string artist = ""; string album = ""; string letter = ""; bool added = false; int index = idx; if (index < 0) index = the_state.trackCount; if (media_item != null) { artist = media_item.getItemInfo("WM/AlbumArtist"); if (artist == "") artist = media_item.getItemInfo("Author"); album = media_item.getItemInfo("WM/AlbumTitle"); letter = first_letter(artist); } // End of artist? if (artist != the_state.artist) { if (the_state.album.Length > 0) { var s_out = replacer(getTemplate(template + ".Album-", DEFAULT_DETAIL_ALBUM_END), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } if (the_state.artist.Length > 0) { var s_out = replacer(getTemplate(template + ".Artist-", DEFAULT_DETAIL_ARTIST_END), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } // End of current aplha? if (letter != the_state.letter && the_state.letter.Length == 1) { var s_out = replacer(getTemplate(template + ".Alpha-", ""), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } if (index >= 0) { the_state.resetArtist(artist); the_state.resetAlbum(album); } if (media_item != null) { the_state.add_song_to_album(media_item); added = true; // Start new aplha? if (letter != the_state.letter) { the_state.letter = letter; var s_out = replacer(getTemplate(template + ".Alpha+", ""), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } // Start new artist if (the_state.artist.Length > 0) { var s_out = replacer(getTemplate(template + ".Artist+", DEFAULT_DETAIL_ARTIST_START), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } // Start new album if (the_state.album.Length > 0) { var s_out = replacer(getTemplate(template + ".Album+", DEFAULT_DETAIL_ALBUM_START), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } } } // End of album? else if (album != the_state.album) { if (the_state.album.Length > 0) { var s_out = replacer(getTemplate(template + ".Album-", DEFAULT_DETAIL_ALBUM_END), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } if (index >= 0) the_state.resetAlbum(album); if (media_item != null) { the_state.add_song_to_album(media_item); added = true; if (the_state.album.Length > 0) { var s_out = replacer(getTemplate(template + ".Album+", DEFAULT_DETAIL_ALBUM_START), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } } } // Do track: if (media_item != null) { if (!added) the_state.add_song_to_album(media_item); var s_out = replacer(getTemplate(template + ".Entry", DEFAULT_DETAIL_SONG), index); if (s_out.Length > 0) or.AppendFormat("{0}", s_out); } return or; }
public OpResult getPhoto(WMPLib.IWMPMedia photo, int r_w, int r_h, int r_s, int r_l) { string filename = photo.getItemInfo("SourceURL"); string filetype = ""; try { filetype = photo.getItemInfo("FileType"); } catch (Exception) { filetype = "jpeg"; } return getPhoto(filename, filetype, r_w, r_h, r_s, r_l); }