]> git.karo-electronics.de Git - oswald.git/blobdiff - ui/LcdDisplay.c
Rework font code, add new fonts, also proportional, rework watch usage - "SET" button...
[oswald.git] / ui / LcdDisplay.c
diff --git a/ui/LcdDisplay.c b/ui/LcdDisplay.c
deleted file mode 100644 (file)
index ae4aea5..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-#include "oswald.h"
-#include "oswald_hal.h"
-#include "oswald_strings.h"
-#include "Fonts.h"
-
-#include "LcdDisplay.h"
-
-
-void DrawLcdLineBresenham(const uint8_t xstart, const uint8_t ystart, const uint8_t xend, const uint8_t yend)
-{
-       int x, y, t, dx, dy, incx, incy, pdx, pdy, ddx, ddy, es, el, err;
-       dx = xend - xstart;
-       dy = yend - ystart;
-       incx = (dx >= 0) ? 1 : -1;
-       incy = (dy >= 0) ? 1 : -1;
-
-       if (dx<0)
-               dx = -dx;
-       if (dy<0)
-               dy = -dy;
-       if (dx>dy) {
-               pdx = incx; pdy = 0;
-               ddx=incx; ddy=incy;
-               es =dy;   el =dx;
-       } else {
-               pdx=0;    pdy=incy;
-               ddx=incx; ddy=incy;
-               es =dx;   el =dy;
-       }
-       x = xstart;
-       y = ystart;
-       err = el/2;
-       hal_lcd_set_pixel(x, y, TRUE);
-       for (t = 0; t < el; ++t) {
-               err -= es; 
-               if (err < 0) {
-                       err += el;
-                       x += ddx;
-                       y += ddy;
-               } else {
-                       x += pdx;
-                       y += pdy;
-               }
-               hal_lcd_set_pixel(x, y, TRUE);
-       }
-       // lcd_update_display();
-}
-
-void DrawLcdLineBresenhamWW(const uint8_t xstart, const uint8_t ystart, const uint8_t xend, const uint8_t yend, const uint8_t thickness)
-{
-       int i, x, y, t, dx, dy, incx, incy, pdx, pdy, ddx, ddy, es, el, err;
-       dx = xend - xstart;
-       dy = yend - ystart;
-       incx = (dx >= 0) ? 1 : -1;
-       incy = (dy >= 0) ? 1 : -1;
-
-       if (dx<0)
-               dx = -dx;
-       if (dy<0)
-               dy = -dy;
-       if (dx>dy) {
-               pdx = incx; pdy = 0;
-               ddx=incx; ddy=incy;
-               es =dy;   el =dx;
-       } else {
-               pdx=0;    pdy=incy;
-               ddx=incx; ddy=incy;
-               es =dx;   el =dy;
-       }
-       x = xstart;
-       y = ystart;
-       err = el/2;
-       hal_lcd_set_pixel(x, y, TRUE);
-       for (i=1; i<thickness; i++) {
-               hal_lcd_set_pixel(x-i, y, TRUE);
-               hal_lcd_set_pixel(x+i, y, TRUE);
-               hal_lcd_set_pixel(x, y-i, TRUE);
-               hal_lcd_set_pixel(x, y+i, TRUE);
-       }
-       for (t = 0; t < el; ++t) {
-               err -= es; 
-               if (err < 0) {
-                       err += el;
-                       x += ddx;
-                       y += ddy;
-               } else {
-                       x += pdx;
-                       y += pdy;
-               }
-               hal_lcd_set_pixel(x, y, TRUE);
-               for (i=1; i<thickness; i++) {
-                       hal_lcd_set_pixel(x-i, y, TRUE);
-                       hal_lcd_set_pixel(x+i, y, TRUE);
-                       hal_lcd_set_pixel(x, y-i, TRUE);
-                       hal_lcd_set_pixel(x, y+i, TRUE);
-               }
-       }
-       // lcd_update_display();
-}
-
-u8t WriteLcdCharacter(const uint8_t x, const uint8_t y, const uint8_t Character)
-{
-       u8t CharacterHeight = GetCharacterHeight();
-       u8t CharacterWidth = GetCharacterWidth(Character);
-       u16t bitmap[MAX_FONT_ROWS];
-       int lx, ly;
-
-       GetCharacterBitmap(Character, bitmap);
-
-       // printf("cw=%d ch=%d\n", CharacterWidth, CharacterHeight);
-       for (ly=0; ly<CharacterHeight; ly++) {
-               for (lx=0; lx<CharacterWidth; lx++) {
-                       if (bitmap[ly] & (1<<lx)) {
-                               hal_lcd_set_pixel(lx+x, ly+y, TRUE);
-                               // printf(".");
-                       } /*else {
-                               hal_lcd_set_pixel(lx+x, ly+y, FALSE);
-                               // printf(" ");
-                       }*/
-               }
-               // printf("\n");
-       }
-       // lcd_update_display();
-       return CharacterWidth + GetFontSpacing();
-}
-
-u8t WriteLcdString(const uint8_t x, const uint8_t y, const char *str)
-{
-       int lx, i, strl;
-
-       strl = oswald_strlen((char *)str);
-       if (strl == 0)
-               return 0;
-
-       lx = x;
-       for (i=0; i<strl; i++) {
-               lx += WriteLcdCharacter(lx, y, str[i]);
-       }
-       return lx;
-}
-
-
-void WriteLcdNumber(const uint8_t x, const uint8_t y, const int16_t number)
-{
-       int lx, i, strl;
-       char str[8];
-
-       itoa(number, str, 10);
-       strl = oswald_strlen(str);
-       if (strl == 0)
-               return;
-
-       lx = x;
-       for (i=0; i<strl; i++) {
-               lx += WriteLcdCharacter(lx, y, str[i]);
-       }
-}
-