Commit graph

90 commits

Author SHA1 Message Date
Jonathan Gordon
156b0bc614 Add the option of linking the %Tl (last touch) tag to a specific touchregion. Both tags now accept an optional label param as the first param.
%Tl([label,][timeout])
%T([label,] x, y, width, height, action)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29459 a1c6a512-1295-4272-9138-f99709370657
2011-02-28 11:19:59 +00:00
Andree Buschmann
71ceac0b74 FS#11964. Rework replaygain handling to save metadata buffer and binsize. Remove string representation of replaygain and use a dedicated ftoa implementation for WPS/screen info.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29388 a1c6a512-1295-4272-9138-f99709370657
2011-02-24 19:10:59 +00:00
Michael Sevakis
edfff8a5ef audio_peek_track should copy the struct mp3entry instead of pointing directly into the buffer. Despite the dire warning, caller does in fact yield/sleep and its usage is too nonlocalized to control that reliably.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29275 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 10:26:07 +00:00
Jonathan Gordon
ded64f1db5 here too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29045 a1c6a512-1295-4272-9138-f99709370657
2011-01-13 07:00:56 +00:00
Jonathan Gordon
261c56ba59 FS#11867 - Add 2 new tags to allow skins to display themed peakmeters
%pL for the left channel, %pR for the right channel... usable as a value, conditional or bar (exactly the same as %pv/%bl/etc)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29043 a1c6a512-1295-4272-9138-f99709370657
2011-01-13 06:48:39 +00:00
Jonathan Gordon
5d274e528c Hopefully fix a crash using %if() with strings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28689 a1c6a512-1295-4272-9138-f99709370657
2010-11-28 03:42:15 +00:00
Jonathan Gordon
1ce7ba4931 Make the %tr (radio RSSI) tag work as a bar tag or as a conditional.
As a conditional it scales its value to the number of options you give it (like volume)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28613 a1c6a512-1295-4272-9138-f99709370657
2010-11-18 11:47:42 +00:00
Bertrik Sikken
de870b3ee0 Signal strength meter for FM radio - FS#8151 by Przemysław Hołubowski
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28559 a1c6a512-1295-4272-9138-f99709370657
2010-11-11 21:13:29 +00:00
Jonathan Gordon
943de3ce49 skin_parser: Change the way hardware conditionals are done (i.e %?cc)
They now only parse the correct branch (so only the true branch, or only the false branch). This shuold allow you to load different images/backdrops with the same id's depending on the targets hardware.

Add a new %Tp - "touchscreen present?" tag to check if the target has a touchscreen

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28370 a1c6a512-1295-4272-9138-f99709370657
2010-10-28 11:00:36 +00:00
Bertrik Sikken
9c58356e88 Make two local functions static in skin_tokens.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28290 a1c6a512-1295-4272-9138-f99709370657
2010-10-16 21:26:23 +00:00
Frank Gevaerts
1f0ab7c9e6 Fix charcell %pb and %pf tags, FS#11592
This also moves draw_player_fullbar() and draw_player_progress() from skin_display.c to skin_tokens.c. Charcell is a bit different from bitmap here because drawing a progress bar is a combination of setting up the LCD controller (custom characters) and providing a format string. The custom character definition might fit in skin_display.c, but the format strings are needed in skin_tokens.c. Putting these functions in skin_tokens.c seemed to fit better.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28241 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 23:46:15 +00:00
Teruaki Kawashima
55a63609ef use correct condition for #if for tagcache_fill_tags().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28188 a1c6a512-1295-4272-9138-f99709370657
2010-09-30 13:09:50 +00:00
Magnus Holmgren
927a7bdb4b Make sure get_lif_token_value isn't inlined, as it would defeat the purpose of introducing that function. E.g., gcc 3.4.6 for m68k is keen on inlining code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28172 a1c6a512-1295-4272-9138-f99709370657
2010-09-26 11:58:58 +00:00
Jonathan Gordon
562437b8e7 Fix FS#1159 - stack overflow in the skin engine when there is too many nested conditionals
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28167 a1c6a512-1295-4272-9138-f99709370657
2010-09-26 06:43:33 +00:00
Frank Gevaerts
f366090562 Make disabling HAVE_PITCHSCREEN actually work without breaking the build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28102 a1c6a512-1295-4272-9138-f99709370657
2010-09-17 20:28:47 +00:00
Jonathan Gordon
10b6861bfd fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28094 a1c6a512-1295-4272-9138-f99709370657
2010-09-16 14:01:43 +00:00
Jonathan Gordon
fbb008331d skin engine: completly rework the sbs title handing code
This hopefully fixes the remaining data aborts and freezes when loading skins caused by the somewhat nasty list/sbs title handling code.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28093 a1c6a512-1295-4272-9138-f99709370657
2010-09-16 12:56:51 +00:00
Jonathan Gordon
71379cafb1 fix errors, warnings, tabs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28075 a1c6a512-1295-4272-9138-f99709370657
2010-09-14 12:21:56 +00:00
Jonathan Gordon
9928e3418f Another major skin backend update/hopefully bugfix:
Skins are now more self contained in the skin manager which in the future might allow on demand skin loading (i.e smaller skin buffers)
Skin backdrops are also managed more intelegently (fixes a bug where you can get a crazy backdrop loaded if a .sbs fails to load)

