Commit graph

353 commits

Author SHA1 Message Date
Jonathan Gordon
8f3feda719 last of the errors... hopefully
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29537 a1c6a512-1295-4272-9138-f99709370657
2011-03-07 13:09:04 +00:00
Jonathan Gordon
e765906d5b move code around to make checkwps compile
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29536 a1c6a512-1295-4272-9138-f99709370657
2011-03-07 12:56:24 +00:00
Jonathan Gordon
343001b5f8 Merge a bunch of code which is 99% identical so it makes it easier to add more of these later
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29535 a1c6a512-1295-4272-9138-f99709370657
2011-03-07 12:45:45 +00:00
Jonathan Gordon
0f68a91bc5 fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29484 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 13:01:57 +00:00
Jonathan Gordon
485ff79584 Add an ability to set a setting to a specific value with a touchscreen action.
example: %T(0,0,20,12, setting_set, repeat, off)
That will set the repeat mode to "off" when it is pressed.
"setting_set" is the action name
"repeat" is the name of the setting in the config files
"off" is the value to set it to (same values as the legal values in the config files)

Not all settings are supported, outright unsupported settings will fail to parse. Some settings might not work too well if they don't apply instantly (Any that work well int he quickscreen should work well here)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29483 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 12:31:03 +00:00
Jonathan Gordon
08fa83bd7c fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29479 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 09:01:45 +00:00
Jonathan Gordon
fb3616368f Remove code duplication in some generic skin touch action handling.
fix a bug which stopped the setting_inc/dec touch actions from parsing


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29477 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 07:26:11 +00:00
Jonathan Gordon
e63325acff Add a touchaction "none" which does nothing when pressed. This will allow some fancy controls to skins in combination with recent %T/%Tl changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29475 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 04:01:02 +00:00
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
Andree Buschmann
4c38572997 Remove WPS related variable which is read but not set or changed. Closes FS#11396.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29139 a1c6a512-1295-4272-9138-f99709370657
2011-01-25 21:40:55 +00:00
Jonathan Gordon
f06f685273 New option for the bar tags: 'backdrop, <label>' will draw another image under the progressbar (only works with image and slider bars)
example:
%V(22,253,198,14,-)
%xl(a,PLAY_BAR_BACKDROP-240x320x16.bmp,0,0)
%pb(0,0,198,14,PLAY_BAR-240x320x16.bmp, backdrop, a)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29127 a1c6a512-1295-4272-9138-f99709370657
2011-01-24 09:04:28 +00:00
Jonathan Gordon
605e2d0e90 New Touchscreen region type... 'mute' which un/mutes volume without pausing playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29046 a1c6a512-1295-4272-9138-f99709370657
2011-01-13 10:56:23 +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
519d65f9d6 remove unecessary (duplicated even) header
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29044 a1c6a512-1295-4272-9138-f99709370657
2011-01-13 06:54:35 +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
Thomas Martitz
2c2416094f Get rid of get_user_file_path and do the path handling in wrappers for open() and friends.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28752 a1c6a512-1295-4272-9138-f99709370657
2010-12-06 22:26:31 +00:00
Jonathan Gordon
5ad4080b98 Very small code shuffle to maybe make parseing %if() a smidgen faster
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28714 a1c6a512-1295-4272-9138-f99709370657
2010-11-30 13:12:27 +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
Thomas Martitz
6c8267a42c Android: Fix compilation failure
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28566 a1c6a512-1295-4272-9138-f99709370657
2010-11-12 21:21:23 +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
10807e85f6 fix warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28553 a1c6a512-1295-4272-9138-f99709370657
2010-11-11 10:04:41 +00:00
Jonathan Gordon
f74a1aab64 Add a bit more debug output to checkwps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28552 a1c6a512-1295-4272-9138-f99709370657
2010-11-11 09:57:37 +00:00
Thomas Martitz
5411e14c57 Undo the part of r28480 that caused the simulator to also use host malloc.
We want simulators to simulate target code where possible, that includes memory constraints and memory allocation schemes. It also removed the sim's ability to show the theme's ram usage.
Use malloc only in application builds.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28498 a1c6a512-1295-4272-9138-f99709370657
2010-11-05 19:12:23 +00:00
Jonathan Gordon
97857324c3 RaaA: Use the host's malloc() for the skin engine.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28480 a1c6a512-1295-4272-9138-f99709370657
2010-11-04 10:15:33 +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
Jonathan Gordon
59cc0a9a14 Don't try to show a backdrop if the bmp wasnt loaded successfully
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28303 a1c6a512-1295-4272-9138-f99709370657
2010-10-18 07:38: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
Bertrik Sikken
91453fb59b skin_engine: struct gui_skin can be static
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28289 a1c6a512-1295-4272-9138-f99709370657
2010-10-16 15:23:41 +00:00
Jonathan Gordon
0432147f2f Fix FS#11593 - %Vf() and %Vb() should be able to be used in conditionals. Remember that these tags cause a new line to get drawn so text/tags on the same line wont be displayed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28266 a1c6a512-1295-4272-9138-f99709370657
2010-10-13 09:46:01 +00:00
Jonathan Gordon
9acd242839 skin bar tag: Load an image from a label or filename. i.e %xl(bar_image, pb.bmp,0,0) %pb(0,0,10,10,bar_image) or %pb(0,0,10,10, pb.bmp) both are acceptable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28249 a1c6a512-1295-4272-9138-f99709370657
2010-10-12 12:46:57 +00:00
Teruaki Kawashima
3eb5826c8a improvement for bar tag with slider.
-fix bug the slider is drawn outside of the bounds (FS#11658).
-offset the slider position so that the center of the slider indicates current position.
-add nobar option. if this option is set, the bar isn't drawn at all.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28248 a1c6a512-1295-4272-9138-f99709370657
2010-10-12 12:17:39 +00:00
Jonathan Gordon
69e379a47b Skin bar tags fix+cleanup:
Don't crash when not enough params were given (i.e forgetting the filename)
Make the parser enforce the first 4 params as compulsary
Be more leniant and don't require the image filename if one isnt going to be loaded (no more need for the - as the 5th param)
Add an option "image" to specify the filename (otherwise the first option will be used if it isnt a recognised option).

e.g: %pv(0,0,100,10) or %pv(0,0,100,10, bar.bmp) or %pv(0,0,100,10, ..., image, bar.bmp)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28247 a1c6a512-1295-4272-9138-f99709370657
2010-10-12 12:03:07 +00:00
Jonathan Gordon
39cf6dd2f3 Viewports dont necessarily have children lines, so make sure there is one or it will crash
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28245 a1c6a512-1295-4272-9138-f99709370657
2010-10-12 09:36:59 +00:00
Teruaki Kawashima
59f487205c check viewport dimension when parsing viewport so that player doesn't clash with bad wps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28244 a1c6a512-1295-4272-9138-f99709370657
2010-10-11 13:08:49 +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
Frank Gevaerts
561999ebff Make skin_render_playlistviewer() noinline. This function uses lots of stack (around 1 kilobyte), and is called from a recursive function. gcc's stack allocation strategy makes the calling function then use all this stack space when inlining.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28231 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 13:26:51 +00:00
Frank Gevaerts
d0bf13b486 Revert accidental commit of skin_render.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28230 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 13:21:49 +00:00
Frank Gevaerts
c8c40c5291 Add a "early_usb" argument to gui_usb_screen_run(), and don't do skin unloading/reloading in gui_usb_screen_run() in the early usb case. Fixes the crash part of FS#11589
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28229 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 13:17:39 +00:00
Jonathan Gordon
0b824da4de fix FS#11662 and FS#11629 - skin %t() issues. %t should now work properly inside and outside of conditionals.
Remember that skins update at a rather slow speed so even if you have %t(0.2) in your skin it depends on which screen you are in for it to work (the main menu only updates at 2FPS, the WPS is 25FPS with peakmeters enabled... this is on the fixme list)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28226 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 06:47:52 +00:00
Jonathan Gordon
a7b1f7577b Add "resumeplayback" touchscreen button action which returns you to the previous music screen (WPS or FM) from most of the lists (browsers and menus)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28223 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 04:17:34 +00:00
Jonathan Gordon
3f7b780b54 fix a stupid typo in the vertical bar tag parser, spotted by teru
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28222 a1c6a512-1295-4272-9138-f99709370657
2010-10-09 12:18:10 +00:00
Teruaki Kawashima
cc8918e909 fix displaying of the slider when default is used for pb->y and pb->height.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28220 a1c6a512-1295-4272-9138-f99709370657
2010-10-08 14:26:36 +00:00
Jonathan Gordon
dd6b1dc5d2 Fix FS#11651 - slider wasnt being drawn correctly with inverted (and vertical) bars
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28207 a1c6a512-1295-4272-9138-f99709370657
2010-10-04 13:20:37 +00:00
Teruaki Kawashima
0f8fe94f46 correct drawing of the bar type tags when nofill is set.
draw the slider bitmap before drawing A-B repeat markers so that they are visible.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28204 a1c6a512-1295-4272-9138-f99709370657
2010-10-03 14:19:30 +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
Teruaki Kawashima
717f0bd982 explicitly set img->using_preloaded_icons in parse_image_load() and don't rely on parse_image_display().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28184 a1c6a512-1295-4272-9138-f99709370657
2010-09-29 13:23:24 +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