aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xglcd.c16
-rwxr-xr-xglcd.h1
2 files changed, 15 insertions, 2 deletions
diff --git a/glcd.c b/glcd.c
index 1c67841b..55c1dc7a 100755
--- a/glcd.c
+++ b/glcd.c
@@ -69,11 +69,17 @@ static __inline uint16_t lcdReadReg(uint16_t lcdReg) {
}
uint16_t lcdGetHeight(void) {
- return lcd_height;
+ if(orientation == portrait || orientation == portraitInv)
+ return lcd_height;
+ else if(orientation == landscape || orientation == landscapeInv)
+ return lcd_width;
}
uint16_t lcdGetWidth(void) {
- return lcd_width;
+ if(orientation == portrait || orientation == portraitInv)
+ return lcd_width;
+ else if(orientation == landscape || orientation == landscapeInv)
+ return lcd_height;
}
static void lcdSetCursor(uint16_t x, uint16_t y) {
@@ -252,6 +258,12 @@ void lcdDrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t co
}
}
+void lcdDrawArrow(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t color) {
+ lcdDrawLine(x0, y0, x1, y1, color);
+ lcdDrawLine(x1, y1, x1-5, y1+5, color);
+ lcdDrawLine(x1, y1, x1-5, y1-5, color);
+}
+
void lcdDrawChar(uint16_t x, uint16_t y, unsigned char c, uint16_t charcolor, uint16_t bkcolor) {
uint16_t i = 0;
uint16_t j = 0;
diff --git a/glcd.h b/glcd.h
index f00039fc..fb9900fd 100755
--- a/glcd.h
+++ b/glcd.h
@@ -55,6 +55,7 @@ void lcdDrawLine(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t co
void lcdDrawRect(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t filled, uint16_t color);
void lcdDrawRectString(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t* str, uint16_t fontColor, uint16_t bkColor);
void lcdDrawCircle(uint16_t x, uint16_t y, uint16_t radius, uint8_t filled, uint16_t color);
+void lcdDrawArrow(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t color);
void lcdDrawString(uint16_t x, uint16_t y, uint8_t *str,uint16_t color, uint16_t bkColor);
void lcdDrawChar(uint16_t x, uint16_t y, unsigned char c, uint16_t charcolor, uint16_t bkColor);
uint16_t lcdGetHeight(void);