ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/RomCheater/trunk/Win32/libWin32/Win32/Input/DXKeysToScanCodes.cs
Revision: 88
Committed: Wed May 9 20:52:20 2012 UTC (11 years, 6 months ago) by william
File size: 5585 byte(s)
Log Message:

File Contents

# Content
1 #define USE_DX_SCANCODES_ENUM // when not defined/present will cause compiler time errors saying that it is obsolete
2 using System;
3 using System.Collections.Generic;
4 using System.Text;
5 using System.Windows.Forms;
6
7 namespace libWin32.Win32.Input
8 {
9 #region Extensions Methods
10 public static class EnumExtensionMethods
11 {
12 #if !USE_DX_SCANCODES_ENUM
13 public static ENUM Assign<ENUM, BASE>(this Enum val, BASE assignable, where BASE : IConvertible
14 {
15 //bool isValidEnumValue = false;
16 //foreach (BASE value in Enum.GetValues(typeof(ENUM,,,
17 //{
18 // if (value.Equals(assignable,,
19 // {
20 // isValidEnumValue = true;
21 // }
22 //}
23 //if (!isValidEnumValue,
24 //{
25 // throw new InvalidCastException(string.Format("Value: {0} is not a valid enum value as defined in: {1}", assignable.ToString(,, typeof(ENUM,.Name,,;
26 //}
27 //else
28 //{
29 return (ENUM,Convert.ChangeType(assignable, Enum.GetUnderlyingType(val.GetType(,,,;
30 //}
31
32 }
33 #endif
34 }
35 #endregion
36
37 #if !USE_DX_SCANCODES_ENUM
38 [Obsolete("USE_DX_SCANCODES_ENUM is not defined, DXKeysToScanCodes is being pashed-out. Please assign using a short, instead.", true,]
39 #endif
40 public enum DXKeysToScanCodes : short
41 {
42 DIK_UNKOWN = 0x00,
43
44 #region Other DX Scan Codes
45 DIK_ESCAPE = 0x1,
46 DIK_1 = 0x2,
47 DIK_2 = 0x3,
48 DIK_3 = 0x4,
49 DIK_4 = 0x5,
50 DIK_5 = 0x6,
51 DIK_6 = 0x7,
52 DIK_7 = 0x8,
53 DIK_8 = 0x9,
54 DIK_9 = 0xA,
55 DIK_0 = 0xB,
56 DIK_MINUS = 0xC,
57 DIK_EQUALS = 0xD,
58 DIK_BACK = 0xE,
59 DIK_TAB = 0xF,
60 DIK_Q = 0x10,
61 DIK_W = 0x11,
62 DIK_E = 0x12,
63 DIK_R = 0x13,
64 DIK_T = 0x14,
65 DIK_Y = 0x15,
66 DIK_U = 0x16,
67 DIK_I = 0x17,
68 DIK_O = 0x18,
69 DIK_P = 0x19,
70 DIK_LBRACKET = 0x1A,
71 DIK_RBRACKET = 0x1B,
72 DIK_RETURN = 0x1C,
73 DIK_LCONTROL = 0x1D,
74 DIK_A = 0x1E,
75 DIK_S = 0x1F,
76 DIK_D = 0x20,
77 DIK_F = 0x21,
78 DIK_G = 0x22,
79 DIK_H = 0x23,
80 DIK_J = 0x24,
81 DIK_K = 0x25,
82 DIK_L = 0x26,
83 DIK_SEMICOLON = 0x27,
84 DIK_APOSTROPHE = 0x28,
85 DIK_GRAVE = 0x29,
86 DIK_LSHIFT = 0x2A,
87 DIK_BACKSLASH = 0x2B,
88 DIK_Z = 0x2C,
89 DIK_X = 0x2D,
90 DIK_C = 0x2E,
91 DIK_V = 0x2F,
92 DIK_B = 0x30,
93 DIK_N = 0x31,
94 DIK_M = 0x32,
95 DIK_COMMA = 0x33,
96 DIK_PERIOD = 0x34,
97 DIK_SLASH = 0x35,
98 DIK_RSHIFT = 0x36,
99 DIK_MULTIPLY = 0x37,
100 DIK_LMENU = 0x38,
101 DIK_SPACE = 0x39,
102 DIK_CAPITAL = 0x3A,
103 DIK_F1 = 0x3B,
104 DIK_F2 = 0x3C,
105 DIK_F3 = 0x3D,
106 DIK_F4 = 0x3E,
107 DIK_F5 = 0x3F,
108 DIK_F6 = 0x40,
109 DIK_F7 = 0x41,
110 DIK_F8 = 0x42,
111 DIK_F9 = 0x43,
112 DIK_F10 = 0x44,
113 DIK_NUMLOCK = 0x45,
114 DIK_SCROLL = 0x46,
115 DIK_NUMPAD7 = 0x47,
116 DIK_NUMPAD8 = 0x48,
117 DIK_NUMPAD9 = 0x49,
118 DIK_SUBTRACT = 0x4A,
119 DIK_NUMPAD4 = 0x4B,
120 DIK_NUMPAD5 = 0x4C,
121 DIK_NUMPAD6 = 0x4D,
122 DIK_ADD = 0x4E,
123 DIK_NUMPAD1 = 0x4F,
124 DIK_NUMPAD2 = 0x50,
125 DIK_NUMPAD3 = 0x51,
126 DIK_NUMPAD0 = 0x52,
127 DIK_DECIMAL = 0x53,
128 DIK_OEM_102 = 0x56,
129 DIK_F11 = 0x57,
130 DIK_F12 = 0x58,
131 DIK_F13 = 0x64,
132 DIK_F14 = 0x65,
133 DIK_F15 = 0x66,
134 DIK_KANA = 0x70,
135 DIK_ABNT_C1 = 0x73,
136 DIK_CONVERT = 0x79,
137 DIK_NOCONVERT = 0x7B,
138 DIK_YEN = 0x7D,
139 DIK_ABNT_C2 = 0x7E,
140 DIK_NUMPADEQUALS = 0x8D,
141 DIK_PREVTRACK = 0x90,
142 DIK_AT = 0x91,
143 DIK_COLON = 0x92,
144 DIK_UNDERLINE = 0x93,
145 DIK_KANJI = 0x94,
146 DIK_STOP = 0x95,
147 DIK_AX = 0x96,
148 DIK_UNLABELED = 0x97,
149 DIK_NEXTTRACK = 0x99,
150 DIK_NUMPADENTER = 0x9C,
151 DIK_RCONTROL = 0x9D,
152 DIK_MUTE = 0xA0,
153 DIK_CALCULATOR = 0xA1,
154 DIK_PLAYPAUSE = 0xA2,
155 DIK_MEDIASTOP = 0xA4,
156 DIK_VOLUMEDOWN = 0xAE,
157 DIK_VOLUMEUP = 0xB0,
158 DIK_WEBHOME = 0xB2,
159 DIK_NUMPADCOMMA = 0xB3,
160 DIK_DIVIDE = 0xB5,
161 DIK_SYSRQ = 0xB7,
162 DIK_RMENU = 0xB8,
163 DIK_PAUSE = 0xC5,
164 DIK_HOME = 0xC7,
165 DIK_UP = 0xC8,
166 DIK_PRIOR = 0xC9,
167 DIK_PAGEUP = DIK_PRIOR, // DIK_PRIOR, synonym
168 DIK_PGUP = DIK_PRIOR, // DIK_PAGEUP, synonym
169 DIK_LEFT = 0xCB,
170 DIK_RIGHT = 0xCD,
171 DIK_END = 0xCF,
172 DIK_DOWN = 0xD0,
173 DIK_NEXT = 0xD1,
174 DIK_PAGEDOWN = DIK_NEXT, // DIK_NEXT, synonym
175 DIK_PGDN = DIK_NEXT, // DIK_PAGEDOWN, synonym
176 DIK_INSERT = 0xD2,
177 DIK_DELETE = 0xD3,
178 DIK_LWIN = 0xDB,
179 DIK_RWIN = 0xDC,
180 DIK_APPS = 0xDD,
181 DIK_POWER = 0xDE,
182 DIK_SLEEP = 0xDF,
183 DIK_WAKE = 0xE3,
184 DIK_WEBSEARCH = 0xE5,
185 DIK_WEBFAVORITES = 0xE6,
186 DIK_WEBREFRESH = 0xE7,
187 DIK_WEBSTOP = 0xE8,
188 DIK_WEBFORWARD = 0xE9,
189 DIK_WEBBACK = 0xEA,
190 DIK_MYCOMPUTER = 0xEB,
191 DIK_MAIL = 0xEC,
192 DIK_MEDIASELECT = 0xED,
193 #endregion
194 }
195 }