Field field;
SortBy sort;
CSmartPlaylistRule::FIELD_TYPE type;
+ bool browseable;
int localizedString;
} translateField;
static const translateField fields[] = {
- { "none", FieldNone, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 231 },
- { "filename", FieldFilename, SortByFile, CSmartPlaylistRule::TEXT_FIELD, 561 },
- { "path", FieldPath, SortByPath, CSmartPlaylistRule::BROWSEABLE_FIELD, 573 },
- { "album", FieldAlbum, SortByAlbum, CSmartPlaylistRule::BROWSEABLE_FIELD, 558 },
- { "albumartist", FieldAlbumArtist, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 566 },
- { "artist", FieldArtist, SortByArtist, CSmartPlaylistRule::BROWSEABLE_FIELD, 557 },
- { "tracknumber", FieldTrackNumber, SortByTrackNumber, CSmartPlaylistRule::NUMERIC_FIELD, 554 },
- { "comment", FieldComment, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 569 },
- { "review", FieldReview, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 183 },
- { "themes", FieldThemes, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21895 },
- { "moods", FieldMoods, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 175 },
- { "styles", FieldStyles, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 176 },
- { "type", FieldAlbumType, SortByAlbumType, CSmartPlaylistRule::TEXT_FIELD, 564 },
- { "label", FieldMusicLabel, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21899 },
- { "title", FieldTitle, SortByTitle, CSmartPlaylistRule::BROWSEABLE_FIELD, 556 },
- { "sorttitle", FieldSortTitle, SortBySortTitle, CSmartPlaylistRule::TEXT_FIELD, 556 },
- { "year", FieldYear, SortByYear, CSmartPlaylistRule::BROWSEABLE_NUMERIC_FIELD, 562 },
- { "time", FieldTime, SortByTime, CSmartPlaylistRule::SECONDS_FIELD, 180 },
- { "playcount", FieldPlaycount, SortByPlaycount, CSmartPlaylistRule::NUMERIC_FIELD, 567 },
- { "lastplayed", FieldLastPlayed, SortByLastPlayed, CSmartPlaylistRule::DATE_FIELD, 568 },
- { "inprogress", FieldInProgress, SortByNone, CSmartPlaylistRule::BOOLEAN_FIELD, 575 },
- { "rating", FieldRating, SortByRating, CSmartPlaylistRule::NUMERIC_FIELD, 563 },
- { "votes", FieldVotes, SortByVotes, CSmartPlaylistRule::TEXT_FIELD, 205 },
- { "top250", FieldTop250, SortByTop250, CSmartPlaylistRule::NUMERIC_FIELD, 13409 },
- { "mpaarating", FieldMPAA, SortByMPAA, CSmartPlaylistRule::TEXT_FIELD, 20074 },
- { "dateadded", FieldDateAdded, SortByDateAdded, CSmartPlaylistRule::DATE_FIELD, 570 },
- { "genre", FieldGenre, SortByGenre, CSmartPlaylistRule::BROWSEABLE_FIELD, 515 },
- { "plot", FieldPlot, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 207 },
- { "plotoutline", FieldPlotOutline, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 203 },
- { "tagline", FieldTagline, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 202 },
- { "set", FieldSet, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 20457 },
- { "director", FieldDirector, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 20339 },
- { "actor", FieldActor, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 20337 },
- { "writers", FieldWriter, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 20417 },
- { "airdate", FieldAirDate, SortByYear, CSmartPlaylistRule::DATE_FIELD, 20416 },
- { "hastrailer", FieldTrailer, SortByNone, CSmartPlaylistRule::BOOLEAN_FIELD, 20423 },
- { "studio", FieldStudio, SortByStudio, CSmartPlaylistRule::BROWSEABLE_FIELD, 572 },
- { "country", FieldCountry, SortByCountry, CSmartPlaylistRule::BROWSEABLE_FIELD, 574 },
- { "tvshow", FieldTvShowTitle, SortByTvShowTitle, CSmartPlaylistRule::BROWSEABLE_FIELD, 20364 },
- { "status", FieldTvShowStatus, SortByTvShowStatus, CSmartPlaylistRule::TEXT_FIELD, 126 },
- { "season", FieldSeason, SortBySeason, CSmartPlaylistRule::NUMERIC_FIELD, 20373 },
- { "episode", FieldEpisodeNumber, SortByEpisodeNumber, CSmartPlaylistRule::NUMERIC_FIELD, 20359 },
- { "numepisodes", FieldNumberOfEpisodes, SortByNumberOfEpisodes, CSmartPlaylistRule::NUMERIC_FIELD, 20360 },
- { "numwatched", FieldNumberOfWatchedEpisodes, SortByNumberOfWatchedEpisodes, CSmartPlaylistRule::NUMERIC_FIELD, 21457 },
- { "videoresolution", FieldVideoResolution, SortByVideoResolution, CSmartPlaylistRule::NUMERIC_FIELD, 21443 },
- { "videocodec", FieldVideoCodec, SortByVideoCodec, CSmartPlaylistRule::TEXTIN_FIELD, 21445 },
- { "videoaspect", FieldVideoAspectRatio, SortByVideoAspectRatio, CSmartPlaylistRule::NUMERIC_FIELD, 21374 },
- { "audiochannels", FieldAudioChannels, SortByAudioChannels, CSmartPlaylistRule::NUMERIC_FIELD, 21444 },
- { "audiocodec", FieldAudioCodec, SortByAudioCodec, CSmartPlaylistRule::TEXTIN_FIELD, 21446 },
- { "audiolanguage", FieldAudioLanguage, SortByAudioLanguage, CSmartPlaylistRule::TEXTIN_FIELD, 21447 },
- { "subtitlelanguage", FieldSubtitleLanguage, SortBySubtitleLanguage, CSmartPlaylistRule::TEXTIN_FIELD, 21448 },
- { "random", FieldRandom, SortByRandom, CSmartPlaylistRule::TEXT_FIELD, 590 },
- { "playlist", FieldPlaylist, SortByPlaylistOrder, CSmartPlaylistRule::PLAYLIST_FIELD, 559 },
- { "tag", FieldTag, SortByNone, CSmartPlaylistRule::BROWSEABLE_FIELD, 20459 },
- { "instruments", FieldInstruments, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21892 },
- { "biography", FieldBiography, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21887 },
- { "born", FieldBorn, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21893 },
- { "bandformed", FieldBandFormed, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21894 },
- { "disbanded", FieldDisbanded, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21896 },
- { "died", FieldDied, SortByNone, CSmartPlaylistRule::TEXT_FIELD, 21897 }
+ { "none", FieldNone, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 231 },
+ { "filename", FieldFilename, SortByFile, CSmartPlaylistRule::TEXT_FIELD, false, 561 },
+ { "path", FieldPath, SortByPath, CSmartPlaylistRule::TEXT_FIELD, true, 573 },
+ { "album", FieldAlbum, SortByAlbum, CSmartPlaylistRule::TEXT_FIELD, true, 558 },
+ { "albumartist", FieldAlbumArtist, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 566 },
+ { "artist", FieldArtist, SortByArtist, CSmartPlaylistRule::TEXT_FIELD, true, 557 },
+ { "tracknumber", FieldTrackNumber, SortByTrackNumber, CSmartPlaylistRule::NUMERIC_FIELD, false, 554 },
+ { "comment", FieldComment, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 569 },
+ { "review", FieldReview, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 183 },
+ { "themes", FieldThemes, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21895 },
+ { "moods", FieldMoods, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 175 },
+ { "styles", FieldStyles, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 176 },
+ { "type", FieldAlbumType, SortByAlbumType, CSmartPlaylistRule::TEXT_FIELD, false, 564 },
+ { "label", FieldMusicLabel, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21899 },
+ { "title", FieldTitle, SortByTitle, CSmartPlaylistRule::TEXT_FIELD, true, 556 },
+ { "sorttitle", FieldSortTitle, SortBySortTitle, CSmartPlaylistRule::TEXT_FIELD, false, 556 },
+ { "year", FieldYear, SortByYear, CSmartPlaylistRule::NUMERIC_FIELD, true, 562 },
+ { "time", FieldTime, SortByTime, CSmartPlaylistRule::SECONDS_FIELD, false, 180 },
+ { "playcount", FieldPlaycount, SortByPlaycount, CSmartPlaylistRule::NUMERIC_FIELD, false, 567 },
+ { "lastplayed", FieldLastPlayed, SortByLastPlayed, CSmartPlaylistRule::DATE_FIELD, false, 568 },
+ { "inprogress", FieldInProgress, SortByNone, CSmartPlaylistRule::BOOLEAN_FIELD, false, 575 },
+ { "rating", FieldRating, SortByRating, CSmartPlaylistRule::NUMERIC_FIELD, false, 563 },
+ { "votes", FieldVotes, SortByVotes, CSmartPlaylistRule::TEXT_FIELD, false, 205 },
+ { "top250", FieldTop250, SortByTop250, CSmartPlaylistRule::NUMERIC_FIELD, false, 13409 },
+ { "mpaarating", FieldMPAA, SortByMPAA, CSmartPlaylistRule::TEXT_FIELD, false, 20074 },
+ { "dateadded", FieldDateAdded, SortByDateAdded, CSmartPlaylistRule::DATE_FIELD, false, 570 },
+ { "genre", FieldGenre, SortByGenre, CSmartPlaylistRule::TEXT_FIELD, true, 515 },
+ { "plot", FieldPlot, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 207 },
+ { "plotoutline", FieldPlotOutline, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 203 },
+ { "tagline", FieldTagline, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 202 },
+ { "set", FieldSet, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 20457 },
+ { "director", FieldDirector, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 20339 },
+ { "actor", FieldActor, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 20337 },
+ { "writers", FieldWriter, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 20417 },
+ { "airdate", FieldAirDate, SortByYear, CSmartPlaylistRule::DATE_FIELD, false, 20416 },
+ { "hastrailer", FieldTrailer, SortByNone, CSmartPlaylistRule::BOOLEAN_FIELD, false, 20423 },
+ { "studio", FieldStudio, SortByStudio, CSmartPlaylistRule::TEXT_FIELD, true, 572 },
+ { "country", FieldCountry, SortByCountry, CSmartPlaylistRule::TEXT_FIELD, true, 574 },
+ { "tvshow", FieldTvShowTitle, SortByTvShowTitle, CSmartPlaylistRule::TEXT_FIELD, true, 20364 },
+ { "status", FieldTvShowStatus, SortByTvShowStatus, CSmartPlaylistRule::TEXT_FIELD, false, 126 },
+ { "season", FieldSeason, SortBySeason, CSmartPlaylistRule::NUMERIC_FIELD, false, 20373 },
+ { "episode", FieldEpisodeNumber, SortByEpisodeNumber, CSmartPlaylistRule::NUMERIC_FIELD, false, 20359 },
+ { "numepisodes", FieldNumberOfEpisodes, SortByNumberOfEpisodes, CSmartPlaylistRule::NUMERIC_FIELD, false, 20360 },
+ { "numwatched", FieldNumberOfWatchedEpisodes, SortByNumberOfWatchedEpisodes, CSmartPlaylistRule::NUMERIC_FIELD, false, 21457 },
+ { "videoresolution", FieldVideoResolution, SortByVideoResolution, CSmartPlaylistRule::NUMERIC_FIELD, false, 21443 },
+ { "videocodec", FieldVideoCodec, SortByVideoCodec, CSmartPlaylistRule::TEXTIN_FIELD, false, 21445 },
+ { "videoaspect", FieldVideoAspectRatio, SortByVideoAspectRatio, CSmartPlaylistRule::NUMERIC_FIELD, false, 21374 },
+ { "audiochannels", FieldAudioChannels, SortByAudioChannels, CSmartPlaylistRule::NUMERIC_FIELD, false, 21444 },
+ { "audiocodec", FieldAudioCodec, SortByAudioCodec, CSmartPlaylistRule::TEXTIN_FIELD, false, 21446 },
+ { "audiolanguage", FieldAudioLanguage, SortByAudioLanguage, CSmartPlaylistRule::TEXTIN_FIELD, false, 21447 },
+ { "subtitlelanguage", FieldSubtitleLanguage, SortBySubtitleLanguage, CSmartPlaylistRule::TEXTIN_FIELD, false, 21448 },
+ { "random", FieldRandom, SortByRandom, CSmartPlaylistRule::TEXT_FIELD, false, 590 },
+ { "playlist", FieldPlaylist, SortByPlaylistOrder, CSmartPlaylistRule::PLAYLIST_FIELD, false, 559 },
+ { "tag", FieldTag, SortByNone, CSmartPlaylistRule::TEXT_FIELD, true, 20459 },
+ { "instruments", FieldInstruments, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21892 },
+ { "biography", FieldBiography, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21887 },
+ { "born", FieldBorn, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21893 },
+ { "bandformed", FieldBandFormed, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21894 },
+ { "disbanded", FieldDisbanded, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21896 },
+ { "died", FieldDied, SortByNone, CSmartPlaylistRule::TEXT_FIELD, false, 21897 }
};
#define NUM_FIELDS sizeof(fields) / sizeof(translateField)
return TEXT_FIELD;
}
+bool CSmartPlaylistRule::IsFieldBrowseable(Field field)
+{
+ for (unsigned int i = 0; i < NUM_FIELDS; i++)
+ if (field == fields[i].field) return fields[i].browseable;
+
+ return false;
+}
+
vector<Field> CSmartPlaylistRule::GetFields(const CStdString &type)
{
vector<Field> fields;