diff options
author | jsorg71 <jsorg71> | 2007-07-01 04:51:36 +0000 |
---|---|---|
committer | jsorg71 <jsorg71> | 2007-07-01 04:51:36 +0000 |
commit | 0a604248541bb76785de4ff83104f0114cbce574 (patch) | |
tree | 5c16f2cdcaa167a608ffe73bd8750caf93ebdd9c /xrdp | |
parent | bfda7f0985c0873a303df4bf9b2fe7cc481b200d (diff) | |
download | xrdp-proprietary-0a604248541bb76785de4ff83104f0114cbce574.tar.gz xrdp-proprietary-0a604248541bb76785de4ff83104f0114cbce574.zip |
added swedish keymap
Diffstat (limited to 'xrdp')
-rw-r--r-- | xrdp/lang.c | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/xrdp/lang.c b/xrdp/lang.c index 7fa63ac1..6bd2e946 100644 --- a/xrdp/lang.c +++ b/xrdp/lang.c @@ -419,6 +419,72 @@ char fr_altgr[] = }; /*****************************************************************************/ +/* swedish */ + +/* non shift chars */ +char se_noshift[] = +{ + 0, 0, '1', '2', '3', '4', '5', '6', + '7', '8', '9', '0', '+', 0xb4, 0, 0, + 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', + 'o', 'p', 0xe5, 0x22, 0, 0, 'a', 's', + 'd', 'f', 'g', 'h', 'j', 'k', 'l', 0xf6, + 0xe4, 0xa7, 0, '\'', 'z', 'x', 'c', 'v', + 'b', 'n', 'm', ',', '.', '-', 0, '*', + 0, ' ', 0, 0, 0, 0, 0, 0, + 0 , 0, 0, 0, 0, 0, 0, '7', + '8', '9', '-', '4', '5', '6', '+', '1', + '2', '3', '0', '.', 0, 0, '<', 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +/* shift chars */ +char se_shift[] = +{ + 0, 0, '!', '"', '#', 0xa4, '%', '&', + '/', '(', ')', '=', '?', '`', 0, 0, + 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', + 'O', 'P', 0xc5, 0x5e, 0, 0, 'A', 'S', + 'D', 'F', 'G', 'H', 'J', 'K', 'L', 0xd6, + 0xc4, 0xbd, 0, '*', 'Z', 'X', 'C', 'V', + 'B', 'N', 'M', ';', ':', '_', 0, '*', + 0, ' ', 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, '7', + '8', '9', '-', '4', '5', '6', '+', '1', + '2', '3', '0', '.', 0, 0, '>', 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +/* right alt chars */ +char se_altgr[] = +{ + 0, 0, 0, '@', 0xa3, '$', 0, 0, + '{', '[', ']', '}', '\\', 0, 0, 0, + '@', 0, 0x80, 0, 0, 0, 0, 0, + 0, 0, 0, '~', 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0xb5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, '$', 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, '|', 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +/*****************************************************************************/ char APP_CC get_char_from_scan_code(int device_flags, int scan_code, int* keys, int caps_lock, int num_lock, int scroll_lock, @@ -462,6 +528,12 @@ get_char_from_scan_code(int device_flags, int scan_code, int* keys, keys_shift = it_shift; keys_altgr = it_altgr; } + else if (keylayout == 0x41d) /* swedish */ + { + keys_noshift = se_noshift; + keys_shift = se_shift; + keys_altgr = se_altgr; + } else /* english us 0x409 */ { keys_noshift = en_us_noshift; |