summaryrefslogtreecommitdiffstats
path: root/firmware/export
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2012-02-28 22:26:32 +1100
committerJonathan Gordon <rockbox@jdgordon.info>2012-02-28 23:03:04 +1100
commit2c71aa9feb0268da7d993feddbbe4db591fcd3ba (patch)
tree29b3c1480abca46813ef2dc3bb8f0862b596fe34 /firmware/export
parent13f98df5ed6b8183d972f85a1bfe55cf02194941 (diff)
downloadrockbox-2c71aa9feb0268da7d993feddbbe4db591fcd3ba.tar.gz
rockbox-2c71aa9feb0268da7d993feddbbe4db591fcd3ba.tar.bz2
rockbox-2c71aa9feb0268da7d993feddbbe4db591fcd3ba.zip
lcd/skin_engine: Add the ability to draw onto the backdrop layer
The framebuffer the lcd driver uses can now be changed on the fly which means that regular lcd_* drawing functions can draw onto the "backdrop" buffer. The skin engine can use this to create layered effects. Add the tag %VB to a viewport to draw that viewport onto the backdrop layer. If you want to draw an image onto the backdrop framebuffer use %x(backdrop filename) instead of %X() inside a viewport with %VB. Change-Id: I741498e2af6d4f2d78932cabe8942317893e7cfc
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/lcd-remote.h1
-rw-r--r--firmware/export/lcd.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/firmware/export/lcd-remote.h b/firmware/export/lcd-remote.h
index 0f5f7ed6b7..1bb19a5cfa 100644
--- a/firmware/export/lcd-remote.h
+++ b/firmware/export/lcd-remote.h
@@ -132,6 +132,7 @@ void lcd_remote_init(void);
void lcd_remote_write_command(int cmd);
void lcd_remote_write_command_ex(int cmd, int data);
void lcd_remote_write_data(const fb_remote_data *data, int count);
+extern void lcd_remote_set_framebuffer(fb_remote_data *fb);
extern void lcd_remote_bitmap_part(const fb_remote_data *src, int src_x,
int src_y, int stride, int x, int y,
diff --git a/firmware/export/lcd.h b/firmware/export/lcd.h
index 052b368d9b..7e0e979821 100644
--- a/firmware/export/lcd.h
+++ b/firmware/export/lcd.h
@@ -529,6 +529,7 @@ extern void lcd_bitmap_part(const fb_data *src, int src_x, int src_y,
int stride, int x, int y, int width, int height);
extern void lcd_bitmap(const fb_data *src, int x, int y, int width,
int height);
+extern void lcd_set_framebuffer(fb_data *fb);
extern void lcd_scroll_step(int pixels);