Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/eclipse/swt/internal/win32/OS.java


1   /*******************************************************************************
2    * Copyright (c) 2000, 2004 IBM Corporation and others.
3    * All rights reserved. This program and the accompanying materials
4    * are made available under the terms of the Common Public License v1.0
5    * which accompanies this distribution, and is available at
6    * http://www.eclipse.org/legal/cpl-v10.html
7    * 
8    * Contributors:
9    *     IBM Corporation - initial API and implementation
10   *******************************************************************************/
11  package org.eclipse.swt.internal.win32;
12  
13  
14  import org.eclipse.swt.internal.*;
15  
16  public class OS {
17    static {
18      Library.loadLibrary ("swt"); //$NON-NLS-1$
19    }
20    
21    /*
22    * SWT Windows flags
23    */
24    public static final boolean IsWin32s;
25    public static final boolean IsWin95;
26    public static final boolean IsWinNT;
27    public static final boolean IsWinCE;
28    public static final boolean IsPPC;
29    public static final boolean IsHPC;
30    public static final boolean IsSP;
31    public static final boolean IsDBLocale;
32    public static final boolean IsUnicode;
33    public static final int WIN32_MAJOR, WIN32_MINOR;
34    public static final int COMCTL32_MAJOR, COMCTL32_MINOR;
35    public static final int SHELL32_MAJOR, SHELL32_MINOR;
36  
37    /*
38    * Flags for Window API GetVersionEx()
39    */
40    public static final int VER_PLATFORM_WIN32s = 0;
41    public static final int VER_PLATFORM_WIN32_WINDOWS = 1;
42    public static final int VER_PLATFORM_WIN32_NT = 2;
43    public static final int VER_PLATFORM_WIN32_CE = 3;
44    
45    /* Get the Windows version and the flags */
46    static {
47      /*
48      * Try the UNICODE version of GetVersionEx first
49      * and then the ANSI version.  The UNICODE version
50      * is present on all versions of Windows but is not
51      * implemented on Win95/98/ME.
52      * 
53      * NOTE: The value of OSVERSIONINFO.sizeof cannot
54      * be static final because it relies on the Windows
55      * platform version to be initialized and IsUnicode
56      * has not been calculated.  It must be initialized
57      * here, after the platform is determined in order
58      * for the value to be correct.
59      */
60      OSVERSIONINFO info = new OSVERSIONINFOW ();
61      info.dwOSVersionInfoSize = OSVERSIONINFOW.sizeof;
62      if (!OS.GetVersionExW ((OSVERSIONINFOW)info)) {
63        info = new OSVERSIONINFOA ();
64        info.dwOSVersionInfoSize = OSVERSIONINFOA.sizeof;
65        OS.GetVersionExA ((OSVERSIONINFOA)info);
66      }
67      OSVERSIONINFO.sizeof = info.dwOSVersionInfoSize;
68      
69      IsWin32s = info.dwPlatformId == VER_PLATFORM_WIN32s;
70      IsWin95 = info.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS;
71      IsWinNT = info.dwPlatformId == VER_PLATFORM_WIN32_NT;
72      IsWinCE = info.dwPlatformId == VER_PLATFORM_WIN32_CE;
73      IsSP = IsSP();
74      IsPPC = IsPPC();
75      IsHPC = IsWinCE && !IsPPC && !IsSP;  
76      WIN32_MAJOR = info.dwMajorVersion;
77      WIN32_MINOR = info.dwMinorVersion;
78      IsUnicode = !IsWin32s && !IsWin95;
79  
80      /* Get the DBCS flag */
81      int index = 0;
82      while (index <= 0xFF) {
83        if (OS.IsDBCSLeadByte ((byte) index)) break;
84        index++;
85      }
86      IsDBLocale = index <= 0xFF;
87    }
88    
89    /* Get the COMCTL32.DLL version */
90    static {
91      DLLVERSIONINFO dvi = new DLLVERSIONINFO ();
92      dvi.cbSize = DLLVERSIONINFO.sizeof;
93      dvi.dwMajorVersion = 4;
94      dvi.dwMinorVersion = 0;
95      TCHAR lpLibFileName = new TCHAR (0, "comctl32.dll", true); //$NON-NLS-1$
96      int hModule = OS.LoadLibrary (lpLibFileName);
97      if (hModule != 0) {
98        String name = "DllGetVersion\0"; //$NON-NLS-1$
99        byte [] lpProcName = new byte [name.length ()];
100       for (int i=0; i<lpProcName.length; i++) {
101         lpProcName [i] = (byte) name.charAt (i);
102       }
103       int DllGetVersion = OS.GetProcAddress (hModule, lpProcName);
104       if (DllGetVersion != 0) OS.Call (DllGetVersion, dvi);
105       OS.FreeLibrary (hModule);
106     }
107     COMCTL32_MAJOR = dvi.dwMajorVersion;
108     COMCTL32_MINOR = dvi.dwMinorVersion;
109   }
110   
111   /* Get the Shell32.DLL version */
112   static {
113     DLLVERSIONINFO dvi = new DLLVERSIONINFO ();
114     dvi.cbSize = DLLVERSIONINFO.sizeof;
115     dvi.dwMajorVersion = 4;
116     TCHAR lpLibFileName = new TCHAR (0, "Shell32.dll", true); //$NON-NLS-1$
117     int hModule = OS.LoadLibrary (lpLibFileName);
118     if (hModule != 0) {
119       String name = "DllGetVersion\0"; //$NON-NLS-1$
120       byte [] lpProcName = new byte [name.length ()];
121       for (int i=0; i<lpProcName.length; i++) {
122         lpProcName [i] = (byte) name.charAt (i);
123       }
124       int DllGetVersion = OS.GetProcAddress (hModule, lpProcName);
125       if (DllGetVersion != 0) OS.Call (DllGetVersion, dvi);
126       OS.FreeLibrary (hModule);
127     }
128     SHELL32_MAJOR = dvi.dwMajorVersion;
129     SHELL32_MINOR = dvi.dwMinorVersion;
130   }
131 
132   /* Flag used on WinCE */
133   static final int SYS_COLOR_INDEX_FLAG = OS.IsWinCE ? 0x40000000 : 0x0;
134 
135   /*
136   * NOTE:  There is a bug in JVM 1.2 where loading 
137   * a class with a large number of constants causes
138   * a segment fault to occur sometime later after
139   * the class is loaded.  The fix is to break the
140   * class up into a hierarchy of classes that each
141   * contain a smaller number of constants.  This
142   * fix is not necessary at this time but is required
143   * when all constants are uncommented.  We have not
144   * done the research to determine the limit.
145   */
146 
147   /* Constants */
148   public static final int ALTERNATE = 1;
149   public static final int BFFM_INITIALIZED = 0x1;
150   public static final int BFFM_SETSELECTION = IsUnicode ? 0x467 : 0x466;
151   public static final int BFFM_VALIDATEFAILED = IsUnicode ? 0x4 : 0x3;
152   public static final int BFFM_VALIDATEFAILEDW = 0x4;
153   public static final int BFFM_VALIDATEFAILEDA = 0x3;
154   public static final int BF_BOTTOM = 0x8;
155   public static final int BF_RIGHT = 0x4;
156   public static final int BIF_EDITBOX = 0x10;
157   public static final int BIF_NEWDIALOGSTYLE = 0x40;
158   public static final int BIF_RETURNONLYFSDIRS = 0x1;
159   public static final int BIF_VALIDATE = 0x20;
160   public static final int BITSPIXEL = 0xc;
161   public static final int BI_BITFIELDS = 3;
162   public static final int BI_RGB = 0;
163   public static final int BLACKNESS = 0x42;
164   public static final int BM_CLICK = 0xf5;
165   public static final int BM_GETCHECK = 0xf0;
166   public static final int BM_SETCHECK = 0xf1;
167   public static final int BM_SETIMAGE = 0xf7;
168   public static final int BM_SETSTYLE = 0xf4;
169   public static final int BN_CLICKED = 0x0;
170   public static final int BN_DOUBLECLICKED = 0x5;
171   public static final int BST_CHECKED = 0x1;
172   public static final int BST_UNCHECKED = 0x0;
173   public static final int BS_BITMAP = 0x80;
174   public static final int BS_CENTER = 0x300;
175   public static final int BS_CHECKBOX = 0x2;
176   public static final int BS_DEFPUSHBUTTON = 0x1;
177   public static final int BS_FLAT = 0x8000;
178   public static final int BS_GROUPBOX = 0x7;
179   public static final int BS_ICON = 0x40;
180   public static final int BS_LEFT = 0x100;
181   public static final int BS_NOTIFY = 0x4000;
182   public static final int BS_OWNERDRAW = 0xb;
183   public static final int BS_PUSHBUTTON = 0x0;
184   public static final int BS_PUSHLIKE = 0x1000;
185   public static final int BS_RADIOBUTTON = 0x4;
186   public static final int BS_RIGHT = 0x200;
187   public static final int BS_SOLID = 0x0;
188   public static final int BTNS_AUTOSIZE = 0x10;
189   public static final int BTNS_BUTTON = 0x0;
190   public static final int BTNS_CHECK = 0x2;
191   public static final int BTNS_CHECKGROUP = 0x6;
192   public static final int BTNS_DROPDOWN = 0x8;
193   public static final int BTNS_GROUP = 0x4;
194   public static final int BTNS_SEP = 0x1;
195   public static final int BTNS_SHOWTEXT = 0x40;
196   public static final int CBN_EDITCHANGE = 0x5;
197   public static final int CBN_KILLFOCUS = 0x4;
198   public static final int CBN_SELCHANGE = 0x1;
199   public static final int CBN_SETFOCUS = 0x3;
200   public static final int CBS_AUTOHSCROLL = 0x40;
201   public static final int CBS_DROPDOWN = 0x2;
202   public static final int CBS_DROPDOWNLIST = 0x3;
203   public static final int CBS_NOINTEGRALHEIGHT = 0x400;
204   public static final int CBS_SIMPLE = 0x1;
205   public static final int CB_ADDSTRING = 0x143;
206   public static final int CB_DELETESTRING = 0x144;
207   public static final int CB_ERR = 0xffffffff;
208   public static final int CB_ERRSPACE = 0xfffffffe;
209   public static final int CB_FINDSTRINGEXACT = 0x158;
210   public static final int CB_GETCOUNT = 0x146;
211   public static final int CB_GETCURSEL = 0x147;
212   public static final int CB_GETDROPPEDCONTROLRECT = 0x152;
213   public static final int CB_GETDROPPEDSTATE = 0x157;
214   public static final int CB_GETEDITSEL = 0x140;
215   public static final int CB_GETITEMHEIGHT = 0x154;
216   public static final int CB_GETLBTEXT = 0x148;
217   public static final int CB_GETLBTEXTLEN = 0x149;
218   public static final int CB_INSERTSTRING = 0x14a;
219   public static final int CB_LIMITTEXT = 0x141;
220   public static final int CB_RESETCONTENT = 0x14b;
221   public static final int CB_SELECTSTRING = 0x14d;
222   public static final int CB_SETCURSEL = 0x14e;
223   public static final int CB_SETEDITSEL = 0x142;
224   public static final int CB_SHOWDROPDOWN = 0x14f;
225   public static final int CCM_FIRST = 0x2000;
226   public static final int CCM_SETBKCOLOR = 0x2001;
227   public static final int CCM_SETVERSION = 0x2007;
228   public static final int CCS_NODIVIDER = 0x40;
229   public static final int CCS_NORESIZE = 0x4;
230   public static final int CC_ANYCOLOR = 0x100;
231   public static final int CC_ENABLEHOOK = 0x10;
232   public static final int CC_RGBINIT = 0x1;
233   public static final int CDDS_POSTERASE = 0x00000004;
234   public static final int CDDS_PREERASE = 0x00000003;
235   public static final int CDDS_PREPAINT = 0x00000001;
236   public static final int CDDS_ITEM = 0x00010000;
237   public static final int CDDS_ITEMPREPAINT = CDDS_ITEM | CDDS_PREPAINT;
238   public static final int CDDS_SUBITEM = 0x00020000;
239   public static final int CDRF_DODEFAULT = 0x00000000;
240   public static final int CDRF_NEWFONT = 0x00000002;
241   public static final int CDRF_NOTIFYITEMDRAW = 0x00000020;
242   public static final int CDRF_NOTIFYPOSTERASE = 0x00000040;
243   public static final int CDRF_NOTIFYSUBITEMDRAW = 0x00000020;
244   public static final int CFE_AUTOCOLOR = 0x40000000;
245   public static final int CFE_ITALIC = 0x2;
246   public static final int CFE_STRIKEOUT = 0x8;
247   public static final int CFE_UNDERLINE = 0x4;
248   public static final int CFM_BOLD = 0x1;
249   public static final int CFM_CHARSET = 0x8000000;
250   public static final int CFM_COLOR = 0x40000000;
251   public static final int CFM_FACE = 0x20000000;
252   public static final int CFM_ITALIC = 0x2;
253   public static final int CFM_SIZE = 0x80000000;
254   public static final int CFM_STRIKEOUT = 0x8;
255   public static final int CFM_UNDERLINE = 0x4;
256   public static final int CFM_WEIGHT = 0x400000;
257   public static final int CFS_POINT = 0x2;
258   public static final int CF_EFFECTS = 0x100;
259   public static final int CF_INITTOLOGFONTSTRUCT = 0x40;
260   public static final int CF_SCREENFONTS = 0x1;
261   public static final int CF_TEXT = 0x1;
262   public static final int CF_UNICODETEXT = 13;
263   public static final int CF_USESTYLE = 0x80;
264   public static final int CLR_DEFAULT = 0xff000000;
265   public static final int CLR_INVALID = 0xffffffff;
266   public static final int COLORONCOLOR = 0x3;
267   public static final int COLOR_3DDKSHADOW = 0x15 | SYS_COLOR_INDEX_FLAG;
268   public static final int COLOR_3DFACE = 0xf | SYS_COLOR_INDEX_FLAG;
269   public static final int COLOR_3DHIGHLIGHT = 0x14 | SYS_COLOR_INDEX_FLAG;
270   public static final int COLOR_3DHILIGHT = 0x14 | SYS_COLOR_INDEX_FLAG;
271   public static final int COLOR_3DLIGHT = 0x16 | SYS_COLOR_INDEX_FLAG;
272   public static final int COLOR_3DSHADOW = 0x10 | SYS_COLOR_INDEX_FLAG;
273   public static final int COLOR_ACTIVECAPTION = 0x2 | SYS_COLOR_INDEX_FLAG;
274   public static final int COLOR_BTNFACE = 0xf | SYS_COLOR_INDEX_FLAG;
275   public static final int COLOR_BTNHIGHLIGHT = 0x14 | SYS_COLOR_INDEX_FLAG;
276   public static final int COLOR_BTNSHADOW = 0x10 | SYS_COLOR_INDEX_FLAG;
277   public static final int COLOR_BTNTEXT = 0x12 | SYS_COLOR_INDEX_FLAG;
278   public static final int COLOR_CAPTIONTEXT = 0x9 | SYS_COLOR_INDEX_FLAG;
279   public static final int COLOR_GRADIENTACTIVECAPTION = 0x1b | SYS_COLOR_INDEX_FLAG;
280   public static final int COLOR_GRADIENTINACTIVECAPTION = 0x1c | SYS_COLOR_INDEX_FLAG;
281   public static final int COLOR_HIGHLIGHT = 0xd | SYS_COLOR_INDEX_FLAG;
282   public static final int COLOR_HIGHLIGHTTEXT = 0xe | SYS_COLOR_INDEX_FLAG;
283   public static final int COLOR_INACTIVECAPTION = 0x3 | SYS_COLOR_INDEX_FLAG;
284   public static final int COLOR_INACTIVECAPTIONTEXT = 0x13 | SYS_COLOR_INDEX_FLAG;
285   public static final int COLOR_INFOBK = 0x18 | SYS_COLOR_INDEX_FLAG;
286   public static final int COLOR_INFOTEXT = 0x17 | SYS_COLOR_INDEX_FLAG;
287   public static final int COLOR_MENU = 0x4 | SYS_COLOR_INDEX_FLAG;
288   public static final int COLOR_MENUTEXT = 0x7 | SYS_COLOR_INDEX_FLAG;
289   public static final int COLOR_SCROLLBAR = 0x0 | SYS_COLOR_INDEX_FLAG;
290   public static final int COLOR_WINDOW = 0x5 | SYS_COLOR_INDEX_FLAG;
291   public static final int COLOR_WINDOWFRAME = 0x6 | SYS_COLOR_INDEX_FLAG;
292   public static final int COLOR_WINDOWTEXT = 0x8 | SYS_COLOR_INDEX_FLAG;
293   public static final int COMPLEXREGION = 0x3;
294   public static final int CP_ACP = 0x0;
295   public static final int CP_UTF8 = 65001;
296   public static final int CP_INSTALLED = 0x1;
297   public static final int CS_BYTEALIGNWINDOW = 0x2000;
298   public static final int CS_DBLCLKS = 0x8;
299   public static final int CS_GLOBALCLASS = 0x4000;
300   public static final int CS_HREDRAW = 0x2;
301   public static final int CS_VREDRAW = 0x1;
302   public static final int CW_USEDEFAULT = 0x80000000;
303   public static final int DCX_CACHE = 0x2;
304   public static final int DCX_CLIPCHILDREN = 0x8;
305   public static final int DCX_CLIPSIBLINGS = 0x10;
306   public static final int DEFAULT_CHARSET = 0x1;
307   public static final int DEFAULT_GUI_FONT = 0x11;
308   public static final int DFCS_BUTTONCHECK = 0x0;
309   public static final int DFCS_CHECKED = 0x400;
310   public static final int DFCS_FLAT = 0x4000;
311   public static final int DFCS_INACTIVE = 0x100;
312   public static final int DFCS_PUSHED = 0x200;
313   public static final int DFCS_SCROLLDOWN = 0x1;
314   public static final int DFCS_SCROLLLEFT = 0x2;
315   public static final int DFCS_SCROLLRIGHT = 0x3;
316   public static final int DFCS_SCROLLUP = 0x0;
317   public static final int DFC_BUTTON = 0x4;
318   public static final int DFC_SCROLL = 0x3;
319   public static final int DIB_RGB_COLORS = 0x0;
320   public static final int DISP_E_EXCEPTION = 0x80020009;
321   public static final int DI_NORMAL = 0x3;
322   public static final int DLGC_BUTTON = 0x2000;
323   public static final int DLGC_HASSETSEL = 0x8;
324   public static final int DLGC_STATIC = 0x100;
325   public static final int DLGC_WANTALLKEYS = 0x4;
326   public static final int DLGC_WANTARROWS = 0x1;
327   public static final int DLGC_WANTCHARS = 0x80;
328   public static final int DLGC_WANTTAB = 0x2;
329   public static final int DM_SETDEFID = 0x401;
330   public static final int DSS_DISABLED = 0x20;
331   public static final int DSTINVERT = 0x550009;
332   public static final int DST_BITMAP = 0x4;
333   public static final int DST_ICON = 0x3;
334   public static final int DT_CALCRECT = 0x400;
335   public static final int DT_EDITCONTROL = 0x2000;
336   public static final int DT_EXPANDTABS = 0x40;
337   public static final int DT_LEFT = 0x0;
338   public static final int DT_NOPREFIX = 0x800;
339   public static final int DT_RASPRINTER = 0x2;  
340   public static final int DT_SINGLELINE = 0x20;
341   public static final int DT_WORDBREAK = 0x10;
342   public static final int ECOOP_AND = 0x3;
343   public static final int ECOOP_OR = 0x2;
344   public static final int ECO_AUTOHSCROLL = 0x80;
345   public static final int EDGE_ETCHED = 0x6;
346   public static final int EDGE_SUNKEN = 0xa;
347   public static final int EM_CANUNDO = 0xc6;
348   public static final int EM_CHARFROMPOS = 0xd7;
349   public static final int EM_DISPLAYBAND = 0x433;
350   public static final int EM_GETFIRSTVISIBLELINE = 0xce;
351   public static final int EM_GETLIMITTEXT = 0xd5;
352   public static final int EM_GETLINE = 0xc4;
353   public static final int EM_GETLINECOUNT = 0xba;
354   public static final int EM_GETMARGINS = 0xd4;
355   public static final int EM_GETPASSWORDCHAR = 0xd2;
356   public static final int EM_GETSCROLLPOS = 0x4dd;
357   public static final int EM_GETSEL = 0xb0;
358   public static final int EM_LIMITTEXT = 0xc5;
359   public static final int EM_LINEFROMCHAR = 0xc9;
360   public static final int EM_LINEINDEX = 0xbb;
361   public static final int EM_LINELENGTH = 0xc1;
362   public static final int EM_LINESCROLL = 0xb6;
363   public static final int EM_POSFROMCHAR = 0xd6;
364   public static final int EM_REPLACESEL = 0xc2;
365   public static final int EM_SCROLLCARET = 0xb7;
366   public static final int EM_SETBKGNDCOLOR = 0x443;
367   public static final int EM_SETLIMITTEXT = 0xc5;
368   public static final int EM_SETOPTIONS = 0x44d;
369   public static final int EM_SETPARAFORMAT = 0x447;
370   public static final int EM_SETPASSWORDCHAR = 0xcc;
371   public static final int EM_SETREADONLY = 0xcf;
372   public static final int EM_SETSEL = 0xb1;
373   public static final int EM_SETTABSTOPS = 0xcb;
374   public static final int EN_ALIGN_LTR_EC = 0x0700;
375   public static final int EN_ALIGN_RTL_EC = 0x0701;
376   public static final int EN_CHANGE = 0x300;
377   public static final int ERROR_NO_MORE_ITEMS = 0x103;
378   public static final int ESB_DISABLE_BOTH = 0x3;
379   public static final int ESB_ENABLE_BOTH = 0x0;
380   public static final int ES_AUTOHSCROLL = 0x80;
381   public static final int ES_AUTOVSCROLL = 0x40;
382   public static final int ES_CENTER = 0x1;
383   public static final int ES_MULTILINE = 0x4;
384   public static final int ES_NOHIDESEL = 0x100;
385   public static final int ES_PASSWORD = 0x20;
386   public static final int ES_READONLY = 0x800;
387   public static final int ES_RIGHT = 0x2;
388   public static final int ETO_CLIPPED = 0x4;  
389   public static final int EVENT_OBJECT_FOCUS = 0x8005;
390   public static final int EVENT_OBJECT_LOCATIONCHANGE = 0x800B;
391 //  public static final int EVENT_OBJECT_SELECTION = 0x8006;
392   public static final int EVENT_OBJECT_SELECTIONWITHIN = 0x8009;
393   public static final int EVENT_OBJECT_VALUECHANGE = 0x800E;
394   public static final int FALT = 0x10;
395   public static final int FCONTROL = 0x8;
396   public static final int FNERR_INVALIDFILENAME = 0x3002;
397   public static final int FORMAT_MESSAGE_ALLOCATE_BUFFER = 0x00000100;
398   public static final int FORMAT_MESSAGE_FROM_SYSTEM = 0x00001000;
399   public static final int FORMAT_MESSAGE_IGNORE_INSERTS = 0x00000200;
400   public static final int FSHIFT = 0x4;
401   public static final int FVIRTKEY = 0x1;
402   public static final int GCS_COMPSTR = 0x8;
403   public static final int GCS_RESULTSTR = 0x800;
404   public static final int GMDI_USEDISABLED = 0x1;
405   public static final int GMEM_FIXED = 0x0;
406   public static final int GMEM_ZEROINIT = 0x40;
407   public static final int GN_CONTEXTMENU = 1000;
408   public static final int GPTR = 0x40;
409   public static final int GRADIENT_FILL_RECT_H = 0x0;
410   public static final int GRADIENT_FILL_RECT_V = 0x1;
411   public static final int GTL_NUMBYTES = 0x10;
412   public static final int GTL_NUMCHARS = 0x8;
413   public static final int GTL_PRECISE = 0x2;
414   public static final int GT_DEFAULT = 0x0;
415   public static final int GUI_16BITTASK = 0x20;
416   public static final int GUI_CARETBLINKING = 0x1;
417   public static final int GUI_INMENUMODE = 0x4;
418   public static final int GUI_INMOVESIZE = 0x2;
419   public static final int GUI_POPUPMENUMODE = 0x10;
420   public static final int GUI_SYSTEMMENUMODE = 0x8;
421   public static final int GWL_EXSTYLE = 0xffffffec;
422   public static final int GWL_ID = -12;
423   public static final int GWL_STYLE = 0xfffffff0;
424   public static final int GWL_USERDATA = 0xffffffeb;
425   public static final int GWL_WNDPROC = 0xfffffffc;
426   public static final int GW_CHILD = 0x5;
427   public static final int GW_HWNDFIRST = 0x0;
428   public static final int GW_HWNDLAST = 0x1;
429   public static final int GW_HWNDNEXT = 0x2;
430   public static final int GW_HWNDPREV = 0x3;
431   public static final int HBMMENU_CALLBACK = 0xffffffff;
432   public static final int HCF_HIGHCONTRASTON = 0x1;
433   public static final int HDI_WIDTH = 0x1;
434   public static final int HDM_FIRST = 0x1200;
435   public static final int HDM_GETBITMAPMARGIN = HDM_FIRST + 21;
436   public static final int HDM_GETITEMCOUNT = 0x1200;
437   public static final int HDN_FIRST = 0xfffffed4;
438   public static final int HDN_BEGINTRACK = IsUnicode ? 0xfffffeba : 0xfffffece;
439   public static final int HDN_BEGINTRACKW = 0xfffffeba;
440   public static final int HDN_BEGINTRACKA = 0xfffffece;
441   public static final int HDN_DIVIDERDBLCLICKA = HDN_FIRST - 5;
442   public static final int HDN_DIVIDERDBLCLICKW = HDN_FIRST - 25;
443   public static final int HDN_DIVIDERDBLCLICK = IsUnicode ? HDN_DIVIDERDBLCLICKW : HDN_DIVIDERDBLCLICKA;
444   public static final int HDN_ITEMCHANGED = IsUnicode ? 0xfffffebf : 0xfffffed3;
445   public static final int HDN_ITEMCHANGEDW = 0xfffffebf;
446   public static final int HDN_ITEMCHANGEDA = 0xfffffed3;
447   public static final int HDN_ITEMDBLCLICKW = HDN_FIRST - 23;
448   public static final int HDN_ITEMDBLCLICKA = HDN_FIRST - 3;
449   public static final int HDN_ITEMDBLCLICK = IsUnicode ? HDN_ITEMDBLCLICKW : HDN_ITEMDBLCLICKA;
450   public static final int HEAP_ZERO_MEMORY = 0x8;
451   public static final int HELPINFO_MENUITEM = 0x2;
452   public static final int HINST_COMMCTRL = 0xffffffff;
453   public static final int HKEY_CLASSES_ROOT = 0x80000000;
454   public static final int HKEY_CURRENT_USER = 0x80000001;
455   public static final int HKEY_LOCAL_MACHINE = 0x80000002;
456   public static final int HORZRES = 0x8;
457   public static final int HTBORDER = 0x12;
458   public static final int HTCAPTION = 0x2;
459   public static final int HTCLIENT = 0x1;
460   public static final int HTERROR = -2;
461   public static final int HTHSCROLL = 0x6;
462   public static final int HTMENU = 0x5;
463   public static final int HTNOWHERE = 0x0;
464   public static final int HTSYSMENU = 0x3;        
465   public static final int HTTRANSPARENT = 0xffffffff;
466   public static final int HTVSCROLL = 0x7;
467   public static final int HWND_BOTTOM = 0x1;
468   public static final int HWND_TOP = 0x0;
469   public static final int HWND_TOPMOST = 0xffffffff;
470   public static final int HWND_NOTOPMOST = -2;
471   public static final int ICC_COOL_CLASSES = 0x400;
472   public static final int ICM_NOTOPEN = 0x0;
473   public static final int ICON_BIG = 0x1;
474   public static final int ICON_SMALL = 0x0;
475   public static final int I_IMAGECALLBACK = -1;
476   public static final int I_IMAGENONE = -2;
477   public static final int IDABORT = 0x3;
478   public static final int IDB_STD_SMALL_COLOR = 0x0;
479   public static final int IDC_APPSTARTING = 0x7f8a;
480   public static final int IDC_ARROW = 0x7f00;
481   public static final int IDC_CROSS = 0x7f03;
482   public static final int IDC_HAND = 0x7f89;
483   public static final int IDC_HELP = 0x7f8b;
484   public static final int IDC_IBEAM = 0x7f01;
485   public static final int IDC_NO = 0x7f88;
486   public static final int IDC_SIZE = 0x7f80;
487   public static final int IDC_SIZEALL = 0x7f86;
488   public static final int IDC_SIZENESW = 0x7f83;
489   public static final int IDC_SIZENS = 0x7f85;
490   public static final int IDC_SIZENWSE = 0x7f82;
491   public static final int IDC_SIZEWE = 0x7f84;
492   public static final int IDC_UPARROW = 0x7f04;
493   public static final int IDC_WAIT = 0x7f02;
494   public static final int IDNO = 0x7;
495   public static final int IDOK = 0x1;
496   public static final int IDRETRY = 0x4;
497   public static final int IDYES = 0x6;
498   public static final int ILC_COLOR = 0x0;
499   public static final int ILC_COLOR16 = 0x10;
500   public static final int ILC_COLOR24 = 0x18;
501   public static final int ILC_COLOR32 = 0x20;
502   public static final int ILC_COLOR4 = 0x4;
503   public static final int ILC_COLOR8 = 0x8;
504   public static final int ILC_MASK = 0x1;
505   public static final int ILD_NORMAL = 0x0;
506   public static final int IMAGE_BITMAP = 0x0;
507   public static final int IMAGE_CURSOR = 0x2;
508   public static final int IMAGE_ICON = 0x1;
509   public static final int IME_CMODE_FULLSHAPE = 0x8;
510   public static final int IME_CMODE_KATAKANA = 0x2;
511   public static final int IME_CMODE_NATIVE = 0x1;
512   public static final int IME_CMODE_ROMAN = 0x10;
513   public static final int INFINITE = 0xffffffff;
514   public static final int INPUT_KEYBOARD = 1;
515   public static final int INPUT_MOUSE = 0;
516   public static final int KEY_ENUMERATE_SUB_KEYS = 0x8;
517   public static final int KEY_NOTIFY = 0x10;
518   public static final int KEY_QUERY_VALUE = 0x1;
519   public static final int KEY_READ = 0x20019;
520   public static final int KEYEVENTF_KEYUP = 0x0002;
521   public static final int LANG_NEUTRAL = 0x0;
522   public static final int LANG_USER_DEFAULT = 1 << 10;
523   public static final int LAYOUT_RTL = 0x1;
524   public static final int LBN_DBLCLK = 0x2;
525   public static final int LBN_SELCHANGE = 0x1;
526   public static final int LBS_EXTENDEDSEL = 0x800;
527   public static final int LBS_MULTIPLESEL = 0x8;
528   public static final int LBS_NOINTEGRALHEIGHT = 0x100;
529   public static final int LBS_NOTIFY = 0x1;
530   public static final int LB_ADDSTRING = 0x180;
531   public static final int LB_DELETESTRING = 0x182;
532   public static final int LB_ERR = 0xffffffff;
533   public static final int LB_ERRSPACE = 0xfffffffe;
534   public static final int LB_FINDSTRINGEXACT = 0x1a2;
535   public static final int LB_GETCARETINDEX = 0x19f;
536   public static final int LB_GETCOUNT = 0x18b;
537   public static final int LB_GETCURSEL = 0x188;
538   public static final int LB_GETHORIZONTALEXTENT = 0x193;
539   public static final int LB_GETITEMHEIGHT = 0x1a1;
540   public static final int LB_GETITEMRECT = 0x198;
541   public static final int LB_GETSEL = 0x187;
542   public static final int LB_GETSELCOUNT = 0x190;
543   public static final int LB_GETSELITEMS = 0x191;
544   public static final int LB_GETTEXT = 0x189;
545   public static final int LB_GETTEXTLEN = 0x18a;
546   public static final int LB_GETTOPINDEX = 0x18e;
547   public static final int LB_INITSTORAGE = 0x1a8;
548   public static final int LB_INSERTSTRING = 0x181;
549   public static final int LB_RESETCONTENT = 0x184;
550   public static final int LB_SELITEMRANGE = 0x19b;
551   public static final int LB_SELITEMRANGEEX = 0x183;
552   public static final int LB_SETCARETINDEX = 0x19e;
553   public static final int LB_SETCURSEL = 0x186;
554   public static final int LB_SETHORIZONTALEXTENT = 0x194;
555   public static final int LB_SETSEL = 0x185;
556   public static final int LB_SETTOPINDEX = 0x197;
557   public static final int LF_FACESIZE = 32;
558   public static final int LGRPID_ARABIC = 0xd;
559   public static final int LGRPID_HEBREW = 0xc;
560   public static final int LGRPID_INSTALLED = 1;
561   public static final int LCID_SUPPORTED = 0x2;
562   public static final int LOCALE_IDEFAULTANSICODEPAGE = 0x1004;
563   public static final int LOCALE_SISO3166CTRYNAME = 0x5a;
564   public static final int LOCALE_SISO639LANGNAME = 0x59;
565   public static final int LOGPIXELSX = 0x58;
566   public static final int LOGPIXELSY = 0x5a;
567   public static final int LPSTR_TEXTCALLBACK = 0xffffffff;
568   public static final int LR_DEFAULTCOLOR = 0x0;
569   public static final int LR_SHARED = 0x8000;
570   public static final int LVCFMT_CENTER = 0x2;
571   public static final int LVCFMT_IMAGE = 0x800;
572   public static final int LVCFMT_LEFT = 0x0;
573   public static final int LVCFMT_RIGHT = 0x1;
574   public static final int LVCF_FMT = 0x1;
575   public static final int LVCF_IMAGE = 0x10;
576   public static final int LVCFMT_JUSTIFYMASK = 0x3;
577   public static final int LVCF_TEXT = 0x4;
578   public static final int LVCF_WIDTH = 0x2;
579   public static final int LVHT_ONITEM = 0xe;
580   public static final int LVHT_ONITEMICON = 0x2;
581   public static final int LVHT_ONITEMLABEL = 0x4;
582   public static final int LVHT_ONITEMSTATEICON = 0x8;
583   public static final int LVIF_IMAGE = 0x2;
584   public static final int LVIF_INDENT = 0x10;
585   public static final int LVIF_STATE = 0x8;
586   public static final int LVIF_TEXT = 0x1;
587   public static final int LVIR_BOUNDS = 0x0;
588   public static final int LVIR_ICON = 0x1;
589   public static final int LVIR_LABEL = 0x2;
590   public static final int LVIS_DROPHILITED = 0x8;
591   public static final int LVIS_FOCUSED = 0x1;
592   public static final int LVIS_SELECTED = 0x2;
593   public static final int LVIS_STATEIMAGEMASK = 0xf000;
594   public static final int LVM_APPROXIMATEVIEWRECT = 0x1040;
595   public static final int LVM_DELETEALLITEMS = 0x1009;
596   public static final int LVM_DELETECOLUMN = 0x101c;
597   public static final int LVM_DELETEITEM = 0x1008;
598   public static final int LVM_ENSUREVISIBLE = 0x1013;
599   public static final int LVM_FIRST = 0x1000;
600   public static final int LVM_GETBKCOLOR = 0x1000;
601   public static final int LVM_GETCOLUMN = IsUnicode ? 0x105f : 0x1019;
602   public static final int LVM_GETCOLUMNWIDTH = 0x101d;
603   public static final int LVM_GETCOUNTPERPAGE = 0x1028;
604   public static final int LVM_GETEXTENDEDLISTVIEWSTYLE = 0x1037;
605   public static final int LVM_GETHEADER = 0x101f;
606   public static final int LVM_GETIMAGELIST = 0x1002;
607   public static final int LVM_GETITEM = IsUnicode ? 0x104b : 0x1005;
608   public static final int LVM_GETITEMW = 0x104b;
609   public static final int LVM_GETITEMA = 0x1005;
610   public static final int LVM_GETITEMCOUNT = 0x1004;
611   public static final int LVM_GETITEMRECT = 0x100e;
612   public static final int LVM_GETITEMSTATE = 0x102c;
613   public static final int LVM_GETNEXTITEM = 0x100c;
614   public static final int LVM_GETSELECTEDCOUNT = 0x1032;
615   public static final int LVM_GETSTRINGWIDTH = IsUnicode ? 0x1057 : 0x1011;
616   public static final int LVM_GETSUBITEMRECT = 0x1038;
617   public static final int LVM_GETTEXTCOLOR = 0x1023;
618   public static final int LVM_GETTOOLTIPS = 0x104e;
619   public static final int LVM_GETTOPINDEX = 0x1027;
620   public static final int LVM_HITTEST = 0x1012;
621   public static final int LVM_INSERTCOLUMN = IsUnicode ? 0x1061 : 0x101b;
622   public static final int LVM_INSERTITEM = IsUnicode ? 0x104d : 0x1007;
623   public static final int LVM_REDRAWITEMS = LVM_FIRST + 21;
624   public static final int LVM_SCROLL = 0x1014;
625   public static final int LVM_SETBKCOLOR = 0x1001;
626   public static final int LVM_SETCALLBACKMASK = LVM_FIRST + 11;
627   public static final int LVM_SETCOLUMN = IsUnicode ? 0x1060 : 0x101a;
628   public static final int LVM_SETCOLUMNWIDTH = 0x101e;
629   public static final int LVM_SETEXTENDEDLISTVIEWSTYLE = 0x1036;
630   public static final int LVM_SETIMAGELIST = 0x1003;
631   public static final int LVM_SETITEM = IsUnicode ? 0x104c : 0x1006;
632   public static final int LVM_SETITEMCOUNT = LVM_FIRST + 47;
633   public static final int LVM_SETITEMSTATE = 0x102b;
634   public static final int LVM_SETTEXTBKCOLOR = 0x1026;
635   public static final int LVM_SETTEXTCOLOR = 0x1024;
636   public static final int LVNI_FOCUSED = 0x1;
637   public static final int LVNI_SELECTED = 0x2;
638   public static final int LVN_BEGINDRAG = 0xffffff93;
639   public static final int LVN_BEGINRDRAG = 0xffffff91;
640   public static final int LVN_COLUMNCLICK = 0xffffff94;
641   public static final int LVN_FIRST = 0xffffff9c;
642   public static final int LVN_GETDISPINFOA = LVN_FIRST - 50;
643   public static final int LVN_GETDISPINFOW = LVN_FIRST - 77;
644   public static final int LVN_ITEMACTIVATE = 0xffffff8e;
645   public static final int LVN_ITEMCHANGED = 0xffffff9b;
646   public static final int LVN_MARQUEEBEGIN = 0xffffff64;
647   public static final int LVN_ODFINDITEMA = LVN_FIRST - 52;
648   public static final int LVN_ODFINDITEMW = LVN_FIRST - 79;
649   public static final int LVSCW_AUTOSIZE = 0xffffffff;
650   public static final int LVSCW_AUTOSIZE_USEHEADER = 0xfffffffe;
651   public static final int LVSICF_NOINVALIDATEALL = 0x1;
652   public static final int LVSICF_NOSCROLL = 0x2;
653   public static final int LVSIL_SMALL = 0x1;
654   public static final int LVSIL_STATE = 0x2;
655   public static final int LVS_EX_FULLROWSELECT = 0x20;
656   public static final int LVS_EX_GRIDLINES = 0x1;
657   public static final int LVS_EX_LABELTIP = 0x4000;
658   public static final int LVS_EX_ONECLICKACTIVATE = 0x40;
659   public static final int LVS_EX_SUBITEMIMAGES = 0x2;
660   public static final int LVS_EX_TRACKSELECT = 0x8;
661   public static final int LVS_EX_TWOCLICKACTIVATE = 0x80;
662   public static final int LVS_NOCOLUMNHEADER = 0x4000;
663   public static final int LVS_NOSCROLL = 0x2000;
664   public static final int LVS_OWNERDATA = 0x1000;
665   public static final int LVS_REPORT = 0x1;
666   public static final int LVS_SHAREIMAGELISTS = 0x40;
667   public static final int LVS_SHOWSELALWAYS = 0x8;
668   public static final int LVS_SINGLESEL = 0x4;
669   public static final int MAX_PATH = 260;
670   public static final int MA_NOACTIVATE = 0x3;
671   public static final int MB_ABORTRETRYIGNORE = 0x2;
672   public static final int MB_APPLMODAL = 0x0;
673   public static final int MB_ICONERROR = 0x10;
674   public static final int MB_ICONINFORMATION = 0x40;
675   public static final int MB_ICONQUESTION = 0x20;
676   public static final int MB_ICONWARNING = 0x30;
677   public static final int MB_OK = 0x0;
678   public static final int MB_OKCANCEL = 0x1;
679   public static final int MB_PRECOMPOSED = 0x1;
680   public static final int MB_RETRYCANCEL = 0x5;
681   public static final int MB_RTLREADING = 0x100000;
682   public static final int MB_SYSTEMMODAL = 0x1000;
683   public static final int MB_TASKMODAL = 0x2000;
684   public static final int MB_YESNO = 0x4;
685   public static final int MB_YESNOCANCEL = 0x3;
686   public static final int MDIS_ALLCHILDSTYLES = 0x0001;
687   public static final int MFS_CHECKED = 0x8;
688   public static final int MFS_DISABLED = 0x3;
689   public static final int MFS_GRAYED = 0x3;
690   public static final int MFT_RADIOCHECK = 0x200;
691   public static final int MFT_RIGHTJUSTIFY = 0x4000;
692   public static final int MFT_RIGHTORDER = 0x2000; 
693   public static final int MFT_SEPARATOR = 0x800;
694   public static final int MFT_STRING = 0x0;
695   public static final int MF_BYCOMMAND = 0x0;
696   public static final int MF_BYPOSITION = 0x400;
697   public static final int MF_CHECKED = 0x8;
698   public static final int MF_DISABLED = 0x2;
699   public static final int MF_ENABLED = 0x0;
700   public static final int MF_GRAYED = 0x1;
701   public static final int MF_HILITE = 0x80;
702   public static final int MF_POPUP = 0x10;
703   public static final int MF_SEPARATOR = 0x800;
704   public static final int MF_SYSMENU = 0x2000;
705   public static final int MF_UNCHECKED = 0x0;
706   public static final int MIIM_BITMAP = 0x80;
707   public static final int MIIM_DATA = 0x20;
708   public static final int MIIM_ID = 0x2;
709   public static final int MIIM_STATE = 0x1;
710   public static final int MIIM_SUBMENU = 0x4;
711   public static final int MIIM_TYPE = 0x10;
712   public static final int MIM_STYLE = 0x10;
713   public static final int MK_CONTROL = 0x8;
714   public static final int MK_LBUTTON = 0x1;
715   public static final int MK_MBUTTON = 0x10;
716   public static final int MK_RBUTTON = 0x2;
717   public static final int MK_SHIFT = 0x4;
718   public static final int MM_TEXT = 0x1;
719   public static final int MNC_CLOSE = 0x1;
720   public static final int MNS_CHECKORBMP = 0x4000000;
721   public static final int MONITOR_DEFAULTTONEAREST = 0x2;
722   public static final int MONITORINFOF_PRIMARY = 0x1;
723   public static final int MOUSEEVENTF_ABSOLUTE = 0x8000;
724   public static final int MOUSEEVENTF_LEFTDOWN = 0x0002; 
725   public static final int MOUSEEVENTF_LEFTUP = 0x0004; 
726   public static final int MOUSEEVENTF_MIDDLEDOWN = 0x0020; 
727   public static final int MOUSEEVENTF_MIDDLEUP = 0x0040; 
728   public static final int MOUSEEVENTF_MOVE = 0x0001;
729   public static final int MOUSEEVENTF_RIGHTDOWN = 0x0008; 
730   public static final int MOUSEEVENTF_RIGHTUP = 0x0010; 
731   public static final int MWMO_INPUTAVAILABLE = 0x4;
732   public static final int NIF_ICON = 0x00000002;
733   public static final int NIF_INFO = 0x00000010;
734   public static final int NIF_MESSAGE = 0x00000001;
735   public static final int NIF_STATE = 0x00000008;
736   public static final int NIF_TIP = 0x00000004;
737   public static final int NIIF_ERROR = 0x00000003;
738   public static final int NIIF_INFO = 0x00000001;
739   public static final int NIIF_NONE = 0x00000000;
740   public static final int NIIF_WARNING = 0x00000002;
741   public static final int NIM_ADD = 0x00000000;
742   public static final int NIM_DELETE = 0x00000002;
743   public static final int NIM_MODIFY = 0x00000001;
744   public static final int NIS_HIDDEN = 0x00000001;
745   public static final int NM_FIRST = 0x0;
746   public static final int NM_CLICK = 0xfffffffe;
747   public static final int NM_CUSTOMDRAW = NM_FIRST - 12;
748   public static final int NM_DBLCLK = 0xfffffffd;
749   public static final int NM_RECOGNIZEGESTURE = NM_FIRST - 16;
750   public static final int NM_RETURN = 0xfffffffc;
751   public static final int NOTIFYICONDATAA_V2_SIZE = 488;
752   public static final int NOTIFYICONDATAW_V2_SIZE = 936;
753   public static final int NOTIFYICONDATA_V2_SIZE = IsUnicode ? NOTIFYICONDATAW_V2_SIZE : NOTIFYICONDATAA_V2_SIZE;
754   public static final int NOTSRCCOPY = 0x330008;
755   public static final int NULLREGION = 0x1;
756   public static final int NULL_BRUSH = 0x5;
757   public static final int NULL_PEN = 0x8;
758   public static final int NUMRESERVED = 106;
759   public static final int OBJID_CARET = 0xFFFFFFF8;
760   public static final int OBJID_CLIENT = 0xFFFFFFFC;
761   public static final int OBJID_MENU = 0xFFFFFFFD;
762   public static final int OBJID_WINDOW = 0x00000000;
763   public static final int OBJ_FONT = 0x6;
764   public static final int OBJ_PEN = 0x1;
765   public static final int OBM_CHECKBOXES = 0x7ff7;
766   public static final int ODS_SELECTED = 0x1;
767   public static final int ODT_MENU = 0x1;
768   public static final int OFN_ALLOWMULTISELECT = 0x200;
769   public static final int OFN_EXPLORER = 0x80000;
770   public static final int OFN_HIDEREADONLY = 0x4;
771   public static final int OFN_NOCHANGEDIR = 0x8;
772   public static final int OIC_BANG = 0x7F03;
773   public static final int OIC_HAND = 0x7F01;
774   public static final int OIC_INFORMATION = 0x7F04;
775   public static final int OIC_QUES = 0x7F02;
776   public static final int OIC_WINLOGO = 0x7F05;
777   public static final int OPAQUE = 0x2;
778   public static final int PATCOPY = 0xf00021;
779   public static final int PATINVERT = 0x5a0049;
780   public static final int PBM_GETPOS = 0x408;
781   public static final int PBM_GETRANGE = 0x407;
782   public static final int PBM_SETBARCOLOR = 0x409;
783   public static final int PBM_SETBKCOLOR = 0x2001;
784   public static final int PBM_SETPOS = 0x402;
785   public static final int PBM_SETRANGE32 = 0x406;
786   public static final int PBM_STEPIT = 0x405;
787   public static final int PBS_SMOOTH = 0x1;
788   public static final int PBS_VERTICAL = 0x4;
789   public static final int PD_ALLPAGES = 0x0;
790   public static final int PD_COLLATE = 0x10;
791   public static final int PD_PAGENUMS = 0x2;
792   public static final int PD_PRINTTOFILE = 0x20;
793   public static final int PD_RETURNDC = 0x100;
794   public static final int PD_SELECTION = 0x1;
795   public static final int PD_USEDEVMODECOPIESANDCOLLATE = 0x40000;
796   public static final int PFM_TABSTOPS = 0x10;
797   public static final int PHYSICALHEIGHT = 0x6f;
798   public static final int PHYSICALOFFSETX = 0x70;
799   public static final int PHYSICALOFFSETY = 0x71;
800   public static final int PHYSICALWIDTH = 0x6e;
801   public static final int PLANES = 0xe;
802   public static final int PM_NOREMOVE = 0x0;
803   public static final int PM_NOYIELD = 0x2;
804   public static final int QS_HOTKEY = 0x0080;
805   public static final int QS_KEY = 0x0001;
806   public static final int QS_MOUSEMOVE = 0x0002;
807   public static final int QS_MOUSEBUTTON = 0x0004;
808   public static final int QS_MOUSE = QS_MOUSEMOVE | QS_MOUSEBUTTON;
809   public static final int QS_INPUT = QS_KEY | QS_MOUSE;
810   public static final int QS_POSTMESSAGE = 0x0008;
811   public static final int QS_TIMER = 0x0010;
812   public static final int QS_PAINT = 0x0020;
813   public static final int QS_SENDMESSAGE = 0x0040;
814   public static final int QS_ALLINPUT = QS_MOUSEMOVE | QS_MOUSEBUTTON | QS_KEY | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_SENDMESSAGE;
815   public static final int PM_QS_INPUT = QS_INPUT << 16;
816   public static final int PM_QS_POSTMESSAGE = (QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16;
817   public static final int PM_QS_PAINT = QS_PAINT << 16;
818   public static final int PM_QS_SENDMESSAGE = QS_SENDMESSAGE << 16;
819   public static final int PM_REMOVE = 0x1;
820   public static final String PROGRESS_CLASS = "msctls_progress32"; //$NON-NLS-1$
821   public static final int PS_DASH = 0x1;
822   public static final int PS_DASHDOT = 0x3;
823   public static final int PS_DASHDOTDOT = 0x4;
824   public static final int PS_DOT = 0x2;
825   public static final int PS_ENDCAP_FLAT = 0x200;
826   public static final int PS_GEOMETRIC = 0x10000;
827   public static final int PS_JOIN_MITER = 0x2000;
828   public static final int PS_SOLID = 0x0;
829   public static final int PS_STYLE_MASK = 0xf;
830   public static final int R2_COPYPEN = 0xd;
831   public static final int R2_XORPEN = 0x7;
832   public static final int RASTERCAPS = 0x26;
833   public static final int RASTER_FONTTYPE = 0x1;
834   public static final int RBBIM_CHILD = 0x10;
835   public static final int RBBIM_CHILDSIZE = 0x20;
836   public static final int RBBIM_COLORS = 0x2;
837   public static final int RBBIM_HEADERSIZE = 0x800;
838   public static final int RBBIM_ID = 0x100;
839   public static final int RBBIM_IDEALSIZE = 0x200;
840   public static final int RBBIM_SIZE = 0x40;
841   public static final int RBBIM_STYLE = 0x1;
842   public static final int RBBIM_TEXT = 0x4;
843   public static final int RBBS_BREAK = 0x1;
844   public static final int RBBS_GRIPPERALWAYS = 0x80;
845   public static final int RBBS_NOGRIPPER = 0x00000100;
846   public static final int RBBS_USECHEVRON = 0x00000200;
847   public static final int RBBS_VARIABLEHEIGHT = 0x40;
848   public static final int RBN_FIRST = 0xfffffcc1;
849   public static final int RBN_CHEVRONPUSHED = RBN_FIRST - 10;
850   public static final int RBN_HEIGHTCHANGE = 0xfffffcc1;
851   public static final int RBS_DBLCLKTOGGLE = 0x8000;
852   public static final int RBS_BANDBORDERS = 0x400;
853   public static final int RBS_VARHEIGHT = 0x200;
854   public static final int RB_DELETEBAND = 0x402;
855   public static final int RB_GETBANDBORDERS = 0x422;
856   public static final int RB_GETBANDCOUNT = 0x40c;
857   public static final int RB_GETBANDINFO = IsUnicode ? 0x41c : 0x41d;
858   public static final int RB_GETBANDMARGINS = 0x428;
859   public static final int RB_GETBARHEIGHT = 0x41b;
860   public static final int RB_GETBKCOLOR = 0x414;
861   public static final int RB_GETRECT = 0x409;
862   public static final int RB_GETTEXTCOLOR = 0x416;
863   public static final int RB_IDTOINDEX = 0x410;
864   public static final int RB_INSERTBAND = IsUnicode ? 0x40a : 0x401;
865   public static final int RB_MOVEBAND = 0x427;
866   public static final int RB_SETBANDINFO = IsUnicode ? 0x40b : 0x406;
867   public static final int RB_SETBKCOLOR = 0x413;
868   public static final int RB_SETTEXTCOLOR = 0x415;
869   public static final int RC_BITBLT = 0x1;
870   public static final int RC_PALETTE = 0x100;
871   public static final int RDW_ALLCHILDREN = 0x80;
872   public static final int RDW_ERASE = 0x4;
873   public static final int RDW_FRAME = 0x400;
874   public static final int RDW_INVALIDATE = 0x1;
875   public static final int RDW_UPDATENOW = 0x100;
876   public static final int READ_CONTROL = 0x20000;
877   public static final String REBARCLASSNAME = "ReBarWindow32"; //$NON-NLS-1$
878   public static final int RGN_AND = 0x1;
879   public static final int RGN_DIFF = 0x4;
880   public static final int RGN_ERROR = 0;
881   public static final int RGN_OR = 0x2;
882   public static final int SBS_HORZ = 0x0;
883   public static final int SBS_VERT = 0x1;
884   public static final int SB_BOTTOM = 0x7;
885   public static final int SB_CTL = 0x2;
886   public static final int SB_ENDSCROLL = 0x8;
887   public static final int SB_HORZ = 0x0;
888   public static final int SB_LINEDOWN = 0x1;
889   public static final int SB_LINEUP = 0x0;
890   public static final int SB_PAGEDOWN = 0x3;
891   public static final int SB_PAGEUP = 0x2;
892   public static final int SB_THUMBPOSITION = 0x4;
893   public static final int SB_THUMBTRACK = 0x5;
894   public static final int SB_TOP = 0x6;
895   public static final int SB_VERT = 0x1;
896   public static final int SCF_ALL = 0x4;
897   public static final int SCF_DEFAULT = 0x0;
898   public static final int SCF_SELECTION = 0x1;
899   public static final int SC_CLOSE = 0xf060;
900   public static final int SC_HSCROLL = 0xf080;
901   public static final int SC_KEYMENU = 0xf100;
902   public static final int SC_MAXIMIZE = 0xf030;
903   public static final int SC_MINIMIZE = 0xf020;
904   public static final int SC_NEXTWINDOW = 0xF040;
905   public static final int SC_RESTORE = 0xf120;
906   public static final int SC_SIZE = 0xf000;
907   public static final int SC_TASKLIST = 0xf130;
908   public static final int SC_VSCROLL = 0xf070;
909   public static final int SEM_FAILCRITICALERRORS = 0x1;
910   public static final int SF_RTF = 0x2;
911   public static final int SHCMBF_HIDDEN = 0x2;
912   public static final int SHCMBM_OVERRIDEKEY = 0x400 + 403;
913   public static final int SHCMBM_SETSUBMENU = 0x590;
914   public static final int SHCMBM_GETSUBMENU = 0x591;
915   public static final int SHMBOF_NODEFAULT = 0x1;
916   public static final int SHMBOF_NOTIFY = 0x2;
917   public static final int SHRG_RETURNCMD = 0x1;
918   public static final int SIF_ALL = 0x17;
919   public static final int SIF_DISABLENOSCROLL = 0x8;
920   public static final int SIF_PAGE = 0x2;
921   public static final int SIF_POS = 0x4;
922   public static final int SIF_RANGE = 0x1;
923   public static final int SIF_TRACKPOS = 0x10;
924   public static final int SIP_DOWN = 1;
925   public static final int SIP_UP = 0;
926   public static final int SIPF_ON = 0x1;
927   public static final int SIZE_MINIMIZED = 0x1;
928   public static final int SIZEPALETTE = 104;
929   public static final int SM_CMONITORS = 80;
930   public static final int SM_CXBORDER = 0x5;
931   public static final int SM_CXCURSOR = 0xd;
932   public static final int SM_CXEDGE = 0x2d;
933   public static final int SM_CXHSCROLL = 0x15;
934   public static final int SM_CXICON = 0x0b;
935   public static final int SM_CYICON = 0x0c;
936   public static final int SM_CXVIRTUALSCREEN = 78;
937   public static final int SM_CYVIRTUALSCREEN = 79;
938   public static final int SM_CXSMICON = 49;
939   public static final int SM_CYSMICON = 50;
940   public static final int SM_CXSCREEN = 0x0;
941   public static final int SM_XVIRTUALSCREEN = 76;
942   public static final int SM_YVIRTUALSCREEN = 77;
943   public static final int SM_CXVSCROLL = 0x2;
944   public static final int SM_CYBORDER = 0x6;
945   public static final int SM_CYCURSOR = 0xe;
946   public static final int SM_CYHSCROLL = 0x3;
947   public static final int SM_CYMENU = 0xf;
948   public static final int SM_CYSCREEN = 0x1;
949   public static final int SM_CYVSCROLL = 0x14;
950   public static final int SPI_GETHIGHCONTRAST = 66;
951   public static final int SPI_GETWORKAREA = 0x30;
952   public static final int SPI_GETNONCLIENTMETRICS = 41;
953   public static final int SPI_GETWHEELSCROLLLINES = 104;
954   public static final int SPI_SETSIPINFO = 224;
955   public static final int SRCAND = 0x8800c6;
956   public static final int SRCCOPY = 0xcc0020;
957   public static final int SRCINVERT = 0x660046;
958   public static final int SRCPAINT = 0xee0086;
959   public static final int SS_BITMAP = 0xe;
960   public static final int SS_CENTER = 0x1;
961   public static final int SS_CENTERIMAGE = 0x200;
962   public static final int SS_ICON = 0x3;
963   public static final int SS_LEFT = 0x0;
964   public static final int SS_LEFTNOWORDWRAP = 0xc;
965   public static final int SS_NOTIFY = 0x100;
966   public static final int SS_OWNERDRAW = 0xd;
967   public static final int SS_REALSIZEIMAGE = 0x800;
968   public static final int SS_RIGHT = 0x2;
969   public static final int STANDARD_RIGHTS_READ = 0x20000;
970   public static final int STD_COPY = 0x1;
971   public static final int STD_CUT = 0x0;
972   public static final int STD_FILENEW = 0x6;
973   public static final int STD_FILEOPEN = 0x7;
974   public static final int STD_FILESAVE = 0x8;
975   public static final int STD_PASTE = 0x2;
976   public static final int STM_SETIMAGE = 0x172;
977   public static final int SWP_DRAWFRAME = 0x20;
978   public static final int SWP_NOACTIVATE = 0x10;
979   public static final int SWP_NOCOPYBITS = 0x100;
980   public static final int SWP_NOMOVE = 0x2;
981   public static final int SWP_NOREDRAW = 0x8;
982   public static final int SWP_NOSIZE = 0x1;
983   public static final int SWP_NOZORDER = 0x4;
984   public static final int SW_ERASE = 0x4;
985   public static final int SW_HIDE = 0x0;
986   public static final int SW_INVALIDATE = 0x2;
987   public static final int SW_MINIMIZE = 0x6;
988   public static final int SW_PARENTOPENING = 0x3;
989   public static final int SW_RESTORE = IsWinCE ? 0xd : 0x9;
990   public static final int SW_SCROLLCHILDREN = 0x1;
991   public static final int SW_SHOW = 0x5;
992   public static final int SW_SHOWMAXIMIZED = IsWinCE ? 0xb : 0x3;
993   public static final int SW_SHOWMINIMIZED = 0x2;
994   public static final int SW_SHOWMINNOACTIVE = 0x7;
995   public static final int SW_SHOWNA = 0x8;
996   public static final int SW_SHOWNOACTIVATE = 0x4;
997   public static final int SYNCHRONIZE = 0x100000;
998   public static final int SYSRGN = 0x4;
999   public static final int SYSTEM_FONT = 0xd;
1000  public static final int S_OK = 0x0;
1001  public static final int TBIF_COMMAND = 0x20;
1002  public static final int TBIF_STATE = 0x4;
1003  public static final int TBIF_IMAGE = 0x1;
1004  public static final int TBIF_LPARAM = 0x10;
1005  public static final int TBIF_SIZE = 0x40;
1006  public static final int TBIF_STYLE = 0x8;
1007  public static final int TBIF_TEXT = 0x2;
1008  public static final int TBM_GETLINESIZE = 0x418;
1009  public static final int TBM_GETPAGESIZE = 0x416;
1010  public static final int TBM_GETPOS = 0x400;
1011  public static final int TBM_GETRANGEMAX = 0x402;
1012  public static final int TBM_GETRANGEMIN = 0x401;
1013  public static final int TBM_GETTHUMBRECT = 0x419;
1014  public static final int TBM_SETLINESIZE = 0x417;
1015  public static final int TBM_SETPAGESIZE = 0x415;
1016  public static final int TBM_SETPOS = 0x405;
1017  public static final int TBM_SETRANGEMAX = 0x408;
1018  public static final int TBM_SETRANGEMIN = 0x407;
1019  public static final int TBM_SETTICFREQ = 0x414;
1020  public static final int TBN_DROPDOWN = 0xfffffd3a;
1021  public static final int TBN_FIRST = 0xfffffd44;
1022  public static final int TBSTATE_CHECKED = 0x1;
1023  public static final int TBSTYLE_CUSTOMERASE = 0x2000;
1024  public static final int TBSTYLE_DROPDOWN = 0x8;
1025  public static final int TBSTATE_ENABLED = 0x4;
1026  public static final int TBSTYLE_AUTOSIZE = 0x10;
1027  public static final int TBSTYLE_EX_DRAWDDARROWS = 0x1;
1028  public static final int TBSTYLE_EX_MIXEDBUTTONS = 0x8;
1029  public static final int TBSTYLE_FLAT = 0x800;
1030  public static final int TBSTYLE_LIST = 0x1000;
1031  public static final int TBSTYLE_TOOLTIPS = 0x100;
1032  public static final int TBSTYLE_TRANSPARENT = 0x8000;
1033  public static final int TBSTYLE_WRAPABLE = 0x200;
1034  public static final int TBS_AUTOTICKS = 0x1;
1035  public static final int TBS_BOTH = 0x8;
1036  public static final int TBS_HORZ = 0x0;
1037  public static final int TBS_VERT = 0x2;
1038  public static final int TB_ADDSTRING = IsUnicode ? 0x44d : 0x41c;
1039  public static final int TB_BUTTONCOUNT = 0x418;
1040  public static final int TB_BUTTONSTRUCTSIZE = 0x41e;
1041  public static final int TB_COMMANDTOINDEX = 0x419;
1042  public static final int TB_DELETEBUTTON = 0x416;
1043  public static final int TB_ENDTRACK = 0x8;
1044  public static final int TB_GETBUTTON = 0x417;
1045  public static final int TB_GETBUTTONINFO = IsUnicode ? 0x43f : 0x441;
1046  public static final int TB_GETBUTTONSIZE = 0x43a;
1047  public static final int TB_GETBUTTONTEXT = IsUnicode ? 0x44b : 0x42d;
1048  public static final int TB_GETDISABLEDIMAGELIST = 0x437;
1049  public static final int TB_GETHOTIMAGELIST = 0x435;
1050  public static final int TB_GETHOTITEM = 0x0400 + 71;
1051  public static final int TB_GETIMAGELIST = 0x431;
1052  public static final int TB_GETITEMRECT = 0x41d;
1053  public static final int TB_GETROWS = 0x428;
1054  public static final int TB_GETSTATE = 0x412;
1055  public static final int TB_GETTOOLTIPS = 0x423;
1056  public static final int TB_INSERTBUTTON = IsUnicode ? 0x443 : 0x415;
1057  public static final int TB_LOADIMAGES = 0x432;
1058  public static final int TB_MAPACCELERATOR = 0x0400 + (IsUnicode ? 90 : 78);
1059  public static final int TB_SETBITMAPSIZE = 0x420;
1060  public static final int TB_SETBUTTONINFO = IsUnicode ? 0x440 : 0x442;
1061  public static final int TB_SETBUTTONSIZE = 0x41f;
1062  public static final int TB_SETDISABLEDIMAGELIST = 0x436;
1063  public static final int TB_SETEXTENDEDSTYLE = 0x454;
1064  public static final int TB_SETHOTIMAGELIST = 0x434;
1065  public static final int TB_SETHOTITEM =  0x0400 + 72;
1066  public static final int TB_SETIMAGELIST = 0x430;
1067  public static final int TB_SETPARENT = 0x400 + 37;
1068  public static final int TB_SETROWS = 0x427;
1069  public static final int TB_SETSTATE = 0x411;
1070  public static final int TCIF_IMAGE = 0x2;
1071  public static final int TCIF_TEXT = 0x1;
1072  public static final int TCI_SRCCHARSET = 0x1;
1073  public static final int TCI_SRCCODEPAGE = 0x2;
1074  public static final int TCM_ADJUSTRECT = 0x1328;
1075  public static final int TCM_DELETEITEM = 0x1308;
1076  public static final int TCM_GETCURSEL = 0x130b;
1077  public static final int TCM_GETITEMCOUNT = 0x1304;
1078  public static final int TCM_GETITEMRECT = 0x130a;
1079  public static final int TCM_GETTOOLTIPS = 0x132d;
1080  public static final int TCM_INSERTITEM = IsUnicode ? 0x133e : 0x1307;
1081  public static final int TCM_SETCURSEL = 0x130c;
1082  public static final int TCM_SETIMAGELIST = 0x1303;
1083  public static final int TCM_SETITEM = IsUnicode ? 0x133d : 0x1306;
1084  public static final int TCN_SELCHANGE = 0xfffffdd9;
1085  public static final int TCN_SELCHANGING = 0xfffffdd8;
1086  public static final int TCS_BOTTOM = 0x0002;
1087  public static final int TCS_FOCUSNEVER = 0x8000;
1088  public static final int TCS_MULTILINE = 0x200;
1089  public static final int TCS_TABS = 0x0;
1090  public static final int TCS_TOOLTIPS = 0x4000;
1091  public static final int TECHNOLOGY = 0x2;
1092  public static final int TME_HOVER = 0x1;
1093  public static final int TME_LEAVE = 0x2;
1094  public static final int TME_QUERY = 0x40000000;
1095  public static final int TMPF_VECTOR = 0x2;
1096  public static final String TOOLBARCLASSNAME = "ToolbarWindow32"; //$NON-NLS-1$
1097  public static final String TOOLTIPS_CLASS = "tooltips_class32"; //$NON-NLS-1$
1098  public static final int TPM_LEFTALIGN = 0x0;
1099  public static final int TPM_LEFTBUTTON = 0x0;
1100  public static final int TPM_RIGHTBUTTON = 0x2;
1101  public static final int TPM_RIGHTALIGN = 0x8;
1102  public static final String TRACKBAR_CLASS = "msctls_trackbar32"; //$NON-NLS-1$
1103  public static final int TRANSPARENT = 0x1;
1104  public static final int TTF_IDISHWND = 0x1;
1105  public static final int TTF_SUBCLASS = 0x10;
1106  public static final int TTF_RTLREADING = 0x4;
1107  public static final int TTM_ADDTOOL = IsUnicode ? 0x432 : 0x404;
1108  public static final int TTM_DELTOOL = IsUnicode ? 0x433 : 0x405;
1109  public static final int TTM_SETMAXTIPWIDTH = 0x418;
1110  public static final int TTM_UPDATE = 0x41D;
1111  public static final int TTN_FIRST = 0xfffffdf8;
1112  public static final int TTN_GETDISPINFO = IsUnicode ? 0xfffffdee : 0xfffffdf8;
1113  public static final int TTN_GETDISPINFOW = 0xfffffdee;
1114  public static final int TTN_GETDISPINFOA = 0xfffffdf8;
1115  public static final int TTN_POP = TTN_FIRST - 2;
1116  public static final int TTN_SHOW = TTN_FIRST - 1;
1117  public static final int TTS_ALWAYSTIP = 0x1;
1118  public static final int TV_FIRST = 0x1100;
1119  public static final int TVE_COLLAPSE = 0x1;
1120  public static final int TVE_EXPAND = 0x2;
1121  public static final int TVGN_CARET = 0x9;
1122  public static final int TVGN_CHILD = 0x4;
1123  public static final int TVGN_DROPHILITED = 0x8;
1124  public static final int TVGN_FIRSTVISIBLE = 0x5;
1125  public static final int TVGN_LASTVISIBLE = 0xa;
1126  public static final int TVGN_NEXT = 0x1;
1127  public static final int TVGN_NEXTVISIBLE = 0x6;
1128  public static final int TVGN_PARENT = 0x3;
1129  public static final int TVGN_PREVIOUSVISIBLE = 0x7;
1130  public static final int TVGN_ROOT = 0x0;
1131  public static final int TVHT_ONITEM = 0x46;
1132  public static final int TVHT_ONITEMICON = 0x2;
1133  public static final int TVHT_ONITEMLABEL = 0x4;
1134  public static final int TVHT_ONITEMSTATEICON = 0x40;
1135  public static final int TVIF_HANDLE = 0x10;
1136  public static final int TVIF_IMAGE = 0x2;
1137  public static final int TVIF_PARAM = 0x4;
1138  public static final int TVIF_SELECTEDIMAGE = 0x20;
1139  public static final int TVIF_STATE = 0x8;
1140  public static final int TVIF_TEXT = 0x1;
1141  public static final int TVIS_EXPANDED = 0x20;
1142  public static final int TVIS_SELECTED = 0x2;
1143  public static final int TVIS_STATEIMAGEMASK = 0xf000;
1144  public static final int TVI_FIRST = 0xffff0001;
1145  public static final int TVI_LAST = 0xffff0002;
1146  public static final int TVI_ROOT = 0xffff0000;
1147  public static final int TVM_DELETEITEM = 0x1101;
1148  public static final int TVM_ENSUREVISIBLE = 0x1114;
1149  public static final int TVM_EXPAND = 0x1102;
1150  public static final int TVM_GETBKCOLOR = 0x111f;
1151  public static final int TVM_GETCOUNT = 0x1105;
1152  public static final int TVM_GETIMAGELIST = 0x1108;
1153  public static final int TVM_GETITEM = IsUnicode ? 0x113e : 0x110c;
1154  public static final int TVM_GETITEMHEIGHT = 0x111c;
1155  public static final int TVM_GETITEMRECT = 0x1104;
1156  public static final int TVM_GETNEXTITEM = 0x110a;
1157  public static final int TVM_GETTEXTCOLOR = 0x1120;
1158  public static final int TVM_GETTOOLTIPS = TV_FIRST + 25;
1159  public static final int TVM_GETVISIBLECOUNT = TV_FIRST + 16;
1160  public static final int TVM_HITTEST = 0x1111;
1161  public static final int TVM_INSERTITEM = IsUnicode ? 0x1132 : 0x1100;
1162  public static final int TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42;
1163  public static final int TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43;
1164  public static final int TVM_SELECTITEM = 0x110b;
1165  public static final int TVM_SETBKCOLOR = 0x111d;
1166  public static final int TVM_SETIMAGELIST = 0x1109;
1167  public static final int TVM_SETINSERTMARK = 0x111a;
1168  public static final int TVM_SETITEM = IsUnicode ? 0x113f : 0x110d;
1169  public static final int TVM_SETTEXTCOLOR = 0x111e;
1170  public static final int TVN_BEGINDRAG = IsUnicode ? 0xfffffe38 : 0xfffffe69;
1171  public static final int TVN_BEGINDRAGW = 0xfffffe38;
1172  public static final int TVN_BEGINDRAGA = 0xfffffe69;
1173  public static final int TVN_BEGINRDRAG = IsUnicode ? 0xfffffe37 : 0xfffffe68;
1174  public static final int TVN_BEGINRDRAGW = 0xfffffe37;
1175  public static final int TVN_BEGINRDRAGA = 0xfffffe68;
1176  public static final int TVN_FIRST = 0xfffffe70;
1177  public static final int TVN_ITEMEXPANDING = IsUnicode ? 0xfffffe3a : 0xfffffe6b;
1178  public static final int TVN_ITEMEXPANDINGW = 0xfffffe3a;
1179  public static final int TVN_ITEMEXPANDINGA = 0xfffffe6b;
1180  public static final int TVN_SELCHANGED = IsUnicode ? 0xfffffe3d : 0xfffffe6e;
1181  public static final int TVN_SELCHANGEDW = 0xfffffe3d;
1182  public static final int TVN_SELCHANGEDA = 0xfffffe6e;
1183  public static final int TVN_SELCHANGING = IsUnicode ? 0xfffffe3e : 0xfffffe6f;
1184  public static final int TVN_SELCHANGINGW = 0xfffffe3e;
1185  public static final int TVN_SELCHANGINGA = 0xfffffe6f;
1186  public static final int TVSIL_NORMAL = 0x0;
1187  public static final int TVSIL_STATE = 0x2;
1188  public static final int TVS_DISABLEDRAGDROP = 0x10;
1189  public static final int TVS_FULLROWSELECT = 0x1000;
1190  public static final int TVS_HASBUTTONS = 0x1;
1191  public static final int TVS_HASLINES = 0x2;
1192  public static final int TVS_LINESATROOT = 0x4;
1193  public static final int TVS_NOTOOLTIPS = 0x80;
1194  public static final int TVS_SHOWSELALWAYS = 0x20;
1195  public static final int UIS_INITIALIZE = 3;
1196  public static final int USP_E_SCRIPT_NOT_IN_FONT = 0x80040200;
1197  public static final int VERTRES = 0xa;
1198  public static final int VK_BACK = 0x8;
1199  public static final int VK_CANCEL = 0x3;
1200  public static final int VK_CAPITAL = 0x14;
1201  public static final int VK_CONTROL = 0x11;
1202  public static final int VK_DECIMAL = 0x6E;
1203  public static final int VK_DELETE = 0x2e;
1204  public static final int VK_DIVIDE = 0x6f;
1205  public static final int VK_DOWN = 0x28;
1206  public static final int VK_END = 0x23;
1207  public static final int VK_ESCAPE = 0x1b;
1208  public static final int VK_F1 = 0x70;
1209  public static final int VK_F10 = 0x79;
1210  public static final int VK_F11 = 0x7a;
1211  public static final int VK_F12 = 0x7b;
1212  public static final int VK_F13 = 0x7c;
1213  public static final int VK_F14 = 0x7d;
1214  public static final int VK_F15 = 0x7e;
1215  public static final int VK_F2 = 0x71;
1216  public static final int VK_F3 = 0x72;
1217  public static final int VK_F4 = 0x73;
1218  public static final int VK_F5 = 0x74;
1219  public static final int VK_F6 = 0x75;
1220  public static final int VK_F7 = 0x76;
1221  public static final int VK_F8 = 0x77;
1222  public static final int VK_F9 = 0x78;
1223  public static final int VK_HOME = 0x24;
1224  public static final int VK_INSERT = 0x2d;
1225  public static final int VK_LBUTTON = 0x1;
1226  public static final int VK_LEFT = 0x25;
1227  public static final int VK_MBUTTON = 0x4;
1228  public static final int VK_MENU = 0x12;
1229  public static final int VK_MULTIPLY = 0x6A;
1230  public static final int VK_NEXT = 0x22;
1231  public static final int VK_NUMLOCK = 0x90;
1232  public static final int VK_NUMPAD0 = 0x60;
1233  public static final int VK_NUMPAD1 = 0x61;
1234  public static final int VK_NUMPAD2 = 0x62;
1235  public static final int VK_NUMPAD3 = 0x63;
1236  public static final int VK_NUMPAD4 = 0x64;
1237  public static final int VK_NUMPAD5 = 0x65;
1238  public static final int VK_NUMPAD6 = 0x66;
1239  public static final int VK_NUMPAD7 = 0x67;
1240  public static final int VK_NUMPAD8 = 0x68;
1241  public static final int VK_NUMPAD9 = 0x69;
1242  public static final int VK_PAUSE = 0x13;
1243  public static final int VK_PRIOR = 0x21;
1244  public static final int VK_RBUTTON = 0x2;
1245  public static final int VK_RETURN = 0xd;
1246  public static final int VK_RIGHT = 0x27;
1247  public static final int VK_SCROLL = 0x91;
1248  public static final int VK_SEPARATOR = 0x6C;
1249  public static final int VK_SHIFT = 0x10;
1250  public static final int VK_SNAPSHOT = 0x2C;
1251  public static final int VK_SPACE = 0x20;
1252  public static final int VK_SUBTRACT = 0x6D;
1253  public static final int VK_TAB = 0x9;
1254  public static final int VK_UP = 0x26;
1255  public static final int VK_ADD = 0x6B;
1256  public static final int VK_APP1 = 0xc1;
1257  public static final int VK_APP2 = 0xc2;
1258  public static final int VK_APP3 = 0xc3;
1259  public static final int VK_APP4 = 0xc4;
1260  public static final int VK_APP5 = 0xc5;
1261  public static final int VK_APP6 = 0xc6;
1262  public static final String WC_LISTVIEW = "SysListView32"; //$NON-NLS-1$
1263  public static final String WC_TABCONTROL = "SysTabControl32"; //$NON-NLS-1$
1264  public static final String WC_TREEVIEW = "SysTreeView32"; //$NON-NLS-1$
1265  public static final int WH_GETMESSAGE = 0x3;
1266  public static final int WH_MSGFILTER = 0xFFFFFFFF;
1267  public static final int WHEEL_DELTA = 120;
1268  public static final int WHEEL_PAGESCROLL = 0xFFFFFFFF;
1269  public static final int WM_ACTIVATE = 0x6;
1270  public static final int WM_ACTIVATEAPP = 0x1c;
1271  public static final int WM_APP = 0x8000;
1272  public static final int WM_CANCELMODE = 0x1f;
1273  public static final int WM_CHANGEUISTATE = 0x0127;
1274  public static final int WM_CHAR = 0x102;
1275  public static final int WM_CLEAR = 0x303;
1276  public static final int WM_CLOSE = 0x10;
1277  public static final int WM_COMMAND = 0x111;
1278  public static final int WM_CONTEXTMENU = 0x7b;
1279  public static final int WM_COPY = 0x301;
1280  public static final int WM_CREATE = 0x0001;  
1281  public static final int WM_CTLCOLORBTN = 0x135;
1282  public static final int WM_CTLCOLORDLG = 0x136;
1283  public static final int WM_CTLCOLOREDIT = 0x133;
1284  public static final int WM_CTLCOLORLISTBOX = 0x134;
1285  public static final int WM_CTLCOLORMSGBOX = 0x132;
1286  public static final int WM_CTLCOLORSCROLLBAR = 0x137;
1287  public static final int WM_CTLCOLORSTATIC = 0x138;
1288  public static final int WM_CUT = 0x300;
1289  public static final int WM_DEADCHAR = 0x103;
1290  public static final int WM_DESTROY = 0x2;
1291  public static final int WM_DRAWITEM = 0x2b;
1292  public static final int WM_ENDSESSION = 0x16;
1293  public static final int WM_ENTERIDLE = 0x121;
1294  public static final int WM_ERASEBKGND = 0x14;
1295  public static final int WM_GETDLGCODE = 0x87;
1296  public static final int WM_GETFONT = 0x31;
1297//  public static final int WM_GETICON = 0x7f;
1298  public static final int WM_GETOBJECT = 0x003D;
1299  public static final int WM_HELP = 0x53;
1300  public static final int WM_HOTKEY = 0x0312;
1301  public static final int WM_HSCROLL = 0x114;
1302  public static final int WM_IME_CHAR = 0x286;
1303  public static final int WM_IME_COMPOSITION = 0x10f;
1304  public static final int WM_INITDIALOG = 0x110;
1305  public static final int WM_INITMENUPOPUP = 0x117;
1306  public static final int WM_KEYDOWN = 0x100;
1307  public static final int WM_KEYFIRST = 0x100;
1308  public static final int WM_KEYLAST = 0x108;
1309  public static final int WM_KEYUP = 0x101;
1310  public static final int WM_KILLFOCUS = 0x8;
1311  public static final int WM_LBUTTONDBLCLK = 0x203;
1312  public static final int WM_LBUTTONDOWN = 0x201;
1313  public static final int WM_LBUTTONUP = 0x202;
1314  public static final int WM_MBUTTONDBLCLK = 0x209;
1315  public static final int WM_MBUTTONDOWN = 0x207;
1316  public static final int WM_MBUTTONUP = 0x208;
1317  public static final int WM_MEASUREITEM = 0x2c;
1318  public static final int WM_MENUCHAR = 0x120;
1319  public static final int WM_MENUSELECT = 0x11f;
1320  public static final int WM_MOUSEACTIVATE = 0x21;
1321  public static final int WM_MOUSEFIRST = 0x200;
1322  public static final int WM_MOUSEHOVER = 0x2a1;
1323  public static final int WM_MOUSELEAVE = 0x2a3;
1324  public static final int WM_MOUSEMOVE = 0x200;
1325  public static final int WM_MOUSEWHEEL = 0x20a;
1326  public static final int WM_MOUSELAST = 0x20d;
1327  public static final int WM_MOVE = 0x3;
1328  public static final int WM_NCACTIVATE = 0x86;
1329  public static final int WM_NCCALCSIZE = 0x83;
1330  public static final int WM_NCHITTEST = 0x84;
1331  public static final int WM_NCLBUTTONDOWN = 0x00A1;
1332  public static final int WM_NOTIFY = 0x4e;
1333  public static final int WM_NULL = 0x0;
1334  public static final int WM_PAINT = 0xf;
1335  public static final int WM_PALETTECHANGED = 0x311;
1336  public static final int WM_PARENTNOTIFY = 0x0210;
1337  public static final int WM_PASTE = 0x302;
1338  public static final int WM_PRINTCLIENT = 0x0318;
1339  public static final int WM_QUERYENDSESSION = 0x11;
1340  public static final int WM_QUERYNEWPALETTE = 0x30f;
1341  public static final int WM_QUERYOPEN = 0x13;
1342  public static final int WM_RBUTTONDBLCLK = 0x206;
1343  public static final int WM_RBUTTONDOWN = 0x204;
1344  public static final int WM_RBUTTONUP = 0x205;
1345  public static final int WM_SETCURSOR = 0x20;
1346  public static final int WM_SETFOCUS = 0x7;
1347  public static final int WM_SETFONT = 0x30;
1348  public static final int WM_SETICON = 0x80;
1349  public static final int WM_SETREDRAW = 0xb;
1350  public static final int WM_SETTINGCHANGE = 0x1A;
1351  public static final int WM_SHOWWINDOW = 0x18;
1352  public static final int WM_SIZE = 0x5;
1353  public static final int WM_SYSCHAR = 0x106;
1354  public static final int WM_SYSCOLORCHANGE = 0x15;
1355  public static final int WM_SYSCOMMAND = 0x112;
1356  public static final int WM_SYSKEYDOWN = 0x104;
1357  public static final int WM_SYSKEYUP = 0x105;
1358  public static final int WM_TIMER = 0x113;
1359  public static final int WM_UNDO = 0x304;
1360  public static final int WM_USER = 0x400;
1361  public static final int WM_VSCROLL = 0x115;
1362  public static final int WM_WINDOWPOSCHANGED = 0x47;
1363  public static final int WM_WINDOWPOSCHANGING = 0x46;
1364  public static final int WS_BORDER = 0x800000;
1365  public static final int WS_CAPTION = 0xc00000;
1366  public static final int WS_CHILD = 0x40000000;
1367  public static final int WS_CLIPCHILDREN = 0x2000000;
1368  public static final int WS_CLIPSIBLINGS = 0x4000000;
1369  public static final int WS_EX_CAPTIONOKBTN = 0x80000000;
1370  public static final int WS_EX_CLIENTEDGE = 0x200;
1371  public static final int WS_EX_DLGMODALFRAME = 0x1;
1372  public static final int WS_EX_LAYOUTRTL = 0x00400000;
1373  public static final int WS_EX_LEFTSCROLLBAR = 0x00004000;
1374  public static final int WS_EX_MDICHILD = 0x00000040;
1375  public static final int WS_EX_NOINHERITLAYOUT = 0x00100000;
1376  public static final int WS_EX_RIGHT = 0x00001000;
1377  public static final int WS_EX_RTLREADING = 0x00002000;
1378  public static final int WS_EX_STATICEDGE = 0x20000;
1379  public static final int WS_EX_TOOLWINDOW = 0x80;
1380  public static final int WS_EX_TOPMOST = 0x8;
1381  public static final int WS_EX_TRANSPARENT = 0x20;
1382  public static final int WS_HSCROLL = 0x100000;
1383  public static final int WS_MAXIMIZEBOX = IsWinCE ? 0x20000 : 0x10000;
1384  public static final int WS_MINIMIZEBOX = IsWinCE ? 0x10000 : 0x20000;
1385  public static final int WS_OVERLAPPED = IsWinCE ? WS_BORDER | WS_CAPTION : 0x0;
1386  public static final int WS_OVERLAPPEDWINDOW = 0xcf0000;
1387  public static final int WS_POPUP = 0x80000000;
1388  public static final int WS_SYSMENU = 0x80000;
1389  public static final int WS_TABSTOP = 0x10000;
1390  public static final int WS_THICKFRAME = 0x40000;
1391  public static final int WS_VISIBLE = 0x10000000;
1392  public static final int WS_VSCROLL = 0x200000;
1393  
1394/** Ansi/Unicode wrappers */
1395
1396public static final int CallWindowProc (int lpPrevWndFunc, int hWnd, int Msg, int wParam, int lParam) {
1397  if (IsUnicode) return CallWindowProcW (lpPrevWndFunc, hWnd, Msg, wParam, lParam);
1398  return CallWindowProcA (lpPrevWndFunc, hWnd, Msg, wParam, lParam);
1399}
1400
1401public static final short CharUpper (short ch) {
1402  if (IsUnicode) return CharUpperW (ch);
1403  return CharUpperA (ch);
1404}
1405
1406public static final short CharLower (short ch) {
1407  if (IsUnicode) return CharLowerW (ch);
1408  return CharLowerA (ch);
1409}
1410
1411public static final boolean ChooseColor (CHOOSECOLOR lpcc) {
1412  if (IsUnicode) return ChooseColorW (lpcc);
1413  return ChooseColorA (lpcc);
1414}
1415
1416public static final boolean ChooseFont (CHOOSEFONT chooseFont) {
1417  if (IsUnicode) return ChooseFontW (chooseFont);
1418  return ChooseFontA (chooseFont);
1419}
1420
1421public static final int CreateAcceleratorTable (byte [] lpaccl, int cEntries) {
1422  if (IsUnicode) return CreateAcceleratorTableW (lpaccl, cEntries);
1423  return CreateAcceleratorTableA (lpaccl, cEntries);
1424}
1425
1426public static final int CreateDC (TCHAR lpszDriver, TCHAR lpszDevice, int lpszOutput, int lpInitData) {
1427  if (IsUnicode) {
1428    char [] lpszDriver1 = lpszDriver == null ? null : lpszDriver.chars;
1429    char [] lpszDevice1 = lpszDevice == null ? null : lpszDevice.chars;
1430    return CreateDCW (lpszDriver1, lpszDevice1, lpszOutput, lpInitData);
1431  }
1432  byte [] lpszDriver1 = lpszDriver == null ? null : lpszDriver.bytes;
1433  byte [] lpszDevice1 = lpszDevice == null ? null : lpszDevice.bytes;
1434  return CreateDCA (lpszDriver1, lpszDevice1, lpszOutput, lpInitData);
1435}
1436
1437public static final int CreateFontIndirect (int lplf) {
1438  if (IsUnicode) return CreateFontIndirectW (lplf);
1439  return CreateFontIndirectA (lplf);
1440}
1441
1442public static final int CreateFontIndirect (LOGFONT lplf) {
1443  if (IsUnicode) return CreateFontIndirectW ((LOGFONTW)lplf);
1444  return CreateFontIndirectA ((LOGFONTA)lplf);
1445}
1446
1447public static final int CreateWindowEx (int dwExStyle, TCHAR lpClassName, TCHAR lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int hWndParent, int hMenu, int hInstance, CREATESTRUCT lpParam) {
1448  if (IsUnicode) {
1449    char [] lpClassName1 = lpClassName == null ? null : lpClassName.chars;
1450    char [] lpWindowName1 = lpWindowName == null ? null : lpWindowName.chars;
1451    return CreateWindowExW (dwExStyle, lpClassName1, lpWindowName1, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam);
1452  }
1453  byte [] lpClassName1 = lpClassName == null ? null : lpClassName.bytes;
1454  byte [] lpWindowName1 = lpWindowName == null ? null : lpWindowName.bytes;
1455  return CreateWindowExA (dwExStyle, lpClassName1, lpWindowName1, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam);
1456}
1457
1458public static final int DefMDIChildProc (int hWnd, int Msg, int wParam, int lParam) {
1459  if (IsUnicode) return DefMDIChildProcW (hWnd, Msg, wParam, lParam);
1460  return DefMDIChildProcA (hWnd, Msg, wParam, lParam);
1461}
1462
1463public static final int DefFrameProc (int hWnd, int hWndMDIClient, int Msg, int wParam, int lParam) {
1464  if (IsUnicode) return DefFrameProcW (hWnd, hWndMDIClient, Msg, wParam, lParam);
1465  return DefFrameProcA (hWnd, hWndMDIClient, Msg, wParam, lParam);
1466}
1467public static final int DefWindowProc (int hWnd, int Msg, int wParam, int lParam) {
1468  if (IsUnicode) return DefWindowProcW (hWnd, Msg, wParam, lParam);
1469  return DefWindowProcA (hWnd, Msg, wParam, lParam);
1470}
1471
1472public static final int DispatchMessage (MSG lpmsg) {
1473  if (IsUnicode) return DispatchMessageW (lpmsg);
1474  return DispatchMessageA (lpmsg);
1475}
1476
1477public static final int DragQueryFile (int hDrop, int iFile, TCHAR lpszFile, int cch) {
1478  if (IsUnicode) {
1479    char [] lpszFile1 = lpszFile == null ? null : lpszFile.chars;
1480    return DragQueryFileW (hDrop, iFile, lpszFile1, cch);
1481  }
1482  byte [] lpszFile1 = lpszFile == null ? null : lpszFile.bytes;
1483  return DragQueryFileA (hDrop, iFile, lpszFile1, cch);
1484}
1485
1486public static final boolean DrawState (int hdc, int hbr, int lpOutputFunc, int lData, int wData, int x, int y, int cx, int cy, int fuFlags) {
1487  if (IsUnicode) return DrawStateW (hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags);
1488  return DrawStateA (hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags);
1489}
1490
1491public static final int DrawText (int hDC, TCHAR lpString, int nCount, RECT lpRect, int uFormat) {
1492  if (IsUnicode) {
1493    char [] lpString1 = lpString == null ? null : lpString.chars;
1494    return DrawTextW (hDC, lpString1, nCount, lpRect, uFormat);
1495  }
1496  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1497  return DrawTextA (hDC, lpString1, nCount, lpRect, uFormat);
1498}
1499
1500public static final int EnumFontFamilies (int hdc, TCHAR lpszFamily, int lpEnumFontFamProc, int lParam) {
1501  if (IsUnicode) {
1502    char [] lpszFamily1 = lpszFamily == null ? null : lpszFamily.chars;
1503    return EnumFontFamiliesW (hdc, lpszFamily1, lpEnumFontFamProc, lParam);
1504  }
1505  byte [] lpszFamily1 = lpszFamily == null ? null : lpszFamily.bytes;
1506  return EnumFontFamiliesA (hdc, lpszFamily1, lpEnumFontFamProc, lParam);
1507}
1508
1509public static final int EnumFontFamiliesEx (int hdc, LOGFONT lpLogfont, int lpEnumFontFamExProc, int lParam, int dwFlags) {
1510  if (IsUnicode) return EnumFontFamiliesExW (hdc, (LOGFONTW)lpLogfont, lpEnumFontFamExProc, lParam, dwFlags);
1511  return EnumFontFamiliesExA (hdc, (LOGFONTA)lpLogfont, lpEnumFontFamExProc, lParam, dwFlags);
1512}
1513
1514public static final boolean EnumSystemLocales (int lpLocaleEnumProc, int dwFlags) {
1515  if (IsUnicode) return EnumSystemLocalesW (lpLocaleEnumProc, dwFlags);
1516  return EnumSystemLocalesA (lpLocaleEnumProc, dwFlags);
1517}
1518
1519public static final boolean EnumSystemLanguageGroups (int pLangGroupEnumProc, int dwFlags, int lParam) {
1520  if (IsUnicode) return EnumSystemLanguageGroupsW (pLangGroupEnumProc, dwFlags, lParam);
1521  return EnumSystemLanguageGroupsA (pLangGroupEnumProc, dwFlags, lParam);
1522}
1523
1524public static final int ExpandEnvironmentStrings (TCHAR lpSrc, TCHAR lpDst, int nSize) {
1525  if (IsUnicode) {
1526    char [] lpSrc1 = lpSrc == null ? null : lpSrc.chars;
1527    char [] lpDst1 = lpDst == null ? null : lpDst.chars;
1528    return ExpandEnvironmentStringsW (lpSrc1, lpDst1, nSize);
1529  }
1530  byte [] lpSrc1 = lpSrc == null ? null : lpSrc.bytes;
1531  byte [] lpDst1 = lpDst == null ? null : lpDst.bytes;
1532  return ExpandEnvironmentStringsA (lpSrc1, lpDst1, nSize);
1533}
1534
1535public static final int ExtractIconEx (TCHAR lpszFile, int nIconIndex, int [] phiconLarge, int [] phiconSmall, int nIcons) {
1536  if (IsUnicode) {
1537    char [] lpszFile1 = lpszFile == null ? null : lpszFile.chars;
1538    return ExtractIconExW (lpszFile1, nIconIndex, phiconLarge, phiconSmall, nIcons);
1539  }
1540  byte [] lpszFile1 = lpszFile == null ? null : lpszFile.bytes;
1541  return ExtractIconExA (lpszFile1, nIconIndex, phiconLarge, phiconSmall, nIcons);
1542}
1543
1544public static final boolean ExtTextOut(int hdc, int X, int Y, int fuOptions, RECT lprc, TCHAR lpString, int cbCount, int[] lpDx) {
1545  if (IsUnicode) {
1546    char [] lpString1 = lpString == null ? null : lpString.chars;
1547    return ExtTextOutW (hdc, X, Y, fuOptions, lprc, lpString1, cbCount, lpDx);
1548  }
1549  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1550  return ExtTextOutA (hdc, X, Y, fuOptions, lprc, lpString1, cbCount, lpDx);
1551}
1552
1553public static final int FindWindow (TCHAR lpClassName, TCHAR lpWindowName) {
1554  if (IsUnicode) {
1555    char [] lpClassName1 = lpClassName == null ? null : lpClassName.chars;
1556    char [] lpWindowName1 = lpWindowName == null ? null : lpWindowName.chars;
1557    return FindWindowW (lpClassName1, lpWindowName1); 
1558  }
1559  byte [] lpClassName1 = lpClassName == null ? null : lpClassName.bytes;
1560  byte [] lpWindowName1 = lpWindowName == null ? null : lpWindowName.bytes;
1561  return FindWindowA (lpClassName1, lpWindowName1);
1562}
1563
1564public static final int FormatMessage (int dwFlags, int lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int Arguments) {
1565  if (IsUnicode) {
1566    return FormatMessageW (dwFlags, lpSource, dwMessageId, dwLanguageId, lpBuffer, nSize, Arguments); 
1567  }
1568  return FormatMessageA (dwFlags, lpSource, dwMessageId, dwLanguageId, lpBuffer, nSize, Arguments);
1569}
1570
1571public static final boolean GetCharABCWidths (int hdc, int iFirstChar, int iLastChar, int [] lpabc) {
1572  if (IsUnicode) return GetCharABCWidthsW (hdc,iFirstChar, iLastChar, lpabc);
1573  return GetCharABCWidthsA (hdc,iFirstChar, iLastChar, lpabc);
1574}
1575
1576public static final int GetCharacterPlacement (int hdc, TCHAR lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags) {
1577  if (IsUnicode) {
1578    char [] lpString1 = lpString == null ? null : lpString.chars;
1579    return GetCharacterPlacementW (hdc, lpString1, nCount, nMaxExtent, lpResults, dwFlags);
1580  }
1581  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1582  return GetCharacterPlacementA (hdc, lpString1, nCount, nMaxExtent, lpResults, dwFlags);  
1583}
1584
1585public static final boolean GetCharWidth (int hdc, int iFirstChar, int iLastChar, int [] lpabc) {
1586  if (IsUnicode) return GetCharWidthW (hdc,iFirstChar, iLastChar, lpabc);
1587  return GetCharWidthA (hdc,iFirstChar, iLastChar, lpabc);
1588}
1589
1590public static final boolean GetClassInfo (int hInstance, TCHAR lpClassName, WNDCLASS lpWndClass) {
1591  if (IsUnicode) {
1592    char [] lpClassName1 = lpClassName == null ? null : lpClassName.chars;
1593    return GetClassInfoW (hInstance, lpClassName1, lpWndClass);
1594  }
1595  byte [] lpClassName1 = lpClassName == null ? null : lpClassName.bytes;
1596  return GetClassInfoA (hInstance, lpClassName1, lpWndClass);
1597}
1598
1599public static final int GetClassName (int hWnd, TCHAR lpClassName, int nMaxCount) {
1600  if (IsUnicode) {
1601    char [] lpClassName1 = lpClassName == null ? null : lpClassName.chars;
1602    return GetClassNameW (hWnd, lpClassName1, nMaxCount);
1603  }
1604  byte [] lpClassName1 = lpClassName == null ? null : lpClassName.bytes;
1605  return GetClassNameA (hWnd, lpClassName1, nMaxCount);
1606}
1607
1608public static final int GetClipboardFormatName (int format, TCHAR lpszFormatName, int cchMaxCount) {
1609  if (IsUnicode) {
1610    char [] lpszFormatName1 = lpszFormatName == null ? null : lpszFormatName.chars;
1611    return GetClipboardFormatNameW (format, lpszFormatName1, cchMaxCount);
1612  }
1613  byte [] lpszFormatName1 = lpszFormatName == null ? null : lpszFormatName.bytes;
1614  return GetClipboardFormatNameA (format, lpszFormatName1, cchMaxCount);
1615}
1616
1617public static final int GetKeyNameText (int lParam, TCHAR lpString, int nSize) {
1618  if (IsUnicode) {
1619    char [] lpString1 = lpString == null ? null : lpString.chars;
1620    return GetKeyNameTextW (lParam, lpString1, nSize);
1621  }
1622  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1623  return GetKeyNameTextA (lParam, lpString1, nSize);
1624}
1625
1626public static final int GetLocaleInfo (int Locale, int LCType, TCHAR lpLCData, int cchData) {
1627  if (IsUnicode) {
1628    char [] lpLCData1 = lpLCData == null ? null : lpLCData.chars;
1629    return GetLocaleInfoW (Locale, LCType, lpLCData1, cchData);
1630  }
1631  byte [] lpLCData1 = lpLCData == null ? null : lpLCData.bytes;
1632  return GetLocaleInfoA (Locale, LCType, lpLCData1, cchData);
1633}
1634
1635public static final boolean GetMenuItemInfo (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii) {
1636  if (IsUnicode) return GetMenuItemInfoW (hMenu, uItem, fByPosition, lpmii);
1637  return GetMenuItemInfoA (hMenu, uItem, fByPosition, lpmii);
1638}
1639
1640public static final boolean GetMessage (MSG lpMsg, int hWnd, int wMsgFilterMin, int wMsgFilterMax) {  
1641  if (IsUnicode) return GetMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax);
1642  return GetMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax);
1643}
1644
1645public static final int GetModuleHandle (TCHAR lpModuleName) {
1646  if (IsUnicode) {
1647    char [] lpModuleName1 = lpModuleName == null ? null : lpModuleName.chars;
1648    return GetModuleHandleW (lpModuleName1);
1649  }
1650  byte [] lpModuleName1 = lpModuleName == null ? null : lpModuleName.bytes;
1651  return GetModuleHandleA (lpModuleName1);
1652}
1653
1654public static final boolean GetMonitorInfo (int hmonitor, MONITORINFO lpmi) {
1655  if (IsUnicode) return GetMonitorInfoW (hmonitor, lpmi);
1656  return GetMonitorInfoA (hmonitor, lpmi);
1657}
1658
1659public static final int GetObject (int hgdiobj, int cbBuffer, BITMAP lpvObject) {
1660  if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
1661  return GetObjectA (hgdiobj, cbBuffer, lpvObject);
1662}
1663
1664public static final int GetObject (int hgdiobj, int cbBuffer, DIBSECTION lpvObject) {
1665  if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
1666  return GetObjectA (hgdiobj, cbBuffer, lpvObject);
1667}
1668
1669public static final int GetObject (int hgdiobj, int cbBuffer, LOGBRUSH lpvObject) {
1670  if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
1671  return GetObjectA (hgdiobj, cbBuffer, lpvObject);
1672}
1673
1674public static final int GetObject (int hgdiobj, int cbBuffer, LOGFONT lpvObject) {
1675  if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, (LOGFONTW)lpvObject);
1676  return GetObjectA (hgdiobj, cbBuffer, (LOGFONTA)lpvObject);
1677}
1678
1679public static final int GetObject (int hgdiobj, int cbBuffer, LOGPEN lpvObject) {
1680  if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
1681  return GetObjectA (hgdiobj, cbBuffer, lpvObject);
1682}
1683
1684public static final boolean GetOpenFileName (OPENFILENAME lpofn) {
1685  if (IsUnicode) return GetOpenFileNameW (lpofn);
1686  return GetOpenFileNameA (lpofn);
1687}
1688
1689public static final int GetProfileString (TCHAR lpAppName, TCHAR lpKeyName, TCHAR lpDefault, TCHAR lpReturnedString, int nSize) {
1690  if (IsUnicode) {
1691    char [] lpAppName1 = lpAppName == null ? null : lpAppName.chars;
1692    char [] lpKeyName1 = lpKeyName == null ? null : lpKeyName.chars;
1693    char [] lpDefault1 = lpDefault == null ? null : lpDefault.chars;
1694    char [] lpReturnedString1 = lpReturnedString == null ? null : lpReturnedString.chars;
1695    return GetProfileStringW (lpAppName1, lpKeyName1, lpDefault1, lpReturnedString1, nSize);
1696  }
1697  byte [] lpAppName1 = lpAppName == null ? null : lpAppName.bytes;
1698  byte [] lpKeyName1 = lpKeyName == null ? null : lpKeyName.bytes;
1699  byte [] lpDefault1 = lpDefault == null ? null : lpDefault.bytes;
1700  byte [] lpReturnedString1 = lpReturnedString == null ? null : lpReturnedString.bytes;
1701  return GetProfileStringA (lpAppName1, lpKeyName1, lpDefault1, lpReturnedString1, nSize);
1702}
1703
1704public static final boolean GetSaveFileName (OPENFILENAME lpofn) {
1705  if (IsUnicode) return GetSaveFileNameW (lpofn);
1706  return GetSaveFileNameA (lpofn);
1707}
1708
1709public static final boolean GetTextExtentPoint32 (int hdc, TCHAR lpString, int cbString, SIZE lpSize) {
1710  if (IsUnicode) {
1711    char [] lpString1 = lpString == null ? null : lpString.chars;
1712    return GetTextExtentPoint32W (hdc, lpString1, cbString, lpSize);
1713  }
1714  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1715  return GetTextExtentPoint32A (hdc, lpString1, cbString, lpSize);  
1716}
1717
1718public static final boolean GetTextMetrics (int hdc, TEXTMETRIC lptm) {
1719  if (IsUnicode) return GetTextMetricsW (hdc, (TEXTMETRICW)lptm);
1720  return GetTextMetricsA (hdc, (TEXTMETRICA)lptm);
1721}
1722
1723public static final boolean GetVersionEx (OSVERSIONINFO lpVersionInfo) {
1724  if (IsUnicode) return GetVersionExW ((OSVERSIONINFOW)lpVersionInfo);
1725  return GetVersionExA ((OSVERSIONINFOA)lpVersionInfo);
1726}
1727
1728public static final int GetWindowLong (int hWnd, int nIndex) {
1729  if (IsUnicode) return GetWindowLongW (hWnd, nIndex);
1730  return GetWindowLongA (hWnd, nIndex);
1731}
1732
1733public static final int GetWindowText (int hWnd, TCHAR lpString, int nMaxCount) {
1734  if (IsUnicode) {
1735    char [] lpString1 = lpString == null ? null : lpString.chars;
1736    return GetWindowTextW (hWnd, lpString1, nMaxCount);
1737  }
1738  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1739  return GetWindowTextA (hWnd, lpString1, nMaxCount);
1740}
1741
1742public static final int GetWindowTextLength (int hWnd) {
1743  if (IsUnicode) return GetWindowTextLengthW (hWnd);
1744  return GetWindowTextLengthA (hWnd);
1745}
1746
1747public static final boolean ImmGetCompositionFont (int hIMC, LOGFONT lplf) {
1748  if (IsUnicode) return ImmGetCompositionFontW (hIMC, (LOGFONTW)lplf);
1749  return ImmGetCompositionFontA (hIMC, (LOGFONTA)lplf);
1750}
1751
1752public static final boolean ImmSetCompositionFont (int hIMC, LOGFONT lplf) {
1753  if (IsUnicode) return ImmSetCompositionFontW (hIMC, (LOGFONTW)lplf);
1754  return ImmSetCompositionFontA (hIMC, (LOGFONTA)lplf);
1755}
1756
1757public static final int ImmGetCompositionString (int hIMC, int dwIndex, TCHAR lpBuf, int dwBufLen) {
1758  if (IsUnicode) {
1759    char [] lpBuf1 = lpBuf == null ? null : lpBuf.chars;
1760    return ImmGetCompositionStringW (hIMC, dwIndex, lpBuf1, dwBufLen);
1761  }
1762  byte [] lpBuf1 = lpBuf == null ? null : lpBuf.bytes;
1763  return ImmGetCompositionStringA (hIMC, dwIndex, lpBuf1, dwBufLen);
1764}
1765
1766public static final boolean InsertMenu (int hMenu, int uPosition, int uFlags, int uIDNewItem, TCHAR lpNewItem) {
1767  if (IsUnicode) {
1768    char [] lpNewItem1 = lpNewItem == null ? null : lpNewItem.chars;
1769    return InsertMenuW (hMenu, uPosition, uFlags, uIDNewItem, lpNewItem1);
1770  }
1771  byte [] lpNewItem1 = lpNewItem == null ? null : lpNewItem.bytes;
1772  return InsertMenuA (hMenu, uPosition, uFlags, uIDNewItem, lpNewItem1);  
1773}
1774
1775public static final boolean InsertMenuItem (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii) {
1776  if (IsUnicode) return InsertMenuItemW (hMenu, uItem, fByPosition, lpmii);
1777  return InsertMenuItemA (hMenu, uItem, fByPosition, lpmii);
1778}
1779
1780public static final int LoadBitmap (int hInstance, int lpBitmapName) {
1781  if (IsUnicode) return LoadBitmapW (hInstance, lpBitmapName);
1782  return LoadBitmapA (hInstance, lpBitmapName);
1783}
1784
1785public static final int LoadCursor (int hInstance, int lpCursorName) {
1786  if (IsUnicode) return LoadCursorW (hInstance, lpCursorName);
1787  return LoadCursorA (hInstance, lpCursorName);
1788}
1789
1790public static final int LoadIcon (int hInstance, int lpIconName) {
1791  if (IsUnicode) return LoadIconW (hInstance, lpIconName);
1792  return LoadIconA (hInstance, lpIconName);
1793}
1794
1795public static final int LoadImage (int hinst, TCHAR lpszName, int uType, int cxDesired, int cyDesired, int fuLoad) {
1796  if (IsUnicode) {
1797    char [] lpszName1 = lpszName == null ? null : lpszName.chars;
1798    return LoadImageW (hinst, lpszName1, uType, cxDesired, cyDesired, fuLoad);
1799  }
1800  byte [] lpszName1 = lpszName == null ? null : lpszName.bytes;
1801  return LoadImageA (hinst, lpszName1, uType, cxDesired, cyDesired, fuLoad);
1802}
1803
1804public static final int LoadImage (int hinst, int lpszName, int uType, int cxDesired, int cyDesired, int fuLoad) {
1805  if (IsUnicode) return LoadImageW (hinst, lpszName, uType, cxDesired, cyDesired, fuLoad);
1806  return LoadImageA (hinst, lpszName, uType, cxDesired, cyDesired, fuLoad);
1807}
1808
1809public static final int LoadLibrary (TCHAR lpLibFileName) {
1810  if (IsUnicode) {
1811    char [] lpLibFileName1 = lpLibFileName == null ? null : lpLibFileName.chars;
1812    return LoadLibraryW (lpLibFileName1);
1813  }
1814  byte [] lpLibFileName1 = lpLibFileName == null ? null : lpLibFileName.bytes;
1815  return LoadLibraryA (lpLibFileName1);
1816}
1817
1818public static final int LoadString (int hinst, int uID, TCHAR lpBuffer, int nBufferMax) {
1819  if (IsUnicode) {
1820    char [] lpBuffer1 = lpBuffer == null ? null : lpBuffer.chars;
1821    return LoadStringW (hinst, uID, lpBuffer1, nBufferMax);
1822  }
1823  byte [] lpBuffer1 = lpBuffer == null ? null : lpBuffer.bytes;
1824  return LoadStringA (hinst, uID, lpBuffer1, nBufferMax);
1825}
1826
1827public static final int MapVirtualKey (int uCode, int uMapType) {
1828  if (IsUnicode) return MapVirtualKeyW (uCode, uMapType);
1829  return MapVirtualKeyA (uCode, uMapType);
1830}
1831
1832public static final int MessageBox (int hWnd, TCHAR lpText, TCHAR lpCaption, int uType) {
1833  if (IsUnicode) {
1834    char [] lpText1 = lpText == null ? null : lpText.chars;
1835    char [] lpCaption1 = lpCaption == null ? null : lpCaption.chars;
1836    return MessageBoxW (hWnd, lpText1, lpCaption1, uType);
1837  }
1838  byte [] lpText1 = lpText == null ? null : lpText.bytes;
1839  byte [] lpCaption1 = lpCaption == null ? null : lpCaption.bytes;
1840  return MessageBoxA (hWnd, lpText1, lpCaption1, uType);
1841}
1842
1843public static final void MoveMemory (int Destination, TCHAR Source, int Length) {
1844  if (IsUnicode) {
1845    char [] Source1 = Source == null ? null : Source.chars;
1846    MoveMemory (Destination, Source1, Length);
1847  } else {
1848    byte [] Source1 = Source == null ? null : Source.bytes;
1849    MoveMemory (Destination, Source1, Length);
1850  }
1851}
1852
1853public static final void MoveMemory (TCHAR Destination, int Source, int Length) {
1854  if (IsUnicode) {
1855    char [] Destination1 = Destination == null ? null : Destination.chars;
1856    MoveMemory (Destination1, Source, Length);
1857  } else {
1858    byte [] Destination1 = Destination == null ? null : Destination.bytes;
1859    MoveMemory (Destination1, Source, Length);
1860  }
1861}
1862
1863public static final void MoveMemory (int Destination, LOGFONT Source, int Length) {
1864  if (IsUnicode) {
1865    MoveMemory (Destination, (LOGFONTW)Source, Length);
1866  } else {
1867    MoveMemory (Destination, (LOGFONTA)Source, Length);
1868  }
1869}
1870
1871public static final void MoveMemory (LOGFONT Destination, int Source, int Length) {
1872  if (IsUnicode) {
1873    MoveMemory ((LOGFONTW)Destination, Source, Length);
1874  } else {
1875    MoveMemory ((LOGFONTA)Destination, Source, Length);
1876  }
1877}
1878
1879public static final void MoveMemory (int Destination, NMTTDISPINFO Source, int Length) {
1880  if (IsUnicode) {
1881    MoveMemory (Destination, (NMTTDISPINFOW)Source, Length);
1882  } else {
1883    MoveMemory (Destination, (NMTTDISPINFOA)Source, Length);
1884  }
1885}
1886
1887public static final void MoveMemory (NMTTDISPINFO Destination, int Source, int Length) {
1888  if (IsUnicode) {
1889    MoveMemory ((NMTTDISPINFOW)Destination, Source, Length);
1890  } else {
1891    MoveMemory ((NMTTDISPINFOA)Destination, Source, Length);
1892  }
1893}
1894
1895public static final boolean PeekMessage (MSG lpMsg, int hWnd, int wMsgFilterMin, int wMsgFilterMax, int wRemoveMsg) {
1896  if (IsUnicode) return PeekMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg);
1897  return PeekMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg);
1898}
1899
1900public static final boolean PostMessage (int hWnd, int Msg, int wParam, int lParam) {
1901  if (IsUnicode) return PostMessageW (hWnd, Msg, wParam, lParam);
1902  return PostMessageA (hWnd, Msg, wParam, lParam);
1903}
1904
1905public static final boolean PostThreadMessage (int idThread, int Msg, int wParam, int lParam) {
1906  if (IsUnicode) return PostThreadMessageW (idThread, Msg, wParam, lParam);
1907  return PostThreadMessageA (idThread, Msg, wParam, lParam);
1908}
1909
1910public static final boolean PrintDlg (PRINTDLG lppd) {
1911  if (IsUnicode) return PrintDlgW (lppd);
1912  return PrintDlgA (lppd);
1913}
1914
1915public static final int RegEnumKeyEx (int hKey, int dwIndex, TCHAR lpName, int [] lpcName, int [] lpReserved, TCHAR lpClass, int [] lpcClass, FILETIME lpftLastWriteTime) {
1916  if (IsUnicode) {
1917    char [] lpName1 = lpName == null ? null : lpName.chars;
1918    char [] lpClass1 = lpClass == null ? null : lpClass.chars;
1919    return RegEnumKeyExW (hKey, dwIndex, lpName1, lpcName, lpReserved, lpClass1, lpcClass, lpftLastWriteTime);
1920  }
1921  byte [] lpName1 = lpName == null ? null : lpName.bytes;
1922  byte [] lpClass1 = lpClass == null ? null : lpClass.bytes;
1923  return RegEnumKeyExA (hKey, dwIndex, lpName1, lpcName, lpReserved, lpClass1, lpcClass, lpftLastWriteTime);
1924}
1925
1926public static final int RegisterClass (WNDCLASS lpWndClass) {
1927  if (IsUnicode) return RegisterClassW (lpWndClass);
1928  return RegisterClassA (lpWndClass);
1929}
1930
1931public static final int RegisterClipboardFormat (TCHAR lpszFormat) {
1932  if (IsUnicode) {
1933    char [] lpszFormat1 = lpszFormat == null ? null : lpszFormat.chars;
1934    return RegisterClipboardFormatW (lpszFormat1);
1935  }
1936  byte [] lpszFormat1 = lpszFormat == null ? null : lpszFormat.bytes;
1937  return RegisterClipboardFormatA (lpszFormat1);
1938}
1939
1940public static final int RegisterWindowMessage (TCHAR lpString) {
1941  if (IsUnicode) {
1942    char [] lpString1 = lpString == null ? null : lpString.chars;
1943    return RegisterWindowMessageW (lpString1);
1944  }
1945  byte [] lpString1 = lpString == null ? null : lpString.bytes;
1946  return RegisterWindowMessageA (lpString1);
1947}
1948
1949public static final int RegOpenKeyEx (int hKey, TCHAR lpSubKey, int ulOptions, int samDesired, int[] phkResult) {
1950  if (IsUnicode) {
1951    char [] lpSubKey1 = lpSubKey == null ? null : lpSubKey.chars;
1952    return RegOpenKeyExW (hKey, lpSubKey1, ulOptions, samDesired, phkResult);
1953  }
1954  byte [] lpSubKey1 = lpSubKey == null ? null : lpSubKey.bytes;
1955  return RegOpenKeyExA (hKey, lpSubKey1, ulOptions, samDesired, phkResult);
1956}
1957
1958public static final int RegQueryInfoKey (int hKey, int lpClass, int[] lpcbClass, int lpReserved, int[] lpSubKeys, int[] lpcbMaxSubKeyLen, int[] lpcbMaxClassLen, int[] lpcValues, int[] lpcbMaxValueNameLen, int[] lpcbMaxValueLen, int[] lpcbSecurityDescriptor, int lpftLastWriteTime){
1959  if (IsUnicode) return RegQueryInfoKeyW (hKey, lpClass, lpcbClass, lpReserved, lpSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues, lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor, lpftLastWriteTime);
1960  return RegQueryInfoKeyA (hKey, lpClass, lpcbClass, lpReserved, lpSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues, lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor, lpftLastWriteTime);
1961}
1962
1963public static final int RegQueryValueEx (int hKey, TCHAR lpValueName, int lpReserved, int[] lpType, TCHAR lpData, int[] lpcbData) {
1964  if (IsUnicode) {
1965    char [] lpValueName1 = lpValueName == null ? null : lpValueName.chars;
1966    char [] lpData1 = lpData == null ? null : lpData.chars;
1967    return RegQueryValueExW (hKey, lpValueName1, lpReserved, lpType, lpData1, lpcbData);
1968  }
1969  byte [] lpValueName1 = lpValueName == null ? null : lpValueName.bytes;
1970  byte [] lpData1 = lpData == null ? null : lpData.bytes;
1971  return RegQueryValueExA (hKey, lpValueName1, lpReserved, lpType, lpData1, lpcbData);
1972}
1973
1974public static final int SendMessage (int hWnd, int Msg, int wParam, TCHAR lParam) {
1975  if (IsUnicode) {
1976    char [] lParam1 = lParam == null ? null : lParam.chars;
1977    return SendMessageW (hWnd, Msg, wParam, lParam1);
1978  }
1979  byte [] lParam1 = lParam == null ? null : lParam.bytes;
1980  return SendMessageA (hWnd, Msg, wParam, lParam1);
1981}
1982
1983public static final int SendMessage (int hWnd, int Msg, int [] wParam, int [] lParam) {
1984  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
1985  return SendMessageA (hWnd, Msg, wParam, lParam);
1986}
1987
1988public static final int SendMessage (int hWnd, int Msg, int [] wParam, int lParam) {
1989  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
1990  return SendMessageA (hWnd, Msg, wParam, lParam);
1991}
1992
1993public static final int SendMessage (int hWnd, int Msg, int wParam, int [] lParam) {
1994  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
1995  return SendMessageA (hWnd, Msg, wParam, lParam);
1996}
1997
1998public static final int SendMessage (int hWnd, int Msg, int wParam, short [] lParam) {
1999  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2000  return SendMessageA (hWnd, Msg, wParam, lParam);
2001}
2002
2003public static final int SendMessage (int hWnd, int Msg, int wParam, int lParam) {
2004  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2005  return SendMessageA (hWnd, Msg, wParam, lParam);
2006}
2007
2008public static final int SendMessage (int hWnd, int Msg, int wParam, LVCOLUMN lParam) {
2009  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2010  return SendMessageA (hWnd, Msg, wParam, lParam);
2011}
2012
2013public static final int SendMessage (int hWnd, int Msg, int wParam, LVHITTESTINFO lParam) {
2014  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2015  return SendMessageA (hWnd, Msg, wParam, lParam);
2016}
2017
2018public static final int SendMessage (int hWnd, int Msg, int wParam, LVITEM lParam) {
2019  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2020  return SendMessageA (hWnd, Msg, wParam, lParam);
2021}
2022
2023public static final int SendMessage (int hWnd, int Msg, int wParam, MARGINS lParam) {
2024  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2025  return SendMessageA (hWnd, Msg, wParam, lParam);
2026}
2027
2028public static final int SendMessage (int hWnd, int Msg, int wParam, REBARBANDINFO lParam) {
2029  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2030  return SendMessageA (hWnd, Msg, wParam, lParam);
2031}
2032
2033public static final int SendMessage (int hWnd, int Msg, int wParam, RECT lParam) {
2034  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2035  return SendMessageA (hWnd, Msg, wParam, lParam);
2036}
2037
2038public static final int SendMessage (int hWnd, int Msg, int wParam, TBBUTTON lParam) {
2039  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2040  return SendMessageA (hWnd, Msg, wParam, lParam);
2041}
2042
2043public static final int SendMessage (int hWnd, int Msg, int wParam, TBBUTTONINFO lParam) {
2044  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2045  return SendMessageA (hWnd, Msg, wParam, lParam);
2046}
2047
2048public static final int SendMessage (int hWnd, int Msg, int wParam, TCITEM lParam) {
2049  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2050  return SendMessageA (hWnd, Msg, wParam, lParam);
2051}
2052
2053public static final int SendMessage (int hWnd, int Msg, int wParam, TOOLINFO lParam) {
2054  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2055  return SendMessageA (hWnd, Msg, wParam, lParam);
2056}
2057
2058public static final int SendMessage (int hWnd, int Msg, int wParam, TVHITTESTINFO lParam) {
2059  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2060  return SendMessageA (hWnd, Msg, wParam, lParam);
2061}
2062
2063public static final int SendMessage (int hWnd, int Msg, int wParam, TVINSERTSTRUCT lParam) {
2064  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2065  return SendMessageA (hWnd, Msg, wParam, lParam);
2066}
2067
2068public static final int SendMessage (int hWnd, int Msg, int wParam, TVITEM lParam) {
2069  if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
2070  return SendMessageA (hWnd, Msg, wParam, lParam);
2071}
2072
2073public static final boolean SetMenuItemInfo (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii) {
2074  if (IsUnicode) return SetMenuItemInfoW (hMenu, uItem, fByPosition, lpmii);
2075  return SetMenuItemInfoA (hMenu, uItem, fByPosition, lpmii);
2076}
2077
2078public static final int SetWindowLong (int hWnd, int nIndex, int dwNewLong) {
2079  if (IsUnicode) return SetWindowLongW (hWnd, nIndex, dwNewLong);
2080  return SetWindowLongA (hWnd, nIndex, dwNewLong);
2081}
2082
2083public static final int SetWindowsHookEx (int idHook, int lpfn, int hMod, int dwThreadId) {
2084  if (IsUnicode) return SetWindowsHookExW (idHook, lpfn, hMod, dwThreadId);
2085  return SetWindowsHookExA (idHook, lpfn, hMod, dwThreadId);
2086}
2087
2088public static final boolean SetWindowText (int hWnd, TCHAR lpString) {
2089  if (IsUnicode) {
2090    char [] lpString1 = lpString == null ? null : lpString.chars;
2091    return SetWindowTextW (hWnd, lpString1);
2092  }
2093  byte [] lpString1 = lpString == null ? null : lpString.bytes;
2094  return SetWindowTextA (hWnd, lpString1);
2095}
2096
2097public static final int SHBrowseForFolder (BROWSEINFO lpbi) {
2098  if (IsUnicode) return SHBrowseForFolderW (lpbi);
2099  return SHBrowseForFolderA (lpbi);
2100}
2101
2102public static final boolean ShellExecuteEx (SHELLEXECUTEINFO lpExecInfo) {
2103  if (IsUnicode) return ShellExecuteExW (lpExecInfo);
2104  return ShellExecuteExA (lpExecInfo);
2105}
2106
2107public static final boolean Shell_NotifyIcon (int dwMessage, NOTIFYICONDATA lpData) {
2108  if (IsUnicode) return Shell_NotifyIconW (dwMessage, (NOTIFYICONDATAW)lpData);
2109  return Shell_NotifyIconA (dwMessage, (NOTIFYICONDATAA)lpData);
2110}
2111
2112public static final boolean SHGetPathFromIDList (int pidl, TCHAR pszPath) {
2113  if (IsUnicode) {
2114    char [] pszPath1 = pszPath == null ? null : pszPath.chars;
2115    return SHGetPathFromIDListW (pidl, pszPath1);
2116  }
2117  byte [] pszPath1 = pszPath == null ? null : pszPath.bytes;
2118  return SHGetPathFromIDListA (pidl, pszPath1);
2119}
2120
2121public static final int StartDoc (int hdc, DOCINFO lpdi) {
2122  if (IsUnicode) return StartDocW (hdc, lpdi);
2123  return StartDocA (hdc, lpdi);
2124}
2125
2126public static final boolean SystemParametersInfo (int uiAction, int uiParam, RECT pvParam, int fWinIni) {
2127  if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
2128  return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
2129}
2130
2131public static final boolean SystemParametersInfo (int uiAction, int uiParam, HIGHCONTRAST pvParam, int fWinIni) {
2132  if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
2133  return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
2134}
2135
2136public static final boolean SystemParametersInfo (int uiAction, int uiParam, NONCLIENTMETRICS pvParam, int fWinIni) {
2137  if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, (NONCLIENTMETRICSW)pvParam, fWinIni);
2138  return SystemParametersInfoA (uiAction, uiParam, (NONCLIENTMETRICSA)pvParam, fWinIni);
2139}
2140
2141public static final boolean SystemParametersInfo (int uiAction, int uiParam, int[] pvParam, int fWinIni) {
2142  if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
2143  return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
2144}
2145
2146public static final int TranslateAccelerator (int hWnd, int hAccTable, MSG lpMsg) {
2147  if (IsUnicode) return TranslateAcceleratorW (hWnd, hAccTable, lpMsg);
2148  return TranslateAcceleratorA (hWnd, hAccTable, lpMsg);
2149}
2150
2151public static final boolean UnregisterClass (TCHAR lpClassName, int hInstance) {
2152  if (IsUnicode) {
2153    char [] lpClassName1 = lpClassName == null ? null : lpClassName.chars;
2154    return UnregisterClassW (lpClassName1, hInstance);
2155  }
2156  byte [] lpClassName1 = lpClassName == null ? null : lpClassName.bytes;
2157  return UnregisterClassA (lpClassName1, hInstance);
2158}
2159
2160public static final short VkKeyScan (short ch) {
2161  if (IsUnicode) return VkKeyScanW (ch);
2162  return VkKeyScanA (ch);
2163}
2164
2165/** Natives */
2166public static final native int AbortDoc (int hdc);
2167public static final native int ActivateKeyboardLayout(int hkl, int Flags);
2168public static final native boolean AdjustWindowRectEx (RECT lpRect, int dwStyle, boolean bMenu, int dwExStyle);
2169public static final native boolean Arc (int hdc,int nLeftRect,int nTopRect,int nRightRect,int nBottomRect,int nXStartArc,int nYStartArc,int nXEndArc,int nYEndArc);
2170public static final native int BeginDeferWindowPos (int nNumWindows);
2171public static final native int BeginPaint (int hWnd, PAINTSTRUCT lpPaint);
2172public static final native boolean BitBlt (int hdcDest,int nXDest,int nYDest,int nWidth,int nHeight,int hdcSrc,int nXSrc,int nYSrc,int dwRop);
2173public static final native boolean BringWindowToTop (int hWnd);
2174public static final native int Call (int address, DLLVERSIONINFO arg0);
2175public static final native int CallNextHookEx(int hhk, int nCode, int wParam, int lParam);
2176public static final native int CallWindowProcW (int lpPrevWndFunc, int hWnd, int Msg, int wParam, int lParam);
2177public static final native int CallWindowProcA (int lpPrevWndFunc, int hWnd, int Msg, int wParam, int lParam);
2178public static final native short CharLowerW (short ch);
2179public static final native short CharLowerA (short ch);
2180public static final native short CharUpperW (short ch);
2181public static final native short CharUpperA (short ch);
2182public static final native boolean CheckMenuItem (int hmenu, int uIDCheckItem, int uCheck); 
2183public static final native boolean ChooseColorW (CHOOSECOLOR lpcc);
2184public static final native boolean ChooseColorA (CHOOSECOLOR lpcc);
2185public static final native boolean ChooseFontW (CHOOSEFONT chooseFont);
2186public static final native boolean ChooseFontA (CHOOSEFONT chooseFont);
2187public static final native boolean ClientToScreen (int hWnd, POINT lpPoint);
2188public static final native boolean CloseClipboard ();
2189public static final native int CombineRgn (int hrgnDest, int hrgnSrc1, int hrgnSrc2, int fnCombineMode);
2190public static final native boolean CommandBar_AddAdornments (int hwndCB, int dwFlags, int dwReserved);
2191public static final native int CommandBar_Create (int hInst, int hwndParent, int idCmdBar);
2192public static final native void CommandBar_Destroy (int hwndCB);
2193public static final native boolean CommandBar_DrawMenuBar (int hwndCB, int iButton);
2194public static final native int CommandBar_Height (int hdnwCB);
2195public static final native boolean CommandBar_InsertMenubarEx (int hwndCB, int hInst, int pszMenu, int iButton);
2196public static final native boolean CommandBar_Show (int hwndCB, boolean fShow);
2197public static final native int CommDlgExtendedError ();
2198public static final native int CopyImage (int hImage, int uType, int cxDesired, int cyDesired, int fuFlags);
2199public static final native int CreateAcceleratorTableW (byte [] lpaccl, int cEntries); 
2200public static final native int CreateAcceleratorTableA (byte [] lpaccl, int cEntries);
2201public static final native int CreateBitmap (int nWidth, int nHeight, int cPlanes, int cBitsPerPel, byte [] lpvBits);
2202public static final native boolean CreateCaret (int hWnd, int hBitmap, int nWidth, int nHeight);
2203public static final native int CreateCompatibleBitmap (int hdc, int nWidth, int nHeight);
2204public static final native int CreateCompatibleDC (int hdc);
2205public static final native int CreateCursor (int hInst, int xHotSpot, int yHotSpot, int nWidth, int nHeight, byte [] pvANDPlane, byte [] pvXORPlane);
2206public static final native int CreateDCW (char [] lpszDriver, char [] lpszDevice, int lpszOutput, int lpInitData);  
2207public static final native int CreateDCA (byte [] lpszDriver, byte [] lpszDevice, int lpszOutput, int lpInitData);  
2208public static final native int CreateDIBSection(int hdc, byte[] pbmi, int iUsage, int[] ppvBits, int hSection, int dwOffset);
2209public static final native int CreateFontIndirectW (int lplf);
2210public static final native int CreateFontIndirectA (int lplf);
2211public static final native int CreateFontIndirectW (LOGFONTW lplf);
2212public static final native int CreateFontIndirectA (LOGFONTA lplf);
2213public static final native int CreateIconIndirect (ICONINFO lplf);
2214public static final native int CreateMenu ();
2215public static final native int CreatePalette (byte[] logPalette);
2216public static final native int CreatePatternBrush (int colorRef);
2217public static final native int CreatePen (int fnPenStyle, int nWidth, int crColor);
2218public static final native int CreatePolygonRgn(int[] lppt, int cPoints, int fnPolyFillMode);
2219public static final native int CreatePopupMenu ();
2220public static final native int CreateRectRgn (int left, int top, int right, int bottom);
2221public static final native int CreateSolidBrush (int colorRef);
2222public static final native int CreateStreamOnHGlobal(int hGlobal, boolean fDeleteOnRelease, int[] ppstm);
2223public static final native int CreateWindowExW (int dwExStyle, char [] lpClassName, char [] lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int hWndParent, int hMenu, int hInstance, CREATESTRUCT lpParam);
2224public static final native int CreateWindowExA (int dwExStyle, byte [] lpClassName, byte [] lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int hWndParent, int hMenu, int hInstance, CREATESTRUCT lpParam);
2225public static final native int DeferWindowPos (int hWinPosInfo, int hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, int uFlags);
2226public static final native int DefMDIChildProcW (int hWnd, int Msg, int wParam, int lParam);
2227public static final native int DefMDIChildProcA (int hWnd, int Msg, int wParam, int lParam);
2228public static final native int DefFrameProcW (int hWnd, int hWndMDIClient, int Msg, int wParam, int lParam);
2229public static final native int DefFrameProcA (int hWnd, int hWndMDIClient, int Msg, int wParam, int lParam);
2230public static final native int DefWindowProcW (int hWnd, int Msg, int wParam, int lParam);
2231public static final native int DefWindowProcA (int hWnd, int Msg, int wParam, int lParam);
2232public static final native boolean DeleteDC (int hdc);
2233public static final native boolean DeleteMenu (int hMenu, int uPosition, int uFlags);
2234public static final native boolean DeleteObject (int hGdiObj);
2235public static final native boolean DestroyAcceleratorTable (int hAccel);
2236public static final native boolean DestroyCaret ();
2237public static final native boolean DestroyCursor (int hCursor);
2238public static final native boolean DestroyIcon (int hIcon);
2239public static final native boolean DestroyMenu (int hMenu);
2240public static final native boolean DestroyWindow (int hWnd);
2241public static final native int DispatchMessageW (MSG lpmsg);
2242public static final native int DispatchMessageA (MSG lpmsg);
2243public static final native boolean DragDetect (int hwnd, POINT pt);
2244public static final native void DragFinish (int hDrop);
2245public static final native int DragQueryFileA (int hDrop, int iFile, byte[] lpszFile, int cch);
2246public static final native int DragQueryFileW (int hDrop, int iFile, char[] lpszFile, int cch);
2247public static final native boolean DrawEdge (int hdc, RECT qrc, int edge, int grfFlags);
2248public static final native boolean DrawFocusRect (int hDC, RECT lpRect);
2249public static final native boolean DrawFrameControl (int hdc, RECT lprc, int uType, int uState);
2250public static final native boolean DrawIconEx (int hdc, int xLeft, int yTop, int hIcon, int cxWidth, int cyWidth, int istepIfAniCur, int hbrFlickerFreeDraw, int diFlags);
2251public static final native boolean DrawMenuBar (int hWnd);
2252public static final native boolean DrawStateW (int hdc, int hbr, int lpOutputFunc, int lData, int wData, int x, int y, int cx, int cy, int fuFlags);
2253public static final native boolean DrawStateA (int hdc, int hbr, int lpOutputFunc, int lData, int wData, int x, int y, int cx, int cy, int fuFlags);
2254public static final native int DrawTextW (int hDC, char [] lpString, int nCount, RECT lpRect, int uFormat);
2255public static final native int DrawTextA (int hDC, byte [] lpString, int nCount, RECT lpRect, int uFormat);
2256public static final native boolean Ellipse (int hdc,int nLeftRect,int nTopRect,int nRightRect,int nBottomRect);
2257public static final native boolean EnableMenuItem (int hMenu, int uIDEnableItem, int uEnable);
2258public static final native boolean EnableScrollBar (int hWnd, int wSBflags, int wArrows);
2259public static final native boolean EnableWindow (int hWnd, boolean bEnable);
2260public static final native boolean EnumSystemLanguageGroupsW(int pLangGroupEnumProc, int dwFlags, int lParam);
2261public static final native boolean EnumSystemLanguageGroupsA(int pLangGroupEnumProc, int dwFlags, int lParam);
2262public static final native boolean EnumSystemLocalesW (int lpLocaleEnumProc, int dwFlags);
2263public static final native boolean EnumSystemLocalesA (int lpLocaleEnumProc, int dwFlags);
2264public static final native boolean EndDeferWindowPos (int hWinPosInfo);
2265public static final native int EndDoc (int hdc);
2266public static final native int EndPage (int hdc);
2267public static final native int EndPaint (int hWnd, PAINTSTRUCT lpPaint);
2268public static final native boolean EnumDisplayMonitors (int hdc, RECT lprcClip, int lpfnEnum, int dwData);
2269public static final native int EnumFontFamiliesW (int hdc, char [] lpszFamily, int lpEnumFontFamProc, int lParam);
2270public static final native int EnumFontFamiliesA (int hdc, byte [] lpszFamily, int lpEnumFontFamProc, int lParam);
2271public static final native int EnumFontFamiliesExW (int hdc, LOGFONTW lpLogfont, int lpEnumFontFamExProc, int lParam, int dwFlags);
2272public static final native int EnumFontFamiliesExA (int hdc, LOGFONTA lpLogfont, int lpEnumFontFamExProc, int lParam, int dwFlags);
2273public static final native boolean EqualRect (RECT lprc1, RECT lprc2);
2274public static final native boolean EqualRgn (int hSrcRgn1, int hSrcRgn2);
2275public static final native int ExpandEnvironmentStringsW (char [] lpSrc, char [] lsDst, int nSize);
2276public static final native int ExpandEnvironmentStringsA (byte [] lpSrc, byte [] lsDst, int nSize);
2277public static final native boolean ExtTextOutW(int hdc, int X, int Y, int fuOptions, RECT lprc, char[] lpString, int cbCount, int[] lpDx);
2278public static final native boolean ExtTextOutA(int hdc, int X, int Y, int fuOptions, RECT lprc, byte[] lpString, int cbCount, int[] lpDx);
2279public static final native int ExtractIconExW (char [] lpszFile, int nIconIndex, int [] phiconLarge, int [] phiconSmall, int nIcons);
2280public static final native int ExtractIconExA (byte [] lpszFile, int nIconIndex, int [] phiconLarge, int [] phiconSmall, int nIcons);
2281public static final native int FillRect(int hDC, RECT lprc, int hbr);
2282public static final native int FindWindowA (byte [] lpClassName, byte [] lpWindowName);
2283public static final native int FindWindowW (char [] lpClassName, char [] lpWindowName);
2284public static final native int FormatMessageA(int dwFlags, int lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int Arguments);
2285public static final native int FormatMessageW(int dwFlags, int lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int Arguments);
2286public static final native boolean FreeLibrary (int hLibModule);
2287public static final native int GdiSetBatchLimit (int dwLimit);
2288public static final native int GetACP ();
2289public static final native int GetActiveWindow ();
2290public static final native int GetBkColor (int hDC);
2291public static final native int GetCapture ();
2292public static final native boolean GetCaretPos (POINT lpPoint);
2293public static final native boolean GetCharABCWidthsA (int hdc, int iFirstChar, int iLastChar, int [] lpabc);
2294public static final native boolean GetCharABCWidthsW (int hdc, int iFirstChar, int iLastChar, int [] lpabc);
2295public static final native int GetCharacterPlacementW(int hdc, char[] lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags);
2296public static final native int GetCharacterPlacementA(int hdc, byte[] lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags);
2297public static final native boolean GetCharWidthA (int hdc, int iFirstChar, int iLastChar, int [] lpBuffer);
2298public static final native boolean GetCharWidthW (int hdc, int iFirstChar, int iLastChar, int [] lpBuffer);
2299public static final native boolean GetClassInfoW (int hInstance, char [] lpClassName, WNDCLASS lpWndClass);
2300public static final native boolean GetClassInfoA (int hInstance, byte [] lpClassName, WNDCLASS lpWndClass);
2301public static final native int GetClassNameW (int hWnd, char [] lpClassName, int nMaxCount);
2302public static final native int GetClassNameA (int hWnd, byte [] lpClassName, int nMaxCount);
2303public static final native boolean GetClientRect (int hWnd, RECT lpRect);
2304public static final native int GetClipboardData (int uFormat);
2305public static final native int GetClipboardFormatNameA (int format, byte[] lpszFormatName, int cchMaxCount);
2306public static final native int GetClipboardFormatNameW (int format, char[] lpszFormatName, int cchMaxCount);
2307public static final native int GetClipBox (int hdc, RECT lprc);
2308public static final native int GetClipRgn (int hdc, int hrgn);
2309public static final native boolean GetComboBoxInfo (int hwndCombo, COMBOBOXINFO pcbi);
2310public static final native int GetCurrentObject (int hdc, int uObjectType);
2311public static final native int GetCurrentProcessId ();
2312public static final native int GetCurrentThreadId ();
2313public static final native int GetCursor ();
2314public static final native boolean GetCursorPos (POINT lpPoint);
2315public static final native int GetDC (int hwnd);
2316public static final native int GetDCEx (int hWnd, int hrgnClip, int flags);
2317public static final native int GetDesktopWindow ();
2318public static final native int GetDeviceCaps (int hdc, int nIndex);
2319public static final native int GetDialogBaseUnits ();
2320public static final native int GetDIBColorTable (int hdc, int uStartIndex, int cEntries, byte[] pColors);
2321public static final native int GetDIBits (int hdc, int hbmp, int uStartScan, int cScanLines, int lpvBits, byte[] lpbi, int uUsage);
2322public static final native int GetDlgItem (int hDlg, int nIDDlgItem);
2323public static final native int GetDoubleClickTime ();
2324public static final native int GetFocus ();
2325public static final native int GetFontLanguageInfo(int hdc);
2326public static final native boolean GetGUIThreadInfo(int idThread, GUITHREADINFO lpgui);
2327public static final native boolean GetIconInfo (int hIcon, ICONINFO piconinfo);
2328public static final native int GetKeyboardLayoutList(int nBuff, int[] lpList);
2329public static final native int GetKeyboardLayout(int idThread);public static final native short GetKeyState (int nVirtKey);
2330public static final native boolean GetKeyboardState (byte [] lpKeyState);
2331public static final native int GetKeyNameTextW(int lParam, char [] lpString, int nSize);
2332public static final native int GetKeyNameTextA(int lParam, byte [] lpString, int nSize);
2333public static final native int GetLastActivePopup (int hWnd);
2334public static final native int GetLastError ();
2335public static final native int GetLayout (int hdc);
2336/* returns the instance handle to the swt library */
2337public static final native int GetLibraryHandle ();
2338public static final native int GetLocaleInfoW (int Locale, int LCType, char [] lpLCData, int cchData);
2339public static final native int GetLocaleInfoA (int Locale, int LCType, byte [] lpLCData, int cchData);
2340public static final native int GetMenu (int hWnd);
2341public static final native boolean GetMenuBarInfo (int hWnd, int idObject, int idItem, MENUBARINFO pmbi);
2342public static final native int GetMenuDefaultItem (int hMenu, int fByPos, int gmdiFlags);
2343public static final native boolean GetMenuInfo (int hmenu, MENUINFO lpcmi);
2344public static final native int GetMenuItemCount (int hMenu);
2345public static final native boolean GetMenuItemInfoW (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii);
2346public static final native boolean GetMenuItemInfoA (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii);
2347public static final native boolean GetMenuItemRect (int hWnd, int hMenu, int uItem, RECT lprcItem);
2348public static final native boolean GetMessageW (MSG lpMsg, int hWnd, int wMsgFilterMin, int wMsgFilterMax);
2349public static final native boolean GetMessageA (MSG lpMsg, int hWnd, int wMsgFilterMin, int wMsgFilterMax);
2350public static final native int GetMessagePos ();
2351public static final native int GetMessageTime ();
2352public static final native int GetTextCharset(int hdc);
2353public static final native int GetTickCount ();
2354public static final native int GetModuleHandleW (char [] lpModuleName);
2355public static final native int GetModuleHandleA (byte [] lpModuleName);
2356public static final native boolean GetMonitorInfoW (int hmonitor, MONITORINFO lpmi);
2357public static final native boolean GetMonitorInfoA (int hmonitor, MONITORINFO lpmi);
2358public static final native int GetNearestPaletteIndex(int hPal, int crColor);
2359public static final native int GetObjectA (int hgdiobj, int cbBuffer, BITMAP lpvObject);
2360public static final native int GetObjectW (int hgdiobj, int cbBuffer, BITMAP lpvObject);
2361public static final native int GetObjectA (int hgdiobj, int cbBuffer, DIBSECTION lpvObject);
2362public static final native int GetObjectW (int hgdiobj, int cbBuffer, DIBSECTION lpvObject);
2363public static final native int GetObjectA (int hgdiobj, int cbBuffer, LOGBRUSH lpvObject);
2364public static final native int GetObjectW (int hgdiobj, int cbBuffer, LOGBRUSH lpvObject);
2365public static final native int GetObjectA (int hgdiobj, int cbBuffer, LOGFONTA lpvObject);
2366public static final native int GetObjectW (int hgdiobj, int cbBuffer, LOGFONTW lpvObject);
2367public static final native int GetObjectA (int hgdiobj, int cbBuffer, LOGPEN lpvObject);
2368public static final native int GetObjectW (int hgdiobj, int cbBuffer, LOGPEN lpvObject);
2369public static final native boolean GetOpenFileNameW (OPENFILENAME lpofn);
2370public static final native boolean GetOpenFileNameA (OPENFILENAME lpofn);
2371public static final native int GetPaletteEntries (int hPalette, int iStartIndex, int nEntries, byte[] logPalette);
2372public static final native int GetParent (int hWnd);
2373public static final native int GetPixel (int hdc, int x, int y);
2374public static final native int GetProcAddress (int hModule, byte [] lpProcName);
2375public static final native int GetProcessHeap ();
2376public static final native int GetProfileStringW (char [] lpAppName, char [] lpKeyName, char [] lpDefault, char [] lpReturnedString, int nSize);
2377public static final native int GetProfileStringA (byte [] lpAppName, byte [] lpKeyName, byte [] lpDefault, byte [] lpReturnedString, int nSize);
2378public static final native int GetRandomRgn (int hdc, int hrgn, int iNum);
2379public static final native int GetRegionData (int hRgn, int dwCount, int [] lpRgnData);
2380public static final native int GetRgnBox (int hrgn, RECT lprc);
2381public static final native int GetROP2 (int hdc);
2382public static final native boolean GetSaveFileNameW (OPENFILENAME lpofn);
2383public static final native boolean GetSaveFileNameA (OPENFILENAME lpofn);
2384public static final native boolean GetScrollInfo (int hwnd, int flags, SCROLLINFO info);
2385public static final native int GetStockObject (int fnObject);
2386public static final native int GetSysColor (int nIndex);
2387public static final native int GetSysColorBrush (int nIndex);
2388public static final native int GetSystemMenu (int hWnd, boolean bRevert);
2389public static final native int GetSystemMetrics (int nIndex);
2390public static final native int GetSystemPaletteEntries(int hdc, int iStartIndex, int nEntries, byte[] lppe);
2391public static final native int GetTextColor (int hDC);
2392public static final native boolean GetTextExtentPoint32W (int hdc, char [] lpString, int cbString, SIZE lpSize);
2393public static final native boolean GetTextExtentPoint32A (int hdc, byte [] lpString, int cbString, SIZE lpSize);
2394public static final native boolean GetTextMetricsW (int hdc, TEXTMETRICW lptm);
2395public static final native boolean GetTextMetricsA (int hdc, TEXTMETRICA lptm);
2396public static final native boolean GetUpdateRect (int hWnd, RECT lpRect, boolean bErase);
2397public static final native int GetUpdateRgn (int hWnd, int hRgn, boolean bErase);
2398public static final native boolean GetVersionExW (OSVERSIONINFOW lpVersionInfo);
2399public static final native boolean GetVersionExA (OSVERSIONINFOA lpVersionInfo);
2400public static final native int GetWindow (int hWnd, int uCmd);
2401public static final native int GetWindowLongW (int hWnd, int nIndex);
2402public static final native int GetWindowLongA (int hWnd, int nIndex);
2403public static final native boolean GetWindowPlacement (int hWnd, WINDOWPLACEMENT lpwndpl);
2404public static final native boolean GetWindowRect (int hWnd, RECT lpRect);
2405public static final native int GetWindowRgn(int hWnd, int hRgn);
2406public static final native int GetWindowTextW (int hWnd, char [] lpString, int nMaxCount);
2407public static final native int GetWindowTextA (int hWnd, byte [] lpString, int nMaxCount);
2408public static final native int GetWindowTextLengthW (int hWnd);
2409public static final native int GetWindowTextLengthA (int hWnd);
2410public static final native int GetWindowThreadProcessId (int hWnd, int [] lpdwProcessId);
2411public static final native int GlobalAlloc (int uFlags, int dwBytes);
2412public static final native int GlobalFree (int hMem);
2413public static final native int GlobalLock (int hMem);
2414public static final native int GlobalSize (int hMem);
2415public static final native boolean GlobalUnlock (int hMem);
2416public static final native boolean GradientFill(int hdc, int pVertex, int dwNumVertex, int pMesh, int dwNumMesh, int dwMode);
2417public static final native int HeapAlloc (int hHeap, int dwFlags, int dwBytes);
2418public static final native boolean HeapFree (int hHeap, int dwFlags, int lpMem);
2419public static final native boolean HideCaret (int hWnd);
2420public static final native int ImageList_Add (int himl, int hbmImage, int hbmMask);
2421public static final native int ImageList_AddMasked (int himl, int hbmImage, int crMask);
2422public static final native int ImageList_Create (int cx, int cy, int flags, int cInitial, int cGrow);
2423public static final native boolean ImageList_Destroy (int himl);
2424public static final native int ImageList_GetIcon (int himl, int i, int flags);
2425public static final native boolean ImageList_GetIconSize (int himl, int [] cx, int [] cy);   
2426public static final native int ImageList_GetImageCount (int himl);
2427public static final native boolean ImageList_Remove (int himl, int i);
2428public static final native boolean ImageList_Replace (int himl, int i, int hbmImage, int hbmMask);
2429public static final native int ImageList_ReplaceIcon (int himl, int i, int hicon);
2430public static final native boolean ImageList_SetIconSize (int himl, int cx, int cy);
2431public static final native int ImmAssociateContext (int hWnd, int hIMC);
2432public static final native int ImmCreateContext ();
2433public static final native boolean ImmDestroyContext (int hIMC);
2434public static final native boolean ImmGetCompositionFontW (int hIMC, LOGFONTW lplf);
2435public static final native boolean ImmGetCompositionFontA (int hIMC, LOGFONTA lplf);
2436public static final native int ImmGetCompositionStringW (int hIMC, int dwIndex, char [] lpBuf, int dwBufLen);
2437public static final native int ImmGetCompositionStringA (int hIMC, int dwIndex, byte [] lpBuf, int dwBufLen);
2438public static final native int ImmGetContext (int hWnd);
2439public static final native boolean ImmGetConversionStatus (int hIMC, int [] lpfdwConversion, int [] lpfdwSentence);
2440public static final native int ImmGetDefaultIMEWnd (int hWnd);
2441public static final native boolean ImmGetOpenStatus (int hIMC);
2442public static final native boolean ImmReleaseContext (int hWnd, int hIMC);
2443public static final native boolean ImmSetCompositionFontW (int hIMC, LOGFONTW lplf);
2444public static final native boolean ImmSetCompositionFontA (int hIMC, LOGFONTA lplf);
2445public static final native boolean ImmSetCompositionWindow (int hIMC, COMPOSITIONFORM lpCompForm);
2446public static final native boolean ImmSetConversionStatus (int hIMC, int fdwConversion, int dwSentence);
2447public static final native boolean ImmSetOpenStatus (int hIMC, boolean fOpen);
2448public static final native void InitCommonControls ();
2449public static final native boolean InitCommonControlsEx (INITCOMMONCONTROLSEX lpInitCtrls);
2450public static final native boolean InsertMenuW (int hMenu, int uPosition, int uFlags, int uIDNewItem, char [] lpNewItem);
2451public static final native boolean InsertMenuA (int hMenu, int uPosition, int uFlags, int uIDNewItem, byte [] lpNewItem);
2452public static final native boolean InsertMenuItemW (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii);
2453public static final native boolean InsertMenuItemA (int hMenu, int uItem, boolean fByPosition, MENUITEMINFO lpmii);
2454public static final native boolean IntersectRect (RECT lprcDst, RECT lprcSrc1, RECT lprcSrc2);
2455public static final native boolean InvalidateRect(int hWnd, RECT lpRect, boolean bErase);
2456public static final native boolean InvalidateRgn (int hWnd, int hRgn, boolean bErase);
2457public static final native boolean IsDBCSLeadByte (byte TestChar);
2458public static final native boolean IsIconic (int hWnd);
2459public static final native boolean IsPPC();
2460public static final native boolean IsSP();
2461public static final native boolean IsWindowEnabled (int hWnd);
2462public static final native boolean IsWindowVisible (int hWnd);
2463public static final native boolean IsZoomed (int hWnd);
2464public static final native boolean KillTimer (int hWnd, int uIDEvent);
2465public static final native boolean LineTo (int hdc,int x1, int x2);
2466public static final native int LoadBitmapW (int hInstance, int lpBitmapName);
2467public static final native int LoadBitmapA (int hInstance, int lpBitmapName);
2468public static final native int LoadCursorW (int hInstance, int lpCursorName);
2469public static final native int LoadCursorA (int hInstance, int lpCursorName);
2470public static final native int LoadIconW (int hInstance, int lpIconName);
2471public static final native int LoadIconA (int hInstance, int lpIconName);
2472public static final native int LoadImageW (int hinst, char [] lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
2473public static final native int LoadImageA (int hinst, byte [] lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
2474public static final native int LoadImageW (int hinst, int lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
2475public static final native int LoadImageA (int hinst, int lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
2476public static final native int LoadStringW (int hinst, int uID, char [] lpBuffer, int nBufferMax);
2477public static final native int LoadStringA (int hinst, int uID, byte [] lpBuffer, int nBufferMax);
2478public static final native int LoadLibraryW (char [] lpLibFileName);
2479public static final native int LoadLibraryA (byte [] lpLibFileName);
2480public static final native int LocalFree(int hMem);
2481public static final native int MapVirtualKeyW (int uCode, int uMapType);
2482public static final native int MapVirtualKeyA (int uCode, int uMapType);
2483public static final native int MapWindowPoints (int hWndFrom, int hWndTo, POINT lpPoints, int cPoints);
2484public static final native int MapWindowPoints (int hWndFrom, int hWndTo, RECT lpPoints, int cPoints);
2485public static final native boolean MessageBeep (int uType);
2486public static final native int MessageBoxW (int hWnd, char [] lpText, char [] lpCaption, int uType);
2487public static final native int MessageBoxA (int hWnd, byte [] lpText, byte [] lpCaption, int uType);
2488public static final native int MonitorFromWindow (int hwnd, int dwFlags);
2489public static final native void MoveMemory (char[] Destination, int SourcePtr, int Length);
2490public static final native void MoveMemory (byte [] Destination, int Source, int Length);
2491public static final native void MoveMemory (byte [] Destination, ACCEL Source, int Length);
2492public static final native void MoveMemory (byte [] Destination, BITMAPINFOHEADER Source, int Length);
2493public static final native void MoveMemory (int [] Destination, int Source, int Length);
2494public static final native void MoveMemory (int Destination, byte [] Source, int Length);
2495public static final native void MoveMemory (int Destination, char [] Source, int Length);
2496public static final native void MoveMemory (int Destination, int [] Source, int Length);
2497public static <