From dc76e42346b67941a3e3300974c39fc169cda2f3 Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Wed, 9 May 2018 22:26:49 +0200 Subject: [PATCH] added empty borders between different virtual buttons --- src/libgame/sdl.c | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/src/libgame/sdl.c b/src/libgame/sdl.c index 877bb16e..0fd3aa62 100644 --- a/src/libgame/sdl.c +++ b/src/libgame/sdl.c @@ -3050,14 +3050,39 @@ static void DrawTouchInputOverlay_ShowGridButtons(int alpha) for (x = 0; x < grid_xsize; x++) { - rect.x = (x + 0) * video.screen_width / grid_xsize; - rect.w = (x + 1) * video.screen_width / grid_xsize - rect.x; - for (y = 0; y < grid_ysize; y++) { + rect.x = (x + 0) * video.screen_width / grid_xsize; rect.y = (y + 0) * video.screen_height / grid_ysize; + rect.w = (x + 1) * video.screen_width / grid_xsize - rect.x; rect.h = (y + 1) * video.screen_height / grid_ysize - rect.y; + if (x == 0 || + overlay.grid_button[x - 1][y] != overlay.grid_button[x][y]) + { + rect.x += 2; + rect.w -= 2; + } + + if (x == grid_xsize - 1 || + overlay.grid_button[x + 1][y] != overlay.grid_button[x][y]) + { + rect.w -= 2; + } + + if (y == 0 || + overlay.grid_button[x][y - 1] != overlay.grid_button[x][y]) + { + rect.y += 2; + rect.h -= 2; + } + + if (y == grid_ysize - 1 || + overlay.grid_button[x][y + 1] != overlay.grid_button[x][y]) + { + rect.h -= 2; + } + if (overlay.grid_button[x][y] == overlay.grid_button_highlight) SDL_SetRenderDrawColor(sdl_renderer, 255, 255, 255, alpha_highlight); else -- 2.34.1