文字入力画面、カーソル移動暫定的実装

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@162 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yoshida_teruhisa 2007-11-13 10:09:37 +00:00
parent 734c3d8740
commit 465a3149c2

View File

@ -266,7 +266,7 @@ static void DrawCharKeys( void )
if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) ) if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) )
{ {
int x = code - CODE_BUTTON_TOP_; int x = code - CODE_BUTTON_TOP_;
PutStringUTF16( CLIST_LT_X + 8*8*(x%2) , CLIST_LT_Y + 15*(7+x/2) , color, str_button[x] ); PutStringUTF16( CLIST_LT_X + 64 + 8*8*(x%2) , CLIST_LT_Y + 15*(7+x/2) , color, str_button[x] );
} }
else else
{ {
@ -309,24 +309,39 @@ static int SetNicknameMain( void )
// キー入力処理 // キー入力処理
//-------------------------------------- //--------------------------------------
if( pad.trg & PAD_KEY_RIGHT ){ // カーソルの移動 if( pad.trg & PAD_KEY_RIGHT ){ // カーソルの移動
if( ++s_key_csr == CHAR_LIST_CHAR_NUM ) { do
s_key_csr=0; {
if(s_key_csr%15 != 14) s_key_csr++;
else s_key_csr -= 14;
if( s_key_csr == CHAR_LIST_CHAR_NUM ) s_key_csr -= s_key_csr%15;
} }
while(char_tbl[char_mode][s_key_csr]==EOM_);
} }
if( pad.trg & PAD_KEY_LEFT ){ if( pad.trg & PAD_KEY_LEFT ){
if( --s_key_csr & 0x8000 ) { do
s_key_csr=CHAR_LIST_CHAR_NUM - 1; {
if(s_key_csr%15 != 0) s_key_csr--;
else s_key_csr += 14;
if( s_key_csr & 0x8000 ) s_key_csr = 14;
} }
while(char_tbl[char_mode][s_key_csr]==EOM_);
} }
if( pad.trg & PAD_KEY_DOWN ){ // カーソルの移動 if( pad.trg & PAD_KEY_DOWN ){ // カーソルの移動
if( ++s_key_csr == CHAR_LIST_CHAR_NUM ) { do
s_csr=0; {
s_key_csr += 15;
if( s_key_csr >= CHAR_LIST_CHAR_NUM ) s_key_csr -= 15*(s_key_csr/15);
} }
while(char_tbl[char_mode][s_key_csr]==EOM_);
} }
if( pad.trg & PAD_KEY_UP ){ if( pad.trg & PAD_KEY_UP ){
if( --s_key_csr & 0x8000 ) { do
s_csr=CHAR_LIST_CHAR_NUM - 1; {
if( s_key_csr < 15 ) s_key_csr += (CHAR_LIST_CHAR_NUM/15)*15;
else s_key_csr -= 15;
if( s_key_csr >= CHAR_LIST_CHAR_NUM ) s_key_csr -= 15;
} }
while(char_tbl[char_mode][s_key_csr]==EOM_);
} }
tp_select = SelectMenuByTP( &s_csr, &s_settingParam ); tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
@ -640,11 +655,11 @@ static const u16 char_tbl[CHAR_LIST_MODE_NUM][CHAR_LIST_CHAR_NUM] = {
L'', L'', L'', L'', L'', L'', L'', L'', L'', L'',
L'', L'', L'', L'', L'', L'', L'', L'', L'', L'',
VAR_BUTTON1_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
VAR_BUTTON2_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
DEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, DEL_BUTTON_, SPACE_BUTTON_, VAR_BUTTON1_, VAR_BUTTON2_, EOM_,
CANCEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
OK_BUTTON_, SPACE_BUTTON_, EOM_, EOM_, EOM_, OK_BUTTON_, CANCEL_BUTTON_, EOM_, EOM_, EOM_,
}, },
{ // カタカナ { // カタカナ
@ -670,11 +685,11 @@ static const u16 char_tbl[CHAR_LIST_MODE_NUM][CHAR_LIST_CHAR_NUM] = {
L'', L'', L'', L'', L'', L'', L'', L'', L'', L'',
L'', L'', L'', L'', EOM_, L'', L'', L'', L'', EOM_,
VAR_BUTTON1_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
VAR_BUTTON2_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
DEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, DEL_BUTTON_, SPACE_BUTTON_, VAR_BUTTON1_, VAR_BUTTON2_, EOM_,
CANCEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
OK_BUTTON_, SPACE_BUTTON_, EOM_, EOM_, EOM_, OK_BUTTON_, CANCEL_BUTTON_, EOM_, EOM_, EOM_,
}, },
{ // 英数 { // 英数
@ -700,11 +715,11 @@ static const u16 char_tbl[CHAR_LIST_MODE_NUM][CHAR_LIST_CHAR_NUM] = {
L'', EOM_, L'', EOM_, L'', L'', EOM_, L'', EOM_, L'',
EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
VAR_BUTTON1_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
VAR_BUTTON2_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
DEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, DEL_BUTTON_, SPACE_BUTTON_, VAR_BUTTON1_, VAR_BUTTON2_, EOM_,
CANCEL_BUTTON_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_, EOM_,
OK_BUTTON_, SPACE_BUTTON_, EOM_, EOM_, EOM_, OK_BUTTON_, CANCEL_BUTTON_, EOM_, EOM_, EOM_,
}, },
}; };