Annotation of previous_trunk/src/gui-sdl/dlgKeyboard.c, revision 1.1

1.1     ! root        1: /*
        !             2:   Previous - dlgKeyboard.c
        !             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: */
        !             7: const char DlgKeyboard_fileid[] = "Previous dlgKeyboard.c : " __DATE__ " " __TIME__;
        !             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"
        !            17: #include "dimension.hpp"
        !            18: 
        !            19: #define ENABLE_LOADED_OPTION 0
        !            20: 
        !            21: #define DLGKEY_SCANCODE  4
        !            22: #define DLGKEY_SYMBOLIC  5
        !            23: #define DLGKEY_SWAP      8
        !            24: #define DLGKEY_EXIT      20
        !            25: 
        !            26: 
        !            27: /* The keyboard dialog: */
        !            28: static SGOBJ keyboarddlg[] =
        !            29: {
        !            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:" },
        !            40:     { SGCHECKBOX, 0, 0, 26,6, 18,1, "Swap cmd and alt" },
        !            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" },
        !            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: {
        !            65:        int but;
        !            66: #if ENABLE_LOADED_OPTION
        !            67:        char dlgmapfile[44];
        !            68: #endif
        !            69:        SDLGui_CenterDlg(keyboarddlg);
        !            70: 
        !            71:        /* Set up dialog from actual values: */
        !            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);
        !            88:        keyboarddlg[DLGKEY_MAPNAME].txt = dlgmapfile;
        !            89: #endif
        !            90:     
        !            91:     if (ConfigureParams.Keyboard.bSwapCmdAlt) {
        !            92:         keyboarddlg[DLGKEY_SWAP].state |= SG_SELECTED;         
        !            93:        }
        !            94:     else {
        !            95:         keyboarddlg[DLGKEY_SWAP].state &= ~SG_SELECTED;                
        !            96:        }
        !            97: 
        !            98:        /* Show the dialog: */
        !            99:        do
        !           100:        {
        !           101:                but = SDLGui_DoDialog(keyboarddlg, NULL);
        !           102: #if ENABLE_LOADED_OPTION
        !           103:                if (but == DLGKEY_MAPBROWSE)
        !           104:                {
        !           105:                        SDLGui_FileConfSelect(dlgmapfile,
        !           106:                                              ConfigureParams.Keyboard.szMappingFileName,
        !           107:                                              keyboarddlg[DLGKEY_MAPNAME].w, false);
        !           108:                }
        !           109: #endif
        !           110:        }
        !           111:        while (but != DLGKEY_EXIT && but != SDLGUI_QUIT
        !           112:                && but != SDLGUI_ERROR && !bQuitProgram);
        !           113: 
        !           114:        /* Read values from dialog: */
        !           115:        if (keyboarddlg[DLGKEY_SCANCODE].state & SG_SELECTED)
        !           116:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_SCANCODE;
        !           117:        else
        !           118:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_SYMBOLIC;
        !           119: #if ENABLE_LOADED_OPTION
        !           120:        else
        !           121:                ConfigureParams.Keyboard.nKeymapType = KEYMAP_LOADED;
        !           122: #endif
        !           123:     ConfigureParams.Keyboard.bSwapCmdAlt = (keyboarddlg[DLGKEY_SWAP].state & SG_SELECTED);
        !           124: }

unix.superglobalmegacorp.com

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