Winify – Diff between revs 8 and 28

Subversion Repositories:
Rev:
Only display areas with differencesIgnore whitespace
Rev 8 Rev 28
1 using System; 1 using System;
2 using System.Drawing; 2 using System.Drawing;
3 using System.Runtime.InteropServices; 3 using System.Runtime.InteropServices;
4 using System.Text; 4 using System.Text;
5   5  
6 namespace Winify.Utilities 6 namespace Winify.Utilities
7 { 7 {
8 public static class Natives 8 public static class Natives
9 { 9 {
10 #region Static Fields and Constants 10 #region Public Events & Delegates
11   -  
12 public const int HWND_BROADCAST = 0xffff; -  
13   11  
14 public static readonly int WM_SHOWME = RegisterWindowMessage("WM_SHOWME"); 12 public delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam);
15   13  
16 #endregion 14 #endregion
17   15  
-   16 #region Static Fields and Constants
-   17  
18 #region Public Events & Delegates 18 public const int HWND_BROADCAST = 0xffff;
19   19  
20 public delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam); 20 public static readonly int WM_SHOWME = RegisterWindowMessage("WM_SHOWME");
21   21  
22 #endregion 22 #endregion
23   23  
24 #region Public Enums, Properties and Fields 24 #region Public Enums, Properties and Fields
25   25  
26 public enum OCR_SYSTEM_CURSORS : uint 26 public enum OCR_SYSTEM_CURSORS : uint
27 { 27 {
28 /// <summary> 28 /// <summary>
29 /// Standard arrow and small hourglass 29 /// Standard arrow and small hourglass
30 /// </summary> 30 /// </summary>
31 OCR_APPSTARTING = 32650, 31 OCR_APPSTARTING = 32650,
32   32  
33 /// <summary> 33 /// <summary>
34 /// Standard arrow 34 /// Standard arrow
35 /// </summary> 35 /// </summary>
36 OCR_NORMAL = 32512, 36 OCR_NORMAL = 32512,
37   37  
38 /// <summary> 38 /// <summary>
39 /// Crosshair 39 /// Crosshair
40 /// </summary> 40 /// </summary>
41 OCR_CROSS = 32515, 41 OCR_CROSS = 32515,
42   42  
43 /// <summary> 43 /// <summary>
44 /// Windows 2000/XP: Hand 44 /// Windows 2000/XP: Hand
45 /// </summary> 45 /// </summary>
46 OCR_HAND = 32649, 46 OCR_HAND = 32649,
47   47  
48 /// <summary> 48 /// <summary>
49 /// Arrow and question mark 49 /// Arrow and question mark
50 /// </summary> 50 /// </summary>
51 OCR_HELP = 32651, 51 OCR_HELP = 32651,
52   52  
53 /// <summary> 53 /// <summary>
54 /// I-beam 54 /// I-beam
55 /// </summary> 55 /// </summary>
56 OCR_IBEAM = 32513, 56 OCR_IBEAM = 32513,
57   57  
58 /// <summary> 58 /// <summary>
59 /// Slashed circle 59 /// Slashed circle
60 /// </summary> 60 /// </summary>
61 OCR_NO = 32648, 61 OCR_NO = 32648,
62   62  
63 /// <summary> 63 /// <summary>
64 /// Four-pointed arrow pointing north, south, east, and west 64 /// Four-pointed arrow pointing north, south, east, and west
65 /// </summary> 65 /// </summary>
66 OCR_SIZEALL = 32646, 66 OCR_SIZEALL = 32646,
67   67  
68 /// <summary> 68 /// <summary>
69 /// Double-pointed arrow pointing northeast and southwest 69 /// Double-pointed arrow pointing northeast and southwest
70 /// </summary> 70 /// </summary>
71 OCR_SIZENESW = 32643, 71 OCR_SIZENESW = 32643,
72   72  
73 /// <summary> 73 /// <summary>
74 /// Double-pointed arrow pointing north and south 74 /// Double-pointed arrow pointing north and south
75 /// </summary> 75 /// </summary>
76 OCR_SIZENS = 32645, 76 OCR_SIZENS = 32645,
77   77  
78 /// <summary> 78 /// <summary>
79 /// Double-pointed arrow pointing northwest and southeast 79 /// Double-pointed arrow pointing northwest and southeast
80 /// </summary> 80 /// </summary>
81 OCR_SIZENWSE = 32642, 81 OCR_SIZENWSE = 32642,
82   82  
83 /// <summary> 83 /// <summary>
84 /// Double-pointed arrow pointing west and east 84 /// Double-pointed arrow pointing west and east
85 /// </summary> 85 /// </summary>
86 OCR_SIZEWE = 32644, 86 OCR_SIZEWE = 32644,
87   87  
88 /// <summary> 88 /// <summary>
89 /// Vertical arrow 89 /// Vertical arrow
90 /// </summary> 90 /// </summary>
91 OCR_UP = 32516, 91 OCR_UP = 32516,
92   92  
93 /// <summary> 93 /// <summary>
94 /// Hourglass 94 /// Hourglass
95 /// </summary> 95 /// </summary>
96 OCR_WAIT = 32514 96 OCR_WAIT = 32514
97 } 97 }
98   98  
99 /// <summary> 99 /// <summary>
100 /// Windows Messages 100 /// Windows Messages
101 /// Defined in winuser.h from Windows SDK v6.1 101 /// Defined in winuser.h from Windows SDK v6.1
102 /// Documentation pulled from MSDN. 102 /// Documentation pulled from MSDN.
103 /// </summary> 103 /// </summary>
104 public enum WM : uint 104 public enum WM : uint
105 { 105 {
106 /// <summary> 106 /// <summary>
107 /// The WM_NULL message performs no operation. An application sends the WM_NULL message if it wants to post a message 107 /// The WM_NULL message performs no operation. An application sends the WM_NULL message if it wants to post a message
108 /// that the recipient window will ignore. 108 /// that the recipient window will ignore.
109 /// </summary> 109 /// </summary>
110 NULL = 0x0000, 110 NULL = 0x0000,
111   111  
112 /// <summary> 112 /// <summary>
113 /// The WM_CREATE message is sent when an application requests that a window be created by calling the CreateWindowEx 113 /// The WM_CREATE message is sent when an application requests that a window be created by calling the CreateWindowEx
114 /// or CreateWindow function. (The message is sent before the function returns.) The window procedure of the new window 114 /// or CreateWindow function. (The message is sent before the function returns.) The window procedure of the new window
115 /// receives this message after the window is created, but before the window becomes visible. 115 /// receives this message after the window is created, but before the window becomes visible.
116 /// </summary> 116 /// </summary>
117 CREATE = 0x0001, 117 CREATE = 0x0001,
118   118  
119 /// <summary> 119 /// <summary>
120 /// The WM_DESTROY message is sent when a window is being destroyed. It is sent to the window procedure of the window 120 /// The WM_DESTROY message is sent when a window is being destroyed. It is sent to the window procedure of the window
121 /// being destroyed after the window is removed from the screen. 121 /// being destroyed after the window is removed from the screen.
122 /// This message is sent first to the window being destroyed and then to the child windows (if any) as they are 122 /// This message is sent first to the window being destroyed and then to the child windows (if any) as they are
123 /// destroyed. During the processing of the message, it can be assumed that all child windows still exist. 123 /// destroyed. During the processing of the message, it can be assumed that all child windows still exist.
124 /// /// 124 /// ///
125 /// </summary> 125 /// </summary>
126 DESTROY = 0x0002, 126 DESTROY = 0x0002,
127   127  
128 /// <summary> 128 /// <summary>
129 /// The WM_MOVE message is sent after a window has been moved. 129 /// The WM_MOVE message is sent after a window has been moved.
130 /// </summary> 130 /// </summary>
131 MOVE = 0x0003, 131 MOVE = 0x0003,
132   132  
133 /// <summary> 133 /// <summary>
134 /// The WM_SIZE message is sent to a window after its size has changed. 134 /// The WM_SIZE message is sent to a window after its size has changed.
135 /// </summary> 135 /// </summary>
136 SIZE = 0x0005, 136 SIZE = 0x0005,
137   137  
138 /// <summary> 138 /// <summary>
139 /// The WM_ACTIVATE message is sent to both the window being activated and the window being deactivated. If the windows 139 /// The WM_ACTIVATE message is sent to both the window being activated and the window being deactivated. If the windows
140 /// use the same input queue, the message is sent synchronously, first to the window procedure of the top-level window 140 /// use the same input queue, the message is sent synchronously, first to the window procedure of the top-level window
141 /// being deactivated, then to the window procedure of the top-level window being activated. If the windows use 141 /// being deactivated, then to the window procedure of the top-level window being activated. If the windows use
142 /// different input queues, the message is sent asynchronously, so the window is activated immediately. 142 /// different input queues, the message is sent asynchronously, so the window is activated immediately.
143 /// </summary> 143 /// </summary>
144 ACTIVATE = 0x0006, 144 ACTIVATE = 0x0006,
145   145  
146 /// <summary> 146 /// <summary>
147 /// The WM_SETFOCUS message is sent to a window after it has gained the keyboard focus. 147 /// The WM_SETFOCUS message is sent to a window after it has gained the keyboard focus.
148 /// </summary> 148 /// </summary>
149 SETFOCUS = 0x0007, 149 SETFOCUS = 0x0007,
150   150  
151 /// <summary> 151 /// <summary>
152 /// The WM_KILLFOCUS message is sent to a window immediately before it loses the keyboard focus. 152 /// The WM_KILLFOCUS message is sent to a window immediately before it loses the keyboard focus.
153 /// </summary> 153 /// </summary>
154 KILLFOCUS = 0x0008, 154 KILLFOCUS = 0x0008,
155   155  
156 /// <summary> 156 /// <summary>
157 /// The WM_ENABLE message is sent when an application changes the enabled state of a window. It is sent to the window 157 /// The WM_ENABLE message is sent when an application changes the enabled state of a window. It is sent to the window
158 /// whose enabled state is changing. This message is sent before the EnableWindow function returns, but after the 158 /// whose enabled state is changing. This message is sent before the EnableWindow function returns, but after the
159 /// enabled state (WS_DISABLED style bit) of the window has changed. 159 /// enabled state (WS_DISABLED style bit) of the window has changed.
160 /// </summary> 160 /// </summary>
161 ENABLE = 0x000A, 161 ENABLE = 0x000A,
162   162  
163 /// <summary> 163 /// <summary>
164 /// An application sends the WM_SETREDRAW message to a window to allow changes in that window to be redrawn or to 164 /// An application sends the WM_SETREDRAW message to a window to allow changes in that window to be redrawn or to
165 /// prevent changes in that window from being redrawn. 165 /// prevent changes in that window from being redrawn.
166 /// </summary> 166 /// </summary>
167 SETREDRAW = 0x000B, 167 SETREDRAW = 0x000B,
168   168  
169 /// <summary> 169 /// <summary>
170 /// An application sends a WM_SETTEXT message to set the text of a window. 170 /// An application sends a WM_SETTEXT message to set the text of a window.
171 /// </summary> 171 /// </summary>
172 SETTEXT = 0x000C, 172 SETTEXT = 0x000C,
173   173  
174 /// <summary> 174 /// <summary>
175 /// An application sends a WM_GETTEXT message to copy the text that corresponds to a window into a buffer provided by 175 /// An application sends a WM_GETTEXT message to copy the text that corresponds to a window into a buffer provided by
176 /// the caller. 176 /// the caller.
177 /// </summary> 177 /// </summary>
178 GETTEXT = 0x000D, 178 GETTEXT = 0x000D,
179   179  
180 /// <summary> 180 /// <summary>
181 /// An application sends a WM_GETTEXTLENGTH message to determine the length, in characters, of the text associated with 181 /// An application sends a WM_GETTEXTLENGTH message to determine the length, in characters, of the text associated with
182 /// a window. 182 /// a window.
183 /// </summary> 183 /// </summary>
184 GETTEXTLENGTH = 0x000E, 184 GETTEXTLENGTH = 0x000E,
185   185  
186 /// <summary> 186 /// <summary>
187 /// The WM_PAINT message is sent when the system or another application makes a request to paint a portion of an 187 /// The WM_PAINT message is sent when the system or another application makes a request to paint a portion of an
188 /// application's window. The message is sent when the UpdateWindow or RedrawWindow function is called, or by the 188 /// application's window. The message is sent when the UpdateWindow or RedrawWindow function is called, or by the
189 /// DispatchMessage function when the application obtains a WM_PAINT message by using the GetMessage or PeekMessage 189 /// DispatchMessage function when the application obtains a WM_PAINT message by using the GetMessage or PeekMessage
190 /// function. 190 /// function.
191 /// </summary> 191 /// </summary>
192 PAINT = 0x000F, 192 PAINT = 0x000F,
193   193  
194 /// <summary> 194 /// <summary>
195 /// The WM_CLOSE message is sent as a signal that a window or an application should terminate. 195 /// The WM_CLOSE message is sent as a signal that a window or an application should terminate.
196 /// </summary> 196 /// </summary>
197 CLOSE = 0x0010, 197 CLOSE = 0x0010,
198   198  
199 /// <summary> 199 /// <summary>
200 /// The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls one of 200 /// The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls one of
201 /// the system shutdown functions. If any application returns zero, the session is not ended. The system stops sending 201 /// the system shutdown functions. If any application returns zero, the session is not ended. The system stops sending
202 /// WM_QUERYENDSESSION messages as soon as one application returns zero. 202 /// WM_QUERYENDSESSION messages as soon as one application returns zero.
203 /// After processing this message, the system sends the WM_ENDSESSION message with the wParam parameter set to the 203 /// After processing this message, the system sends the WM_ENDSESSION message with the wParam parameter set to the
204 /// results of the WM_QUERYENDSESSION message. 204 /// results of the WM_QUERYENDSESSION message.
205 /// </summary> 205 /// </summary>
206 QUERYENDSESSION = 0x0011, 206 QUERYENDSESSION = 0x0011,
207   207  
208 /// <summary> 208 /// <summary>
209 /// The WM_QUERYOPEN message is sent to an icon when the user requests that the window be restored to its previous size 209 /// The WM_QUERYOPEN message is sent to an icon when the user requests that the window be restored to its previous size
210 /// and position. 210 /// and position.
211 /// </summary> 211 /// </summary>
212 QUERYOPEN = 0x0013, 212 QUERYOPEN = 0x0013,
213   213  
214 /// <summary> 214 /// <summary>
215 /// The WM_ENDSESSION message is sent to an application after the system processes the results of the 215 /// The WM_ENDSESSION message is sent to an application after the system processes the results of the
216 /// WM_QUERYENDSESSION message. The WM_ENDSESSION message informs the application whether the session is ending. 216 /// WM_QUERYENDSESSION message. The WM_ENDSESSION message informs the application whether the session is ending.
217 /// </summary> 217 /// </summary>
218 ENDSESSION = 0x0016, 218 ENDSESSION = 0x0016,
219   219  
220 /// <summary> 220 /// <summary>
221 /// The WM_QUIT message indicates a request to terminate an application and is generated when the application calls the 221 /// The WM_QUIT message indicates a request to terminate an application and is generated when the application calls the
222 /// PostQuitMessage function. It causes the GetMessage function to return zero. 222 /// PostQuitMessage function. It causes the GetMessage function to return zero.
223 /// </summary> 223 /// </summary>
224 QUIT = 0x0012, 224 QUIT = 0x0012,
225   225  
226 /// <summary> 226 /// <summary>
227 /// The WM_ERASEBKGND message is sent when the window background must be erased (for example, when a window is 227 /// The WM_ERASEBKGND message is sent when the window background must be erased (for example, when a window is
228 /// resized). The message is sent to prepare an invalidated portion of a window for painting. 228 /// resized). The message is sent to prepare an invalidated portion of a window for painting.
229 /// </summary> 229 /// </summary>
230 ERASEBKGND = 0x0014, 230 ERASEBKGND = 0x0014,
231   231  
232 /// <summary> 232 /// <summary>
233 /// This message is sent to all top-level windows when a change is made to a system color setting. 233 /// This message is sent to all top-level windows when a change is made to a system color setting.
234 /// </summary> 234 /// </summary>
235 SYSCOLORCHANGE = 0x0015, 235 SYSCOLORCHANGE = 0x0015,
236   236  
237 /// <summary> 237 /// <summary>
238 /// The WM_SHOWWINDOW message is sent to a window when the window is about to be hidden or shown. 238 /// The WM_SHOWWINDOW message is sent to a window when the window is about to be hidden or shown.
239 /// </summary> 239 /// </summary>
240 SHOWWINDOW = 0x0018, 240 SHOWWINDOW = 0x0018,
241   241  
242 /// <summary> 242 /// <summary>
243 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI 243 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI
244 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a 244 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a
245 /// setting in WIN.INI. 245 /// setting in WIN.INI.
246 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system. 246 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system.
247 /// Applications should use the WM_SETTINGCHANGE message. 247 /// Applications should use the WM_SETTINGCHANGE message.
248 /// </summary> 248 /// </summary>
249 WININICHANGE = 0x001A, 249 WININICHANGE = 0x001A,
250   250  
251 /// <summary> 251 /// <summary>
252 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI 252 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI
253 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a 253 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a
254 /// setting in WIN.INI. 254 /// setting in WIN.INI.
255 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system. 255 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system.
256 /// Applications should use the WM_SETTINGCHANGE message. 256 /// Applications should use the WM_SETTINGCHANGE message.
257 /// </summary> 257 /// </summary>
258 SETTINGCHANGE = WININICHANGE, 258 SETTINGCHANGE = WININICHANGE,
259   259  
260 /// <summary> 260 /// <summary>
261 /// The WM_DEVMODECHANGE message is sent to all top-level windows whenever the user changes device-mode settings. 261 /// The WM_DEVMODECHANGE message is sent to all top-level windows whenever the user changes device-mode settings.
262 /// </summary> 262 /// </summary>
263 DEVMODECHANGE = 0x001B, 263 DEVMODECHANGE = 0x001B,
264   264  
265 /// <summary> 265 /// <summary>
266 /// The WM_ACTIVATEAPP message is sent when a window belonging to a different application than the active window is 266 /// The WM_ACTIVATEAPP message is sent when a window belonging to a different application than the active window is
267 /// about to be activated. The message is sent to the application whose window is being activated and to the 267 /// about to be activated. The message is sent to the application whose window is being activated and to the
268 /// application whose window is being deactivated. 268 /// application whose window is being deactivated.
269 /// </summary> 269 /// </summary>
270 ACTIVATEAPP = 0x001C, 270 ACTIVATEAPP = 0x001C,
271   271  
272 /// <summary> 272 /// <summary>
273 /// An application sends the WM_FONTCHANGE message to all top-level windows in the system after changing the pool of 273 /// An application sends the WM_FONTCHANGE message to all top-level windows in the system after changing the pool of
274 /// font resources. 274 /// font resources.
275 /// </summary> 275 /// </summary>
276 FONTCHANGE = 0x001D, 276 FONTCHANGE = 0x001D,
277   277  
278 /// <summary> 278 /// <summary>
279 /// A message that is sent whenever there is a change in the system time. 279 /// A message that is sent whenever there is a change in the system time.
280 /// </summary> 280 /// </summary>
281 TIMECHANGE = 0x001E, 281 TIMECHANGE = 0x001E,
282   282  
283 /// <summary> 283 /// <summary>
284 /// The WM_CANCELMODE message is sent to cancel certain modes, such as mouse capture. For example, the system sends 284 /// The WM_CANCELMODE message is sent to cancel certain modes, such as mouse capture. For example, the system sends
285 /// this message to the active window when a dialog box or message box is displayed. Certain functions also send this 285 /// this message to the active window when a dialog box or message box is displayed. Certain functions also send this
286 /// message explicitly to the specified window regardless of whether it is the active window. For example, the 286 /// message explicitly to the specified window regardless of whether it is the active window. For example, the
287 /// EnableWindow function sends this message when disabling the specified window. 287 /// EnableWindow function sends this message when disabling the specified window.
288 /// </summary> 288 /// </summary>
289 CANCELMODE = 0x001F, 289 CANCELMODE = 0x001F,
290   290  
291 /// <summary> 291 /// <summary>
292 /// The WM_SETCURSOR message is sent to a window if the mouse causes the cursor to move within a window and mouse input 292 /// The WM_SETCURSOR message is sent to a window if the mouse causes the cursor to move within a window and mouse input
293 /// is not captured. 293 /// is not captured.
294 /// </summary> 294 /// </summary>
295 SETCURSOR = 0x0020, 295 SETCURSOR = 0x0020,
296   296  
297 /// <summary> 297 /// <summary>
298 /// The WM_MOUSEACTIVATE message is sent when the cursor is in an inactive window and the user presses a mouse button. 298 /// The WM_MOUSEACTIVATE message is sent when the cursor is in an inactive window and the user presses a mouse button.
299 /// The parent window receives this message only if the child window passes it to the DefWindowProc function. 299 /// The parent window receives this message only if the child window passes it to the DefWindowProc function.
300 /// </summary> 300 /// </summary>
301 MOUSEACTIVATE = 0x0021, 301 MOUSEACTIVATE = 0x0021,
302   302  
303 /// <summary> 303 /// <summary>
304 /// The WM_CHILDACTIVATE message is sent to a child window when the user clicks the window's title bar or when the 304 /// The WM_CHILDACTIVATE message is sent to a child window when the user clicks the window's title bar or when the
305 /// window is activated, moved, or sized. 305 /// window is activated, moved, or sized.
306 /// </summary> 306 /// </summary>
307 CHILDACTIVATE = 0x0022, 307 CHILDACTIVATE = 0x0022,
308   308  
309 /// <summary> 309 /// <summary>
310 /// The WM_QUEUESYNC message is sent by a computer-based training (CBT) application to separate user-input messages 310 /// The WM_QUEUESYNC message is sent by a computer-based training (CBT) application to separate user-input messages
311 /// from other messages sent through the WH_JOURNALPLAYBACK Hook procedure. 311 /// from other messages sent through the WH_JOURNALPLAYBACK Hook procedure.
312 /// </summary> 312 /// </summary>
313 QUEUESYNC = 0x0023, 313 QUEUESYNC = 0x0023,
314   314  
315 /// <summary> 315 /// <summary>
316 /// The WM_GETMINMAXINFO message is sent to a window when the size or position of the window is about to change. An 316 /// The WM_GETMINMAXINFO message is sent to a window when the size or position of the window is about to change. An
317 /// application can use this message to override the window's default maximized size and position, or its default 317 /// application can use this message to override the window's default maximized size and position, or its default
318 /// minimum or maximum tracking size. 318 /// minimum or maximum tracking size.
319 /// </summary> 319 /// </summary>
320 GETMINMAXINFO = 0x0024, 320 GETMINMAXINFO = 0x0024,
321   321  
322 /// <summary> 322 /// <summary>
323 /// Windows NT 3.51 and earlier: The WM_PAINTICON message is sent to a minimized window when the icon is to be painted. 323 /// Windows NT 3.51 and earlier: The WM_PAINTICON message is sent to a minimized window when the icon is to be painted.
324 /// This message is not sent by newer versions of Microsoft Windows, except in unusual circumstances explained in the 324 /// This message is not sent by newer versions of Microsoft Windows, except in unusual circumstances explained in the
325 /// Remarks. 325 /// Remarks.
326 /// </summary> 326 /// </summary>
327 PAINTICON = 0x0026, 327 PAINTICON = 0x0026,
328   328  
329 /// <summary> 329 /// <summary>
330 /// Windows NT 3.51 and earlier: The WM_ICONERASEBKGND message is sent to a minimized window when the background of the 330 /// Windows NT 3.51 and earlier: The WM_ICONERASEBKGND message is sent to a minimized window when the background of the
331 /// icon must be filled before painting the icon. A window receives this message only if a class icon is defined for 331 /// icon must be filled before painting the icon. A window receives this message only if a class icon is defined for
332 /// the window; otherwise, WM_ERASEBKGND is sent. This message is not sent by newer versions of Windows. 332 /// the window; otherwise, WM_ERASEBKGND is sent. This message is not sent by newer versions of Windows.
333 /// </summary> 333 /// </summary>
334 ICONERASEBKGND = 0x0027, 334 ICONERASEBKGND = 0x0027,
335   335  
336 /// <summary> 336 /// <summary>
337 /// The WM_NEXTDLGCTL message is sent to a dialog box procedure to set the keyboard focus to a different control in the 337 /// The WM_NEXTDLGCTL message is sent to a dialog box procedure to set the keyboard focus to a different control in the
338 /// dialog box. 338 /// dialog box.
339 /// </summary> 339 /// </summary>
340 NEXTDLGCTL = 0x0028, 340 NEXTDLGCTL = 0x0028,
341   341  
342 /// <summary> 342 /// <summary>
343 /// The WM_SPOOLERSTATUS message is sent from Print Manager whenever a job is added to or removed from the Print 343 /// The WM_SPOOLERSTATUS message is sent from Print Manager whenever a job is added to or removed from the Print
344 /// Manager queue. 344 /// Manager queue.
345 /// </summary> 345 /// </summary>
346 SPOOLERSTATUS = 0x002A, 346 SPOOLERSTATUS = 0x002A,
347   347  
348 /// <summary> 348 /// <summary>
349 /// The WM_DRAWITEM message is sent to the parent window of an owner-drawn button, combo box, list box, or menu when a 349 /// The WM_DRAWITEM message is sent to the parent window of an owner-drawn button, combo box, list box, or menu when a
350 /// visual aspect of the button, combo box, list box, or menu has changed. 350 /// visual aspect of the button, combo box, list box, or menu has changed.
351 /// </summary> 351 /// </summary>
352 DRAWITEM = 0x002B, 352 DRAWITEM = 0x002B,
353   353  
354 /// <summary> 354 /// <summary>
355 /// The WM_MEASUREITEM message is sent to the owner window of a combo box, list box, list view control, or menu item 355 /// The WM_MEASUREITEM message is sent to the owner window of a combo box, list box, list view control, or menu item
356 /// when the control or menu is created. 356 /// when the control or menu is created.
357 /// </summary> 357 /// </summary>
358 MEASUREITEM = 0x002C, 358 MEASUREITEM = 0x002C,
359   359  
360 /// <summary> 360 /// <summary>
361 /// Sent to the owner of a list box or combo box when the list box or combo box is destroyed or when items are removed 361 /// Sent to the owner of a list box or combo box when the list box or combo box is destroyed or when items are removed
362 /// by the LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT message. The system sends a 362 /// by the LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT message. The system sends a
363 /// WM_DELETEITEM message for each deleted item. The system sends the WM_DELETEITEM message for any deleted list box or 363 /// WM_DELETEITEM message for each deleted item. The system sends the WM_DELETEITEM message for any deleted list box or
364 /// combo box item with nonzero item data. 364 /// combo box item with nonzero item data.
365 /// </summary> 365 /// </summary>
366 DELETEITEM = 0x002D, 366 DELETEITEM = 0x002D,
367   367  
368 /// <summary> 368 /// <summary>
369 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_KEYDOWN message. 369 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_KEYDOWN message.
370 /// </summary> 370 /// </summary>
371 VKEYTOITEM = 0x002E, 371 VKEYTOITEM = 0x002E,
372   372  
373 /// <summary> 373 /// <summary>
374 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_CHAR message. 374 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_CHAR message.
375 /// </summary> 375 /// </summary>
376 CHARTOITEM = 0x002F, 376 CHARTOITEM = 0x002F,
377   377  
378 /// <summary> 378 /// <summary>
379 /// An application sends a WM_SETFONT message to specify the font that a control is to use when drawing text. 379 /// An application sends a WM_SETFONT message to specify the font that a control is to use when drawing text.
380 /// </summary> 380 /// </summary>
381 SETFONT = 0x0030, 381 SETFONT = 0x0030,
382   382  
383 /// <summary> 383 /// <summary>
384 /// An application sends a WM_GETFONT message to a control to retrieve the font with which the control is currently 384 /// An application sends a WM_GETFONT message to a control to retrieve the font with which the control is currently
385 /// drawing its text. 385 /// drawing its text.
386 /// </summary> 386 /// </summary>
387 GETFONT = 0x0031, 387 GETFONT = 0x0031,
388   388  
389 /// <summary> 389 /// <summary>
390 /// An application sends a WM_SETHOTKEY message to a window to associate a hot key with the window. When the user 390 /// An application sends a WM_SETHOTKEY message to a window to associate a hot key with the window. When the user
391 /// presses the hot key, the system activates the window. 391 /// presses the hot key, the system activates the window.
392 /// </summary> 392 /// </summary>
393 SETHOTKEY = 0x0032, 393 SETHOTKEY = 0x0032,
394   394  
395 /// <summary> 395 /// <summary>
396 /// An application sends a WM_GETHOTKEY message to determine the hot key associated with a window. 396 /// An application sends a WM_GETHOTKEY message to determine the hot key associated with a window.
397 /// </summary> 397 /// </summary>
398 GETHOTKEY = 0x0033, 398 GETHOTKEY = 0x0033,
399   399  
400 /// <summary> 400 /// <summary>
401 /// The WM_QUERYDRAGICON message is sent to a minimized (iconic) window. The window is about to be dragged by the user 401 /// The WM_QUERYDRAGICON message is sent to a minimized (iconic) window. The window is about to be dragged by the user
402 /// but does not have an icon defined for its class. An application can return a handle to an icon or cursor. The 402 /// but does not have an icon defined for its class. An application can return a handle to an icon or cursor. The
403 /// system displays this cursor or icon while the user drags the icon. 403 /// system displays this cursor or icon while the user drags the icon.
404 /// </summary> 404 /// </summary>
405 QUERYDRAGICON = 0x0037, 405 QUERYDRAGICON = 0x0037,
406   406  
407 /// <summary> 407 /// <summary>
408 /// The system sends the WM_COMPAREITEM message to determine the relative position of a new item in the sorted list of 408 /// The system sends the WM_COMPAREITEM message to determine the relative position of a new item in the sorted list of
409 /// an owner-drawn combo box or list box. Whenever the application adds a new item, the system sends this message to 409 /// an owner-drawn combo box or list box. Whenever the application adds a new item, the system sends this message to
410 /// the owner of a combo box or list box created with the CBS_SORT or LBS_SORT style. 410 /// the owner of a combo box or list box created with the CBS_SORT or LBS_SORT style.
411 /// </summary> 411 /// </summary>
412 COMPAREITEM = 0x0039, 412 COMPAREITEM = 0x0039,
413   413  
414 /// <summary> 414 /// <summary>
415 /// Active Accessibility sends the WM_GETOBJECT message to obtain information about an accessible object contained in a 415 /// Active Accessibility sends the WM_GETOBJECT message to obtain information about an accessible object contained in a
416 /// server application. 416 /// server application.
417 /// Applications never send this message directly. It is sent only by Active Accessibility in response to calls to 417 /// Applications never send this message directly. It is sent only by Active Accessibility in response to calls to
418 /// AccessibleObjectFromPoint, AccessibleObjectFromEvent, or AccessibleObjectFromWindow. However, server applications 418 /// AccessibleObjectFromPoint, AccessibleObjectFromEvent, or AccessibleObjectFromWindow. However, server applications
419 /// handle this message. 419 /// handle this message.
420 /// </summary> 420 /// </summary>
421 GETOBJECT = 0x003D, 421 GETOBJECT = 0x003D,
422   422  
423 /// <summary> 423 /// <summary>
424 /// The WM_COMPACTING message is sent to all top-level windows when the system detects more than 12.5 percent of system 424 /// The WM_COMPACTING message is sent to all top-level windows when the system detects more than 12.5 percent of system
425 /// time over a 30- to 60-second interval is being spent compacting memory. This indicates that system memory is low. 425 /// time over a 30- to 60-second interval is being spent compacting memory. This indicates that system memory is low.
426 /// </summary> 426 /// </summary>
427 COMPACTING = 0x0041, 427 COMPACTING = 0x0041,
428   428  
429 /// <summary> 429 /// <summary>
430 /// WM_COMMNOTIFY is Obsolete for Win32-Based Applications 430 /// WM_COMMNOTIFY is Obsolete for Win32-Based Applications
431 /// </summary> 431 /// </summary>
432 [Obsolete] COMMNOTIFY = 0x0044, 432 [Obsolete] COMMNOTIFY = 0x0044,
433   433  
434 /// <summary> 434 /// <summary>
435 /// The WM_WINDOWPOSCHANGING message is sent to a window whose size, position, or place in the Z order is about to 435 /// The WM_WINDOWPOSCHANGING message is sent to a window whose size, position, or place in the Z order is about to
436 /// change as a result of a call to the SetWindowPos function or another window-management function. 436 /// change as a result of a call to the SetWindowPos function or another window-management function.
437 /// </summary> 437 /// </summary>
438 WINDOWPOSCHANGING = 0x0046, 438 WINDOWPOSCHANGING = 0x0046,
439   439  
440 /// <summary> 440 /// <summary>
441 /// The WM_WINDOWPOSCHANGED message is sent to a window whose size, position, or place in the Z order has changed as a 441 /// The WM_WINDOWPOSCHANGED message is sent to a window whose size, position, or place in the Z order has changed as a
442 /// result of a call to the SetWindowPos function or another window-management function. 442 /// result of a call to the SetWindowPos function or another window-management function.
443 /// </summary> 443 /// </summary>
444 WINDOWPOSCHANGED = 0x0047, 444 WINDOWPOSCHANGED = 0x0047,
445   445  
446 /// <summary> 446 /// <summary>
447 /// Notifies applications that the system, typically a battery-powered personal computer, is about to enter a suspended 447 /// Notifies applications that the system, typically a battery-powered personal computer, is about to enter a suspended
448 /// mode. 448 /// mode.
449 /// Use: POWERBROADCAST 449 /// Use: POWERBROADCAST
450 /// </summary> 450 /// </summary>
451 [Obsolete] POWER = 0x0048, 451 [Obsolete] POWER = 0x0048,
452   452  
453 /// <summary> 453 /// <summary>
454 /// An application sends the WM_COPYDATA message to pass data to another application. 454 /// An application sends the WM_COPYDATA message to pass data to another application.
455 /// </summary> 455 /// </summary>
456 COPYDATA = 0x004A, 456 COPYDATA = 0x004A,
457   457  
458 /// <summary> 458 /// <summary>
459 /// The WM_CANCELJOURNAL message is posted to an application when a user cancels the application's journaling 459 /// The WM_CANCELJOURNAL message is posted to an application when a user cancels the application's journaling
460 /// activities. The message is posted with a NULL window handle. 460 /// activities. The message is posted with a NULL window handle.
461 /// </summary> 461 /// </summary>
462 CANCELJOURNAL = 0x004B, 462 CANCELJOURNAL = 0x004B,
463   463  
464 /// <summary> 464 /// <summary>
465 /// Sent by a common control to its parent window when an event has occurred or the control requires some information. 465 /// Sent by a common control to its parent window when an event has occurred or the control requires some information.
466 /// </summary> 466 /// </summary>
467 NOTIFY = 0x004E, 467 NOTIFY = 0x004E,
468   468  
469 /// <summary> 469 /// <summary>
470 /// The WM_INPUTLANGCHANGEREQUEST message is posted to the window with the focus when the user chooses a new input 470 /// The WM_INPUTLANGCHANGEREQUEST message is posted to the window with the focus when the user chooses a new input
471 /// language, either with the hotkey (specified in the Keyboard control panel application) or from the indicator on the 471 /// language, either with the hotkey (specified in the Keyboard control panel application) or from the indicator on the
472 /// system taskbar. An application can accept the change by passing the message to the DefWindowProc function or reject 472 /// system taskbar. An application can accept the change by passing the message to the DefWindowProc function or reject
473 /// the change (and prevent it from taking place) by returning immediately. 473 /// the change (and prevent it from taking place) by returning immediately.
474 /// </summary> 474 /// </summary>
475 INPUTLANGCHANGEREQUEST = 0x0050, 475 INPUTLANGCHANGEREQUEST = 0x0050,
476   476  
477 /// <summary> 477 /// <summary>
478 /// The WM_INPUTLANGCHANGE message is sent to the topmost affected window after an application's input language has 478 /// The WM_INPUTLANGCHANGE message is sent to the topmost affected window after an application's input language has
479 /// been changed. You should make any application-specific settings and pass the message to the DefWindowProc function, 479 /// been changed. You should make any application-specific settings and pass the message to the DefWindowProc function,
480 /// which passes the message to all first-level child windows. These child windows can pass the message to 480 /// which passes the message to all first-level child windows. These child windows can pass the message to
481 /// DefWindowProc to have it pass the message to their child windows, and so on. 481 /// DefWindowProc to have it pass the message to their child windows, and so on.
482 /// </summary> 482 /// </summary>
483 INPUTLANGCHANGE = 0x0051, 483 INPUTLANGCHANGE = 0x0051,
484   484  
485 /// <summary> 485 /// <summary>
486 /// Sent to an application that has initiated a training card with Microsoft Windows Help. The message informs the 486 /// Sent to an application that has initiated a training card with Microsoft Windows Help. The message informs the
487 /// application when the user clicks an authorable button. An application initiates a training card by specifying the 487 /// application when the user clicks an authorable button. An application initiates a training card by specifying the
488 /// HELP_TCARD command in a call to the WinHelp function. 488 /// HELP_TCARD command in a call to the WinHelp function.
489 /// </summary> 489 /// </summary>
490 TCARD = 0x0052, 490 TCARD = 0x0052,
491   491  
492 /// <summary> 492 /// <summary>
493 /// Indicates that the user pressed the F1 key. If a menu is active when F1 is pressed, WM_HELP is sent to the window 493 /// Indicates that the user pressed the F1 key. If a menu is active when F1 is pressed, WM_HELP is sent to the window
494 /// associated with the menu; otherwise, WM_HELP is sent to the window that has the keyboard focus. If no window has 494 /// associated with the menu; otherwise, WM_HELP is sent to the window that has the keyboard focus. If no window has
495 /// the keyboard focus, WM_HELP is sent to the currently active window. 495 /// the keyboard focus, WM_HELP is sent to the currently active window.
496 /// </summary> 496 /// </summary>
497 HELP = 0x0053, 497 HELP = 0x0053,
498   498  
499 /// <summary> 499 /// <summary>
500 /// The WM_USERCHANGED message is sent to all windows after the user has logged on or off. When the user logs on or 500 /// The WM_USERCHANGED message is sent to all windows after the user has logged on or off. When the user logs on or
501 /// off, the system updates the user-specific settings. The system sends this message immediately after updating the 501 /// off, the system updates the user-specific settings. The system sends this message immediately after updating the
502 /// settings. 502 /// settings.
503 /// </summary> 503 /// </summary>
504 USERCHANGED = 0x0054, 504 USERCHANGED = 0x0054,
505   505  
506 /// <summary> 506 /// <summary>
507 /// Determines if a window accepts ANSI or Unicode structures in the WM_NOTIFY notification message. WM_NOTIFYFORMAT 507 /// Determines if a window accepts ANSI or Unicode structures in the WM_NOTIFY notification message. WM_NOTIFYFORMAT
508 /// messages are sent from a common control to its parent window and from the parent window to the common control. 508 /// messages are sent from a common control to its parent window and from the parent window to the common control.
509 /// </summary> 509 /// </summary>
510 NOTIFYFORMAT = 0x0055, 510 NOTIFYFORMAT = 0x0055,
511   511  
512 /// <summary> 512 /// <summary>
513 /// The WM_CONTEXTMENU message notifies a window that the user clicked the right mouse button (right-clicked) in the 513 /// The WM_CONTEXTMENU message notifies a window that the user clicked the right mouse button (right-clicked) in the
514 /// window. 514 /// window.
515 /// </summary> 515 /// </summary>
516 CONTEXTMENU = 0x007B, 516 CONTEXTMENU = 0x007B,
517   517  
518 /// <summary> 518 /// <summary>
519 /// The WM_STYLECHANGING message is sent to a window when the SetWindowLong function is about to change one or more of 519 /// The WM_STYLECHANGING message is sent to a window when the SetWindowLong function is about to change one or more of
520 /// the window's styles. 520 /// the window's styles.
521 /// </summary> 521 /// </summary>
522 STYLECHANGING = 0x007C, 522 STYLECHANGING = 0x007C,
523   523  
524 /// <summary> 524 /// <summary>
525 /// The WM_STYLECHANGED message is sent to a window after the SetWindowLong function has changed one or more of the 525 /// The WM_STYLECHANGED message is sent to a window after the SetWindowLong function has changed one or more of the
526 /// window's styles 526 /// window's styles
527 /// </summary> 527 /// </summary>
528 STYLECHANGED = 0x007D, 528 STYLECHANGED = 0x007D,
529   529  
530 /// <summary> 530 /// <summary>
531 /// The WM_DISPLAYCHANGE message is sent to all windows when the display resolution has changed. 531 /// The WM_DISPLAYCHANGE message is sent to all windows when the display resolution has changed.
532 /// </summary> 532 /// </summary>
533 DISPLAYCHANGE = 0x007E, 533 DISPLAYCHANGE = 0x007E,
534   534  
535 /// <summary> 535 /// <summary>
536 /// The WM_GETICON message is sent to a window to retrieve a handle to the large or small icon associated with a 536 /// The WM_GETICON message is sent to a window to retrieve a handle to the large or small icon associated with a
537 /// window. The system displays the large icon in the ALT+TAB dialog, and the small icon in the window caption. 537 /// window. The system displays the large icon in the ALT+TAB dialog, and the small icon in the window caption.
538 /// </summary> 538 /// </summary>
539 GETICON = 0x007F, 539 GETICON = 0x007F,
540   540  
541 /// <summary> 541 /// <summary>
542 /// An application sends the WM_SETICON message to associate a new large or small icon with a window. The system 542 /// An application sends the WM_SETICON message to associate a new large or small icon with a window. The system
543 /// displays the large icon in the ALT+TAB dialog box, and the small icon in the window caption. 543 /// displays the large icon in the ALT+TAB dialog box, and the small icon in the window caption.
544 /// </summary> 544 /// </summary>
545 SETICON = 0x0080, 545 SETICON = 0x0080,
546   546  
547 /// <summary> 547 /// <summary>
548 /// The WM_NCCREATE message is sent prior to the WM_CREATE message when a window is first created. 548 /// The WM_NCCREATE message is sent prior to the WM_CREATE message when a window is first created.
549 /// </summary> 549 /// </summary>
550 NCCREATE = 0x0081, 550 NCCREATE = 0x0081,
551   551  
552 /// <summary> 552 /// <summary>
553 /// The WM_NCDESTROY message informs a window that its nonclient area is being destroyed. The DestroyWindow function 553 /// The WM_NCDESTROY message informs a window that its nonclient area is being destroyed. The DestroyWindow function
554 /// sends the WM_NCDESTROY message to the window following the WM_DESTROY message. WM_DESTROY is used to free the 554 /// sends the WM_NCDESTROY message to the window following the WM_DESTROY message. WM_DESTROY is used to free the
555 /// allocated memory object associated with the window. 555 /// allocated memory object associated with the window.
556 /// The WM_NCDESTROY message is sent after the child windows have been destroyed. In contrast, WM_DESTROY is sent 556 /// The WM_NCDESTROY message is sent after the child windows have been destroyed. In contrast, WM_DESTROY is sent
557 /// before the child windows are destroyed. 557 /// before the child windows are destroyed.
558 /// </summary> 558 /// </summary>
559 NCDESTROY = 0x0082, 559 NCDESTROY = 0x0082,
560   560  
561 /// <summary> 561 /// <summary>
562 /// The WM_NCCALCSIZE message is sent when the size and position of a window's client area must be calculated. By 562 /// The WM_NCCALCSIZE message is sent when the size and position of a window's client area must be calculated. By
563 /// processing this message, an application can control the content of the window's client area when the size or 563 /// processing this message, an application can control the content of the window's client area when the size or
564 /// position of the window changes. 564 /// position of the window changes.
565 /// </summary> 565 /// </summary>
566 NCCALCSIZE = 0x0083, 566 NCCALCSIZE = 0x0083,
567   567  
568 /// <summary> 568 /// <summary>
569 /// The WM_NCHITTEST message is sent to a window when the cursor moves, or when a mouse button is pressed or released. 569 /// The WM_NCHITTEST message is sent to a window when the cursor moves, or when a mouse button is pressed or released.
570 /// If the mouse is not captured, the message is sent to the window beneath the cursor. Otherwise, the message is sent 570 /// If the mouse is not captured, the message is sent to the window beneath the cursor. Otherwise, the message is sent
571 /// to the window that has captured the mouse. 571 /// to the window that has captured the mouse.
572 /// </summary> 572 /// </summary>
573 NCHITTEST = 0x0084, 573 NCHITTEST = 0x0084,
574   574  
575 /// <summary> 575 /// <summary>
576 /// The WM_NCPAINT message is sent to a window when its frame must be painted. 576 /// The WM_NCPAINT message is sent to a window when its frame must be painted.
577 /// </summary> 577 /// </summary>
578 NCPAINT = 0x0085, 578 NCPAINT = 0x0085,
579   579  
580 /// <summary> 580 /// <summary>
581 /// The WM_NCACTIVATE message is sent to a window when its nonclient area needs to be changed to indicate an active or 581 /// The WM_NCACTIVATE message is sent to a window when its nonclient area needs to be changed to indicate an active or
582 /// inactive state. 582 /// inactive state.
583 /// </summary> 583 /// </summary>
584 NCACTIVATE = 0x0086, 584 NCACTIVATE = 0x0086,
585   585  
586 /// <summary> 586 /// <summary>
587 /// The WM_GETDLGCODE message is sent to the window procedure associated with a control. By default, the system handles 587 /// The WM_GETDLGCODE message is sent to the window procedure associated with a control. By default, the system handles
588 /// all keyboard input to the control; the system interprets certain types of keyboard input as dialog box navigation 588 /// all keyboard input to the control; the system interprets certain types of keyboard input as dialog box navigation
589 /// keys. To override this default behavior, the control can respond to the WM_GETDLGCODE message to indicate the types 589 /// keys. To override this default behavior, the control can respond to the WM_GETDLGCODE message to indicate the types
590 /// of input it wants to process itself. 590 /// of input it wants to process itself.
591 /// </summary> 591 /// </summary>
592 GETDLGCODE = 0x0087, 592 GETDLGCODE = 0x0087,
593   593  
594 /// <summary> 594 /// <summary>
595 /// The WM_SYNCPAINT message is used to synchronize painting while avoiding linking independent GUI threads. 595 /// The WM_SYNCPAINT message is used to synchronize painting while avoiding linking independent GUI threads.
596 /// </summary> 596 /// </summary>
597 SYNCPAINT = 0x0088, 597 SYNCPAINT = 0x0088,
598   598  
599 /// <summary> 599 /// <summary>
600 /// The WM_NCMOUSEMOVE message is posted to a window when the cursor is moved within the nonclient area of the window. 600 /// The WM_NCMOUSEMOVE message is posted to a window when the cursor is moved within the nonclient area of the window.
601 /// This message is posted to the window that contains the cursor. If a window has captured the mouse, this message is 601 /// This message is posted to the window that contains the cursor. If a window has captured the mouse, this message is
602 /// not posted. 602 /// not posted.
603 /// </summary> 603 /// </summary>
604 NCMOUSEMOVE = 0x00A0, 604 NCMOUSEMOVE = 0x00A0,
605   605  
606 /// <summary> 606 /// <summary>
607 /// The WM_NCLBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is within the 607 /// The WM_NCLBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is within the
608 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 608 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
609 /// the mouse, this message is not posted. 609 /// the mouse, this message is not posted.
610 /// </summary> 610 /// </summary>
611 NCLBUTTONDOWN = 0x00A1, 611 NCLBUTTONDOWN = 0x00A1,
612   612  
613 /// <summary> 613 /// <summary>
614 /// The WM_NCLBUTTONUP message is posted when the user releases the left mouse button while the cursor is within the 614 /// The WM_NCLBUTTONUP message is posted when the user releases the left mouse button while the cursor is within the
615 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 615 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
616 /// the mouse, this message is not posted. 616 /// the mouse, this message is not posted.
617 /// </summary> 617 /// </summary>
618 NCLBUTTONUP = 0x00A2, 618 NCLBUTTONUP = 0x00A2,
619   619  
620 /// <summary> 620 /// <summary>
621 /// The WM_NCLBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is 621 /// The WM_NCLBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is
622 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 622 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
623 /// has captured the mouse, this message is not posted. 623 /// has captured the mouse, this message is not posted.
624 /// </summary> 624 /// </summary>
625 NCLBUTTONDBLCLK = 0x00A3, 625 NCLBUTTONDBLCLK = 0x00A3,
626   626  
627 /// <summary> 627 /// <summary>
628 /// The WM_NCRBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is within the 628 /// The WM_NCRBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is within the
629 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 629 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
630 /// the mouse, this message is not posted. 630 /// the mouse, this message is not posted.
631 /// </summary> 631 /// </summary>
632 NCRBUTTONDOWN = 0x00A4, 632 NCRBUTTONDOWN = 0x00A4,
633   633  
634 /// <summary> 634 /// <summary>
635 /// The WM_NCRBUTTONUP message is posted when the user releases the right mouse button while the cursor is within the 635 /// The WM_NCRBUTTONUP message is posted when the user releases the right mouse button while the cursor is within the
636 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 636 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
637 /// the mouse, this message is not posted. 637 /// the mouse, this message is not posted.
638 /// </summary> 638 /// </summary>
639 NCRBUTTONUP = 0x00A5, 639 NCRBUTTONUP = 0x00A5,
640   640  
641 /// <summary> 641 /// <summary>
642 /// The WM_NCRBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is 642 /// The WM_NCRBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is
643 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 643 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
644 /// has captured the mouse, this message is not posted. 644 /// has captured the mouse, this message is not posted.
645 /// </summary> 645 /// </summary>
646 NCRBUTTONDBLCLK = 0x00A6, 646 NCRBUTTONDBLCLK = 0x00A6,
647   647  
648 /// <summary> 648 /// <summary>
649 /// The WM_NCMBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is within the 649 /// The WM_NCMBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is within the
650 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 650 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
651 /// the mouse, this message is not posted. 651 /// the mouse, this message is not posted.
652 /// </summary> 652 /// </summary>
653 NCMBUTTONDOWN = 0x00A7, 653 NCMBUTTONDOWN = 0x00A7,
654   654  
655 /// <summary> 655 /// <summary>
656 /// The WM_NCMBUTTONUP message is posted when the user releases the middle mouse button while the cursor is within the 656 /// The WM_NCMBUTTONUP message is posted when the user releases the middle mouse button while the cursor is within the
657 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 657 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
658 /// the mouse, this message is not posted. 658 /// the mouse, this message is not posted.
659 /// </summary> 659 /// </summary>
660 NCMBUTTONUP = 0x00A8, 660 NCMBUTTONUP = 0x00A8,
661   661  
662 /// <summary> 662 /// <summary>
663 /// The WM_NCMBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is 663 /// The WM_NCMBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is
664 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 664 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
665 /// has captured the mouse, this message is not posted. 665 /// has captured the mouse, this message is not posted.
666 /// </summary> 666 /// </summary>
667 NCMBUTTONDBLCLK = 0x00A9, 667 NCMBUTTONDBLCLK = 0x00A9,
668   668  
669 /// <summary> 669 /// <summary>
670 /// The WM_NCXBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in 670 /// The WM_NCXBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in
671 /// the nonclient area of a window. This message is posted to the window that contains the cursor. If a window has 671 /// the nonclient area of a window. This message is posted to the window that contains the cursor. If a window has
672 /// captured the mouse, this message is not posted. 672 /// captured the mouse, this message is not posted.
673 /// </summary> 673 /// </summary>
674 NCXBUTTONDOWN = 0x00AB, 674 NCXBUTTONDOWN = 0x00AB,
675   675  
676 /// <summary> 676 /// <summary>
677 /// The WM_NCXBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the 677 /// The WM_NCXBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the
678 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 678 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
679 /// the mouse, this message is not posted. 679 /// the mouse, this message is not posted.
680 /// </summary> 680 /// </summary>
681 NCXBUTTONUP = 0x00AC, 681 NCXBUTTONUP = 0x00AC,
682   682  
683 /// <summary> 683 /// <summary>
684 /// The WM_NCXBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor 684 /// The WM_NCXBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor
685 /// is in the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 685 /// is in the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
686 /// has captured the mouse, this message is not posted. 686 /// has captured the mouse, this message is not posted.
687 /// </summary> 687 /// </summary>
688 NCXBUTTONDBLCLK = 0x00AD, 688 NCXBUTTONDBLCLK = 0x00AD,
689   689  
690 /// <summary> 690 /// <summary>
691 /// The WM_INPUT_DEVICE_CHANGE message is sent to the window that registered to receive raw input. A window receives 691 /// The WM_INPUT_DEVICE_CHANGE message is sent to the window that registered to receive raw input. A window receives
692 /// this message through its WindowProc function. 692 /// this message through its WindowProc function.
693 /// </summary> 693 /// </summary>
694 INPUT_DEVICE_CHANGE = 0x00FE, 694 INPUT_DEVICE_CHANGE = 0x00FE,
695   695  
696 /// <summary> 696 /// <summary>
697 /// The WM_INPUT message is sent to the window that is getting raw input. 697 /// The WM_INPUT message is sent to the window that is getting raw input.
698 /// </summary> 698 /// </summary>
699 INPUT = 0x00FF, 699 INPUT = 0x00FF,
700   700  
701 /// <summary> 701 /// <summary>
702 /// This message filters for keyboard messages. 702 /// This message filters for keyboard messages.
703 /// </summary> 703 /// </summary>
704 KEYFIRST = 0x0100, 704 KEYFIRST = 0x0100,
705   705  
706 /// <summary> 706 /// <summary>
707 /// The WM_KEYDOWN message is posted to the window with the keyboard focus when a nonsystem key is pressed. A nonsystem 707 /// The WM_KEYDOWN message is posted to the window with the keyboard focus when a nonsystem key is pressed. A nonsystem
708 /// key is a key that is pressed when the ALT key is not pressed. 708 /// key is a key that is pressed when the ALT key is not pressed.
709 /// </summary> 709 /// </summary>
710 KEYDOWN = 0x0100, 710 KEYDOWN = 0x0100,
711   711  
712 /// <summary> 712 /// <summary>
713 /// The WM_KEYUP message is posted to the window with the keyboard focus when a nonsystem key is released. A nonsystem 713 /// The WM_KEYUP message is posted to the window with the keyboard focus when a nonsystem key is released. A nonsystem
714 /// key is a key that is pressed when the ALT key is not pressed, or a keyboard key that is pressed when a window has 714 /// key is a key that is pressed when the ALT key is not pressed, or a keyboard key that is pressed when a window has
715 /// the keyboard focus. 715 /// the keyboard focus.
716 /// </summary> 716 /// </summary>
717 KEYUP = 0x0101, 717 KEYUP = 0x0101,
718   718  
719 /// <summary> 719 /// <summary>
720 /// The WM_CHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by the 720 /// The WM_CHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by the
721 /// TranslateMessage function. The WM_CHAR message contains the character code of the key that was pressed. 721 /// TranslateMessage function. The WM_CHAR message contains the character code of the key that was pressed.
722 /// </summary> 722 /// </summary>
723 CHAR = 0x0102, 723 CHAR = 0x0102,
724   724  
725 /// <summary> 725 /// <summary>
726 /// The WM_DEADCHAR message is posted to the window with the keyboard focus when a WM_KEYUP message is translated by 726 /// The WM_DEADCHAR message is posted to the window with the keyboard focus when a WM_KEYUP message is translated by
727 /// the TranslateMessage function. WM_DEADCHAR specifies a character code generated by a dead key. A dead key is a key 727 /// the TranslateMessage function. WM_DEADCHAR specifies a character code generated by a dead key. A dead key is a key
728 /// that generates a character, such as the umlaut (double-dot), that is combined with another character to form a 728 /// that generates a character, such as the umlaut (double-dot), that is combined with another character to form a
729 /// composite character. For example, the umlaut-O character (Ö) is generated by typing the dead key for the umlaut 729 /// composite character. For example, the umlaut-O character (Ö) is generated by typing the dead key for the umlaut
730 /// character, and then typing the O key. 730 /// character, and then typing the O key.
731 /// </summary> 731 /// </summary>
732 DEADCHAR = 0x0103, 732 DEADCHAR = 0x0103,
733   733  
734 /// <summary> 734 /// <summary>
735 /// The WM_SYSKEYDOWN message is posted to the window with the keyboard focus when the user presses the F10 key (which 735 /// The WM_SYSKEYDOWN message is posted to the window with the keyboard focus when the user presses the F10 key (which
736 /// activates the menu bar) or holds down the ALT key and then presses another key. It also occurs when no window 736 /// activates the menu bar) or holds down the ALT key and then presses another key. It also occurs when no window
737 /// currently has the keyboard focus; in this case, the WM_SYSKEYDOWN message is sent to the active window. The window 737 /// currently has the keyboard focus; in this case, the WM_SYSKEYDOWN message is sent to the active window. The window
738 /// that receives the message can distinguish between these two contexts by checking the context code in the lParam 738 /// that receives the message can distinguish between these two contexts by checking the context code in the lParam
739 /// parameter. 739 /// parameter.
740 /// </summary> 740 /// </summary>
741 SYSKEYDOWN = 0x0104, 741 SYSKEYDOWN = 0x0104,
742   742  
743 /// <summary> 743 /// <summary>
744 /// The WM_SYSKEYUP message is posted to the window with the keyboard focus when the user releases a key that was 744 /// The WM_SYSKEYUP message is posted to the window with the keyboard focus when the user releases a key that was
745 /// pressed while the ALT key was held down. It also occurs when no window currently has the keyboard focus; in this 745 /// pressed while the ALT key was held down. It also occurs when no window currently has the keyboard focus; in this
746 /// case, the WM_SYSKEYUP message is sent to the active window. The window that receives the message can distinguish 746 /// case, the WM_SYSKEYUP message is sent to the active window. The window that receives the message can distinguish
747 /// between these two contexts by checking the context code in the lParam parameter. 747 /// between these two contexts by checking the context code in the lParam parameter.
748 /// </summary> 748 /// </summary>
749 SYSKEYUP = 0x0105, 749 SYSKEYUP = 0x0105,
750   750  
751 /// <summary> 751 /// <summary>
752 /// The WM_SYSCHAR message is posted to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated 752 /// The WM_SYSCHAR message is posted to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated
753 /// by the TranslateMessage function. It specifies the character code of a system character key — that is, a character 753 /// by the TranslateMessage function. It specifies the character code of a system character key — that is, a character
754 /// key that is pressed while the ALT key is down. 754 /// key that is pressed while the ALT key is down.
755 /// </summary> 755 /// </summary>
756 SYSCHAR = 0x0106, 756 SYSCHAR = 0x0106,
757   757  
758 /// <summary> 758 /// <summary>
759 /// The WM_SYSDEADCHAR message is sent to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated 759 /// The WM_SYSDEADCHAR message is sent to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated
760 /// by the TranslateMessage function. WM_SYSDEADCHAR specifies the character code of a system dead key — that is, a 760 /// by the TranslateMessage function. WM_SYSDEADCHAR specifies the character code of a system dead key — that is, a
761 /// dead key that is pressed while holding down the ALT key. 761 /// dead key that is pressed while holding down the ALT key.
762 /// </summary> 762 /// </summary>
763 SYSDEADCHAR = 0x0107, 763 SYSDEADCHAR = 0x0107,
764   764  
765 /// <summary> 765 /// <summary>
766 /// The WM_UNICHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by 766 /// The WM_UNICHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by
767 /// the TranslateMessage function. The WM_UNICHAR message contains the character code of the key that was pressed. 767 /// the TranslateMessage function. The WM_UNICHAR message contains the character code of the key that was pressed.
768 /// The WM_UNICHAR message is equivalent to WM_CHAR, but it uses Unicode Transformation Format (UTF)-32, whereas 768 /// The WM_UNICHAR message is equivalent to WM_CHAR, but it uses Unicode Transformation Format (UTF)-32, whereas
769 /// WM_CHAR uses UTF-16. It is designed to send or post Unicode characters to ANSI windows and it can can handle 769 /// WM_CHAR uses UTF-16. It is designed to send or post Unicode characters to ANSI windows and it can can handle
770 /// Unicode Supplementary Plane characters. 770 /// Unicode Supplementary Plane characters.
771 /// </summary> 771 /// </summary>
772 UNICHAR = 0x0109, 772 UNICHAR = 0x0109,
773   773  
774 /// <summary> 774 /// <summary>
775 /// This message filters for keyboard messages. 775 /// This message filters for keyboard messages.
776 /// </summary> 776 /// </summary>
777 KEYLAST = 0x0108, 777 KEYLAST = 0x0108,
778   778  
779 /// <summary> 779 /// <summary>
780 /// Sent immediately before the IME generates the composition string as a result of a keystroke. A window receives this 780 /// Sent immediately before the IME generates the composition string as a result of a keystroke. A window receives this
781 /// message through its WindowProc function. 781 /// message through its WindowProc function.
782 /// </summary> 782 /// </summary>
783 IME_STARTCOMPOSITION = 0x010D, 783 IME_STARTCOMPOSITION = 0x010D,
784   784  
785 /// <summary> 785 /// <summary>
786 /// Sent to an application when the IME ends composition. A window receives this message through its WindowProc 786 /// Sent to an application when the IME ends composition. A window receives this message through its WindowProc
787 /// function. 787 /// function.
788 /// </summary> 788 /// </summary>
789 IME_ENDCOMPOSITION = 0x010E, 789 IME_ENDCOMPOSITION = 0x010E,
790   790  
791 /// <summary> 791 /// <summary>
792 /// Sent to an application when the IME changes composition status as a result of a keystroke. A window receives this 792 /// Sent to an application when the IME changes composition status as a result of a keystroke. A window receives this
793 /// message through its WindowProc function. 793 /// message through its WindowProc function.
794 /// </summary> 794 /// </summary>
795 IME_COMPOSITION = 0x010F, 795 IME_COMPOSITION = 0x010F,
796   796  
797 IME_KEYLAST = 0x010F, 797 IME_KEYLAST = 0x010F,
798   798  
799 /// <summary> 799 /// <summary>
800 /// The WM_INITDIALOG message is sent to the dialog box procedure immediately before a dialog box is displayed. Dialog 800 /// The WM_INITDIALOG message is sent to the dialog box procedure immediately before a dialog box is displayed. Dialog
801 /// box procedures typically use this message to initialize controls and carry out any other initialization tasks that 801 /// box procedures typically use this message to initialize controls and carry out any other initialization tasks that
802 /// affect the appearance of the dialog box. 802 /// affect the appearance of the dialog box.
803 /// </summary> 803 /// </summary>
804 INITDIALOG = 0x0110, 804 INITDIALOG = 0x0110,
805   805  
806 /// <summary> 806 /// <summary>
807 /// The WM_COMMAND message is sent when the user selects a command item from a menu, when a control sends a 807 /// The WM_COMMAND message is sent when the user selects a command item from a menu, when a control sends a
808 /// notification message to its parent window, or when an accelerator keystroke is translated. 808 /// notification message to its parent window, or when an accelerator keystroke is translated.
809 /// </summary> 809 /// </summary>
810 COMMAND = 0x0111, 810 COMMAND = 0x0111,
811   811  
812 /// <summary> 812 /// <summary>
813 /// A window receives this message when the user chooses a command from the Window menu, clicks the maximize button, 813 /// A window receives this message when the user chooses a command from the Window menu, clicks the maximize button,
814 /// minimize button, restore button, close button, or moves the form. You can stop the form from moving by filtering 814 /// minimize button, restore button, close button, or moves the form. You can stop the form from moving by filtering
815 /// this out. 815 /// this out.
816 /// </summary> 816 /// </summary>
817 SYSCOMMAND = 0x0112, 817 SYSCOMMAND = 0x0112,
818   818  
819 /// <summary> 819 /// <summary>
820 /// The WM_TIMER message is posted to the installing thread's message queue when a timer expires. The message is posted 820 /// The WM_TIMER message is posted to the installing thread's message queue when a timer expires. The message is posted
821 /// by the GetMessage or PeekMessage function. 821 /// by the GetMessage or PeekMessage function.
822 /// </summary> 822 /// </summary>
823 TIMER = 0x0113, 823 TIMER = 0x0113,
824   824  
825 /// <summary> 825 /// <summary>
826 /// The WM_HSCROLL message is sent to a window when a scroll event occurs in the window's standard horizontal scroll 826 /// The WM_HSCROLL message is sent to a window when a scroll event occurs in the window's standard horizontal scroll
827 /// bar. This message is also sent to the owner of a horizontal scroll bar control when a scroll event occurs in the 827 /// bar. This message is also sent to the owner of a horizontal scroll bar control when a scroll event occurs in the
828 /// control. 828 /// control.
829 /// </summary> 829 /// </summary>
830 HSCROLL = 0x0114, 830 HSCROLL = 0x0114,
831   831  
832 /// <summary> 832 /// <summary>
833 /// The WM_VSCROLL message is sent to a window when a scroll event occurs in the window's standard vertical scroll bar. 833 /// The WM_VSCROLL message is sent to a window when a scroll event occurs in the window's standard vertical scroll bar.
834 /// This message is also sent to the owner of a vertical scroll bar control when a scroll event occurs in the control. 834 /// This message is also sent to the owner of a vertical scroll bar control when a scroll event occurs in the control.
835 /// </summary> 835 /// </summary>
836 VSCROLL = 0x0115, 836 VSCROLL = 0x0115,
837   837  
838 /// <summary> 838 /// <summary>
839 /// The WM_INITMENU message is sent when a menu is about to become active. It occurs when the user clicks an item on 839 /// The WM_INITMENU message is sent when a menu is about to become active. It occurs when the user clicks an item on
840 /// the menu bar or presses a menu key. This allows the application to modify the menu before it is displayed. 840 /// the menu bar or presses a menu key. This allows the application to modify the menu before it is displayed.
841 /// </summary> 841 /// </summary>
842 INITMENU = 0x0116, 842 INITMENU = 0x0116,
843   843  
844 /// <summary> 844 /// <summary>
845 /// The WM_INITMENUPOPUP message is sent when a drop-down menu or submenu is about to become active. This allows an 845 /// The WM_INITMENUPOPUP message is sent when a drop-down menu or submenu is about to become active. This allows an
846 /// application to modify the menu before it is displayed, without changing the entire menu. 846 /// application to modify the menu before it is displayed, without changing the entire menu.
847 /// </summary> 847 /// </summary>
848 INITMENUPOPUP = 0x0117, 848 INITMENUPOPUP = 0x0117,
849   849  
850 /// <summary> 850 /// <summary>
851 /// The WM_MENUSELECT message is sent to a menu's owner window when the user selects a menu item. 851 /// The WM_MENUSELECT message is sent to a menu's owner window when the user selects a menu item.
852 /// </summary> 852 /// </summary>
853 MENUSELECT = 0x011F, 853 MENUSELECT = 0x011F,
854   854  
855 /// <summary> 855 /// <summary>
856 /// The WM_MENUCHAR message is sent when a menu is active and the user presses a key that does not correspond to any 856 /// The WM_MENUCHAR message is sent when a menu is active and the user presses a key that does not correspond to any
857 /// mnemonic or accelerator key. This message is sent to the window that owns the menu. 857 /// mnemonic or accelerator key. This message is sent to the window that owns the menu.
858 /// </summary> 858 /// </summary>
859 MENUCHAR = 0x0120, 859 MENUCHAR = 0x0120,
860   860  
861 /// <summary> 861 /// <summary>
862 /// The WM_ENTERIDLE message is sent to the owner window of a modal dialog box or menu that is entering an idle state. 862 /// The WM_ENTERIDLE message is sent to the owner window of a modal dialog box or menu that is entering an idle state.
863 /// A modal dialog box or menu enters an idle state when no messages are waiting in its queue after it has processed 863 /// A modal dialog box or menu enters an idle state when no messages are waiting in its queue after it has processed
864 /// one or more previous messages. 864 /// one or more previous messages.
865 /// </summary> 865 /// </summary>
866 ENTERIDLE = 0x0121, 866 ENTERIDLE = 0x0121,
867   867  
868 /// <summary> 868 /// <summary>
869 /// The WM_MENURBUTTONUP message is sent when the user releases the right mouse button while the cursor is on a menu 869 /// The WM_MENURBUTTONUP message is sent when the user releases the right mouse button while the cursor is on a menu
870 /// item. 870 /// item.
871 /// </summary> 871 /// </summary>
872 MENURBUTTONUP = 0x0122, 872 MENURBUTTONUP = 0x0122,
873   873  
874 /// <summary> 874 /// <summary>
875 /// The WM_MENUDRAG message is sent to the owner of a drag-and-drop menu when the user drags a menu item. 875 /// The WM_MENUDRAG message is sent to the owner of a drag-and-drop menu when the user drags a menu item.
876 /// </summary> 876 /// </summary>
877 MENUDRAG = 0x0123, 877 MENUDRAG = 0x0123,
878   878  
879 /// <summary> 879 /// <summary>
880 /// The WM_MENUGETOBJECT message is sent to the owner of a drag-and-drop menu when the mouse cursor enters a menu item 880 /// The WM_MENUGETOBJECT message is sent to the owner of a drag-and-drop menu when the mouse cursor enters a menu item
881 /// or moves from the center of the item to the top or bottom of the item. 881 /// or moves from the center of the item to the top or bottom of the item.
882 /// </summary> 882 /// </summary>
883 MENUGETOBJECT = 0x0124, 883 MENUGETOBJECT = 0x0124,
884   884  
885 /// <summary> 885 /// <summary>
886 /// The WM_UNINITMENUPOPUP message is sent when a drop-down menu or submenu has been destroyed. 886 /// The WM_UNINITMENUPOPUP message is sent when a drop-down menu or submenu has been destroyed.
887 /// </summary> 887 /// </summary>
888 UNINITMENUPOPUP = 0x0125, 888 UNINITMENUPOPUP = 0x0125,
889   889  
890 /// <summary> 890 /// <summary>
891 /// The WM_MENUCOMMAND message is sent when the user makes a selection from a menu. 891 /// The WM_MENUCOMMAND message is sent when the user makes a selection from a menu.
892 /// </summary> 892 /// </summary>
893 MENUCOMMAND = 0x0126, 893 MENUCOMMAND = 0x0126,
894   894  
895 /// <summary> 895 /// <summary>
896 /// An application sends the WM_CHANGEUISTATE message to indicate that the user interface (UI) state should be changed. 896 /// An application sends the WM_CHANGEUISTATE message to indicate that the user interface (UI) state should be changed.
897 /// </summary> 897 /// </summary>
898 CHANGEUISTATE = 0x0127, 898 CHANGEUISTATE = 0x0127,
899   899  
900 /// <summary> 900 /// <summary>
901 /// An application sends the WM_UPDATEUISTATE message to change the user interface (UI) state for the specified window 901 /// An application sends the WM_UPDATEUISTATE message to change the user interface (UI) state for the specified window
902 /// and all its child windows. 902 /// and all its child windows.
903 /// </summary> 903 /// </summary>
904 UPDATEUISTATE = 0x0128, 904 UPDATEUISTATE = 0x0128,
905   905  
906 /// <summary> 906 /// <summary>
907 /// An application sends the WM_QUERYUISTATE message to retrieve the user interface (UI) state for a window. 907 /// An application sends the WM_QUERYUISTATE message to retrieve the user interface (UI) state for a window.
908 /// </summary> 908 /// </summary>
909 QUERYUISTATE = 0x0129, 909 QUERYUISTATE = 0x0129,
910   910  
911 /// <summary> 911 /// <summary>
912 /// The WM_CTLCOLORMSGBOX message is sent to the owner window of a message box before Windows draws the message box. By 912 /// The WM_CTLCOLORMSGBOX message is sent to the owner window of a message box before Windows draws the message box. By
913 /// responding to this message, the owner window can set the text and background colors of the message box by using the 913 /// responding to this message, the owner window can set the text and background colors of the message box by using the
914 /// given display device context handle. 914 /// given display device context handle.
915 /// </summary> 915 /// </summary>
916 CTLCOLORMSGBOX = 0x0132, 916 CTLCOLORMSGBOX = 0x0132,
917   917  
918 /// <summary> 918 /// <summary>
919 /// An edit control that is not read-only or disabled sends the WM_CTLCOLOREDIT message to its parent window when the 919 /// An edit control that is not read-only or disabled sends the WM_CTLCOLOREDIT message to its parent window when the
920 /// control is about to be drawn. By responding to this message, the parent window can use the specified device context 920 /// control is about to be drawn. By responding to this message, the parent window can use the specified device context
921 /// handle to set the text and background colors of the edit control. 921 /// handle to set the text and background colors of the edit control.
922 /// </summary> 922 /// </summary>
923 CTLCOLOREDIT = 0x0133, 923 CTLCOLOREDIT = 0x0133,
924   924  
925 /// <summary> 925 /// <summary>
926 /// Sent to the parent window of a list box before the system draws the list box. By responding to this message, the 926 /// Sent to the parent window of a list box before the system draws the list box. By responding to this message, the
927 /// parent window can set the text and background colors of the list box by using the specified display device context 927 /// parent window can set the text and background colors of the list box by using the specified display device context
928 /// handle. 928 /// handle.
929 /// </summary> 929 /// </summary>
930 CTLCOLORLISTBOX = 0x0134, 930 CTLCOLORLISTBOX = 0x0134,
931   931  
932 /// <summary> 932 /// <summary>
933 /// The WM_CTLCOLORBTN message is sent to the parent window of a button before drawing the button. The parent window 933 /// The WM_CTLCOLORBTN message is sent to the parent window of a button before drawing the button. The parent window
934 /// can change the button's text and background colors. However, only owner-drawn buttons respond to the parent window 934 /// can change the button's text and background colors. However, only owner-drawn buttons respond to the parent window
935 /// processing this message. 935 /// processing this message.
936 /// </summary> 936 /// </summary>
937 CTLCOLORBTN = 0x0135, 937 CTLCOLORBTN = 0x0135,
938   938  
939 /// <summary> 939 /// <summary>
940 /// The WM_CTLCOLORDLG message is sent to a dialog box before the system draws the dialog box. By responding to this 940 /// The WM_CTLCOLORDLG message is sent to a dialog box before the system draws the dialog box. By responding to this
941 /// message, the dialog box can set its text and background colors using the specified display device context handle. 941 /// message, the dialog box can set its text and background colors using the specified display device context handle.
942 /// </summary> 942 /// </summary>
943 CTLCOLORDLG = 0x0136, 943 CTLCOLORDLG = 0x0136,
944   944  
945 /// <summary> 945 /// <summary>
946 /// The WM_CTLCOLORSCROLLBAR message is sent to the parent window of a scroll bar control when the control is about to 946 /// The WM_CTLCOLORSCROLLBAR message is sent to the parent window of a scroll bar control when the control is about to
947 /// be drawn. By responding to this message, the parent window can use the display context handle to set the background 947 /// be drawn. By responding to this message, the parent window can use the display context handle to set the background
948 /// color of the scroll bar control. 948 /// color of the scroll bar control.
949 /// </summary> 949 /// </summary>
950 CTLCOLORSCROLLBAR = 0x0137, 950 CTLCOLORSCROLLBAR = 0x0137,
951   951  
952 /// <summary> 952 /// <summary>
953 /// A static control, or an edit control that is read-only or disabled, sends the WM_CTLCOLORSTATIC message to its 953 /// A static control, or an edit control that is read-only or disabled, sends the WM_CTLCOLORSTATIC message to its
954 /// parent window when the control is about to be drawn. By responding to this message, the parent window can use the 954 /// parent window when the control is about to be drawn. By responding to this message, the parent window can use the
955 /// specified device context handle to set the text and background colors of the static control. 955 /// specified device context handle to set the text and background colors of the static control.
956 /// </summary> 956 /// </summary>
957 CTLCOLORSTATIC = 0x0138, 957 CTLCOLORSTATIC = 0x0138,
958   958  
959 /// <summary> 959 /// <summary>
960 /// Use WM_MOUSEFIRST to specify the first mouse message. Use the PeekMessage() Function. 960 /// Use WM_MOUSEFIRST to specify the first mouse message. Use the PeekMessage() Function.
961 /// </summary> 961 /// </summary>
962 MOUSEFIRST = 0x0200, 962 MOUSEFIRST = 0x0200,
963   963  
964 /// <summary> 964 /// <summary>
965 /// The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is 965 /// The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is
966 /// posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the 966 /// posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the
967 /// mouse. 967 /// mouse.
968 /// </summary> 968 /// </summary>
969 MOUSEMOVE = 0x0200, 969 MOUSEMOVE = 0x0200,
970   970  
971 /// <summary> 971 /// <summary>
972 /// The WM_LBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is in the client 972 /// The WM_LBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is in the client
973 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 973 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
974 /// the message is posted to the window that has captured the mouse. 974 /// the message is posted to the window that has captured the mouse.
975 /// </summary> 975 /// </summary>
976 LBUTTONDOWN = 0x0201, 976 LBUTTONDOWN = 0x0201,
977   977  
978 /// <summary> 978 /// <summary>
979 /// The WM_LBUTTONUP message is posted when the user releases the left mouse button while the cursor is in the client 979 /// The WM_LBUTTONUP message is posted when the user releases the left mouse button while the cursor is in the client
980 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 980 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
981 /// the message is posted to the window that has captured the mouse. 981 /// the message is posted to the window that has captured the mouse.
982 /// </summary> 982 /// </summary>
983 LBUTTONUP = 0x0202, 983 LBUTTONUP = 0x0202,
984   984  
985 /// <summary> 985 /// <summary>
986 /// The WM_LBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is in the 986 /// The WM_LBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is in the
987 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 987 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
988 /// Otherwise, the message is posted to the window that has captured the mouse. 988 /// Otherwise, the message is posted to the window that has captured the mouse.
989 /// </summary> 989 /// </summary>
990 LBUTTONDBLCLK = 0x0203, 990 LBUTTONDBLCLK = 0x0203,
991   991  
992 /// <summary> 992 /// <summary>
993 /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is in the client 993 /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is in the client
994 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 994 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
995 /// the message is posted to the window that has captured the mouse. 995 /// the message is posted to the window that has captured the mouse.
996 /// </summary> 996 /// </summary>
997 RBUTTONDOWN = 0x0204, 997 RBUTTONDOWN = 0x0204,
998   998  
999 /// <summary> 999 /// <summary>
1000 /// The WM_RBUTTONUP message is posted when the user releases the right mouse button while the cursor is in the client 1000 /// The WM_RBUTTONUP message is posted when the user releases the right mouse button while the cursor is in the client
1001 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 1001 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
1002 /// the message is posted to the window that has captured the mouse. 1002 /// the message is posted to the window that has captured the mouse.
1003 /// </summary> 1003 /// </summary>
1004 RBUTTONUP = 0x0205, 1004 RBUTTONUP = 0x0205,
1005   1005  
1006 /// <summary> 1006 /// <summary>
1007 /// The WM_RBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is in 1007 /// The WM_RBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is in
1008 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 1008 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
1009 /// Otherwise, the message is posted to the window that has captured the mouse. 1009 /// Otherwise, the message is posted to the window that has captured the mouse.
1010 /// </summary> 1010 /// </summary>
1011 RBUTTONDBLCLK = 0x0206, 1011 RBUTTONDBLCLK = 0x0206,
1012   1012  
1013 /// <summary> 1013 /// <summary>
1014 /// The WM_MBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is in the 1014 /// The WM_MBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is in the
1015 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 1015 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
1016 /// Otherwise, the message is posted to the window that has captured the mouse. 1016 /// Otherwise, the message is posted to the window that has captured the mouse.
1017 /// </summary> 1017 /// </summary>
1018 MBUTTONDOWN = 0x0207, 1018 MBUTTONDOWN = 0x0207,
1019   1019  
1020 /// <summary> 1020 /// <summary>
1021 /// The WM_MBUTTONUP message is posted when the user releases the middle mouse button while the cursor is in the client 1021 /// The WM_MBUTTONUP message is posted when the user releases the middle mouse button while the cursor is in the client
1022 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 1022 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
1023 /// the message is posted to the window that has captured the mouse. 1023 /// the message is posted to the window that has captured the mouse.
1024 /// </summary> 1024 /// </summary>
1025 MBUTTONUP = 0x0208, 1025 MBUTTONUP = 0x0208,
1026   1026  
1027 /// <summary> 1027 /// <summary>
1028 /// The WM_MBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is in 1028 /// The WM_MBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is in
1029 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 1029 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
1030 /// Otherwise, the message is posted to the window that has captured the mouse. 1030 /// Otherwise, the message is posted to the window that has captured the mouse.
1031 /// </summary> 1031 /// </summary>
1032 MBUTTONDBLCLK = 0x0209, 1032 MBUTTONDBLCLK = 0x0209,
1033   1033  
1034 /// <summary> 1034 /// <summary>
1035 /// The WM_MOUSEWHEEL message is sent to the focus window when the mouse wheel is rotated. The DefWindowProc function 1035 /// The WM_MOUSEWHEEL message is sent to the focus window when the mouse wheel is rotated. The DefWindowProc function
1036 /// propagates the message to the window's parent. There should be no internal forwarding of the message, since 1036 /// propagates the message to the window's parent. There should be no internal forwarding of the message, since
1037 /// DefWindowProc propagates it up the parent chain until it finds a window that processes it. 1037 /// DefWindowProc propagates it up the parent chain until it finds a window that processes it.
1038 /// </summary> 1038 /// </summary>
1039 MOUSEWHEEL = 0x020A, 1039 MOUSEWHEEL = 0x020A,
1040   1040  
1041 /// <summary> 1041 /// <summary>
1042 /// The WM_XBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in the 1042 /// The WM_XBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in the
1043 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 1043 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
1044 /// Otherwise, the message is posted to the window that has captured the mouse. 1044 /// Otherwise, the message is posted to the window that has captured the mouse.
1045 /// </summary> 1045 /// </summary>
1046 XBUTTONDOWN = 0x020B, 1046 XBUTTONDOWN = 0x020B,
1047   1047  
1048 /// <summary> 1048 /// <summary>
1049 /// The WM_XBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the 1049 /// The WM_XBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the
1050 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 1050 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
1051 /// Otherwise, the message is posted to the window that has captured the mouse. 1051 /// Otherwise, the message is posted to the window that has captured the mouse.
1052 /// </summary> 1052 /// </summary>
1053 XBUTTONUP = 0x020C, 1053 XBUTTONUP = 0x020C,
1054   1054  
1055 /// <summary> 1055 /// <summary>
1056 /// The WM_XBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor is 1056 /// The WM_XBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor is
1057 /// in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the 1057 /// in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the
1058 /// cursor. Otherwise, the message is posted to the window that has captured the mouse. 1058 /// cursor. Otherwise, the message is posted to the window that has captured the mouse.
1059 /// </summary> 1059 /// </summary>
1060 XBUTTONDBLCLK = 0x020D, 1060 XBUTTONDBLCLK = 0x020D,
1061   1061  
1062 /// <summary> 1062 /// <summary>
1063 /// The WM_MOUSEHWHEEL message is sent to the focus window when the mouse's horizontal scroll wheel is tilted or 1063 /// The WM_MOUSEHWHEEL message is sent to the focus window when the mouse's horizontal scroll wheel is tilted or
1064 /// rotated. The DefWindowProc function propagates the message to the window's parent. There should be no internal 1064 /// rotated. The DefWindowProc function propagates the message to the window's parent. There should be no internal
1065 /// forwarding of the message, since DefWindowProc propagates it up the parent chain until it finds a window that 1065 /// forwarding of the message, since DefWindowProc propagates it up the parent chain until it finds a window that
1066 /// processes it. 1066 /// processes it.
1067 /// </summary> 1067 /// </summary>
1068 MOUSEHWHEEL = 0x020E, 1068 MOUSEHWHEEL = 0x020E,
1069   1069  
1070 /// <summary> 1070 /// <summary>
1071 /// Use WM_MOUSELAST to specify the last mouse message. Used with PeekMessage() Function. 1071 /// Use WM_MOUSELAST to specify the last mouse message. Used with PeekMessage() Function.
1072 /// </summary> 1072 /// </summary>
1073 MOUSELAST = 0x020E, 1073 MOUSELAST = 0x020E,
1074   1074  
1075 /// <summary> 1075 /// <summary>
1076 /// The WM_PARENTNOTIFY message is sent to the parent of a child window when the child window is created or destroyed, 1076 /// The WM_PARENTNOTIFY message is sent to the parent of a child window when the child window is created or destroyed,
1077 /// or when the user clicks a mouse button while the cursor is over the child window. When the child window is being 1077 /// or when the user clicks a mouse button while the cursor is over the child window. When the child window is being
1078 /// created, the system sends WM_PARENTNOTIFY just before the CreateWindow or CreateWindowEx function that creates the 1078 /// created, the system sends WM_PARENTNOTIFY just before the CreateWindow or CreateWindowEx function that creates the
1079 /// window returns. When the child window is being destroyed, the system sends the message before any processing to 1079 /// window returns. When the child window is being destroyed, the system sends the message before any processing to
1080 /// destroy the window takes place. 1080 /// destroy the window takes place.
1081 /// </summary> 1081 /// </summary>
1082 PARENTNOTIFY = 0x0210, 1082 PARENTNOTIFY = 0x0210,
1083   1083  
1084 /// <summary> 1084 /// <summary>
1085 /// The WM_ENTERMENULOOP message informs an application's main window procedure that a menu modal loop has been 1085 /// The WM_ENTERMENULOOP message informs an application's main window procedure that a menu modal loop has been
1086 /// entered. 1086 /// entered.
1087 /// </summary> 1087 /// </summary>
1088 ENTERMENULOOP = 0x0211, 1088 ENTERMENULOOP = 0x0211,
1089   1089  
1090 /// <summary> 1090 /// <summary>
1091 /// The WM_EXITMENULOOP message informs an application's main window procedure that a menu modal loop has been exited. 1091 /// The WM_EXITMENULOOP message informs an application's main window procedure that a menu modal loop has been exited.
1092 /// </summary> 1092 /// </summary>
1093 EXITMENULOOP = 0x0212, 1093 EXITMENULOOP = 0x0212,
1094   1094  
1095 /// <summary> 1095 /// <summary>
1096 /// The WM_NEXTMENU message is sent to an application when the right or left arrow key is used to switch between the 1096 /// The WM_NEXTMENU message is sent to an application when the right or left arrow key is used to switch between the
1097 /// menu bar and the system menu. 1097 /// menu bar and the system menu.
1098 /// </summary> 1098 /// </summary>
1099 NEXTMENU = 0x0213, 1099 NEXTMENU = 0x0213,
1100   1100  
1101 /// <summary> 1101 /// <summary>
1102 /// The WM_SIZING message is sent to a window that the user is resizing. By processing this message, an application can 1102 /// The WM_SIZING message is sent to a window that the user is resizing. By processing this message, an application can
1103 /// monitor the size and position of the drag rectangle and, if needed, change its size or position. 1103 /// monitor the size and position of the drag rectangle and, if needed, change its size or position.
1104 /// </summary> 1104 /// </summary>
1105 SIZING = 0x0214, 1105 SIZING = 0x0214,
1106   1106  
1107 /// <summary> 1107 /// <summary>
1108 /// The WM_CAPTURECHANGED message is sent to the window that is losing the mouse capture. 1108 /// The WM_CAPTURECHANGED message is sent to the window that is losing the mouse capture.
1109 /// </summary> 1109 /// </summary>
1110 CAPTURECHANGED = 0x0215, 1110 CAPTURECHANGED = 0x0215,
1111   1111  
1112 /// <summary> 1112 /// <summary>
1113 /// The WM_MOVING message is sent to a window that the user is moving. By processing this message, an application can 1113 /// The WM_MOVING message is sent to a window that the user is moving. By processing this message, an application can
1114 /// monitor the position of the drag rectangle and, if needed, change its position. 1114 /// monitor the position of the drag rectangle and, if needed, change its position.
1115 /// </summary> 1115 /// </summary>
1116 MOVING = 0x0216, 1116 MOVING = 0x0216,
1117   1117  
1118 /// <summary> 1118 /// <summary>
1119 /// Notifies applications that a power-management event has occurred. 1119 /// Notifies applications that a power-management event has occurred.
1120 /// </summary> 1120 /// </summary>
1121 POWERBROADCAST = 0x0218, 1121 POWERBROADCAST = 0x0218,
1122   1122  
1123 /// <summary> 1123 /// <summary>
1124 /// Notifies an application of a change to the hardware configuration of a device or the computer. 1124 /// Notifies an application of a change to the hardware configuration of a device or the computer.
1125 /// </summary> 1125 /// </summary>
1126 DEVICECHANGE = 0x0219, 1126 DEVICECHANGE = 0x0219,
1127   1127  
1128 /// <summary> 1128 /// <summary>
1129 /// An application sends the WM_MDICREATE message to a multiple-document interface (MDI) client window to create an MDI 1129 /// An application sends the WM_MDICREATE message to a multiple-document interface (MDI) client window to create an MDI
1130 /// child window. 1130 /// child window.
1131 /// </summary> 1131 /// </summary>
1132 MDICREATE = 0x0220, 1132 MDICREATE = 0x0220,
1133   1133  
1134 /// <summary> 1134 /// <summary>
1135 /// An application sends the WM_MDIDESTROY message to a multiple-document interface (MDI) client window to close an MDI 1135 /// An application sends the WM_MDIDESTROY message to a multiple-document interface (MDI) client window to close an MDI
1136 /// child window. 1136 /// child window.
1137 /// </summary> 1137 /// </summary>
1138 MDIDESTROY = 0x0221, 1138 MDIDESTROY = 0x0221,
1139   1139  
1140 /// <summary> 1140 /// <summary>
1141 /// An application sends the WM_MDIACTIVATE message to a multiple-document interface (MDI) client window to instruct 1141 /// An application sends the WM_MDIACTIVATE message to a multiple-document interface (MDI) client window to instruct
1142 /// the client window to activate a different MDI child window. 1142 /// the client window to activate a different MDI child window.
1143 /// </summary> 1143 /// </summary>
1144 MDIACTIVATE = 0x0222, 1144 MDIACTIVATE = 0x0222,
1145   1145  
1146 /// <summary> 1146 /// <summary>
1147 /// An application sends the WM_MDIRESTORE message to a multiple-document interface (MDI) client window to restore an 1147 /// An application sends the WM_MDIRESTORE message to a multiple-document interface (MDI) client window to restore an
1148 /// MDI child window from maximized or minimized size. 1148 /// MDI child window from maximized or minimized size.
1149 /// </summary> 1149 /// </summary>
1150 MDIRESTORE = 0x0223, 1150 MDIRESTORE = 0x0223,
1151   1151  
1152 /// <summary> 1152 /// <summary>
1153 /// An application sends the WM_MDINEXT message to a multiple-document interface (MDI) client window to activate the 1153 /// An application sends the WM_MDINEXT message to a multiple-document interface (MDI) client window to activate the
1154 /// next or previous child window. 1154 /// next or previous child window.
1155 /// </summary> 1155 /// </summary>
1156 MDINEXT = 0x0224, 1156 MDINEXT = 0x0224,
1157   1157  
1158 /// <summary> 1158 /// <summary>
1159 /// An application sends the WM_MDIMAXIMIZE message to a multiple-document interface (MDI) client window to maximize an 1159 /// An application sends the WM_MDIMAXIMIZE message to a multiple-document interface (MDI) client window to maximize an
1160 /// MDI child window. The system resizes the child window to make its client area fill the client window. The system 1160 /// MDI child window. The system resizes the child window to make its client area fill the client window. The system
1161 /// places the child window's window menu icon in the rightmost position of the frame window's menu bar, and places the 1161 /// places the child window's window menu icon in the rightmost position of the frame window's menu bar, and places the
1162 /// child window's restore icon in the leftmost position. The system also appends the title bar text of the child 1162 /// child window's restore icon in the leftmost position. The system also appends the title bar text of the child
1163 /// window to that of the frame window. 1163 /// window to that of the frame window.
1164 /// </summary> 1164 /// </summary>
1165 MDIMAXIMIZE = 0x0225, 1165 MDIMAXIMIZE = 0x0225,
1166   1166  
1167 /// <summary> 1167 /// <summary>
1168 /// An application sends the WM_MDITILE message to a multiple-document interface (MDI) client window to arrange all of 1168 /// An application sends the WM_MDITILE message to a multiple-document interface (MDI) client window to arrange all of
1169 /// its MDI child windows in a tile format. 1169 /// its MDI child windows in a tile format.
1170 /// </summary> 1170 /// </summary>
1171 MDITILE = 0x0226, 1171 MDITILE = 0x0226,
1172   1172  
1173 /// <summary> 1173 /// <summary>
1174 /// An application sends the WM_MDICASCADE message to a multiple-document interface (MDI) client window to arrange all 1174 /// An application sends the WM_MDICASCADE message to a multiple-document interface (MDI) client window to arrange all
1175 /// its child windows in a cascade format. 1175 /// its child windows in a cascade format.
1176 /// </summary> 1176 /// </summary>
1177 MDICASCADE = 0x0227, 1177 MDICASCADE = 0x0227,
1178   1178  
1179 /// <summary> 1179 /// <summary>
1180 /// An application sends the WM_MDIICONARRANGE message to a multiple-document interface (MDI) client window to arrange 1180 /// An application sends the WM_MDIICONARRANGE message to a multiple-document interface (MDI) client window to arrange
1181 /// all minimized MDI child windows. It does not affect child windows that are not minimized. 1181 /// all minimized MDI child windows. It does not affect child windows that are not minimized.
1182 /// </summary> 1182 /// </summary>
1183 MDIICONARRANGE = 0x0228, 1183 MDIICONARRANGE = 0x0228,
1184   1184  
1185 /// <summary> 1185 /// <summary>
1186 /// An application sends the WM_MDIGETACTIVE message to a multiple-document interface (MDI) client window to retrieve 1186 /// An application sends the WM_MDIGETACTIVE message to a multiple-document interface (MDI) client window to retrieve
1187 /// the handle to the active MDI child window. 1187 /// the handle to the active MDI child window.
1188 /// </summary> 1188 /// </summary>
1189 MDIGETACTIVE = 0x0229, 1189 MDIGETACTIVE = 0x0229,
1190   1190  
1191 /// <summary> 1191 /// <summary>
1192 /// An application sends the WM_MDISETMENU message to a multiple-document interface (MDI) client window to replace the 1192 /// An application sends the WM_MDISETMENU message to a multiple-document interface (MDI) client window to replace the
1193 /// entire menu of an MDI frame window, to replace the window menu of the frame window, or both. 1193 /// entire menu of an MDI frame window, to replace the window menu of the frame window, or both.
1194 /// </summary> 1194 /// </summary>
1195 MDISETMENU = 0x0230, 1195 MDISETMENU = 0x0230,
1196   1196  
1197 /// <summary> 1197 /// <summary>
1198 /// The WM_ENTERSIZEMOVE message is sent one time to a window after it enters the moving or sizing modal loop. The 1198 /// The WM_ENTERSIZEMOVE message is sent one time to a window after it enters the moving or sizing modal loop. The
1199 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when 1199 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when
1200 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message 1200 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message
1201 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns. 1201 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns.
1202 /// The system sends the WM_ENTERSIZEMOVE message regardless of whether the dragging of full windows is enabled. 1202 /// The system sends the WM_ENTERSIZEMOVE message regardless of whether the dragging of full windows is enabled.
1203 /// </summary> 1203 /// </summary>
1204 ENTERSIZEMOVE = 0x0231, 1204 ENTERSIZEMOVE = 0x0231,
1205   1205  
1206 /// <summary> 1206 /// <summary>
1207 /// The WM_EXITSIZEMOVE message is sent one time to a window, after it has exited the moving or sizing modal loop. The 1207 /// The WM_EXITSIZEMOVE message is sent one time to a window, after it has exited the moving or sizing modal loop. The
1208 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when 1208 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when
1209 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message 1209 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message
1210 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns. 1210 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns.
1211 /// </summary> 1211 /// </summary>
1212 EXITSIZEMOVE = 0x0232, 1212 EXITSIZEMOVE = 0x0232,
1213   1213  
1214 /// <summary> 1214 /// <summary>
1215 /// Sent when the user drops a file on the window of an application that has registered itself as a recipient of 1215 /// Sent when the user drops a file on the window of an application that has registered itself as a recipient of
1216 /// dropped files. 1216 /// dropped files.
1217 /// </summary> 1217 /// </summary>
1218 DROPFILES = 0x0233, 1218 DROPFILES = 0x0233,
1219   1219  
1220 /// <summary> 1220 /// <summary>
1221 /// An application sends the WM_MDIREFRESHMENU message to a multiple-document interface (MDI) client window to refresh 1221 /// An application sends the WM_MDIREFRESHMENU message to a multiple-document interface (MDI) client window to refresh
1222 /// the window menu of the MDI frame window. 1222 /// the window menu of the MDI frame window.
1223 /// </summary> 1223 /// </summary>
1224 MDIREFRESHMENU = 0x0234, 1224 MDIREFRESHMENU = 0x0234,
1225   1225  
1226 /// <summary> 1226 /// <summary>
1227 /// Sent to an application when a window is activated. A window receives this message through its WindowProc function. 1227 /// Sent to an application when a window is activated. A window receives this message through its WindowProc function.
1228 /// </summary> 1228 /// </summary>
1229 IME_SETCONTEXT = 0x0281, 1229 IME_SETCONTEXT = 0x0281,
1230   1230  
1231 /// <summary> 1231 /// <summary>
1232 /// Sent to an application to notify it of changes to the IME window. A window receives this message through its 1232 /// Sent to an application to notify it of changes to the IME window. A window receives this message through its
1233 /// WindowProc function. 1233 /// WindowProc function.
1234 /// </summary> 1234 /// </summary>
1235 IME_NOTIFY = 0x0282, 1235 IME_NOTIFY = 0x0282,
1236   1236  
1237 /// <summary> 1237 /// <summary>
1238 /// Sent by an application to direct the IME window to carry out the requested command. The application uses this 1238 /// Sent by an application to direct the IME window to carry out the requested command. The application uses this
1239 /// message to control the IME window that it has created. To send this message, the application calls the SendMessage 1239 /// message to control the IME window that it has created. To send this message, the application calls the SendMessage
1240 /// function with the following parameters. 1240 /// function with the following parameters.
1241 /// </summary> 1241 /// </summary>
1242 IME_CONTROL = 0x0283, 1242 IME_CONTROL = 0x0283,
1243   1243  
1244 /// <summary> 1244 /// <summary>
1245 /// Sent to an application when the IME window finds no space to extend the area for the composition window. A window 1245 /// Sent to an application when the IME window finds no space to extend the area for the composition window. A window
1246 /// receives this message through its WindowProc function. 1246 /// receives this message through its WindowProc function.
1247 /// </summary> 1247 /// </summary>
1248 IME_COMPOSITIONFULL = 0x0284, 1248 IME_COMPOSITIONFULL = 0x0284,
1249   1249  
1250 /// <summary> 1250 /// <summary>
1251 /// Sent to an application when the operating system is about to change the current IME. A window receives this message 1251 /// Sent to an application when the operating system is about to change the current IME. A window receives this message
1252 /// through its WindowProc function. 1252 /// through its WindowProc function.
1253 /// </summary> 1253 /// </summary>
1254 IME_SELECT = 0x0285, 1254 IME_SELECT = 0x0285,
1255   1255  
1256 /// <summary> 1256 /// <summary>
1257 /// Sent to an application when the IME gets a character of the conversion result. A window receives this message 1257 /// Sent to an application when the IME gets a character of the conversion result. A window receives this message
1258 /// through its WindowProc function. 1258 /// through its WindowProc function.
1259 /// </summary> 1259 /// </summary>
1260 IME_CHAR = 0x0286, 1260 IME_CHAR = 0x0286,
1261   1261  
1262 /// <summary> 1262 /// <summary>
1263 /// Sent to an application to provide commands and request information. A window receives this message through its 1263 /// Sent to an application to provide commands and request information. A window receives this message through its
1264 /// WindowProc function. 1264 /// WindowProc function.
1265 /// </summary> 1265 /// </summary>
1266 IME_REQUEST = 0x0288, 1266 IME_REQUEST = 0x0288,
1267   1267  
1268 /// <summary> 1268 /// <summary>
1269 /// Sent to an application by the IME to notify the application of a key press and to keep message order. A window 1269 /// Sent to an application by the IME to notify the application of a key press and to keep message order. A window
1270 /// receives this message through its WindowProc function. 1270 /// receives this message through its WindowProc function.
1271 /// </summary> 1271 /// </summary>
1272 IME_KEYDOWN = 0x0290, 1272 IME_KEYDOWN = 0x0290,
1273   1273  
1274 /// <summary> 1274 /// <summary>
1275 /// Sent to an application by the IME to notify the application of a key release and to keep message order. A window 1275 /// Sent to an application by the IME to notify the application of a key release and to keep message order. A window
1276 /// receives this message through its WindowProc function. 1276 /// receives this message through its WindowProc function.
1277 /// </summary> 1277 /// </summary>
1278 IME_KEYUP = 0x0291, 1278 IME_KEYUP = 0x0291,
1279   1279  
1280 /// <summary> 1280 /// <summary>
1281 /// The WM_MOUSEHOVER message is posted to a window when the cursor hovers over the client area of the window for the 1281 /// The WM_MOUSEHOVER message is posted to a window when the cursor hovers over the client area of the window for the
1282 /// period of time specified in a prior call to TrackMouseEvent. 1282 /// period of time specified in a prior call to TrackMouseEvent.
1283 /// </summary> 1283 /// </summary>
1284 MOUSEHOVER = 0x02A1, 1284 MOUSEHOVER = 0x02A1,
1285   1285  
1286 /// <summary> 1286 /// <summary>
1287 /// The WM_MOUSELEAVE message is posted to a window when the cursor leaves the client area of the window specified in a 1287 /// The WM_MOUSELEAVE message is posted to a window when the cursor leaves the client area of the window specified in a
1288 /// prior call to TrackMouseEvent. 1288 /// prior call to TrackMouseEvent.
1289 /// </summary> 1289 /// </summary>
1290 MOUSELEAVE = 0x02A3, 1290 MOUSELEAVE = 0x02A3,
1291   1291  
1292 /// <summary> 1292 /// <summary>
1293 /// The WM_NCMOUSEHOVER message is posted to a window when the cursor hovers over the nonclient area of the window for 1293 /// The WM_NCMOUSEHOVER message is posted to a window when the cursor hovers over the nonclient area of the window for
1294 /// the period of time specified in a prior call to TrackMouseEvent. 1294 /// the period of time specified in a prior call to TrackMouseEvent.
1295 /// </summary> 1295 /// </summary>
1296 NCMOUSEHOVER = 0x02A0, 1296 NCMOUSEHOVER = 0x02A0,
1297   1297  
1298 /// <summary> 1298 /// <summary>
1299 /// The WM_NCMOUSELEAVE message is posted to a window when the cursor leaves the nonclient area of the window specified 1299 /// The WM_NCMOUSELEAVE message is posted to a window when the cursor leaves the nonclient area of the window specified
1300 /// in a prior call to TrackMouseEvent. 1300 /// in a prior call to TrackMouseEvent.
1301 /// </summary> 1301 /// </summary>
1302 NCMOUSELEAVE = 0x02A2, 1302 NCMOUSELEAVE = 0x02A2,
1303   1303  
1304 /// <summary> 1304 /// <summary>
1305 /// The WM_WTSSESSION_CHANGE message notifies applications of changes in session state. 1305 /// The WM_WTSSESSION_CHANGE message notifies applications of changes in session state.
1306 /// </summary> 1306 /// </summary>
1307 WTSSESSION_CHANGE = 0x02B1, 1307 WTSSESSION_CHANGE = 0x02B1,
1308   1308  
1309 TABLET_FIRST = 0x02c0, 1309 TABLET_FIRST = 0x02c0,
1310   1310  
1311 TABLET_LAST = 0x02df, 1311 TABLET_LAST = 0x02df,
1312   1312  
1313 /// <summary> 1313 /// <summary>
1314 /// An application sends a WM_CUT message to an edit control or combo box to delete (cut) the current selection, if 1314 /// An application sends a WM_CUT message to an edit control or combo box to delete (cut) the current selection, if
1315 /// any, in the edit control and copy the deleted text to the clipboard in CF_TEXT format. 1315 /// any, in the edit control and copy the deleted text to the clipboard in CF_TEXT format.
1316 /// </summary> 1316 /// </summary>
1317 CUT = 0x0300, 1317 CUT = 0x0300,
1318   1318  
1319 /// <summary> 1319 /// <summary>
1320 /// An application sends the WM_COPY message to an edit control or combo box to copy the current selection to the 1320 /// An application sends the WM_COPY message to an edit control or combo box to copy the current selection to the
1321 /// clipboard in CF_TEXT format. 1321 /// clipboard in CF_TEXT format.
1322 /// </summary> 1322 /// </summary>
1323 COPY = 0x0301, 1323 COPY = 0x0301,
1324   1324  
1325 /// <summary> 1325 /// <summary>
1326 /// An application sends a WM_PASTE message to an edit control or combo box to copy the current content of the 1326 /// An application sends a WM_PASTE message to an edit control or combo box to copy the current content of the
1327 /// clipboard to the edit control at the current caret position. Data is inserted only if the clipboard contains data 1327 /// clipboard to the edit control at the current caret position. Data is inserted only if the clipboard contains data
1328 /// in CF_TEXT format. 1328 /// in CF_TEXT format.
1329 /// </summary> 1329 /// </summary>
1330 PASTE = 0x0302, 1330 PASTE = 0x0302,
1331   1331  
1332 /// <summary> 1332 /// <summary>
1333 /// An application sends a WM_CLEAR message to an edit control or combo box to delete (clear) the current selection, if 1333 /// An application sends a WM_CLEAR message to an edit control or combo box to delete (clear) the current selection, if
1334 /// any, from the edit control. 1334 /// any, from the edit control.
1335 /// </summary> 1335 /// </summary>
1336 CLEAR = 0x0303, 1336 CLEAR = 0x0303,
1337   1337  
1338 /// <summary> 1338 /// <summary>
1339 /// An application sends a WM_UNDO message to an edit control to undo the last operation. When this message is sent to 1339 /// An application sends a WM_UNDO message to an edit control to undo the last operation. When this message is sent to
1340 /// an edit control, the previously deleted text is restored or the previously added text is deleted. 1340 /// an edit control, the previously deleted text is restored or the previously added text is deleted.
1341 /// </summary> 1341 /// </summary>
1342 UNDO = 0x0304, 1342 UNDO = 0x0304,
1343   1343  
1344 /// <summary> 1344 /// <summary>
1345 /// The WM_RENDERFORMAT message is sent to the clipboard owner if it has delayed rendering a specific clipboard format 1345 /// The WM_RENDERFORMAT message is sent to the clipboard owner if it has delayed rendering a specific clipboard format
1346 /// and if an application has requested data in that format. The clipboard owner must render data in the specified 1346 /// and if an application has requested data in that format. The clipboard owner must render data in the specified
1347 /// format and place it on the clipboard by calling the SetClipboardData function. 1347 /// format and place it on the clipboard by calling the SetClipboardData function.
1348 /// </summary> 1348 /// </summary>
1349 RENDERFORMAT = 0x0305, 1349 RENDERFORMAT = 0x0305,
1350   1350  
1351 /// <summary> 1351 /// <summary>
1352 /// The WM_RENDERALLFORMATS message is sent to the clipboard owner before it is destroyed, if the clipboard owner has 1352 /// The WM_RENDERALLFORMATS message is sent to the clipboard owner before it is destroyed, if the clipboard owner has
1353 /// delayed rendering one or more clipboard formats. For the content of the clipboard to remain available to other 1353 /// delayed rendering one or more clipboard formats. For the content of the clipboard to remain available to other
1354 /// applications, the clipboard owner must render data in all the formats it is capable of generating, and place the 1354 /// applications, the clipboard owner must render data in all the formats it is capable of generating, and place the
1355 /// data on the clipboard by calling the SetClipboardData function. 1355 /// data on the clipboard by calling the SetClipboardData function.
1356 /// </summary> 1356 /// </summary>
1357 RENDERALLFORMATS = 0x0306, 1357 RENDERALLFORMATS = 0x0306,
1358   1358  
1359 /// <summary> 1359 /// <summary>
1360 /// The WM_DESTROYCLIPBOARD message is sent to the clipboard owner when a call to the EmptyClipboard function empties 1360 /// The WM_DESTROYCLIPBOARD message is sent to the clipboard owner when a call to the EmptyClipboard function empties
1361 /// the clipboard. 1361 /// the clipboard.
1362 /// </summary> 1362 /// </summary>
1363 DESTROYCLIPBOARD = 0x0307, 1363 DESTROYCLIPBOARD = 0x0307,
1364   1364  
1365 /// <summary> 1365 /// <summary>
1366 /// The WM_DRAWCLIPBOARD message is sent to the first window in the clipboard viewer chain when the content of the 1366 /// The WM_DRAWCLIPBOARD message is sent to the first window in the clipboard viewer chain when the content of the
1367 /// clipboard changes. This enables a clipboard viewer window to display the new content of the clipboard. 1367 /// clipboard changes. This enables a clipboard viewer window to display the new content of the clipboard.
1368 /// </summary> 1368 /// </summary>
1369 DRAWCLIPBOARD = 0x0308, 1369 DRAWCLIPBOARD = 0x0308,
1370   1370  
1371 /// <summary> 1371 /// <summary>
1372 /// The WM_PAINTCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1372 /// The WM_PAINTCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1373 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area needs repainting. 1373 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area needs repainting.
1374 /// </summary> 1374 /// </summary>
1375 PAINTCLIPBOARD = 0x0309, 1375 PAINTCLIPBOARD = 0x0309,
1376   1376  
1377 /// <summary> 1377 /// <summary>
1378 /// The WM_VSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1378 /// The WM_VSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1379 /// contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's vertical scroll bar. The 1379 /// contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's vertical scroll bar. The
1380 /// owner should scroll the clipboard image and update the scroll bar values. 1380 /// owner should scroll the clipboard image and update the scroll bar values.
1381 /// </summary> 1381 /// </summary>
1382 VSCROLLCLIPBOARD = 0x030A, 1382 VSCROLLCLIPBOARD = 0x030A,
1383   1383  
1384 /// <summary> 1384 /// <summary>
1385 /// The WM_SIZECLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1385 /// The WM_SIZECLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1386 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area has changed size. 1386 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area has changed size.
1387 /// </summary> 1387 /// </summary>
1388 SIZECLIPBOARD = 0x030B, 1388 SIZECLIPBOARD = 0x030B,
1389   1389  
1390 /// <summary> 1390 /// <summary>
1391 /// The WM_ASKCBFORMATNAME message is sent to the clipboard owner by a clipboard viewer window to request the name of a 1391 /// The WM_ASKCBFORMATNAME message is sent to the clipboard owner by a clipboard viewer window to request the name of a
1392 /// CF_OWNERDISPLAY clipboard format. 1392 /// CF_OWNERDISPLAY clipboard format.
1393 /// </summary> 1393 /// </summary>
1394 ASKCBFORMATNAME = 0x030C, 1394 ASKCBFORMATNAME = 0x030C,
1395   1395  
1396 /// <summary> 1396 /// <summary>
1397 /// The WM_CHANGECBCHAIN message is sent to the first window in the clipboard viewer chain when a window is being 1397 /// The WM_CHANGECBCHAIN message is sent to the first window in the clipboard viewer chain when a window is being
1398 /// removed from the chain. 1398 /// removed from the chain.
1399 /// </summary> 1399 /// </summary>
1400 CHANGECBCHAIN = 0x030D, 1400 CHANGECBCHAIN = 0x030D,
1401   1401  
1402 /// <summary> 1402 /// <summary>
1403 /// The WM_HSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window. This occurs when the 1403 /// The WM_HSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window. This occurs when the
1404 /// clipboard contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's horizontal 1404 /// clipboard contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's horizontal
1405 /// scroll bar. The owner should scroll the clipboard image and update the scroll bar values. 1405 /// scroll bar. The owner should scroll the clipboard image and update the scroll bar values.
1406 /// </summary> 1406 /// </summary>
1407 HSCROLLCLIPBOARD = 0x030E, 1407 HSCROLLCLIPBOARD = 0x030E,
1408   1408  
1409 /// <summary> 1409 /// <summary>
1410 /// This message informs a window that it is about to receive the keyboard focus, giving the window the opportunity to 1410 /// This message informs a window that it is about to receive the keyboard focus, giving the window the opportunity to
1411 /// realize its logical palette when it receives the focus. 1411 /// realize its logical palette when it receives the focus.
1412 /// </summary> 1412 /// </summary>
1413 QUERYNEWPALETTE = 0x030F, 1413 QUERYNEWPALETTE = 0x030F,
1414   1414  
1415 /// <summary> 1415 /// <summary>
1416 /// The WM_PALETTEISCHANGING message informs applications that an application is going to realize its logical palette. 1416 /// The WM_PALETTEISCHANGING message informs applications that an application is going to realize its logical palette.
1417 /// </summary> 1417 /// </summary>
1418 PALETTEISCHANGING = 0x0310, 1418 PALETTEISCHANGING = 0x0310,
1419   1419  
1420 /// <summary> 1420 /// <summary>
1421 /// This message is sent by the OS to all top-level and overlapped windows after the window with the keyboard focus 1421 /// This message is sent by the OS to all top-level and overlapped windows after the window with the keyboard focus
1422 /// realizes its logical palette. 1422 /// realizes its logical palette.
1423 /// This message enables windows that do not have the keyboard focus to realize their logical palettes and update their 1423 /// This message enables windows that do not have the keyboard focus to realize their logical palettes and update their
1424 /// client areas. 1424 /// client areas.
1425 /// </summary> 1425 /// </summary>
1426 PALETTECHANGED = 0x0311, 1426 PALETTECHANGED = 0x0311,
1427   1427  
1428 /// <summary> 1428 /// <summary>
1429 /// The WM_HOTKEY message is posted when the user presses a hot key registered by the RegisterHotKey function. The 1429 /// The WM_HOTKEY message is posted when the user presses a hot key registered by the RegisterHotKey function. The
1430 /// message is placed at the top of the message queue associated with the thread that registered the hot key. 1430 /// message is placed at the top of the message queue associated with the thread that registered the hot key.
1431 /// </summary> 1431 /// </summary>
1432 HOTKEY = 0x0312, 1432 HOTKEY = 0x0312,
1433   1433  
1434 /// <summary> 1434 /// <summary>
1435 /// The WM_PRINT message is sent to a window to request that it draw itself in the specified device context, most 1435 /// The WM_PRINT message is sent to a window to request that it draw itself in the specified device context, most
1436 /// commonly in a printer device context. 1436 /// commonly in a printer device context.
1437 /// </summary> 1437 /// </summary>
1438 PRINT = 0x0317, 1438 PRINT = 0x0317,
1439   1439  
1440 /// <summary> 1440 /// <summary>
1441 /// The WM_PRINTCLIENT message is sent to a window to request that it draw its client area in the specified device 1441 /// The WM_PRINTCLIENT message is sent to a window to request that it draw its client area in the specified device
1442 /// context, most commonly in a printer device context. 1442 /// context, most commonly in a printer device context.
1443 /// </summary> 1443 /// </summary>
1444 PRINTCLIENT = 0x0318, 1444 PRINTCLIENT = 0x0318,
1445   1445  
1446 /// <summary> 1446 /// <summary>
1447 /// The WM_APPCOMMAND message notifies a window that the user generated an application command event, for example, by 1447 /// The WM_APPCOMMAND message notifies a window that the user generated an application command event, for example, by
1448 /// clicking an application command button using the mouse or typing an application command key on the keyboard. 1448 /// clicking an application command button using the mouse or typing an application command key on the keyboard.
1449 /// </summary> 1449 /// </summary>
1450 APPCOMMAND = 0x0319, 1450 APPCOMMAND = 0x0319,
1451   1451  
1452 /// <summary> 1452 /// <summary>
1453 /// The WM_THEMECHANGED message is broadcast to every window following a theme change event. Examples of theme change 1453 /// The WM_THEMECHANGED message is broadcast to every window following a theme change event. Examples of theme change
1454 /// events are the activation of a theme, the deactivation of a theme, or a transition from one theme to another. 1454 /// events are the activation of a theme, the deactivation of a theme, or a transition from one theme to another.
1455 /// </summary> 1455 /// </summary>
1456 THEMECHANGED = 0x031A, 1456 THEMECHANGED = 0x031A,
1457   1457  
1458 /// <summary> 1458 /// <summary>
1459 /// Sent when the contents of the clipboard have changed. 1459 /// Sent when the contents of the clipboard have changed.
1460 /// </summary> 1460 /// </summary>
1461 CLIPBOARDUPDATE = 0x031D, 1461 CLIPBOARDUPDATE = 0x031D,
1462   1462  
1463 /// <summary> 1463 /// <summary>
1464 /// The system will send a window the WM_DWMCOMPOSITIONCHANGED message to indicate that the availability of desktop 1464 /// The system will send a window the WM_DWMCOMPOSITIONCHANGED message to indicate that the availability of desktop
1465 /// composition has changed. 1465 /// composition has changed.
1466 /// </summary> 1466 /// </summary>
1467 DWMCOMPOSITIONCHANGED = 0x031E, 1467 DWMCOMPOSITIONCHANGED = 0x031E,
1468   1468  
1469 /// <summary> 1469 /// <summary>
1470 /// WM_DWMNCRENDERINGCHANGED is called when the non-client area rendering status of a window has changed. Only windows 1470 /// WM_DWMNCRENDERINGCHANGED is called when the non-client area rendering status of a window has changed. Only windows
1471 /// that have set the flag DWM_BLURBEHIND.fTransitionOnMaximized to true will get this message. 1471 /// that have set the flag DWM_BLURBEHIND.fTransitionOnMaximized to true will get this message.
1472 /// </summary> 1472 /// </summary>
1473 DWMNCRENDERINGCHANGED = 0x031F, 1473 DWMNCRENDERINGCHANGED = 0x031F,
1474   1474  
1475 /// <summary> 1475 /// <summary>
1476 /// Sent to all top-level windows when the colorization color has changed. 1476 /// Sent to all top-level windows when the colorization color has changed.
1477 /// </summary> 1477 /// </summary>
1478 DWMCOLORIZATIONCOLORCHANGED = 0x0320, 1478 DWMCOLORIZATIONCOLORCHANGED = 0x0320,
1479   1479  
1480 /// <summary> 1480 /// <summary>
1481 /// WM_DWMWINDOWMAXIMIZEDCHANGE will let you know when a DWM composed window is maximized. You also have to register 1481 /// WM_DWMWINDOWMAXIMIZEDCHANGE will let you know when a DWM composed window is maximized. You also have to register
1482 /// for this message as well. You'd have other windowd go opaque when this message is sent. 1482 /// for this message as well. You'd have other windowd go opaque when this message is sent.
1483 /// </summary> 1483 /// </summary>
1484 DWMWINDOWMAXIMIZEDCHANGE = 0x0321, 1484 DWMWINDOWMAXIMIZEDCHANGE = 0x0321,
1485   1485  
1486 /// <summary> 1486 /// <summary>
1487 /// Sent to request extended title bar information. A window receives this message through its WindowProc function. 1487 /// Sent to request extended title bar information. A window receives this message through its WindowProc function.
1488 /// </summary> 1488 /// </summary>
1489 GETTITLEBARINFOEX = 0x033F, 1489 GETTITLEBARINFOEX = 0x033F,
1490   1490  
1491 HANDHELDFIRST = 0x0358, 1491 HANDHELDFIRST = 0x0358,
1492   1492  
1493 HANDHELDLAST = 0x035F, 1493 HANDHELDLAST = 0x035F,
1494   1494  
1495 AFXFIRST = 0x0360, 1495 AFXFIRST = 0x0360,
1496   1496  
1497 AFXLAST = 0x037F, 1497 AFXLAST = 0x037F,
1498   1498  
1499 PENWINFIRST = 0x0380, 1499 PENWINFIRST = 0x0380,
1500   1500  
1501 PENWINLAST = 0x038F, 1501 PENWINLAST = 0x038F,
1502   1502  
1503 /// <summary> 1503 /// <summary>
1504 /// The WM_APP constant is used by applications to help define private messages, usually of the form WM_APP+X, where X 1504 /// The WM_APP constant is used by applications to help define private messages, usually of the form WM_APP+X, where X
1505 /// is an integer value. 1505 /// is an integer value.
1506 /// </summary> 1506 /// </summary>
1507 APP = 0x8000, 1507 APP = 0x8000,
1508   1508  
1509 /// <summary> 1509 /// <summary>
1510 /// The WM_USER constant is used by applications to help define private messages for use by private window classes, 1510 /// The WM_USER constant is used by applications to help define private messages for use by private window classes,
1511 /// usually of the form WM_USER+X, where X is an integer value. 1511 /// usually of the form WM_USER+X, where X is an integer value.
1512 /// </summary> 1512 /// </summary>
1513 USER = 0x0400, 1513 USER = 0x0400,
1514   1514  
1515 /// <summary> 1515 /// <summary>
1516 /// An application sends the WM_CPL_LAUNCH message to Windows Control Panel to request that a Control Panel application 1516 /// An application sends the WM_CPL_LAUNCH message to Windows Control Panel to request that a Control Panel application
1517 /// be started. 1517 /// be started.
1518 /// </summary> 1518 /// </summary>
1519 CPL_LAUNCH = USER + 0x1000, 1519 CPL_LAUNCH = USER + 0x1000,
1520   1520  
1521 /// <summary> 1521 /// <summary>
1522 /// The WM_CPL_LAUNCHED message is sent when a Control Panel application, started by the WM_CPL_LAUNCH message, has 1522 /// The WM_CPL_LAUNCHED message is sent when a Control Panel application, started by the WM_CPL_LAUNCH message, has
1523 /// closed. The WM_CPL_LAUNCHED message is sent to the window identified by the wParam parameter of the WM_CPL_LAUNCH 1523 /// closed. The WM_CPL_LAUNCHED message is sent to the window identified by the wParam parameter of the WM_CPL_LAUNCH
1524 /// message that started the application. 1524 /// message that started the application.
1525 /// </summary> 1525 /// </summary>
1526 CPL_LAUNCHED = USER + 0x1001, 1526 CPL_LAUNCHED = USER + 0x1001,
1527   1527  
1528 /// <summary> 1528 /// <summary>
1529 /// WM_SYSTIMER is a well-known yet still undocumented message. Windows uses WM_SYSTIMER for internal actions like 1529 /// WM_SYSTIMER is a well-known yet still undocumented message. Windows uses WM_SYSTIMER for internal actions like
1530 /// scrolling. 1530 /// scrolling.
1531 /// </summary> 1531 /// </summary>
1532 SYSTIMER = 0x118, 1532 SYSTIMER = 0x118,
1533   1533  
1534 /// <summary> 1534 /// <summary>
1535 /// The accessibility state has changed. 1535 /// The accessibility state has changed.
1536 /// </summary> 1536 /// </summary>
1537 HSHELL_ACCESSIBILITYSTATE = 11, 1537 HSHELL_ACCESSIBILITYSTATE = 11,
1538   1538  
1539 /// <summary> 1539 /// <summary>
1540 /// The shell should activate its main window. 1540 /// The shell should activate its main window.
1541 /// </summary> 1541 /// </summary>
1542 HSHELL_ACTIVATESHELLWINDOW = 3, 1542 HSHELL_ACTIVATESHELLWINDOW = 3,
1543   1543  
1544 /// <summary> 1544 /// <summary>
1545 /// The user completed an input event (for example, pressed an application command button on the mouse or an 1545 /// The user completed an input event (for example, pressed an application command button on the mouse or an
1546 /// application command key on the keyboard), and the application did not handle the WM_APPCOMMAND message generated by 1546 /// application command key on the keyboard), and the application did not handle the WM_APPCOMMAND message generated by
1547 /// that input. 1547 /// that input.
1548 /// If the Shell procedure handles the WM_COMMAND message, it should not call CallNextHookEx. See the Return Value 1548 /// If the Shell procedure handles the WM_COMMAND message, it should not call CallNextHookEx. See the Return Value
1549 /// section for more information. 1549 /// section for more information.
1550 /// </summary> 1550 /// </summary>
1551 HSHELL_APPCOMMAND = 12, 1551 HSHELL_APPCOMMAND = 12,
1552   1552  
1553 /// <summary> 1553 /// <summary>
1554 /// A window is being minimized or maximized. The system needs the coordinates of the minimized rectangle for the 1554 /// A window is being minimized or maximized. The system needs the coordinates of the minimized rectangle for the
1555 /// window. 1555 /// window.
1556 /// </summary> 1556 /// </summary>
1557 HSHELL_GETMINRECT = 5, 1557 HSHELL_GETMINRECT = 5,
1558   1558  
1559 /// <summary> 1559 /// <summary>
1560 /// Keyboard language was changed or a new keyboard layout was loaded. 1560 /// Keyboard language was changed or a new keyboard layout was loaded.
1561 /// </summary> 1561 /// </summary>
1562 HSHELL_LANGUAGE = 8, 1562 HSHELL_LANGUAGE = 8,
1563   1563  
1564 /// <summary> 1564 /// <summary>
1565 /// The title of a window in the task bar has been redrawn. 1565 /// The title of a window in the task bar has been redrawn.
1566 /// </summary> 1566 /// </summary>
1567 HSHELL_REDRAW = 6, 1567 HSHELL_REDRAW = 6,
1568   1568  
1569 /// <summary> 1569 /// <summary>
1570 /// The user has selected the task list. A shell application that provides a task list should return TRUE to prevent 1570 /// The user has selected the task list. A shell application that provides a task list should return TRUE to prevent
1571 /// Windows from starting its task list. 1571 /// Windows from starting its task list.
1572 /// </summary> 1572 /// </summary>
1573 HSHELL_TASKMAN = 7, 1573 HSHELL_TASKMAN = 7,
1574   1574  
1575 /// <summary> 1575 /// <summary>
1576 /// A top-level, unowned window has been created. The window exists when the system calls this hook. 1576 /// A top-level, unowned window has been created. The window exists when the system calls this hook.
1577 /// </summary> 1577 /// </summary>
1578 HSHELL_WINDOWCREATED = 1, 1578 HSHELL_WINDOWCREATED = 1,
1579   1579  
1580 /// <summary> 1580 /// <summary>
1581 /// A top-level, unowned window is about to be destroyed. The window still exists when the system calls this hook. 1581 /// A top-level, unowned window is about to be destroyed. The window still exists when the system calls this hook.
1582 /// </summary> 1582 /// </summary>
1583 HSHELL_WINDOWDESTROYED = 2, 1583 HSHELL_WINDOWDESTROYED = 2,
1584   1584  
1585 /// <summary> 1585 /// <summary>
1586 /// The activation has changed to a different top-level, unowned window. 1586 /// The activation has changed to a different top-level, unowned window.
1587 /// </summary> 1587 /// </summary>
1588 HSHELL_WINDOWACTIVATED = 4, 1588 HSHELL_WINDOWACTIVATED = 4,
1589   1589  
1590 /// <summary> 1590 /// <summary>
1591 /// A top-level window is being replaced. The window exists when the system calls this hook. 1591 /// A top-level window is being replaced. The window exists when the system calls this hook.
1592 /// </summary> 1592 /// </summary>
1593 HSHELL_WINDOWREPLACED = 13 1593 HSHELL_WINDOWREPLACED = 13
1594 } 1594 }
1595   1595  
1596 #endregion 1596 #endregion
1597   1597  
1598 #region Public Methods 1598 #region Public Methods
1599   1599  
1600 [DllImport("User32.dll")] 1600 [DllImport("User32.dll")]
1601 public static extern bool GetLastInputInfo(ref LASTINPUTINFO plii); 1601 public static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);
1602   1602  
1603 [DllImport("Kernel32.dll")] 1603 [DllImport("Kernel32.dll")]
1604 public static extern uint GetLastError(); 1604 public static extern uint GetLastError();
1605   1605  
1606 [DllImport("user32")] 1606 [DllImport("user32")]
1607 public static extern bool PostMessage(IntPtr hwnd, int msg, IntPtr wparam, IntPtr lparam); 1607 public static extern bool PostMessage(IntPtr hwnd, int msg, IntPtr wparam, IntPtr lparam);
1608   1608  
1609 [DllImport("user32.dll")] 1609 [DllImport("user32.dll")]
1610 public static extern IntPtr WindowFromPoint(Point p); 1610 public static extern IntPtr WindowFromPoint(Point p);
1611   1611  
1612 [DllImport("user32.dll")] 1612 [DllImport("user32.dll")]
1613 public static extern IntPtr GetForegroundWindow(); 1613 public static extern IntPtr GetForegroundWindow();
1614   1614  
1615 [DllImport("user32.dll", CharSet = CharSet.Auto)] 1615 [DllImport("user32.dll", CharSet = CharSet.Auto)]
1616 public static extern int SystemParametersInfo(uint uiAction, 1616 public static extern int SystemParametersInfo(uint uiAction,
1617 uint uiParam, string pvParam, uint fWinIni); 1617 uint uiParam, string pvParam, uint fWinIni);
1618   1618  
1619   1619  
1620 [DllImport("user32.dll")] 1620 [DllImport("user32.dll")]
1621 public static extern bool SetSystemCursor(IntPtr hcur, uint id); 1621 public static extern bool SetSystemCursor(IntPtr hcur, uint id);
1622   1622  
1623 [DllImport("user32.dll")] 1623 [DllImport("user32.dll")]
1624 public static extern IntPtr LoadCursor(IntPtr hInstance, int lpCursorName); 1624 public static extern IntPtr LoadCursor(IntPtr hInstance, int lpCursorName);
1625   1625  
1626 [DllImport("user32.dll")] 1626 [DllImport("user32.dll")]
1627 public static extern IntPtr CopyIcon(IntPtr pcur); 1627 public static extern IntPtr CopyIcon(IntPtr pcur);
1628   1628  
1629 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] 1629 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
1630 public static extern int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount); 1630 public static extern int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount);
1631   1631  
1632 [DllImport("user32.dll")] 1632 [DllImport("user32.dll")]
1633 public static extern bool EnumWindows(EnumWindowsProc enumProc, IntPtr lParam); 1633 public static extern bool EnumWindows(EnumWindowsProc enumProc, IntPtr lParam);
1634   1634  
1635 [DllImport("user32.dll")] 1635 [DllImport("user32.dll")]
1636 [return: MarshalAs(UnmanagedType.Bool)] 1636 [return: MarshalAs(UnmanagedType.Bool)]
1637 public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect); 1637 public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect);
1638   1638  
1639 [DllImport("user32.dll", EntryPoint = "RegisterWindowMessageW", SetLastError = true)] 1639 [DllImport("user32.dll", EntryPoint = "RegisterWindowMessageW", SetLastError = true)]
1640 public static extern int RegisterWindowMessage(string lpString); 1640 public static extern int RegisterWindowMessage(string lpString);
1641   1641  
1642 [DllImport("user32.dll", SetLastError = true)] 1642 [DllImport("user32.dll", SetLastError = true)]
1643 public static extern bool RegisterShellHookWindow(IntPtr hWnd); 1643 public static extern bool RegisterShellHookWindow(IntPtr hWnd);
1644   1644  
1645 [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)] 1645 [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
1646 public static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount); 1646 public static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);
1647   1647  
1648 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] 1648 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
1649 public static extern int GetWindowTextLength(IntPtr hWnd); 1649 public static extern int GetWindowTextLength(IntPtr hWnd);
1650   1650  
1651 [DllImport("user32.dll", SetLastError = true)] 1651 [DllImport("user32.dll", SetLastError = true)]
1652 public static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint processId); 1652 public static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint processId);
1653   1653  
1654 [DllImport("user32.dll", SetLastError = true)] 1654 [DllImport("user32.dll", SetLastError = true)]
1655 public static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint); 1655 public static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
1656   1656  
1657 [DllImport("user32.dll", SetLastError = true)] 1657 [DllImport("user32.dll", SetLastError = true)]
1658 public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); 1658 public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
1659   1659  
1660 #endregion 1660 #endregion
1661   1661  
1662 #region Nested Types 1662 #region Nested Types
1663   1663  
1664 public struct LASTINPUTINFO 1664 public struct LASTINPUTINFO
1665 { 1665 {
1666 public uint cbSize; 1666 public uint cbSize;
1667   1667  
1668 public uint dwTime; 1668 public uint dwTime;
1669 } 1669 }
1670   1670  
1671 [StructLayout(LayoutKind.Sequential)] 1671 [StructLayout(LayoutKind.Sequential)]
1672 public struct RECT 1672 public struct RECT
1673 { 1673 {
1674 public int Left; // x position of upper-left corner 1674 public int Left; // x position of upper-left corner
1675   1675  
1676 public int Top; // y position of upper-left corner 1676 public int Top; // y position of upper-left corner
1677   1677  
1678 public int Right; // x position of lower-right corner 1678 public int Right; // x position of lower-right corner
1679   1679  
1680 public int Bottom; // y position of lower-right corner 1680 public int Bottom; // y position of lower-right corner
1681 } 1681 }
1682   1682  
1683 #endregion 1683 #endregion
1684 } 1684 }
1685 } 1685 }
1686   1686  
1687
Generated by GNU Enscript 1.6.5.90.
1687
Generated by GNU Enscript 1.6.5.90.
1688   1688  
1689   1689  
1690   1690