the rockbox_default rescue theme is now called rockbox_failsafe to better express what it actually is.

This commit hopefully/maybe fixes the heavily reported data aborts, so please check if you are getting them

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28073 a1c6a512-1295-4272-9138-f99709370657
2010-09-14 11:56:50 +00:00
Bertrik Sikken
a290ce4222 tcc77x targets: various minor cleanups
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27913 a1c6a512-1295-4272-9138-f99709370657
2010-08-28 10:17:19 +00:00
Jonathan Gordon
74ec011bb8 New skin tag: %if(<tag>, <operator>, <operand> [,option count]) which lets you do very simple logical comparissons on other tags.
<tag> is the tag to check against
<operator> is the comparisson to do, any one of... =, !=, >, >=, <, <=    (when comparring against a string tag like %ia only = and != work, and it is done NOT case sensitive)
<operand> is either another tag, a number, or text.
[option count] is an optinal number to use for the few tags which scale to the amount of options when used as a conditional (i.e %?pv<a|b|c|d> would have 4 options)

example: %?if(%pv, >=, 0)<Warning.. volume clipping|coool...>
That says "If the value from %pv (volume) is greater than or equal to 0 then display the warning line, otherwise the cool line."
%?if(%ia, =, %Ia)<same artist>   <= this artist and next artist are the same.

