From 09f470a951477dee15c9084072c932224635c0cb Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Mon, 19 Nov 2007 01:46:18 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC=E3=82=AB?= =?UTF-8?q?=E3=83=A9=E3=83=BC=E9=81=B8=E6=8A=9E=E3=82=92=E3=82=BF=E3=83=83?= =?UTF-8?q?=E3=83=81=E3=83=91=E3=83=8D=E3=83=AB=E3=81=AB=E5=AF=BE=E5=BF=9C?= =?UTF-8?q?=20misc=E3=82=92smallfix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@206 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../MachineSettings/ARM9/src/setOwnerInfo.c | 40 +++++++++++++++++-- build/systemMenu_RED/misc/src/misc.c | 5 --- 2 files changed, 37 insertions(+), 8 deletions(-) diff --git a/build/systemMenu_RED/MachineSettings/ARM9/src/setOwnerInfo.c b/build/systemMenu_RED/MachineSettings/ARM9/src/setOwnerInfo.c index 69534dae..04a0227c 100644 --- a/build/systemMenu_RED/MachineSettings/ARM9/src/setOwnerInfo.c +++ b/build/systemMenu_RED/MachineSettings/ARM9/src/setOwnerInfo.c @@ -707,6 +707,39 @@ static void DrawColorSample( void ) } } +// SetUserColorMainのSelectSomethingByTPで使うSelectSomethingFuncの実装 +static BOOL SelectColorFunc( u16 *csr, TPData *tgt ) +{ + // まずは候補となる座標(カーソル単位)を取得 + int csrx; + int csry; + int csrxy; + int a; + int b; + BOOL ret; + + csrx = (tgt->x - 88) / 24; + csry = (tgt->y - 54) / 24; + if(csrx < 0 ) return FALSE; + + if ( csrx >= 4 ) csrx = 3; + csrxy = csrx + csry * 4; + + if ( csrxy < 0 || csrxy >= 16) return FALSE;// はみ出した + + a = 88 + csrx * 24; + b = 54 + csry * 24; + + // 候補座標の領域にタッチ座標が含まれているかチェック + ret = WithinRangeTP( a, b, a+11, b+11, tgt ); + + if(ret) + { + *csr = (u16)csrxy; + } + return ret; +} + // ユーザーカラー編集の初期化 static void SetUserColorInit( void ) { @@ -718,6 +751,7 @@ static void SetUserColorInit( void ) SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 ); s_color_csr = TSD_GetUserColor(); + tp_csr = s_color_csr; GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1); GXS_SetVisiblePlane( GX_PLANEMASK_BG0 ); @@ -728,7 +762,7 @@ static void SetUserColorInit( void ) // ユーザーカラー編集メイン static int SetUserColorMain( void ) { - SelectSomethingFunc func[2]={SelectCancelFunc, SelectOKFunc}; + SelectSomethingFunc func[3]={SelectColorFunc, SelectCancelFunc, SelectOKFunc}; BOOL tp_touch = FALSE; ReadTP(); @@ -754,8 +788,8 @@ static int SetUserColorMain( void ) } // TPチェック - tp_touch = SelectSomethingByTP(&tp_csr, func, 2 ); - if (tp_touch && (tp_csr != KEY_OK && tp_csr != KEY_CANCEL)){ + tp_touch = SelectSomethingByTP(&tp_csr, func, 3 ); + if (tp_csr != KEY_OK && tp_csr != KEY_CANCEL){ s_color_csr = (u8)tp_csr; } diff --git a/build/systemMenu_RED/misc/src/misc.c b/build/systemMenu_RED/misc/src/misc.c index 23205a49..ea3706d1 100644 --- a/build/systemMenu_RED/misc/src/misc.c +++ b/build/systemMenu_RED/misc/src/misc.c @@ -557,11 +557,6 @@ BOOL SelectSomethingByTP( u16 *nowCsr, SelectSomethingFunc func[], int funcnum ) if( csr_old == csr ) { if( same_csr_count < TP_CSR_TOUCH_COUNT ) { same_csr_count++; - { - static int a; - a = csr_old; - a++; - } } if( same_csr_count == TP_CSR_TOUCH_COUNT ) { *nowCsr = csr;