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

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

unix.superglobalmegacorp.com

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