diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2010-07-29 12:37:48 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2010-07-29 12:37:48 +0000 |
commit | 2d31d77a8ba231cb03ec35863c4c4ce2024f6509 (patch) | |
tree | b85ca1bede3e83695619064ee9a323f0a8da1865 /apps/gui/skin_engine/skin_engine.h | |
parent | e436483b66a931fef6436e9cd3e69eb2b3ff1f7b (diff) | |
download | rockbox-2d31d77a8ba231cb03ec35863c4c4ce2024f6509.tar.gz rockbox-2d31d77a8ba231cb03ec35863c4c4ce2024f6509.tar.bz2 rockbox-2d31d77a8ba231cb03ec35863c4c4ce2024f6509.zip |
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
Diffstat (limited to 'apps/gui/skin_engine/skin_engine.h')
-rw-r--r-- | apps/gui/skin_engine/skin_engine.h | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/apps/gui/skin_engine/skin_engine.h b/apps/gui/skin_engine/skin_engine.h index 69991ab587..9845d8ca8a 100644 --- a/apps/gui/skin_engine/skin_engine.h +++ b/apps/gui/skin_engine/skin_engine.h @@ -23,7 +23,10 @@ #ifndef _SKIN_ENGINE_H #define _SKIN_ENGINE_H -#include "skin_buffer.h" +#ifndef PLUGIN + +#include "skin_fonts.h" +#include "tag_table.h" #include "wps_internals.h" /* TODO: remove this line.. shoudlnt be needed */ @@ -39,13 +42,37 @@ enum skinnable_screens { }; +#ifdef HAVE_LCD_BITMAP +#define MAIN_BUFFER ((2*LCD_HEIGHT*LCD_WIDTH*LCD_DEPTH/8) \ + + (SKINNABLE_SCREENS_COUNT * LCD_BACKDROP_BYTES)) + +#if (NB_SCREENS > 1) +#define REMOTE_BUFFER (2*(LCD_REMOTE_HEIGHT*LCD_REMOTE_WIDTH*LCD_REMOTE_DEPTH/8) \ + + (SKINNABLE_SCREENS_COUNT * REMOTE_LCD_BACKDROP_BYTES)) +#else +#define REMOTE_BUFFER 0 +#endif + + +#define SKIN_BUFFER_SIZE (MAIN_BUFFER + REMOTE_BUFFER + SKIN_FONT_SIZE) + \ + (WPS_MAX_TOKENS * \ + (sizeof(struct wps_token) + (sizeof(struct skin_element)))) +#endif + +#ifdef HAVE_LCD_CHARCELLS +#define SKIN_BUFFER_SIZE (LCD_HEIGHT * LCD_WIDTH) * 64 + \ + (WPS_MAX_TOKENS * \ + (sizeof(struct wps_token) + (sizeof(struct skin_element)))) +#endif + + #ifdef HAVE_TOUCHSCREEN int skin_get_touchaction(struct wps_data *data, int* edge_offset); void skin_disarm_touchregions(struct wps_data *data); #endif /* Do a update_type update of the skinned screen */ -bool skin_update(struct gui_wps *gwps, unsigned int update_type); +void skin_update(struct gui_wps *gwps, unsigned int update_type); /* * setup up the skin-data from a format-buffer (isfile = false) @@ -72,3 +99,5 @@ void skin_backdrop_init(void); */ int skin_wait_for_action(struct gui_wps *gwps, int context, int timeout); #endif + +#endif |