1
0
Fork 0
forked from len0rd/rockbox
Commit graph

151 commits

Author SHA1 Message Date
Jonathan Gordon
dbde63bfec progressbars are drawn inside viewports so all coords are viewport relative. so fix - for the x coord to be 0 instead of vp->x which never made sense (woops from 18months ago :p )
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27998 a1c6a512-1295-4272-9138-f99709370657
2010-09-05 10:23:09 +00:00
Jonathan Gordon
faaf431d32 Accept FS#11567 by Fred Bauer - better memory management for the skin fonts
%Fl now takes an optional 3rd param which is the number of glyphs to cache (default to 256). the smaller the number, the less ram will be used (i.e using 15 for a font which only shown numbers is a good idea)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27882 a1c6a512-1295-4272-9138-f99709370657
2010-08-25 14:11:38 +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
0be2426528 Make %pb without any params work as expected
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27827 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 12:07:39 +00:00
Jonathan Gordon
a71db516f2 fix FS#11542 - %t() not working
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27826 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 10:40:50 +00:00
Jonathan Gordon
e8bbbdffd4 fix FS#11519 - clock tags wernt updating like they should
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27822 a1c6a512-1295-4272-9138-f99709370657
2010-08-15 14:35:34 +00:00
Jonathan Gordon
eda80390d5 A bunch of new features for the bar type tags (%pb, %pv, %bl, etc):
* the bar orientation (horiz/vert) is now chosen based on the width and heigt values (or can be forced).
* the fill direction can now be inverted (fill right to left, or top to bottom is considered inverted)
* It can now draw a slider type bar instead of a fill type (or indeed a slider with a fill type)

To configure the new bar, any (or all) of the following params can be used after the bmp filename (order makes no difference either):
invert - cause the bar to fill in the inverted direction
vertical - draw a vertical bar (not needed if the height > width)
horizontal - draw a horizontal bar (this is obviously the default)
nofill - dont draw the filling bar (this still draws the outline, obviously pointless without the slider param)
slider - draw an image for the slider. The next param MUST be the label of the image to draw. No option to use a subimage here, so the whole image needs to be the image you want on the slider. 

example: %pb(0,0,-,-,-,nofill, slider, slider_image, invert) - draw a boring horizontal progressbar which doesnt fill and only draws the image "slider_image" which moves right to left.

the slider type might need some tweaking. let us know how it goes


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27821 a1c6a512-1295-4272-9138-f99709370657
2010-08-15 14:13:36 +00:00
Magnus Holmgren
ac2c69ccae Allow 'long' labels with single-argument %xd too. The label need to be at least 3 chars long (2 chars are treated as a single-letter-label image with a subimage).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27820 a1c6a512-1295-4272-9138-f99709370657
2010-08-15 07:08:23 +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
Jonathan Gordon
ff8d43ddad Change %xl/%xd to use proper labels instead of single letter labels. i.e %xl(playmode, playmode.bmp, 0, 0, 4) ... %xd(playmode, %mm). You can of course still use one letter labels if you really want. %xd(Aa) will only work with one letter labels.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27813 a1c6a512-1295-4272-9138-f99709370657
2010-08-14 11:40:20 +00:00
Jonathan Gordon
863d239aa2 Change %xd to allow for a number to be used to specify the subimage. i.e %xd(Ac) can now we written as %xd(A, 3). subimage count start at 1 so a=1, b=2 etc.
Also adds the possibility to specify a set of params which a tag can have (i.e a tag or a integer)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27812 a1c6a512-1295-4272-9138-f99709370657
2010-08-14 11:17:49 +00:00
Jonathan Gordon
70ebe46d74 New feature for the %xl (image load) tag. If you give it the filename __list_icons__ it will use the list icon strip instead of loading a different bmp.
example:
%xl(I, __list_icons__, 0, 0)
%xd(I, %Li)

