/*******************<FILE HEADER>**********************************************
|--<NAME>----------------------------------------------------------------------
|N1 VKeyboardSupport(VKeyboardSupport.js)
|--<TITLE>---------------------------------------------------------------------
|
|T1 SCRIPT:汎用JavaScript(キーボード入力支援)
|
|--<MODIFICATION HISTORY>------------------------------------------------------
|Create by SHOJI/YIC 2007.03.17

|============================================================================*/
//キーボード処理対応表
//キーコード、キー名、実行メソッド
//実行メソッドは任意指定。clickButton(id)を呼べば、指定したidの要素をクリックする。
//Methodにdisable()を指定すれば、そのキーを無効化できる。
//ただしF1でのヘルプ表示を抑制するには、onLoad時にdisableHelp()を呼んでおく必要がある。
var KEYMAP = [
               {Code:'27', Name:'ESC', Id:'Close', Method:'clickButton("Close")' }
              ,{Code:'112', Name:'F1', Id:'', Method:'' }
              ,{Code:'113', Name:'F2', Id:'', Method:'' }
              ,{Code:'114', Name:'F3', Id:'', Method:'' }
              ,{Code:'115', Name:'F4', Id:'', Method:'' }
              ,{Code:'116', Name:'F5', Id:'', Method:'' }
              ,{Code:'117', Name:'F6', Id:'', Method:'' }
              ,{Code:'118', Name:'F7', Id:'', Method:'' }
              ,{Code:'119', Name:'F8', Id:'Create', Method:'clickButton("Create")' }
              ,{Code:'120', Name:'F9', Id:'Search', Method:'clickButton("Search")' }
              ,{Code:'121', Name:'F10', Id:'', Method:'' }
              ,{Code:'122', Name:'F11', Id:'', Method:'' }
              ,{Code:'123', Name:'F12', Id:'Save', Method:'clickButton("Save")' }
              ];


//キーイベント処理
//処理対象のキー以外はイベントを返す
function onKeyDown_Support(evt){
    if (document.all) {	//IE対策
        evt = event;
    }
    for( var i=0; i<KEYMAP.length; i++ ){
        if( KEYMAP[i].Code == evt.keyCode && KEYMAP[i].Method != ""){
            if( KEYMAP[i].Method == "disable()" ){
                evt.keyCode = null;
                return false;
            }
            return execMethod(KEYMAP[i],evt);
        }
    }
    return true;
}

function addButtonLabel(){
    buttons = document.getElementsByTagName("button");
    for( var i=0; i<KEYMAP.length; i++ ){
        for ( var k=0; k<buttons.length; k++) {
            if( buttons[k].id != "" && buttons[k].id == KEYMAP[i].Id ){
                buttons[k].value = buttons[k].value + "[" + KEYMAP[i].Name + "]";
                break;
            }
        }
    }
    return true;
}

