]> git.karo-electronics.de Git - oswald.git/blobdiff - ui/oswald_graphics.h
Power saving changes, add new fonts, bitmaps and screens
[oswald.git] / ui / oswald_graphics.h
index cea57cb5adc666a3b6c5c1bcdb2849eca938b0e3..d23ebcb7c6fcb23b9f19b963e8a5610dd4cef5de 100644 (file)
@@ -6,21 +6,43 @@
 #include "oswald_fonts.h"
 
 #include "oswald_graphics.h"
-// #include "Fonts.h"
 
 
-void oswald_draw_pixel(const unsigned int xstart, const unsigned int ystart);
+#define COLOR_WHITE    0
+//#define COLOR_BLACK  1
+#define COLOR_XOR      2
+#define COLOR_INV      3
 
-void oswald_draw_bitmap(const unsigned int xstart, const unsigned int ystart, const unsigned int width, const unsigned int height, const void *bmp);
+
+#define oswald_draw_pixel(xstart, ystart, color) \
+       hal_lcd_set_pixel(xstart, ystart, color)
+
+void oswald_draw_bitmap_opts(const unsigned int xstart, const unsigned int ystart,
+               const unsigned int xoff, const unsigned int yoff,
+               const unsigned int width, const unsigned int height,
+               const boolean invert,
+               const unsigned int bmp_width, const unsigned int bmp_height,
+               const void *bmp);
+
+#define oswald_draw_bitmpa_invert_opt(x,y,w,h,d,i) \
+       oswald_draw_bitmap_opts(x,y,0,0,w,h,i,w,h,d)
+
+#define oswald_draw_bitmap(x,y,w,h,d) \
+       oswald_draw_bitmap_opts(x,y,0,0,w,h,FALSE,w,h,d)
+
+#define oswald_draw_bitmap_size(x, y, w, h, bw, bh, d) \
+       oswald_draw_bitmap_opts(x,y,0,0,w,h,FALSE,bw,bh,d)
 
 void oswald_draw_line(const uint8_t xstart, const uint8_t ystart, const uint8_t xend, const uint8_t yend);
 
 void oswald_draw_line_ww(const uint8_t xstart, const uint8_t ystart, const uint8_t xend, const uint8_t yend, const uint8_t thickness);
 
-uint8_t oswald_write_character(const uint8_t x, const uint8_t y, const oswald_font_face face, const uint8_t Character);
+uint8_t oswald_write_character(const uint8_t x, const uint8_t y, const oswald_font_face face, const boolean invert, const uint8_t Character);
+
+void oswald_write_string(const uint8_t x, const uint8_t y, const oswald_font_face face, const boolean invert, char *str);
 
-void oswald_write_string(const uint8_t x, const uint8_t y, const oswald_font_face face, char *str);
+uint8_t oswald_write_string_length(const uint8_t x, const uint8_t y, const uint8_t len, const oswald_font_face face, const boolean invert, char *str);
 
-void oswald_write_number(const uint8_t x, const uint8_t y, const oswald_font_face face, const int16_t number);
+void oswald_write_number(const uint8_t x, const uint8_t y, const oswald_font_face face, const boolean invert, const int16_t number);
 
 #endif