diff options
| author | H.G. Muller <h.g.muller@hccnet.nl> | 2009-07-11 18:13:50 -0700 |
|---|---|---|
| committer | Arun Persaud <arun@nubati.net> | 2009-07-11 18:13:50 -0700 |
| commit | 09d3d08d9ce11ff482e34bad7b97380f134c14f4 (patch) | |
| tree | 8bc2b6067c6c470f10dff0add62796add7b61089 | |
| parent | 27a6dc15aef8b81f365bb0d87ee73ef4651e00d1 (diff) | |
| download | xboard-09d3d08d9ce11ff482e34bad7b97380f134c14f4.tar.gz | |
some major re-assignment of accelerator keys in the JAWS
| -rw-r--r-- | winboard/jaws.c | 51 | ||||
| -rw-r--r-- | winboard/jaws.rc | 48 |
2 files changed, 59 insertions, 40 deletions
diff --git a/winboard/jaws.c b/winboard/jaws.c index a8555a0..d3856ae 100644 --- a/winboard/jaws.c +++ b/winboard/jaws.c @@ -153,6 +153,7 @@ VOID SayString(char *mess, BOOL flag) static int oldFromX, oldFromY;
static int timeflag;
static int suppressClocks = 0;
+static int suppressOneKey = 0;
BOOL
InitJAWS()
@@ -1086,23 +1087,17 @@ NiceTime(int x) return (x%3000 == 0);
}
+#if 0
+ if(isalpha((char)wParam)) {
+ /* capitals of any ind are intercepted and distinguished by left and right shift */
+ int mine = GetKeyState(VK_RSHIFT) < 0;
+ if(mine || GetKeyState(VK_LSHIFT) < 0) {
+#endif
+
#define JAWS_ALT_INTERCEPT \
- if(isalpha((char)wParam)) {\
- /* capitals of any ind are intercepted and distinguished by left and right shift */\
- int mine = GetKeyState(VK_RSHIFT) < 0;\
- if(mine || GetKeyState(VK_LSHIFT) < 0) {\
-\
- if(gameMode == IcsPlayingWhite || gameMode == MachinePlaysBlack) mine = !mine;\
-\
- if(ToLower((char)wParam) == 'x') {\
- SayPieces(mine ? WhitePlay : BlackPlay);\
- break;\
- } else\
- if(CharToPiece((char)wParam) != EmptySquare) {\
- SayPieces(CharToPiece(mine ? ToUpper((char)wParam) : ToLower((char)wParam)));\
- break;\
- }\
- }\
+ if(suppressOneKey) {\
+ suppressOneKey = 0;\
+ if(GetKeyState(VK_MENU) < 0 && GetKeyState(VK_CONTROL) < 0) break;\
}\
if ((char)wParam == 022 && gameMode == EditPosition) { /* <Ctl R>. Pop up piece menu */\
POINT pt; int x, y;\
@@ -1126,6 +1121,30 @@ NiceTime(int x) #define JAWS_KB_NAVIGATION \
\
case WM_KEYDOWN:\
+\
+ if(GetKeyState(VK_MENU) < 0 && GetKeyState(VK_CONTROL) < 0) {\
+ /* Control + Alt + letter used for speaking piece positions */\
+ static int lastTime; static char lastChar;\
+ int mine = 0, time = GetTickCount(); char c;\
+\
+ if((char)wParam == lastChar && time-lastTime < 250) mine = 1;\
+ lastChar = wParam; lastTime = time;\
+ c = wParam;\
+\
+ if(gameMode == IcsPlayingWhite || gameMode == MachinePlaysBlack) mine = !mine;\
+\
+ if(ToLower(c) == 'x') {\
+ SayPieces(mine ? WhitePlay : BlackPlay);\
+ suppressOneKey = 1;\
+ break;\
+ } else\
+ if(CharToPiece(c) != EmptySquare) {\
+ SayPieces(CharToPiece(mine ? ToUpper(c) : ToLower(c)));\
+ suppressOneKey = 1;\
+ break;\
+ }\
+ }\
+\
switch (wParam) {\
case VK_LEFT:\
case VK_RIGHT:\
diff --git a/winboard/jaws.rc b/winboard/jaws.rc index 14e513e..68d9ba9 100644 --- a/winboard/jaws.rc +++ b/winboard/jaws.rc @@ -1050,7 +1050,7 @@ BEGIN BEGIN
MENUITEM "New &Game\tCtrl-N", IDM_NewGame
MENUITEM "New Shuffle Game...", IDM_NewGameFRC
- MENUITEM "New Variant...\tAlt+Ctrl+V", IDM_NewVariant
+ MENUITEM "New Variant...\tAlt+Shift+V", IDM_NewVariant
MENUITEM SEPARATOR
MENUITEM "&Load Game...\tCtrl-O", IDM_LoadGame
MENUITEM "Load &Next Game\tAlt+PgDn", IDM_LoadNextGame
@@ -1073,7 +1073,7 @@ BEGIN MENUITEM SEPARATOR
MENUITEM "Cop&y Position To Clipboard\tAlt+Shift+C",
IDM_CopyPosition
- MENUITEM "Pas&te Position From Clipboard\tAlt+Shift+V",
+ MENUITEM "Pas&te Position From Clipboard\tControl+Shift+V",
IDM_PasteAny
MENUITEM SEPARATOR
MENUITEM "E&xit", IDM_Exit
@@ -1091,10 +1091,10 @@ BEGIN MENUITEM "&Edit Position\tShift+Ctrl+E",IDM_EditPosition
MENUITEM "Trai&ning", IDM_Training, GRAYED
MENUITEM SEPARATOR
- MENUITEM "Show Engine &Output\tAlt+Ctrl+O",IDM_ShowEngineOutput
- MENUITEM "Show Evaluation Graph\tAlt+Ctrl+E",IDM_ShowEvalGraph
- MENUITEM "Show Game &List\tAlt+Ctrl+G", IDM_ShowGameList
- MENUITEM "Show Move History\tAlt+Ctrl+H",IDM_ShowMoveHistory
+ MENUITEM "Show Engine &Output\tAlt+Shift+O",IDM_ShowEngineOutput
+ MENUITEM "Show Evaluation Graph\tAlt+Shift+E",IDM_ShowEvalGraph
+ MENUITEM "Show Game &List\tAlt+Shift+G", IDM_ShowGameList
+ MENUITEM "Show Move History\tAlt+Shift+H",IDM_ShowMoveHistory
MENUITEM SEPARATOR
MENUITEM "Edit &Tags...", IDM_EditTags
MENUITEM "Edit &Comment...", IDM_EditComment
@@ -1141,17 +1141,17 @@ BEGIN MENUITEM SEPARATOR
MENUITEM "&General...", IDM_GeneralOptions
MENUITEM "&Board...", IDM_BoardOptions
- MENUITEM "Adjudications...\tAlt+Ctrl+J",IDM_EnginePlayOptions
- MENUITEM "Engine Settings...\tAlt+Ctrl+U",IDM_OptionsUCI
+ MENUITEM "Adjudications...\tAlt+Shift+J",IDM_EnginePlayOptions
+ MENUITEM "Engine Settings...\tAlt+Shift+U",IDM_OptionsUCI
MENUITEM "&ICS...", IDM_IcsOptions, GRAYED
MENUITEM "&Fonts...", IDM_Fonts
MENUITEM "Soun&ds...", IDM_Sounds
- MENUITEM "Game List...\tAlt+Ctrl+G", IDM_GameListOptions
+ MENUITEM "Game List...\tAlt+Shift+G", IDM_GameListOptions
MENUITEM SEPARATOR
MENUITEM "Comm&unications...", IDM_CommPort
- MENUITEM "&Load Game...\tAlt+Ctrl+L", IDM_LoadOptions
- MENUITEM "&Save Game...\tAlt+Ctrl+S", IDM_SaveOptions
- MENUITEM "&Time Control...\tAlt+Ctrl+T",IDM_TimeControl
+ MENUITEM "&Load Game...\tAlt+Shift+L", IDM_LoadOptions
+ MENUITEM "&Save Game...\tAlt+Shift+S", IDM_SaveOptions
+ MENUITEM "&Time Control...\tAlt+Shift+T",IDM_TimeControl
MENUITEM SEPARATOR
MENUITEM "Save Settings &Now", IDM_SaveSettings
MENUITEM "Save Settings on E&xit", IDM_SaveSettingsOnExit
@@ -1359,7 +1359,7 @@ BEGIN "S", IDM_SaveGame, VIRTKEY, CONTROL, NOINVERT
"S", IDM_SavePosition, VIRTKEY, SHIFT, CONTROL, NOINVERT
"V", IDM_PasteGame, VIRTKEY, ALT, NOINVERT
- "V", IDM_PastePosition, VIRTKEY, SHIFT, ALT, NOINVERT
+ "V", IDM_PastePosition, VIRTKEY, SHIFT, CONTROL, NOINVERT
"A", IDM_PossibleAttackMove, VIRTKEY, ALT, NOINVERT
"D", IDM_PossibleAttacked, VIRTKEY, ALT, NOINVERT
"P", IDM_SayAllBoard, VIRTKEY, ALT, NOINVERT
@@ -1374,17 +1374,17 @@ BEGIN "X", IDM_SayWhosTurn, VIRTKEY, ALT, NOINVERT
"M", IDM_SayMachineMove, VIRTKEY, ALT, NOINVERT
"F", IDM_ReadColumn, VIRTKEY, ALT, NOINVERT
- "O", IDM_ShowEngineOutput, VIRTKEY, ALT, CONTROL, NOINVERT
- "H", IDM_ShowMoveHistory, VIRTKEY, ALT, CONTROL, NOINVERT
- "E", IDM_ShowEvalGraph, VIRTKEY, ALT, CONTROL, NOINVERT
- "G", IDM_ShowGameList, VIRTKEY, ALT, CONTROL, NOINVERT
- "B", IDM_BoardOptions, VIRTKEY, ALT, CONTROL, NOINVERT
- "T", IDM_TimeControl, VIRTKEY, ALT, CONTROL, NOINVERT
- "L", IDM_LoadOptions, VIRTKEY, ALT, CONTROL, NOINVERT
- "S", IDM_SaveOptions, VIRTKEY, ALT, CONTROL, NOINVERT
- "J", IDM_EnginePlayOptions, VIRTKEY, ALT, CONTROL, NOINVERT
- "U", IDM_OptionsUCI, VIRTKEY, ALT, CONTROL, NOINVERT
- "V", IDM_NewVariant, VIRTKEY, ALT, CONTROL, NOINVERT
+ "O", IDM_ShowEngineOutput, VIRTKEY, ALT, SHIFT, NOINVERT
+ "H", IDM_ShowMoveHistory, VIRTKEY, ALT, SHIFT, NOINVERT
+ "E", IDM_ShowEvalGraph, VIRTKEY, ALT, SHIFT, NOINVERT
+ "G", IDM_ShowGameList, VIRTKEY, ALT, SHIFT, NOINVERT
+ "B", IDM_BoardOptions, VIRTKEY, ALT, SHIFT, NOINVERT
+ "T", IDM_TimeControl, VIRTKEY, ALT, SHIFT, NOINVERT
+ "L", IDM_LoadOptions, VIRTKEY, ALT, SHIFT, NOINVERT
+ "S", IDM_SaveOptions, VIRTKEY, ALT, SHIFT, NOINVERT
+ "J", IDM_EnginePlayOptions, VIRTKEY, ALT, SHIFT, NOINVERT
+ "U", IDM_OptionsUCI, VIRTKEY, ALT, SHIFT, NOINVERT
+ "V", IDM_NewVariant, VIRTKEY, ALT, SHIFT, NOINVERT
"P", OPT_PonderNextMove, VIRTKEY, SHIFT, CONTROL, NOINVERT
"X", OPT_SaveExtPGN, VIRTKEY, SHIFT, CONTROL, NOINVERT
"L", OPT_TestLegality, VIRTKEY, SHIFT, CONTROL, NOINVERT
|
