Clock: Fix rendering.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22617 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Karl Kurbjun 2009-09-04 04:13:38 +00:00
parent 067172ae54
commit ae181ca0ca
4 changed files with 9 additions and 8 deletions

View file

@ -43,6 +43,6 @@ void draw_string(struct screen* display, const struct picture* bitmaps,
} }
void getstringsize(const struct picture* bitmaps, char* str, int *w, int *h ){ void getstringsize(const struct picture* bitmaps, char* str, int *w, int *h ){
*h=bitmaps->height; *h=bitmaps->slide_height;
*w=rb->strlen(str)*bitmaps->width; *w=rb->strlen(str)*bitmaps->width;
} }

View file

@ -45,11 +45,11 @@ void binary_clock_draw(struct screen* display, struct time* time, int skin){
char buffer[9]; char buffer[9];
int i; int i;
const struct picture* binary_bitmaps = &(binary_skin[skin][display->screen_type]); const struct picture* binary_bitmaps = &(binary_skin[skin][display->screen_type]);
int y_offset=(display->getheight()-(binary_bitmaps->height*3))/2; int y_offset=(display->getheight()-(binary_bitmaps->slide_height*3))/2;
int x_offset=(display->getwidth()-(binary_bitmaps->width*6))/2; int x_offset=(display->getwidth()-(binary_bitmaps->width*6))/2;
for(i=0;i<3;i++){ for(i=0;i<3;i++){
print_binary(buffer, lines_values[i], 6); print_binary(buffer, lines_values[i], 6);
draw_string(display, binary_bitmaps, buffer, x_offset, draw_string(display, binary_bitmaps, buffer, x_offset,
binary_bitmaps->height*i+y_offset); binary_bitmaps->slide_height*i+y_offset);
} }
} }

View file

@ -72,14 +72,14 @@ void digital_clock_draw(struct screen* display,
getstringsize(digits_bitmaps, buffer, &str_w, &str_h); getstringsize(digits_bitmaps, buffer, &str_w, &str_h);
draw_string(display, digits_bitmaps, buffer, draw_string(display, digits_bitmaps, buffer,
(display->getwidth()-str_w)/2, (display->getwidth()-str_w)/2,
digits_bitmaps->height); digits_bitmaps->slide_height);
} }
if(settings->general.date_format!=NONE){ if(settings->general.date_format!=NONE){
format_date(buffer, time, settings->general.date_format); format_date(buffer, time, settings->general.date_format);
getstringsize(smalldigits_bitmaps, buffer, &str_w, &str_h); getstringsize(smalldigits_bitmaps, buffer, &str_w, &str_h);
draw_string(display, smalldigits_bitmaps, buffer, draw_string(display, smalldigits_bitmaps, buffer,
(display->getwidth()-str_w)/2, (display->getwidth()-str_w)/2,
display->getheight()-smalldigits_bitmaps->height*2); display->getheight()-smalldigits_bitmaps->slide_height*2);
} }
if(counter){ if(counter){
struct time counter_time; struct time counter_time;

View file

@ -144,11 +144,12 @@ void draw_logo(struct screen* display){
void draw_message(struct screen* display, int msg, int y){ void draw_message(struct screen* display, int msg, int y){
const struct picture* message = &(messages[display->screen_type]); const struct picture* message = &(messages[display->screen_type]);
display->set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID); display->set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID);
display->fillrect(0, display->getheight()-message->height, display->fillrect(0, display->getheight()-message->slide_height,
display->getwidth(), message->height); display->getwidth(), message->slide_height);
display->set_drawmode(DRMODE_SOLID); display->set_drawmode(DRMODE_SOLID);
vertical_picture_draw_sprite(display, message, msg, vertical_picture_draw_sprite(display, message, msg,
0, display->getheight()-(message->height*y)); 0, display->getheight() -
(message->slide_height*y));
} }
void load_settings(void){ void load_settings(void){