summaryrefslogtreecommitdiff
path: root/apps/tagcache.c
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2007-04-12 20:14:05 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2007-04-12 20:14:05 +0000
commit9d9937a0ad64018a7e8beb503f7207696e694856 (patch)
tree33b8686cb06727fd7012917dd75cd1e8dcc6780f /apps/tagcache.c
parentec88dffb6cde1b0e88c813e1676c8e989668fd9b (diff)
downloadrockbox-9d9937a0ad64018a7e8beb503f7207696e694856.tar.gz
rockbox-9d9937a0ad64018a7e8beb503f7207696e694856.zip
Added virtual tags in database to break track length to minutes and seconds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13132 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/tagcache.c')
-rw-r--r--apps/tagcache.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/tagcache.c b/apps/tagcache.c
index 7a1fec75af..c22091ecf5 100644
--- a/apps/tagcache.c
+++ b/apps/tagcache.c
@@ -116,6 +116,7 @@ static const int unique_tags[] = { tag_artist, tag_album, tag_genre,
116/* Numeric tags (we can use these tags with conditional clauses). */ 116/* Numeric tags (we can use these tags with conditional clauses). */
117static const int numeric_tags[] = { tag_year, tag_tracknumber, tag_length, 117static const int numeric_tags[] = { tag_year, tag_tracknumber, tag_length,
118 tag_bitrate, tag_playcount, tag_rating, tag_playtime, tag_lastplayed, tag_commitid, 118 tag_bitrate, tag_playcount, tag_rating, tag_playtime, tag_lastplayed, tag_commitid,
119 tag_virt_length_min, tag_virt_length_sec,
119 tag_virt_entryage, tag_virt_autoscore }; 120 tag_virt_entryage, tag_virt_autoscore };
120 121
121/* String presentation of the tags defined in tagcache.h. Must be in correct order! */ 122/* String presentation of the tags defined in tagcache.h. Must be in correct order! */
@@ -659,6 +660,14 @@ static long check_virtual_tags(int tag, const struct index_entry *idx)
659 660
660 switch (tag) 661 switch (tag)
661 { 662 {
663 case tag_virt_length_sec:
664 data = (idx->tag_seek[tag_length]/1000) % 60;
665 break;
666
667 case tag_virt_length_min:
668 data = (idx->tag_seek[tag_length]/1000) / 60;
669 break;
670
662 case tag_virt_autoscore: 671 case tag_virt_autoscore:
663 if (idx->tag_seek[tag_length] == 0 672 if (idx->tag_seek[tag_length] == 0
664 || idx->tag_seek[tag_playcount] == 0) 673 || idx->tag_seek[tag_playcount] == 0)