^ display the list icon at position 0,0 in that viewport. (you can of course %xd(Ia) if you really wanted also.)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27787 a1c6a512-1295-4272-9138-f99709370657
2010-08-12 13:27:10 +00:00
Jonathan Gordon
489962dc4e Fix FS#11526 - %Vf(<hex>) was acceptable on grey remotes with colour main
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27768 a1c6a512-1295-4272-9138-f99709370657
2010-08-10 14:15:03 +00:00
Jonathan Gordon
3f8e7fc26f New feature for the %xd() (display a preloaded image) skin tag.
It can now automatically load the correct subimage from a strip (assuming the strip is in the correct order)  by giving a tag for the 2nd param.
example: %xd(F, %mp) which is equivilant to %?mp<%xd(Fa)|%xd(Fb)|%xd(Fc)|%xd(Fd)|%xd(Fe)>
You can also set the subimage offset.. i.e %xd(E, %mm, -1) which means "show nothing for the first value of %mm and use the bitmap strip for the remaining values"

if a tag+offset is <0 or greater than the number of subimages in a strip he image is cleared (I'm open to changing this if someone has a better idea)

cabbiev2.176x220x16.wps is an example of how to use this

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27717 a1c6a512-1295-4272-9138-f99709370657
2010-08-05 11:28:48 +00:00
Jonathan Gordon
ee4f8a9a6b Allow viewport labels to be mostly free text instead of only one character. If this is useful the same will be done for images
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27665 a1c6a512-1295-4272-9138-f99709370657
2010-08-02 12:50:23 +00:00
Thomas Martitz
9c0b2479f7 Rockbox as an application: add get_user_file_path().
For RaaA it evaluates user paths at runtime. For everything but codecs/plugins it will give the path under $HOME/.config/rockbox.org if write access is needed or if the file/folder in question exists there (otherwise it gives /usr/local/share/rockbox).
This allows for installing themes under $HOME as well as having config.cfg and other important files there while installing the application (and default themes) under /usr/local.

On the DAPs it's a no-op, returing /.rockbox directly.

Not converted to use get_user_file_path() are plugins themselves, because RaaA doesn't build plugins yet.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27656 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 16:15:27 +00:00
Jonathan Gordon
9e2cd39d52 Fix FS#11508 - remote LCD targets crash because the remote wps fails to load
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27653 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 11:37:02 +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
Bertrik Sikken
57933f2bc6 Make some global function/variables local (by making them static)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27631 a1c6a512-1295-4272-9138-f99709370657
2010-07-30 23:47:49 +00:00
Jonathan Gordon
37d605a578 fix touchscreen errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27614 a1c6a512-1295-4272-9138-f99709370657
2010-07-29 12:48:59 +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
Thomas Martitz
ee166960b4 The previous commit was broken, not only because of the red. Fix it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27532 a1c6a512-1295-4272-9138-f99709370657
2010-07-23 16:33:16 +00:00
Thomas Martitz
a0e83f3821 Make %tx work as intended, so that it ignores the true case for non-RDS targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27531 a1c6a512-1295-4272-9138-f99709370657
2010-07-23 16:24:12 +00:00
Jonathan Gordon
bb236ce89c prevent the parser crashing if a font fails to load and is refresencd in more than one viewport
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27443 a1c6a512-1295-4272-9138-f99709370657
2010-07-16 01:05:24 +00:00
Rafaël Carré
4b94912628 enable skin debug only in the simulator
it's controled by sim --debugwps option

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27389 a1c6a512-1295-4272-9138-f99709370657
2010-07-11 16:46:54 +00:00
Jonathan Gordon
adc9cb1adc Allow the progressbar and volume touch regions to be reverse by prepending them with ! (so full is the left/top instead of right/bottom)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27013 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 12:43:08 +00:00
Jonathan Gordon
8a798179fc woops, this chaneg too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26992 a1c6a512-1295-4272-9138-f99709370657
2010-06-20 13:21:41 +00:00
Jonathan Gordon
9a7a542de2 first step of making touch regions usable in all skins, not just the WPS.. no user viewable changes just yet
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26854 a1c6a512-1295-4272-9138-f99709370657
2010-06-15 08:38:23 +00:00
Jonathan Gordon
ee6aca9860 add a hotkey option to the wps touchregion.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26740 a1c6a512-1295-4272-9138-f99709370657
2010-06-10 13:05:23 +00:00
Jonathan Gordon
9cf09f33aa crappy editor and crappy svn missing crappy merge crappy crappy 2am crappy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26728 a1c6a512-1295-4272-9138-f99709370657
2010-06-09 16:17:17 +00:00
Jonathan Gordon
9ac4b44610 SKIN BREAK: %pb, %bl and %pv (bar types) changed so the image is the last param instead of the first. skin updater, skins and manual all updated.
NEW PARSER: add an 'N' param type which will accept any number of strings, will cause very big problems if this isnt the last param for a tag.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26727 a1c6a512-1295-4272-9138-f99709370657
2010-06-09 16:15:01 +00:00
Teruaki Kawashima
bc58b7d984 some clean up. add checks for terminating ')'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26723 a1c6a512-1295-4272-9138-f99709370657
2010-06-09 14:06:42 +00:00
Jonathan Gordon
c2a79aae16 fix %pb and other progressbars which are shown one line down from where they should be in viewports
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26698 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 15:26:25 +00:00
Jonathan Gordon
2d62a570e3 Fix yellow and all the shipped themes that show AA
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26697 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 15:17:39 +00:00
Jonathan Gordon
50356d8387 The real reason to change the %C was to remove a very nasty hack!
%CL - load the AA
%C - check if AA is avilable
%Cd - display the AA


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26696 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 15:09:32 +00:00
Jonathan Gordon
2309d6d1e1 change to %Cd to display albumart (instead of %C to make it more consistant with %Vd/%Vl and %xd/%xl)
Also assume ; in skins are for sublines.. this means if you want ; in text you need to manually escape it (%;) far less false positives then


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26693 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 14:52:03 +00:00
Teruaki Kawashima
e6c9691f0b don't disable backdrop when the file name starts with 'd', e.g. %X(dock.bmp).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26689 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 13:31:39 +00:00
Jonathan Gordon
bb417260b2 this probably fixes FS#11373
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26658 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 12:40:59 +00:00
Jonathan Gordon
fe72cbe6ac Fix FS#11370 - BEWARE when useing viewport colours.
%Vf() and %Vb() need to be straight after the %V() or else the colours wont be set on the viewport (but on the line instead). This means scrolling lines dont work.

To make sure the colours are used for the whole viewport dont leave any gaps between %V and %Vf/%Vb. (of course, if you want a single line to be a different colour then use the %Vf as normal.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26656 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 11:45:02 +00:00
Jonathan Gordon
4c040943bb off by one. FS#11369
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26655 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 11:13:56 +00:00
Jonathan Gordon
04fd0ce374 fix FS#11368 - %V was eating the whole line so the %Vf() and %Vb() tags were being ignored
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26653 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 10:47:21 +00:00
Jonathan Gordon
4a9398e3fc make %t work
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26649 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 07:32:28 +00:00
Jonathan Gordon
0d8fb6015c make the parser work with the changed %Cl format.
%Cl(x, y, width, height [,xalign flag] [, yalign flag])
xalign can be l,c,r (or - to keep default)
yalign can be t,c,b

xalign must be there if you want to use a yalign flag


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26646 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 04:40:46 +00:00
Jonathan Gordon
32455131e7 fix errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26642 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 03:55:40 +00:00
Jonathan Gordon
5b0521c9aa Changeover to the new skin format. SkinBreakingChange in the wiki has the runown of the changes.
Major changes are paramerterised tags now use %tag(param,param), colours are removed from the %V() tag, %Vi gets a required (but can be -) label as its first param).

utils/skinupdater/ has a program to update individual skins, and a perl script to update a whole zip.
Themesite will be unusable for the time being (you should be able to upload new themes once it updates checkwps though).

I obviously havnt tested every updated wps in this change so let me know if one doesnt load


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26641 a1c6a512-1295-4272-9138-f99709370657
2010-06-07 03:44:11 +00:00
Jonathan Gordon
22b12cafbb draw markers on the FM frequency bar for presets (like cuesheet markers in the WPS).
seems nice but if it ends up looking crap we can revert..


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26429 a1c6a512-1295-4272-9138-f99709370657
2010-05-31 11:12:15 +00:00
Teruaki Kawashima
0a4eda4d46 skin_parser.c: fix possibile overflow in parse_setting_and_lang(). simplify comparison of string in parameter in parse_touchregion().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26168 a1c6a512-1295-4272-9138-f99709370657
2010-05-19 15:47:54 +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
Jonathan Gordon
efd1f4e49f Make it possible to move the UI viewport using conditional viewports.
%Vi|<label>|<Usual %Vi params>|  <- specify the possible viewports to use
%VI<label> <- make the UI viewport use the %Vi definition with the <label> label.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25826 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 13:48:50 +00:00