Soweit ich weiß wird die Option (Weiße) Taste nicht in Normal Mode durch der SRP Firmware benutzt. Die Taste können wir dann als STRG Taste benutzen. Wenn diese Taste gedrückt wird leitet ein TAP die einfach weiter reagiert nicht und wartet auf den nächsten Tastendruck. Wird als nächste Taste seine Taste gedrückt dann wird das TAP aktiv. Ist die nächste Taste nicht seine Taste dann wird die einfach weitergeleitet und geht das TAP wieder in Standby.
Code: Alles auswählen
// Possible implementation but NOT Tested
dword TAP_EventHandler( word event, dword param1, dword param2 ){
UNUSED(param2);
dword dwState, dwSubstate;
bool bNormalState;
static bool bShiftPressed = false;
if( event == EVT_KEY ){
// Get Status
TAP_GetState(&dwState, &dwSubstate);
bNormalState = (dwState == STATE_Normal && dwSubstate == SUBSTATE_Normal);
switch(param1){
case RKEY_WHITE:
if (bNormalState){
bShiftPressed=true;
return param1;
} else {
// Do your stuff when you TAP is active
return 0;
}
break;
case RKEY_F2:
if (bNormalState){
if (bShiftPressed){
// Do Your stuff
// Reset shift key
bShiftPressed=false;
return 0;
} else {
// Pass on key
return param1;
}
} else {
// Do your stuff when you TAP is active
return 0;
}
break;
default:
// Reset shift Key
bShiftPressed=false;
return param1;
}
}
}
- mehrere TAPs können die Tasten Teilen.
- Man muss immer 2 Tasten benutzen um ein TAP zu aktivieren
- Funktioniert nur wenn all TAPs das machen