From 45e3628cc4d3e771bdd6e73214b947a3a26a1f5c Mon Sep 17 00:00:00 2001 From: sonil Date: Tue, 1 Nov 2022 16:40:49 +0800 Subject: [PATCH] update button click rect --- src/automap.cc | 12 ++++++++++-- src/character_editor.cc | 15 ++++++++++++--- src/character_selector.cc | 18 ++++++++++++++---- src/pipboy.cc | 9 ++++++++- 4 files changed, 44 insertions(+), 10 deletions(-) diff --git a/src/automap.cc b/src/automap.cc index 5d5e44c..58d351c 100644 --- a/src/automap.cc +++ b/src/automap.cc @@ -322,6 +322,12 @@ void automapShow(bool isInGame, bool isUsingScanner) int automapWindowX = (screenGetWidth() - AUTOMAP_WINDOW_WIDTH) / 2; int automapWindowY = (screenGetHeight() - AUTOMAP_WINDOW_HEIGHT) / 2; int window = windowCreate(automapWindowX, automapWindowY, AUTOMAP_WINDOW_WIDTH, AUTOMAP_WINDOW_HEIGHT, color, WINDOW_FLAG_0x10 | WINDOW_FLAG_0x04); + + Rect offset; + offset.top = -3; + offset.bottom = 2; + offset.left = -15; + offset.right = 80; int scannerBtn = buttonCreate(window, 111, @@ -335,7 +341,8 @@ void automapShow(bool isInGame, bool isUsingScanner) frmImages[AUTOMAP_FRM_BUTTON_UP].getData(), frmImages[AUTOMAP_FRM_BUTTON_DOWN].getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (scannerBtn != -1) { buttonSetCallbacks(scannerBtn, _gsound_red_butt_press, _gsound_red_butt_release); } @@ -352,7 +359,8 @@ void automapShow(bool isInGame, bool isUsingScanner) frmImages[AUTOMAP_FRM_BUTTON_UP].getData(), frmImages[AUTOMAP_FRM_BUTTON_DOWN].getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (cancelBtn != -1) { buttonSetCallbacks(cancelBtn, _gsound_red_butt_press, _gsound_red_butt_release); } diff --git a/src/character_editor.cc b/src/character_editor.cc index eaac82f..54b1296 100644 --- a/src/character_editor.cc +++ b/src/character_editor.cc @@ -1762,6 +1762,12 @@ static int characterEditorWindowInit() characterEditorRegisterInfoAreas(); soundContinueAll(); + + Rect offset; + offset.top = -7; + offset.bottom = 7; + offset.left = -8; + offset.right = 70; btn = buttonCreate( gCharacterEditorWindow, @@ -1776,7 +1782,8 @@ static int characterEditorWindowInit() _editorFrmImages[EDITOR_GRAPHIC_LITTLE_RED_BUTTON_UP].getData(), _editorFrmImages[EDITOR_GRAPHIC_LILTTLE_RED_BUTTON_DOWN].getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (btn != -1) { buttonSetCallbacks(btn, _gsound_red_butt_press, _gsound_red_butt_release); } @@ -1794,7 +1801,8 @@ static int characterEditorWindowInit() _editorFrmImages[EDITOR_GRAPHIC_LITTLE_RED_BUTTON_UP].getData(), _editorFrmImages[EDITOR_GRAPHIC_LILTTLE_RED_BUTTON_DOWN].getData(), 0, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (btn != -1) { buttonSetCallbacks(btn, _gsound_red_butt_press, _gsound_red_butt_release); } @@ -1812,7 +1820,8 @@ static int characterEditorWindowInit() _editorFrmImages[23].getData(), _editorFrmImages[24].getData(), 0, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (btn != -1) { buttonSetCallbacks(btn, _gsound_red_butt_press, _gsound_red_butt_release); } diff --git a/src/character_selector.cc b/src/character_selector.cc index b2dd214..4fb414e 100644 --- a/src/character_selector.cc +++ b/src/character_selector.cc @@ -341,6 +341,12 @@ static bool characterSelectorWindowInit() if (!_nextButtonPressedFrmImage.lock(fid)) { return characterSelectorWindowFatalError(false); } + + Rect offset; + offset.top = -5; + offset.bottom = 5; + offset.left = -15; + offset.right = 15; gCharacterSelectorWindowNextButton = buttonCreate(gCharacterSelectorWindow, CS_WINDOW_NEXT_BUTTON_X, @@ -384,7 +390,8 @@ static bool characterSelectorWindowInit() _takeButtonNormalFrmImage.getData(), _takeButtonPressedFrmImage.getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (gCharacterSelectorWindowTakeButton == -1) { return characterSelectorWindowFatalError(false); } @@ -413,7 +420,8 @@ static bool characterSelectorWindowInit() _modifyButtonNormalFrmImage.getData(), _modifyButtonPressedFrmImage.getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (gCharacterSelectorWindowModifyButton == -1) { return characterSelectorWindowFatalError(false); } @@ -443,7 +451,8 @@ static bool characterSelectorWindowInit() _createButtonNormalFrmImage.getData(), _createButtonPressedFrmImage.getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (gCharacterSelectorWindowCreateButton == -1) { return characterSelectorWindowFatalError(false); } @@ -473,7 +482,8 @@ static bool characterSelectorWindowInit() _backButtonNormalFrmImage.getData(), _backButtonPressedFrmImage.getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (gCharacterSelectorWindowBackButton == -1) { return characterSelectorWindowFatalError(false); } diff --git a/src/pipboy.cc b/src/pipboy.cc index b553fdc..02e0a71 100644 --- a/src/pipboy.cc +++ b/src/pipboy.cc @@ -575,6 +575,12 @@ static int pipboyWindowInit(int intent) buttonSetCallbacks(alarmButton, _gsound_med_butt_press, _gsound_med_butt_release); } + Rect offset; + offset.top = -3; + offset.bottom = 3; + offset.left = -2; + offset.right = 100; + int y = 341; int eventCode = 500; for (int index = 0; index < 5; index += 1) { @@ -591,7 +597,8 @@ static int pipboyWindowInit(int intent) _pipboyFrmImages[PIPBOY_FRM_LITTLE_RED_BUTTON_UP].getData(), _pipboyFrmImages[PIPBOY_FRM_LITTLE_RED_BUTTON_DOWN].getData(), NULL, - BUTTON_FLAG_TRANSPARENT); + BUTTON_FLAG_TRANSPARENT, + offset); if (btn != -1) { buttonSetCallbacks(btn, _gsound_red_butt_press, _gsound_red_butt_release); }