1
0
forked from me/IronOS

Add method to draw a scrolling indicator

This commit is contained in:
Patrick Horlebein
2020-04-03 16:58:53 +02:00
parent d45b1d7e27
commit 74d144eef8
2 changed files with 20 additions and 0 deletions

View File

@@ -106,6 +106,25 @@ void OLED::drawChar(char c) {
cursor_x += fontWidth;
}
/*
* Draws a one pixel wide scrolling indicator. y is the upper vertical position
* of the indicator in pixels (0..<16).
*/
void OLED::drawScrollIndicator(uint8_t y, uint8_t height) {
union u_type {
uint16_t whole;
uint8_t strips[2];
} column;
column.whole = (1 << height) - 1;
column.whole <<= y;
// Draw a one pixel wide bar to the left with a single pixel as
// the scroll indicator.
fillArea(OLED_WIDTH - 1, 0, 1, 8, column.strips[0]);
fillArea(OLED_WIDTH - 1, 8, 1, 8, column.strips[1]);
}
void OLED::setRotation(bool leftHanded) {
#ifdef MODEL_TS80
leftHanded = !leftHanded;