Annotation of previous/src/gui-sdl/dlgKeyboard.c, revision 1.1.1.4

1.1       root        1: /*
1.1.1.2   root        2:   Previous - dlgKeyboard.c
1.1       root        3: 
                      4:   This file is distributed under the GNU Public License, version 2 or at
                      5:   your option any later version. Read the file gpl.txt for details.
                      6: */
1.1.1.2   root        7: const char DlgKeyboard_fileid[] = "Previous dlgKeyboard.c : " __DATE__ " " __TIME__;
1.1       root        8: 
                      9: #include <unistd.h>
                     10: 
                     11: #include "main.h"
                     12: #include "configuration.h"
                     13: #include "dialog.h"
                     14: #include "sdlgui.h"
                     15: #include "file.h"
                     16: #include "screen.h"
1.1.1.4 ! root       17: #include "dimension.hpp"
1.1       root       18: 
1.1.1.2   root       19: #define ENABLE_LOADED_OPTION 0
                     20: 
1.1       root       21: #define DLGKEY_SCANCODE  4
1.1.1.2   root       22: #define DLGKEY_SYMBOLIC  5
1.1.1.3   root       23: #define DLGKEY_SWAP      8
                     24: #define DLGKEY_EXIT      20
1.1       root       25: 
                     26: 
                     27: /* The keyboard dialog: */
                     28: static SGOBJ keyboarddlg[] =
                     29: {
1.1.1.2   root       30:        { SGBOX, 0, 0, 0,0, 47,28, NULL },
                     31:        { SGTEXT, 0, 0, 15,1, 16,1, "Keyboard options" },
                     32:     
                     33:     { SGBOX, 0, 0, 2,3, 21,7, NULL },
                     34:        { SGTEXT, 0, 0, 4,4, 17,1, "Keyboard mapping:" },
                     35:        { SGRADIOBUT, 0, 0, 6,6, 10,1, "Scancode" },
                     36:        { SGRADIOBUT, 0, 0, 6,8, 10,1, "Symbolic" },
                     37:     
                     38:     { SGBOX, 0, 0, 24,3, 21,7, NULL },
                     39:     { SGTEXT, 0, 0, 26,4, 12,1, "Key options:" },
1.1.1.3   root       40:     { SGCHECKBOX, 0, 0, 26,6, 18,1, "Swap cmd and alt" },
1.1.1.2   root       41:     
                     42:     { SGBOX, 0, 0, 2,11, 43,12, NULL },
                     43:     { SGTEXT, 0, 0, 4,12, 10,1, "Shortcuts:" },
                     44:     { SGTEXT, 0, 0, 17,12, 10,1, "ctrl-alt-X (Fn)" },
                     45:     { SGTEXT, 0, 0, 6,14, 17,1, "Show main menu     -O (F12)" },
                     46:     { SGTEXT, 0, 0, 6,15, 17,1, "Pause              -P" },
                     47:     { SGTEXT, 0, 0, 6,16, 17,1, "Cold reset         -C" },
                     48:     { SGTEXT, 0, 0, 6,17, 17,1, "Lock/unlock mouse  -M" },
                     49:     { SGTEXT, 0, 0, 6,18, 17,1, "Screen toggle      -N" },
                     50:     { SGTEXT, 0, 0, 6,19, 17,1, "Fullscreen on/off  -F" },
                     51:     { SGTEXT, 0, 0, 6,20, 17,1, "Sound on/off       -S" },
                     52:     { SGTEXT, 0, 0, 6,21, 17,1, "Quit               -Q" },
                     53:     
                     54:     { SGBUTTON, SG_DEFAULT, 0, 13,25, 21,1, "Back to main menu" },
1.1       root       55:        { -1, 0, 0, 0,0, 0,0, NULL }
                     56: };
                     57: 
                     58: 
                     59: /*-----------------------------------------------------------------------*/
                     60: /**
                     61:  * Show and process the "Keyboard" dialog.
                     62:  */
                     63: void Dialog_KeyboardDlg(void)
                     64: {
1.1.1.2   root       65:        int but;
                     66: #if ENABLE_LOADED_OPTION
1.1       root       67:        char dlgmapfile[44];
1.1.1.2   root       68: #endif
1.1       root       69:        SDLGui_CenterDlg(keyboarddlg);
                     70: 
                     71:        /* Set up dialog from actual values: */
1.1.1.2   root       72:     keyboarddlg[DLGKEY_SCANCODE].state &= ~SG_SELECTED;
                     73:     keyboarddlg[DLGKEY_SYMBOLIC].state &= ~SG_SELECTED;
                     74:     
                     75:     switch (ConfigureParams.Keyboard.nKeymapType) {
                     76:         case KEYMAP_SCANCODE:
                     77:             keyboarddlg[DLGKEY_SCANCODE].state |= SG_SELECTED;
                     78:             break;
                     79:         case KEYMAP_SYMBOLIC:
                     80:             keyboarddlg[DLGKEY_SYMBOLIC].state |= SG_SELECTED;
                     81:             break;
                     82:             
                     83:         default:
                     84:             break;
                     85:     }
                     86: #if ENABLE_LOADED_OPTION
                     87:        File_ShrinkName(dlgmapfile, ConfigureParams.Keyboard.szMappingFileName, keyboarddlg[DLGKEY_MAPNAME].w);
1.1       root       88:        keyboarddlg[DLGKEY_MAPNAME].txt = dlgmapfile;
1.1.1.2   root       89: #endif
                     90:     
1.1.1.4 ! root       91:     if (ConfigureParams.Keyboard.bSwapCmdAlt) {
        !            92:         keyboarddlg[DLGKEY_SWAP].state |= SG_SELECTED;         
        !            93:        }
        !            94:     else {
        !            95:         keyboarddlg[DLGKEY_SWAP].state &= ~SG_SELECTED;                
        !            96:        }
1.1       root       97: 
                     98:        /* Show the dialog: */
                     99:        do
                    100:        {
                    101:                but = SDLGui_DoDialog(keyboarddlg, NULL);
1.1.1.2   root      102: #if ENABLE_LOADED_OPTION
1.1       root      103:                if (but == DLGKEY_MAPBROWSE)
                    104:                {
                    105:                        SDLGui_FileConfSelect(dlgmapfile,
                    106:                                              ConfigureParams.Keyboard.szMappingFileName,
                    107:                                              keyboarddlg[DLGKEY_MAPNAME].w, false);
                    108:                }
1.1.1.2   root      109: #endif
1.1       root      110:        }
                    111:        while (but != DLGKEY_EXIT && but != SDLGUI_QUIT
                    112:                && but != SDLGUI_ERROR && !bQuitProgram);
                    113: 
                    114:        /* Read values from dialog: */
1.1.1.2   root      115:        if (keyboarddlg[DLGKEY_SCANCODE].state & SG_SELECTED)
1.1       root      116:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_SCANCODE;
                    117:        else
1.1.1.2   root      118:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_SYMBOLIC;
                    119: #if ENABLE_LOADED_OPTION
                    120:        else
1.1       root      121:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_LOADED;
1.1.1.2   root      122: #endif
                    123:     ConfigureParams.Keyboard.bSwapCmdAlt = (keyboarddlg[DLGKEY_SWAP].state & SG_SELECTED);
1.1       root      124: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.