diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/plugins/goban/display.c | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/apps/plugins/goban/display.c b/apps/plugins/goban/display.c index 8c18039759..64b3adebb4 100644 --- a/apps/plugins/goban/display.c +++ b/apps/plugins/goban/display.c | |||
@@ -938,14 +938,15 @@ draw_stone_raw (int pixel_x, int pixel_y, bool black) | |||
938 | #if LCD_DEPTH > 1 | 938 | #if LCD_DEPTH > 1 |
939 | rb->lcd_set_foreground (black ? BLACK_COLOR : WHITE_COLOR); | 939 | rb->lcd_set_foreground (black ? BLACK_COLOR : WHITE_COLOR); |
940 | #else | 940 | #else |
941 | if (black) | 941 | int draw_mode; |
942 | { | 942 | /* check whether foreground is bright or dark */ |
943 | rb->lcd_set_drawmode (DRMODE_SOLID); | 943 | #if defined(HAVE_NEGATIVE_LCD) |
944 | } | 944 | draw_mode = DRMODE_SOLID | (black ? DRMODE_INVERSEVID : 0); |
945 | else | 945 | #else |
946 | { | 946 | draw_mode = DRMODE_SOLID | (black ? 0 : DRMODE_INVERSEVID); |
947 | rb->lcd_set_drawmode (DRMODE_SOLID + DRMODE_INVERSEVID); | 947 | #endif /* HAVE_NEGATIVE_LCD */ |
948 | } | 948 | |
949 | rb->lcd_set_drawmode (draw_mode); | ||
949 | #endif | 950 | #endif |
950 | 951 | ||
951 | draw_circle (pixel_x + LINE_OFFSET, | 952 | draw_circle (pixel_x + LINE_OFFSET, |
@@ -955,17 +956,11 @@ draw_stone_raw (int pixel_x, int pixel_y, bool black) | |||
955 | #if LCD_DEPTH > 1 | 956 | #if LCD_DEPTH > 1 |
956 | rb->lcd_set_foreground (black ? WHITE_COLOR : BLACK_COLOR); | 957 | rb->lcd_set_foreground (black ? WHITE_COLOR : BLACK_COLOR); |
957 | #else | 958 | #else |
958 | if (black) | 959 | rb->lcd_set_drawmode (draw_mode ^ DRMODE_INVERSEVID); |
959 | { | ||
960 | rb->lcd_set_drawmode (DRMODE_SOLID + DRMODE_INVERSEVID); | ||
961 | } | ||
962 | else | ||
963 | { | ||
964 | rb->lcd_set_drawmode (DRMODE_SOLID); | ||
965 | } | ||
966 | #endif /* LCD_DEPTH > 1 */ | 960 | #endif /* LCD_DEPTH > 1 */ |
967 | 961 | ||
968 | if (!black) | 962 | /* outline stones of background color only */ |
963 | if (draw_mode & DRMODE_INVERSEVID) | ||
969 | { | 964 | { |
970 | draw_circle (pixel_x + LINE_OFFSET, | 965 | draw_circle (pixel_x + LINE_OFFSET, |
971 | pixel_y + LINE_OFFSET, LINE_OFFSET, false); | 966 | pixel_y + LINE_OFFSET, LINE_OFFSET, false); |