some tags might need a touch of tweaking to work better with this. experiment and have fun

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27846 a1c6a512-1295-4272-9138-f99709370657
2010-08-19 13:49:32 +00:00
Jonathan Gordon
b9093f22dd fix warnings and errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27815 a1c6a512-1295-4272-9138-f99709370657
2010-08-14 15:23:07 +00:00
Jonathan Gordon
dc3778a685 Rework the skin playlist viewer so it uses the same drawing code as everything else. This should mean that all text tags now work as expected. The 2nd code param is no longer needed so drop it (you can use conditionals and sublines and stuff in the one code param.
example: %Vp(1, %?it<%in -%it|%fn>) <- show the next tracks strating from the first next track and show info if it is avilable or the filename.
Basic cuesheet support here, and will load upcoming track tags from the database if you have load to ram enabled.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27814 a1c6a512-1295-4272-9138-f99709370657
2010-08-14 15:17:59 +00:00
Magnus Holmgren
c6078fe2a8 Slightly change bl (battery level) when used in an enum: if the enum contained 10 items, bl would return 11 if the battery level was 100 percent (the enum would then display the last entry). Now bl returns a value within the given range. Themes may need to be updated to look as intended.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27784 a1c6a512-1295-4272-9138-f99709370657
2010-08-12 09:25:26 +00:00
Jonathan Gordon
52e67f3366 woopsies
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27651 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 10:48:27 +00:00
Jonathan Gordon
bb45110de2 woopsies
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27650 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 10:43:29 +00:00
Jonathan Gordon
6dc4d65aa1 FS#11507 - fix 'track starting/ending' tags, and minor timeout cleanup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27649 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 10:40:29 +00:00
Jonathan Gordon
e63e19b507 Fix Database red, move the cuesheet->token code into the skin engine
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27616 a1c6a512-1295-4272-9138-f99709370657
2010-07-29 13:23:33 +00:00
Jonathan Gordon
2d31d77a8b FS#11470 - new skin code, finally svn uses the new parser from the theme editor. This means that a skin that passes the editor WILL pass svn and checkwps (unless the target runs out of skin buffer or something.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27613 a1c6a512-1295-4272-9138-f99709370657
2010-07-29 12:37:48 +00:00
Jonathan Gordon
f98ea7142e FS#11096 - fix the "last touch" tag from being true on boot
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26852 a1c6a512-1295-4272-9138-f99709370657
2010-06-15 06:55:18 +00:00
Jonathan Gordon
b8d98fcc19 Change cuesheet handling so the id3 info is not spoofed anymore. If something wants the subtracks info it is easy to get to. This makes next track display in the skins show the next subtrack if we are in a cuesheet
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26611 a1c6a512-1295-4272-9138-f99709370657
2010-06-06 06:28:40 +00:00
Jonathan Gordon
dda102ed4a fix the %Ti (preset index) not working with conditionls correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26246 a1c6a512-1295-4272-9138-f99709370657
2010-05-24 09:18:03 +00:00
Teruaki Kawashima
7042d9516b skin_tokne.c: move WPS_TOKEN_TRACK_STARTING and WPS_TOKEN_TRACK_ENDING to get_id3_token().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26193 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 13:41:22 +00:00
Alexander Levin
53a858b36c Rearrange statements for a small binsize reduction; delete unneeded braces
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26089 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 15:05:58 +00:00
Jonathan Gordon
7d5e0d7375 FS#11263 - Radio Art support! %C and %Cl tags work in the radio screen and Base Skin when the radio is running.
put your station images in .rockbox/fmpresets/<preset name>.bmp or .jpg. Must be in preset mode and the preset name must match the filename


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26078 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 11:13:42 +00:00
Alexander Levin
edb6bedddb Format FM frequency depending on the regional settings (FS#11273)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26069 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 21:47:30 +00:00
Alexander Levin
230f0405eb Correct detection of the absence of the current preset
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25990 a1c6a512-1295-4272-9138-f99709370657
2010-05-13 08:36:38 +00:00
Alexander Levin
6e294e2fc6 Avoid duplicated code, create a formatting function for FM frequency
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25973 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 21:44:24 +00:00
Jonathan Gordon
a5d8d21596 fix the last of the reds, and make RDS tags actually work (and add them to the hardcoded radio skin)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25966 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 11:44:09 +00:00
Jonathan Gordon
1bd072c92d FS#10853 - Skin support in the radio screen! Check CustomWPS for the new tags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25964 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 10:38:00 +00:00
Thomas Martitz
77dfff5a55 Fix some more snprintf related warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25853 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:37:03 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Jonathan Gordon
9c159c5d67 woops, elapsed is ms not HZ and how did that extra + get in there?
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25241 a1c6a512-1295-4272-9138-f99709370657
2010-03-18 08:00:22 +00:00
Jonathan Gordon
e1fd5c2801 fix yelllow and add those tags to the debug output
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25240 a1c6a512-1295-4272-9138-f99709370657
2010-03-18 07:20:14 +00:00
Jonathan Gordon
d2e2c2ad96 2 new tags:
%pS - track is starting.
%pE - track is ending. both can optionally have a number straight after to change how long that tag should stay true for (e.g %pS10 will stay true for the first 10s of the track)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25239 a1c6a512-1295-4272-9138-f99709370657
2010-03-18 07:08:49 +00:00
Jonathan Gordon
0376208a48 revert r25054 - tags which have an off and a list of option should have off as the first not last option. also fix it so the no icon position actually works.
you can use %?Li<no|yes> if you want to.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25063 a1c6a512-1295-4272-9138-f99709370657
2010-03-07 21:07:41 +00:00
Teruaki Kawashima
ce92b8bf34 Slightly change how %Li works when used as a conditional. last part is selected if and only if icon is not presented (i.e. is no icon) so that it can be used like true/false type conditional tag, e.g. "%?Li<Icon|No Icon>".
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25054 a1c6a512-1295-4272-9138-f99709370657
2010-03-07 13:39:19 +00:00
Teruaki Kawashima
1fbdd91333 skin: don't calculate id3->elapsed+state->ff_rewind_count each time. remove trailing spaces.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25045 a1c6a512-1295-4272-9138-f99709370657
2010-03-06 14:14:44 +00:00
Bertrik Sikken
7ab1cd7b1b Save some RAM by changing a char[] into a const char * in struct afmt_entry. Make other fields const too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24970 a1c6a512-1295-4272-9138-f99709370657
2010-02-28 14:13:35 +00:00
Thomas Martitz
ea4eadc582 Add playlist viewer screen to %cs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24953 a1c6a512-1295-4272-9138-f99709370657
2010-02-27 21:24:50 +00:00