diff options
Diffstat (limited to 'firmware/drivers/lcd-recorder.c')
-rw-r--r-- | firmware/drivers/lcd-recorder.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/firmware/drivers/lcd-recorder.c b/firmware/drivers/lcd-recorder.c index 597c7d246a..a409c9fc63 100644 --- a/firmware/drivers/lcd-recorder.c +++ b/firmware/drivers/lcd-recorder.c | |||
@@ -543,6 +543,29 @@ void lcd_invertrect (int x, int y, int nx, int ny) | |||
543 | INVERT_PIXEL((x + i), (y + j)); | 543 | INVERT_PIXEL((x + i), (y + j)); |
544 | } | 544 | } |
545 | 545 | ||
546 | /* Reverse the invert setting of the scrolling line (if any) at given char | ||
547 | position. Setting will go into affect next time line scrolls. */ | ||
548 | void lcd_invertscroll(int x, int y) | ||
549 | { | ||
550 | struct scrollinfo* s; | ||
551 | int index; | ||
552 | |||
553 | for ( index = 0; index < SCROLLABLE_LINES; index++ ) { | ||
554 | /* is this a scrolling line? */ | ||
555 | if ( !(scrolling_lines&(1<<index)) ) | ||
556 | continue; | ||
557 | |||
558 | s = &scroll[index]; | ||
559 | |||
560 | if (s->startx == x && s->starty == y) | ||
561 | { | ||
562 | /* Found the line */ | ||
563 | s->invert = !s->invert; | ||
564 | break; | ||
565 | } | ||
566 | } | ||
567 | } | ||
568 | |||
546 | void lcd_drawline( int x1, int y1, int x2, int y2 ) | 569 | void lcd_drawline( int x1, int y1, int x2, int y2 ) |
547 | { | 570 | { |
548 | int numpixels; | 571 | int numpixels; |