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
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c
index 23b3d27..561eb97 100644
--- a/apps/gui/skin_engine/skin_parser.c
+++ b/apps/gui/skin_engine/skin_parser.c
@@ -1245,11 +1245,15 @@
using - for any of the params uses "sane" values */
#ifdef HAVE_LCD_BITMAP
enum {
- PB_FILENAME = 0,
- PB_X,
+ PB_X = 0,
PB_Y,
PB_WIDTH,
+<<<<<<< .mine
PB_HEIGHT,
+ PB_FILENAME,
+=======
+ PB_HEIGHT,
+>>>>>>> .r26726
};
const char *filename;
int x, y, height, width;
@@ -1293,8 +1297,8 @@
}
ptr = wps_bufptr + 1;
- if (!(ptr = parse_list("sdddd", &set, ',', ptr, &filename,
- &x, &y, &width, &height)))
+ if (!(ptr = parse_list("dddds", &set, ',', ptr,
+ &x, &y, &width, &height, &filename)))
return WPS_ERROR_INVALID_PARAM;
if (LIST_VALUE_PARSED(set, PB_FILENAME)) /* filename */
diff --git a/manual/appendix/wps_tags.tex b/manual/appendix/wps_tags.tex
index a60c4d2..5459f7d 100644
--- a/manual/appendix/wps_tags.tex
+++ b/manual/appendix/wps_tags.tex
@@ -124,7 +124,7 @@
& This will replace the entire line with a progress bar. \\
& You can set the position, width and height of the progressbar %
(in pixels) and load a custom image for it: %
- \config{\%pb{\textbar}image.bmp{\textbar}x{\textbar}y{\textbar}width{\textbar}height{\textbar}}} \\
+ \config{\%pb{\textbar}x{\textbar}y{\textbar}width{\textbar}height{\textbar}image.bmp{\textbar}}} \\
\opt{player}{%
\config{\%pf} & Full-line progress bar \& time display\\
}%
@@ -145,7 +145,7 @@
{\textbar}N{\textgreater}}\\
& 0 is used for mute, the last option is used for values greater than zero.\\
\opt{lcd_bitmap}{& This can also be used like \%pb to provide a continuous scale:
- \config{\%pv{\textbar}image.bmp{\textbar}x{\textbar}y{\textbar}width{\textbar}height{\textbar}}} \\
+ \config{\%pv{{\textbar}x{\textbar}y{\textbar}width{\textbar}height\textbar}image.bmp{\textbar}}} \\
\config{\%pS} & Track is starting. An optional number gives how many seconds
the tag remains true for after the start of the track. The default is
10 seconds if no number is specified.\\
diff --git a/utils/skinupdater/skinupdater.c b/utils/skinupdater/skinupdater.c
index 0bb305fb..fe7edbb 100644
--- a/utils/skinupdater/skinupdater.c
+++ b/utils/skinupdater/skinupdater.c
@@ -130,10 +130,26 @@
{
if (*start == '|')
{
+ int i=0;
+ char filename[128];
len++; start++;
PUTCH(out, '(');
+ /* |file|x|y|width|height| -> (x,y,width,height,file) */
+ while (start[i] != '|')
+ {
+ filename[i] = start[i];
+ i++;
+ }
+ filename[i] = '\0';
+ len +=i+1;
+ start += i+1;
/* TODO: need to verify that we are actually using the long form... */
- len += dump_arg(out, start, 5, true);
+ len += dump_arg(out, start, 4, false);
+ if (i>0)
+ {
+ fprintf(out, ",%s", filename);
+ }
+ PUTCH(out, ')');
}
}
else if (MATCH("d") || MATCH("D") || MATCH("mv") || MATCH("pS") || MATCH("pE") || MATCH("t") || MATCH("Tl"))
diff --git a/utils/themeeditor/skin_parser.c b/utils/themeeditor/skin_parser.c
index 707fffd..401181c 100644
--- a/utils/themeeditor/skin_parser.c
+++ b/utils/themeeditor/skin_parser.c
@@ -543,7 +543,8 @@
element->params[i].type = NUMERIC;
element->params[i].data.numeric = scan_int(&cursor);
}
- else if(tolower(*tag_args) == 's' || tolower(*tag_args) == 'f')
+ else if(tolower(*tag_args) == 'n' ||
+ tolower(*tag_args) == 's' || tolower(*tag_args) == 'f')
{
/* Scanning a string argument */
element->params[i].type = STRING;
@@ -576,7 +577,8 @@
cursor++;
}
- tag_args++;
+ if (*tag_args != 'N')
+ tag_args++;
/* Checking for the optional bar */
if(*tag_args == '|')
diff --git a/utils/themeeditor/tag_table.c b/utils/themeeditor/tag_table.c
index bf35c9b..d03f244 100644
--- a/utils/themeeditor/tag_table.c
+++ b/utils/themeeditor/tag_table.c
@@ -22,7 +22,7 @@
#include "tag_table.h"
#include <string.h>
-
+#define BAR_PARAMS "*|IIIIN"
/* The tag definition table */
struct tag_info legal_tags[] =
{
@@ -33,7 +33,7 @@
{ SKIN_TOKEN_ALIGN_RIGHT_RTL, "aR", "" },
{ SKIN_TOKEN_ALIGN_LANGDIRECTION, "ax", "" },
- { SKIN_TOKEN_BATTERY_PERCENT, "bl" , "*fIIII" },
+ { SKIN_TOKEN_BATTERY_PERCENT, "bl" , BAR_PARAMS },
{ SKIN_TOKEN_BATTERY_VOLTS, "bv", "" },
{ SKIN_TOKEN_BATTERY_TIME, "bt", "" },
{ SKIN_TOKEN_BATTERY_SLEEPTIME, "bs", "" },
@@ -124,8 +124,8 @@
{ SKIN_TOKEN_PEAKMETER, "pm", "" },
{ SKIN_TOKEN_PLAYER_PROGRESSBAR, "pf", "" },
- { SKIN_TOKEN_PROGRESSBAR, "pb" , "*fIIII" },
- { SKIN_TOKEN_VOLUME, "pv" , "*fIIII" },
+ { SKIN_TOKEN_PROGRESSBAR, "pb" , BAR_PARAMS },
+ { SKIN_TOKEN_VOLUME, "pv" , BAR_PARAMS },
{ SKIN_TOKEN_TRACK_ELAPSED_PERCENT, "px", "" },
{ SKIN_TOKEN_TRACK_TIME_ELAPSED, "pc", "" },
diff --git a/utils/themeeditor/tag_table.h b/utils/themeeditor/tag_table.h
index 760c9f5..ec9a102 100644
--- a/utils/themeeditor/tag_table.h
+++ b/utils/themeeditor/tag_table.h
@@ -263,6 +263,7 @@
* F - Required file name
* f - Nullable file name
* C - Required skin code
+ * N - any amount of strings.. must be the last param in the list
* Any nullable parameter may be replaced in the WPS file
* with a '-'. To specify that parameters may be left off
* altogether, place a '|' in the parameter string. For
diff --git a/wps/Rockboxed.112x64x1.wps b/wps/Rockboxed.112x64x1.wps
index 0ca6d49..8ab30f3 100644
--- a/wps/Rockboxed.112x64x1.wps
+++ b/wps/Rockboxed.112x64x1.wps
@@ -12,7 +12,7 @@
%al%s%ac%?id<%id|%d(1)>%ar
%al%s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(-,10,-,92,5)
+%pb(10,-,92,5,-)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|unknown>%ar%pt
%?ps<%xd(Ba)|%xd(Bb)>
%?mp<%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)|%xd(Ae)>
diff --git a/wps/Rockboxed.128x128x16.wps b/wps/Rockboxed.128x128x16.wps
index 142cbbf..579983b 100644
--- a/wps/Rockboxed.128x128x16.wps
+++ b/wps/Rockboxed.128x128x16.wps
@@ -14,7 +14,7 @@
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-108.bmp,10,76,108,5)
+%pb(10,76,108,5,pg-108.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.132x80x16.wps b/wps/Rockboxed.132x80x16.wps
index 24af5b5..1c714ab 100644
--- a/wps/Rockboxed.132x80x16.wps
+++ b/wps/Rockboxed.132x80x16.wps
@@ -12,7 +12,7 @@
%al %s%ac%?ia<%ia|%d(2)>%ar
%al %s%ac%?id<%id|%d(1)>%ar
%al %s%ac%?it<%it|%fn>%ar
-%pb(pg-108.bmp,12,43,106,5)
+%pb(12,43,106,5,pg-108.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|unknown|nsf|speex|spc|ape|wma>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.138x110x2.wps b/wps/Rockboxed.138x110x2.wps
index fbb8fd6..a39fcf2 100644
--- a/wps/Rockboxed.138x110x2.wps
+++ b/wps/Rockboxed.138x110x2.wps
@@ -13,7 +13,7 @@
%al %s%ac%?id<%id|%d(1)>%ar
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-grey-118.bmp,10,-,118,5)
+%pb(10,-,118,5,pg-grey-118.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.160x128x16.wps b/wps/Rockboxed.160x128x16.wps
index 62d265a..d4178f1 100644
--- a/wps/Rockboxed.160x128x16.wps
+++ b/wps/Rockboxed.160x128x16.wps
@@ -14,7 +14,7 @@
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-140.bmp,10,76,140,5)
+%pb(10,76,140,5,pg-140.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.160x128x2.wps b/wps/Rockboxed.160x128x2.wps
index 95f4f65..ca84223 100644
--- a/wps/Rockboxed.160x128x2.wps
+++ b/wps/Rockboxed.160x128x2.wps
@@ -14,7 +14,7 @@
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-grey-140.bmp,10,-,140,5)
+%pb(10,-,140,5,pg-grey-140.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.176x132x16.wps b/wps/Rockboxed.176x132x16.wps
index aa1e24e..cc85088 100644
--- a/wps/Rockboxed.176x132x16.wps
+++ b/wps/Rockboxed.176x132x16.wps
@@ -14,7 +14,7 @@
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-156.bmp,10,75,156,5)
+%pb(10,75,156,5,pg-156.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.176x220x16.wps b/wps/Rockboxed.176x220x16.wps
index 231a8f6..71fe500 100644
--- a/wps/Rockboxed.176x220x16.wps
+++ b/wps/Rockboxed.176x220x16.wps
@@ -22,7 +22,7 @@
-%pb(pg-156.bmp,10,171,156,5)
+%pb(10,171,156,5,pg-156.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.220x176x16.wps b/wps/Rockboxed.220x176x16.wps
index 86cd6a1..76183d7 100644
--- a/wps/Rockboxed.220x176x16.wps
+++ b/wps/Rockboxed.220x176x16.wps
@@ -16,7 +16,7 @@
%al %s%ac%?it<%it|%fn>%ar
%ac%t(3)%ig;%ac%iy
-%pb(pg-200.bmp,10,116,200,5)
+%pb(10,116,200,5,pg-200.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.240x320x16.wps b/wps/Rockboxed.240x320x16.wps
index dab7788..d1e5593 100644
--- a/wps/Rockboxed.240x320x16.wps
+++ b/wps/Rockboxed.240x320x16.wps
@@ -21,7 +21,7 @@
%ac%t(3)%ig;%ac%iy
-%pb(pg-220.bmp,10,256,220,5)
+%pb(10,256,220,5,pg-220.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/Rockboxed.320x240x16.wps b/wps/Rockboxed.320x240x16.wps
index 1f3a34e..304e576 100644
--- a/wps/Rockboxed.320x240x16.wps
+++ b/wps/Rockboxed.320x240x16.wps
@@ -17,7 +17,7 @@
%ac%t(3)%ig;%ac%iy
-%pb(pg-300.bmp,10,178,300,5)
+%pb(10,178,300,5,pg-300.bmp)
%al %pc%ac%?fc<mp1|mp2|mp3|aiff|wav|vorbis|flac|mpc|a52|wavpack|alac|aac|shn|sid|adx|nsf|speex|spc|ape|wma|unknown>%ar%pt
%?ps<%xd(B)>
%?mp<%xd(Ab)|%xd(Aa)|%xd(Ab)|%xd(Ac)|%xd(Ad)>
diff --git a/wps/UniCatcher.128x96x1.wps b/wps/UniCatcher.128x96x1.wps
index 3be3066..1aefde6 100644
--- a/wps/UniCatcher.128x96x1.wps
+++ b/wps/UniCatcher.128x96x1.wps
@@ -3,7 +3,7 @@
%t(1) %?mp<%al%pp/%pe%ar-:--/-:--|%al%pp/%pe%ar%pc/%pt|%al%pp/%pe%ar%pc/%pt|%al%pp/%pe%ar%pc/%pt|%al%pp/%pe%ar%pc/%pt>;%t(1) %?mp<%al%pp/%pe%ar-:--/-:--|%al%pp/%pe%ar%pc/%pt|%al%pp/%pe|%al%pp/%pe%ar%pc/%pt|%al%pp/%pe%ar%pc/%pt>
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
-%pb(-,11,-,106,4)
+%pb(11,-,106,4,-)
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%xl(A,battery-s.bmp,109,3,5)
diff --git a/wps/UniCatcher.160x128x16.wps b/wps/UniCatcher.160x128x16.wps
index 28fa7db..5285e97 100644
--- a/wps/UniCatcher.160x128x16.wps
+++ b/wps/UniCatcher.160x128x16.wps
@@ -6,7 +6,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%al %fbKbps
-%pb(-,10,-,140,4)
+%pb(10,-,140,4,-)
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%xl(A,battery.bmp,135,8,5)
diff --git a/wps/UniCatcher.160x128x2.wps b/wps/UniCatcher.160x128x2.wps
index 1e3418b..d25ce44 100644
--- a/wps/UniCatcher.160x128x2.wps
+++ b/wps/UniCatcher.160x128x2.wps
@@ -6,7 +6,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%al %fbKbps
-%pb(-,10,-,140,4)
+%pb(10,-,140,4,-)
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%xl(A,battery-g.bmp,135,8,5)
diff --git a/wps/UniCatcher.176x132x16.wps b/wps/UniCatcher.176x132x16.wps
index 155f51c..164c6f4 100644
--- a/wps/UniCatcher.176x132x16.wps
+++ b/wps/UniCatcher.176x132x16.wps
@@ -6,7 +6,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%al %fbKbps
-%pb(-,10,-,156,4)
+%pb(10,-,156,4,-)
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%xl(A,battery.bmp,151,8,5)
diff --git a/wps/UniCatcher.176x220x16.wps b/wps/UniCatcher.176x220x16.wps
index c221ffc..badca53 100644
--- a/wps/UniCatcher.176x220x16.wps
+++ b/wps/UniCatcher.176x220x16.wps
@@ -11,7 +11,7 @@
%al %fbKbps
-%pb(-,10,-,156,4)
+%pb(10,-,156,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
%xl(A,battery.bmp,151,8,5)
diff --git a/wps/UniCatcher.220x176x16.wps b/wps/UniCatcher.220x176x16.wps
index 7b66e86..296fb46 100644
--- a/wps/UniCatcher.220x176x16.wps
+++ b/wps/UniCatcher.220x176x16.wps
@@ -8,7 +8,7 @@
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,11,-,198,6)
+%pb(11,-,198,6,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/UniCatcher.240x320x16.wps b/wps/UniCatcher.240x320x16.wps
index 7f705f1..0cd370d 100644
--- a/wps/UniCatcher.240x320x16.wps
+++ b/wps/UniCatcher.240x320x16.wps
@@ -16,7 +16,7 @@
%al %fbKbps
-%pb(-,11,-,218,7)
+%pb(11,-,218,7,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/UniCatcher.320x240x16.wps b/wps/UniCatcher.320x240x16.wps
index cd58bc1..b299f18 100644
--- a/wps/UniCatcher.320x240x16.wps
+++ b/wps/UniCatcher.320x240x16.wps
@@ -11,7 +11,7 @@
%al %fbKbps
-%pb(-,11,-,298,7)
+%pb(11,-,298,7,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/boxes.220x176x16.wps b/wps/boxes.220x176x16.wps
index df507b2..11f800a 100644
--- a/wps/boxes.220x176x16.wps
+++ b/wps/boxes.220x176x16.wps
@@ -26,7 +26,7 @@
%fbk
-%pb(pb-220.bmp,0,-,208,8)
+%pb(0,-,208,8,pb-220.bmp)
%ac%t(5)%s%?It<%It|%Fn>;%ac%t(5)%s%?Ia<%Ia|%D(2)>
diff --git a/wps/cabbiev2.112x64x1.wps b/wps/cabbiev2.112x64x1.wps
index 9f5055f..c1923ec 100644
--- a/wps/cabbiev2.112x64x1.wps
+++ b/wps/cabbiev2.112x64x1.wps
@@ -14,7 +14,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|%(root%)>>
%s%ac%?id<%id|%?d(1)<%d(1)|%(root%)>>
%t(5)%ac%s%?Fn<%Sx(Next:) %?It<%It|%Fn>|%ac%?Sr<%pe %Sx(of) %pp|%pp %Sx(of) %pe>>%;%t(5)%ac%s%?Fn<%Sx(Next:) %?Ia<%Ia|%Fn>|%ac%?Sr<%pe %Sx(of) %pp|%pp %Sx(of) %pe>>
-%pb(pb-112x64x1.bmp,1,42,110,4)
+%pb(1,42,110,4,pb-112x64x1.bmp)
%pc%ar%pr
#Bottom status bar
%?mh<%xd(Aa)|%xd(Ab)>
diff --git a/wps/cabbiev2.128x128x16.wps b/wps/cabbiev2.128x128x16.wps
index caca739..8fa5938 100644
--- a/wps/cabbiev2.128x128x16.wps
+++ b/wps/cabbiev2.128x128x16.wps
@@ -10,7 +10,7 @@
%xl(E,repeat-128x128x16.bmp,97,110,4)
%xl(F,playmode-128x128x16.bmp,111,110,5)
%ax%Cl(4,12,60,60)
-%pb(pb-128x128x16.bmp,3,87,122,6)
+%pb(3,87,122,6,pb-128x128x16.bmp)
# images all in the default viewport
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
diff --git a/wps/cabbiev2.128x128x2.wps b/wps/cabbiev2.128x128x2.wps
index 17dfcfa..717290a 100644
--- a/wps/cabbiev2.128x128x2.wps
+++ b/wps/cabbiev2.128x128x2.wps
@@ -10,7 +10,7 @@
%xl(E,repeat-160x128x2.bmp,93,113,4)
%xl(F,playmode-160x128x2.bmp,112,114,5)
%ax%Cl(4,12,60,60)
-%pb(pb-128x96x2.bmp,1,87,125,7)
+%pb(1,87,125,7,pb-128x96x2.bmp)
# images all in the default viewport
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
diff --git a/wps/cabbiev2.128x64x1.wps b/wps/cabbiev2.128x64x1.wps
index f5b89d2..2461e48 100644
--- a/wps/cabbiev2.128x64x1.wps
+++ b/wps/cabbiev2.128x64x1.wps
@@ -6,7 +6,7 @@
# progressbar viewport
%V(0,0,128,6,1)
%x(a,pbbackground-128x64x1.bmp,1,0)
-%pb(pb-128x64x1.bmp,2,1,124,4)
+%pb(2,1,124,4,pb-128x64x1.bmp)
%V(0,8,128,8,1)
%?Sr<%pe %Sx(of) %pp|%pp %Sx(of) %pe>%ar%pc
diff --git a/wps/cabbiev2.128x96x2.wps b/wps/cabbiev2.128x96x2.wps
index 32b35f5..4a64976 100644
--- a/wps/cabbiev2.128x96x2.wps
+++ b/wps/cabbiev2.128x96x2.wps
@@ -8,7 +8,7 @@
%xl(D,shuffle-160x128x2.bmp,72,2)
%xl(E,repeat-160x128x2.bmp,93,0,4)
%xl(F,playmode-160x128x2.bmp,112,1,5)
-%pb(pb-128x96x2.bmp,1,61,125,7)
+%pb(1,61,125,7,pb-128x96x2.bmp)
%V(0,83,128,13,1)%Vf(0)%Vb(3)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
diff --git a/wps/cabbiev2.132x80x16.wps b/wps/cabbiev2.132x80x16.wps
index 29342df..978a547 100644
--- a/wps/cabbiev2.132x80x16.wps
+++ b/wps/cabbiev2.132x80x16.wps
@@ -9,7 +9,7 @@
%xl(E,repeat-132x80x16.bmp,105,67,4)
%xl(F,playmode-132x80x16.bmp,118,67,5)
%ax%Cl(3,14,40,40,c,c)
-%pb(pb-132x80x16.bmp,2,58,127,6)
+%pb(2,58,127,6,pb-132x80x16.bmp)
%?C<%Cd%Vd(a)|%Vd(b)>
#Images
diff --git a/wps/cabbiev2.138x110x2.wps b/wps/cabbiev2.138x110x2.wps
index 081e38d..6930d8c 100644
--- a/wps/cabbiev2.138x110x2.wps
+++ b/wps/cabbiev2.138x110x2.wps
@@ -11,7 +11,7 @@
%xl(E,repeat-160x128x2.bmp,102,97,4)
%xl(F,playmode-160x128x2.bmp,123,98,5)
%ax%Cl(5,15,55,55)
-%pb(pb-138x110x2.bmp,2,75,134,6)
+%pb(2,75,134,6,pb-138x110x2.bmp)
#images
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
diff --git a/wps/cabbiev2.160x128x1.wps b/wps/cabbiev2.160x128x1.wps
index 6c78911..122c49c 100644
--- a/wps/cabbiev2.160x128x1.wps
+++ b/wps/cabbiev2.160x128x1.wps
@@ -11,7 +11,7 @@
%xl(D,shuffle-160x128x1.bmp,107,115)
%xl(E,repeat-160x128x1.bmp,127,113,4)
%xl(F,playmode-160x128x1.bmp,145,114,5)
-%pb(pb-160x128x1.bmp,1,86,158,8)
+%pb(1,86,158,8,pb-160x128x1.bmp)
%s%ac%?it<%it|%fn>
%s%ac%?ia<%ia|%?d(2)<%d(2)|%(root%)>>
%s%ac%?id<%id|%?d(1)<%d(1)|%(root%)>>
diff --git a/wps/cabbiev2.160x128x16.wps b/wps/cabbiev2.160x128x16.wps
index b1477b4..2a0a03a 100644
--- a/wps/cabbiev2.160x128x16.wps
+++ b/wps/cabbiev2.160x128x16.wps
@@ -10,7 +10,7 @@
%xl(E,repeat-160x128x16.bmp,125,112,4)
%xl(F,playmode-160x128x16.bmp,142,114,5)
%ax%Cl(7,16,65,65,c,c)
-%pb(pb-160x128x16.bmp,6,86,149,8)
+%pb(6,86,149,8,pb-160x128x16.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/cabbiev2.160x128x2.wps b/wps/cabbiev2.160x128x2.wps
index 39876c9..b47275a 100644
--- a/wps/cabbiev2.160x128x2.wps
+++ b/wps/cabbiev2.160x128x2.wps
@@ -12,7 +12,7 @@
%xl(E,repeat-160x128x2.bmp,127,113,4)
%xl(F,playmode-160x128x2.bmp,145,114,5)
%ax%Cl(2,16,64,64)
-%pb(pb-160x128x2.bmp,1,86,158,8)
+%pb(1,86,158,8,pb-160x128x2.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/cabbiev2.176x132x16.wps b/wps/cabbiev2.176x132x16.wps
index 3be806d..53ab87f 100644
--- a/wps/cabbiev2.176x132x16.wps
+++ b/wps/cabbiev2.176x132x16.wps
@@ -11,7 +11,7 @@
%xl(E,repeat-176x132x16.bmp,139,113,4)
%xl(F,playmode-176x132x16.bmp,156,115,5)
%ax%Cl(9,16,65,65)
-%pb(pb-176x132x16.bmp,8,86,160,8)
+%pb(8,86,160,8,pb-176x132x16.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/cabbiev2.176x220x16.wps b/wps/cabbiev2.176x220x16.wps
index 5a34168..c0c7cfc 100644
--- a/wps/cabbiev2.176x220x16.wps
+++ b/wps/cabbiev2.176x220x16.wps
@@ -9,7 +9,7 @@
%xl(E,repeat-176x220x16.bmp,144,204,4)
%xl(F,playmode-176x220x16.bmp,159,204,5)
%Cl(29,20,120,120,c,c)
-%pb(pb-176x220x16.bmp,5,182,166,8)
+%pb(5,182,166,8,pb-176x220x16.bmp)
#NowPlaying
diff --git a/wps/cabbiev2.220x176x16.wps b/wps/cabbiev2.220x176x16.wps
index c88c74b..0c42f63 100644
--- a/wps/cabbiev2.220x176x16.wps
+++ b/wps/cabbiev2.220x176x16.wps
@@ -10,7 +10,7 @@
%xl(E,repeat-220x176x16.bmp,182,151,4)
%xl(F,playmode-220x176x16.bmp,200,152,5)
%ax%Cl(15,32,75,75)
-%pb(pb-220x176x16.bmp,11,121,199,8)
+%pb(11,121,199,8,pb-220x176x16.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/cabbiev2.240x320x16.mini2440.wps b/wps/cabbiev2.240x320x16.mini2440.wps
index 8733ac4..8eba53e 100644
--- a/wps/cabbiev2.240x320x16.mini2440.wps
+++ b/wps/cabbiev2.240x320x16.mini2440.wps
@@ -17,7 +17,7 @@
%xl(E,repeat-240x320x16.bmp,182,292,4)
%xl(F,playmode-240x320x16.bmp,206,292,5)
%Cl(55,30,130,130,c,c)
-%pb(pb-240x320x16.bmp,22,254,199,13)
+%pb(22,254,199,13,pb-240x320x16.bmp)
%?C<|>
%?C<|%s%ac%?it<%it|%fn>>
%?C<|%s%ac%?ia<%ia|%?d(2)<%d(2)|%(root%)>>>
diff --git a/wps/cabbiev2.240x320x16.wps b/wps/cabbiev2.240x320x16.wps
index b667e6b..435e713 100644
--- a/wps/cabbiev2.240x320x16.wps
+++ b/wps/cabbiev2.240x320x16.wps
@@ -12,7 +12,7 @@
%xl(E,repeat-240x320x16.bmp,182,292,4)
%xl(F,playmode-240x320x16.bmp,206,292,5)
%Cl(55,30,130,130,c,c)
-%pb(pb-240x320x16.bmp,22,254,199,13)
+%pb(22,254,199,13,pb-240x320x16.bmp)
%?C<|>
%?C<|%s%ac%?it<%it|%fn>>
%?C<|%s%ac%?ia<%ia|%?d(2)<%d(2)|%(root%)>>>
diff --git a/wps/cabbiev2.240x400x16.wps b/wps/cabbiev2.240x400x16.wps
index 94c7109..a64fa6f 100644
--- a/wps/cabbiev2.240x400x16.wps
+++ b/wps/cabbiev2.240x400x16.wps
@@ -6,7 +6,7 @@
%wd
%X(wpsbackdrop-240x400x16.bmp)
%Cl(55,50,130,130,c,c)
-%pb(pb-240x320x16.bmp,22,284,199,13)
+%pb(22,284,199,13,pb-240x320x16.bmp)
%T(22,284,199,13,progressbar)
%T(90,238,60,20,playlist)
%?Tl(2.5)<%Vd(t)|%Vd(u)>
diff --git a/wps/cabbiev2.320x240x16.mrobe500.wps b/wps/cabbiev2.320x240x16.mrobe500.wps
index f6e70d5..0d9e2cc 100644
--- a/wps/cabbiev2.320x240x16.mrobe500.wps
+++ b/wps/cabbiev2.320x240x16.mrobe500.wps
@@ -19,7 +19,7 @@
%?Tl(2.5)<%Vd(t)|%Vd(u)>
%Cl(16,32,120,120)
-%pb(pb-320x240x16.bmp,10,162,300,15)
+%pb(10,162,300,15,pb-320x240x16.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/cabbiev2.320x240x16.wps b/wps/cabbiev2.320x240x16.wps
index 1c6ddb6..f84c52e 100644
--- a/wps/cabbiev2.320x240x16.wps
+++ b/wps/cabbiev2.320x240x16.wps
@@ -10,7 +10,7 @@
%xl(E,repeat-320x240x16.bmp,261,207,4)
%xl(F,playmode-320x240x16.bmp,286,207,5)
%ax%Cl(16,32,120,120)
-%pb(pb-320x240x16.bmp,10,162,300,15)
+%pb(10,162,300,15,pb-320x240x16.bmp)
%?mh<%xd(Aa)|%xd(Ab)>
%?bp<%?bc<%xd(Ba)|%xd(Bb)>|%?bl<|%xd(Bc)|%xd(Bd)|%xd(Be)|%xd(Bf)|%xd(Bg)|%xd(Bh)|%xd(Bi)|%xd(Bj)>>
%?pv<%xd(Ca)|%xd(Cb)|%xd(Cc)|%xd(Cd)|%xd(Ce)|%xd(Cf)|%xd(Cg)|%xd(Ch)|%xd(Ci)|%xd(Cj)>
diff --git a/wps/iCatcher.112x64x1.wps b/wps/iCatcher.112x64x1.wps
index d3154b1..458b1a5 100644
--- a/wps/iCatcher.112x64x1.wps
+++ b/wps/iCatcher.112x64x1.wps
@@ -5,7 +5,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
-%pb(-,11,-,90,3)
+%pb(11,-,90,3,-)
%t(6)%s%ac%?Fm<%Sx(Next:) %?It<%It|%Fn>|%fbKbps %fc>;%t(6)%s%ac%?Fm<%Sx(Next:) %?It<%It|%Fn>|%fbKbps %fc>
%xl(A,battery-s.bmp,93,3,5)
diff --git a/wps/iCatcher.128x128x16.wps b/wps/iCatcher.128x128x16.wps
index f4ca8ef..2e3d83e 100644
--- a/wps/iCatcher.128x128x16.wps
+++ b/wps/iCatcher.128x128x16.wps
@@ -11,7 +11,7 @@
%al %fbKbps
-%pb(-,11,-,106,4)
+%pb(11,-,106,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.128x64x1.160x128x2.wps b/wps/iCatcher.128x64x1.160x128x2.wps
index 55eb1ff..801aeca 100644
--- a/wps/iCatcher.128x64x1.160x128x2.wps
+++ b/wps/iCatcher.128x64x1.160x128x2.wps
@@ -4,7 +4,7 @@
%t(1) %?mp<%al %pp/%pe%ar-:--/-:-- |%al %pp/%pe%ar%pc/%pt |%al %pp/%pe%ar%pc/%pt |%al %pp/%pe%ar%pc/%pt |%al %pp/%pe%ar%pc/%pt >;%t(1) %?mp<%al %pp/%pe%ar-:--/-:-- |%al %pp/%pe%ar%pc/%pt |%al %pp/%pe|%al %pp/%pe%ar%pc/%pt |%al %pp/%pe%ar%pc/%pt >
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
-%pb(-,11,-,106,4)
+%pb(11,-,106,4,-)
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%xl(A,battery-s.bmp,109,3,5)
diff --git a/wps/iCatcher.128x96x1.wps b/wps/iCatcher.128x96x1.wps
index 2c19ae2..7a63817 100644
--- a/wps/iCatcher.128x96x1.wps
+++ b/wps/iCatcher.128x96x1.wps
@@ -6,7 +6,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
-%pb(-,11,-,106,4)
+%pb(11,-,106,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.132x80x16.wps b/wps/iCatcher.132x80x16.wps
index e35a062..8d1fcf6 100644
--- a/wps/iCatcher.132x80x16.wps
+++ b/wps/iCatcher.132x80x16.wps
@@ -6,7 +6,7 @@
%s%ac%?ia<%ia|%?d(2)<%d(2)|Unknown Artist>>
%s%ac%?id<%id|%?d(1)<%d(1)|Unknown Album>>
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
-%pb(-,11,-,106,4)
+%pb(11,-,106,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.138x110x2.wps b/wps/iCatcher.138x110x2.wps
index 6c2658c..8af79c6 100644
--- a/wps/iCatcher.138x110x2.wps
+++ b/wps/iCatcher.138x110x2.wps
@@ -10,7 +10,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,10,-,118,4)
+%pb(10,-,118,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.160x128x16.wps b/wps/iCatcher.160x128x16.wps
index 60e0edc..e33030f 100644
--- a/wps/iCatcher.160x128x16.wps
+++ b/wps/iCatcher.160x128x16.wps
@@ -11,7 +11,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,10,-,140,4)
+%pb(10,-,140,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.160x128x2.wps b/wps/iCatcher.160x128x2.wps
index bb62769..cffbd1c 100644
--- a/wps/iCatcher.160x128x2.wps
+++ b/wps/iCatcher.160x128x2.wps
@@ -11,7 +11,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,10,-,140,4)
+%pb(10,-,140,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.176x132x16.wps b/wps/iCatcher.176x132x16.wps
index c743eef..51bcbbf 100644
--- a/wps/iCatcher.176x132x16.wps
+++ b/wps/iCatcher.176x132x16.wps
@@ -11,7 +11,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,10,-,156,4)
+%pb(10,-,156,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.176x220x16.wps b/wps/iCatcher.176x220x16.wps
index 9066482..db19c1e 100644
--- a/wps/iCatcher.176x220x16.wps
+++ b/wps/iCatcher.176x220x16.wps
@@ -15,7 +15,7 @@
%al %fbKbps
-%pb(-,10,-,156,4)
+%pb(10,-,156,4,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.220x176x16.wps b/wps/iCatcher.220x176x16.wps
index c0efa9c..03f1528 100644
--- a/wps/iCatcher.220x176x16.wps
+++ b/wps/iCatcher.220x176x16.wps
@@ -9,7 +9,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,11,-,198,6)
+%pb(11,-,198,6,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.240x320x16.wps b/wps/iCatcher.240x320x16.wps
index 0bf5249..31e3b60 100644
--- a/wps/iCatcher.240x320x16.wps
+++ b/wps/iCatcher.240x320x16.wps
@@ -13,7 +13,7 @@
%al %fbKbps
-%pb(-,11,-,218,7)
+%pb(11,-,218,7,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>
diff --git a/wps/iCatcher.320x240x16.wps b/wps/iCatcher.320x240x16.wps
index 4437cc3..0c192f1 100644
--- a/wps/iCatcher.320x240x16.wps
+++ b/wps/iCatcher.320x240x16.wps
@@ -9,7 +9,7 @@
%s%ac%?in<%in|%pp> - %?it<%it|%fn>
%al %fbKbps
-%pb(-,11,-,298,7)
+%pb(11,-,298,7,-)
%s%ac%Sx(Next:) %?It<%It|%?Fn<%Fn|?>>