summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Arigo <markarigo@gmail.com>2006-08-23 20:07:59 +0000
committerMark Arigo <markarigo@gmail.com>2006-08-23 20:07:59 +0000
commit1e9ac7a32e580587bdd5199f737c5bc2a92551f1 (patch)
tree3a9b5c18f279f9493391d4533cf6f4d9f889d3ac
parent34301bb37bb34f478bf4c3fc78385929dd2533d8 (diff)
downloadrockbox-1e9ac7a32e580587bdd5199f737c5bc2a92551f1.zip
rockbox-1e9ac7a32e580587bdd5199f737c5bc2a92551f1.tar.gz
rockbox-1e9ac7a32e580587bdd5199f737c5bc2a92551f1.tar.bz2
rockbox-1e9ac7a32e580587bdd5199f737c5bc2a92551f1.tar.xz
Allow scrolling lines with different x-margins. The margin at the time of the call to puts_scroll will be used as the margin for that line.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10727 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/lcd-16bit.c4
-rw-r--r--firmware/drivers/lcd-2bit-horz.c4
-rw-r--r--firmware/drivers/lcd-h100-remote.c4
-rw-r--r--firmware/drivers/lcd-h100.c4
-rw-r--r--firmware/drivers/lcd-recorder.c4
-rwxr-xr-xfirmware/drivers/lcd-remote-2bit-vi.c4
6 files changed, 12 insertions, 12 deletions
diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c
index fd95f2a..e6ae28b 100644
--- a/firmware/drivers/lcd-16bit.c
+++ b/firmware/drivers/lcd-16bit.c
@@ -900,7 +900,7 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string,
s->len = utf8length(string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -938,7 +938,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c
index 68074e3..33f483d 100644
--- a/firmware/drivers/lcd-2bit-horz.c
+++ b/firmware/drivers/lcd-2bit-horz.c
@@ -882,7 +882,7 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string,
s->len = utf8length((char *)string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -920,7 +920,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */
diff --git a/firmware/drivers/lcd-h100-remote.c b/firmware/drivers/lcd-h100-remote.c
index bf44454..ed5816c 100644
--- a/firmware/drivers/lcd-h100-remote.c
+++ b/firmware/drivers/lcd-h100-remote.c
@@ -1388,7 +1388,7 @@ void lcd_remote_puts_scroll_style_offset(int x, int y, const unsigned char *stri
s->len = utf8length((char *)string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -1458,7 +1458,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */
diff --git a/firmware/drivers/lcd-h100.c b/firmware/drivers/lcd-h100.c
index fd45600..8407876 100644
--- a/firmware/drivers/lcd-h100.c
+++ b/firmware/drivers/lcd-h100.c
@@ -1224,7 +1224,7 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string,
s->len = utf8length((char *)string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -1262,7 +1262,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */
diff --git a/firmware/drivers/lcd-recorder.c b/firmware/drivers/lcd-recorder.c
index 75faa18..1987d9a 100644
--- a/firmware/drivers/lcd-recorder.c
+++ b/firmware/drivers/lcd-recorder.c
@@ -1062,7 +1062,7 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string,
s->len = utf8length(string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -1100,7 +1100,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */
diff --git a/firmware/drivers/lcd-remote-2bit-vi.c b/firmware/drivers/lcd-remote-2bit-vi.c
index eefbae1..48f8b8a 100755
--- a/firmware/drivers/lcd-remote-2bit-vi.c
+++ b/firmware/drivers/lcd-remote-2bit-vi.c
@@ -1006,7 +1006,7 @@ void lcd_remote_puts_scroll_style_offset(int x, int y, const unsigned char *stri
s->len = utf8length((char *)string);
s->offset = offset;
- s->startx = x;
+ s->startx = xmargin + x * s->width / s->len;;
s->backward = false;
scrolling_lines |= (1<<y);
}
@@ -1120,7 +1120,7 @@ static void scroll_thread(void)
s->offset += scroll_step;
pf = font_get(curfont);
- xpos = xmargin + s->startx * s->width / s->len;
+ xpos = s->startx;
ypos = ymargin + index * pf->height;
if (s->bidir) { /* scroll bidirectional */