changeset 214:a8fed3e56433

Fix link error and added missing switch defaults
author Frank Benoit <benoit@tionex.de>
date Sat, 17 May 2008 19:23:59 +0200
parents 36f5cb12e1a2
children 4436505b216f
files dwt/custom/StyledText.d dwt/graphics/TextLayout.d dwt/internal/win32/OS.d dwt/internal/win32/WINAPI.d dwt/widgets/Combo.d dwt/widgets/Display.d dwt/widgets/IME.d dwt/widgets/List.d dwt/widgets/ProgressBar.d dwt/widgets/ScrollBar.d dwt/widgets/Table.d dwt/widgets/Text.d dwt/widgets/Tree.d
diffstat 13 files changed, 77 insertions(+), 1790 deletions(-) [+]
line wrap: on
line diff
--- a/dwt/custom/StyledText.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/custom/StyledText.d	Sat May 17 19:23:59 2008 +0200
@@ -5004,6 +5004,7 @@
                 case DWT.COMPOSITION_SELECTION: handleCompositionSelection(event); break;
                 case DWT.COMPOSITION_CHANGED: handleCompositionChanged(event); break;
                 case DWT.COMPOSITION_OFFSET: handleCompositionOffset(event); break;
+                default:
             }
         }
     });
--- a/dwt/graphics/TextLayout.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/graphics/TextLayout.d	Sat May 17 19:23:59 2008 +0200
@@ -1004,6 +1004,7 @@
                     Gdip.Pen_delete(pen);
                     break;
                 }
+                default:
             }
             if (brush !is color) Gdip.SolidBrush_delete(cast(Gdip.SolidBrush)brush);
         }
@@ -1108,6 +1109,7 @@
                     OS.DeleteObject(pen);
                     break;
                 }
+                default:
             }
         }
         if (style.strikeout) {
@@ -1188,6 +1190,7 @@
                 case DWT.BORDER_SOLID: break;
                 case DWT.BORDER_DASH: lineStyle = Gdip.DashStyleDash; break;
                 case DWT.BORDER_DOT: lineStyle = Gdip.DashStyleDot; break;
+                default:
             }
             auto pen = Gdip.Pen_new(cast(Gdip.Brush)brush, lineWidth);
             Gdip.Pen_SetDashStyle(pen, lineStyle);
@@ -1235,6 +1238,7 @@
                 case DWT.BORDER_SOLID: break;
                 case DWT.BORDER_DASH: lineStyle = OS.PS_DASH; break;
                 case DWT.BORDER_DOT: lineStyle = OS.PS_DOT; break;
+                default:
             }
             LOGBRUSH logBrush;
             logBrush.lbStyle = OS.BS_SOLID;
--- a/dwt/internal/win32/OS.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/internal/win32/OS.d	Sat May 17 19:23:59 2008 +0200
@@ -2308,1734 +2308,6 @@
     public static const int XBUTTON2 = 0x2;
 
 
-//PORTING_LEFT
-/++
-/** Ansi/Unicode wrappers */
-
-public static const int /*long*/ AddFontResourceEx (TCHAR lpszFilename, int fl, int /*long*/ pdv) {
-    if (IsUnicode) {
-        char [] lpszFilename1 = lpszFilename is null ? null : lpszFilename.chars;
-        return AddFontResourceExW (lpszFilename1, fl, pdv);
-    }
-    byte [] lpszFilename1 = lpszFilename is null ? null : lpszFilename.bytes;
-    return AddFontResourceExA (lpszFilename1, fl, pdv);
-}
-
-public static const int /*long*/ AssocQueryString(int flags, int str, TCHAR pszAssoc, TCHAR pszExtra, TCHAR pszOut, int[] pcchOut) {
-    if (IsUnicode) {
-        char [] pszAssoc1 = pszAssoc is null ? null : pszAssoc.chars;
-        char [] pszExtra1 = pszExtra is null ? null : pszExtra.chars;
-        char [] pszOut1 = pszOut is null ? null : pszOut.chars;
-        return AssocQueryStringW (flags, str, pszAssoc1, pszExtra1, pszOut1, pcchOut);
-    }
-    byte [] pszAssoc1 = pszAssoc is null ? null : pszAssoc.bytes;
-    byte [] pszExtra1 = pszExtra is null ? null : pszExtra.bytes;
-    byte [] pszOut1 = pszOut is null ? null : pszOut.bytes;
-    return AssocQueryStringA (flags, str, pszAssoc1, pszExtra1, pszOut1, pcchOut);
-}
-
-public static const int /*long*/ CallWindowProc (int /*long*/ lpPrevWndFunc, int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return CallWindowProcW (lpPrevWndFunc, hWnd, Msg, wParam, lParam);
-    return CallWindowProcA (lpPrevWndFunc, hWnd, Msg, wParam, lParam);
-}
-
-public static final short CharUpper (short ch) {
-    if (IsUnicode) return CharUpperW (ch);
-    return CharUpperA (ch);
-}
-
-public static final short CharLower (short ch) {
-    if (IsUnicode) return CharLowerW (ch);
-    return CharLowerA (ch);
-}
-
-public static final BOOL ChooseColor (CHOOSECOLOR lpcc) {
-    if (IsUnicode) return ChooseColorW (lpcc);
-    return ChooseColorA (lpcc);
-}
-
-public static final BOOL ChooseFont (CHOOSEFONT chooseFont) {
-    if (IsUnicode) return ChooseFontW (chooseFont);
-    return ChooseFontA (chooseFont);
-}
-
-public static const int /*long*/ CreateActCtx (ACTCTX pActCtx) {
-    if (IsUnicode) return CreateActCtxW (pActCtx);
-    return CreateActCtxA (pActCtx);
-}
-
-public static const int /*long*/ CreateAcceleratorTable (byte [] lpaccl, int cEntries) {
-    if (IsUnicode) return CreateAcceleratorTableW (lpaccl, cEntries);
-    return CreateAcceleratorTableA (lpaccl, cEntries);
-}
-
-public static const int /*long*/ CreateDC (TCHAR lpszDriver, TCHAR lpszDevice, int /*long*/ lpszOutput, int /*long*/ lpInitData) {
-    if (IsUnicode) {
-        char [] lpszDriver1 = lpszDriver is null ? null : lpszDriver.chars;
-        char [] lpszDevice1 = lpszDevice is null ? null : lpszDevice.chars;
-        return CreateDCW (lpszDriver1, lpszDevice1, lpszOutput, lpInitData);
-    }
-    byte [] lpszDriver1 = lpszDriver is null ? null : lpszDriver.bytes;
-    byte [] lpszDevice1 = lpszDevice is null ? null : lpszDevice.bytes;
-    return CreateDCA (lpszDriver1, lpszDevice1, lpszOutput, lpInitData);
-}
-
-public static const int /*long*/ CreateFontIndirect (int /*long*/ lplf) {
-    if (IsUnicode) return CreateFontIndirectW (lplf);
-    return CreateFontIndirectA (lplf);
-}
-
-public static const int /*long*/ CreateFontIndirect (LOGFONT lplf) {
-    if (IsUnicode) return CreateFontIndirectW ((LOGFONTW)lplf);
-    return CreateFontIndirectA ((LOGFONTA)lplf);
-}
-
-public static final BOOL CreateProcess (int /*long*/ lpApplicationName, int /*long*/ lpCommandLine, int /*long*/ lpProcessAttributes, int /*long*/ lpThreadAttributes, BOOL bInheritHandles, int dwCreationFlags, int /*long*/ lpEnvironment, int /*long*/ lpCurrentDirectory, STARTUPINFO lpStartupInfo, PROCESS_INFORMATION lpProcessInformation) {
-    if (IsUnicode) return CreateProcessW (lpApplicationName, lpCommandLine, lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags, lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation);
-    return CreateProcessA (lpApplicationName, lpCommandLine, lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags, lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation);
-}
-
-public static const int /*long*/ CreateWindowEx (int dwExStyle, TCHAR lpClassName, TCHAR lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int /*long*/ hWndParent, int /*long*/ hMenu, int /*long*/ hInstance, CREATESTRUCT lpParam) {
-    if (IsUnicode) {
-        char [] lpClassName1 = lpClassName is null ? null : lpClassName.chars;
-        char [] lpWindowName1 = lpWindowName is null ? null : lpWindowName.chars;
-        return CreateWindowExW (dwExStyle, lpClassName1, lpWindowName1, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam);
-    }
-    byte [] lpClassName1 = lpClassName is null ? null : lpClassName.bytes;
-    byte [] lpWindowName1 = lpWindowName is null ? null : lpWindowName.bytes;
-    return CreateWindowExA (dwExStyle, lpClassName1, lpWindowName1, dwStyle, X, Y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam);
-}
-
-public static const int /*long*/ DefMDIChildProc (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return DefMDIChildProcW (hWnd, Msg, wParam, lParam);
-    return DefMDIChildProcA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ DefFrameProc (int /*long*/ hWnd, int /*long*/ hWndMDIClient, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return DefFrameProcW (hWnd, hWndMDIClient, Msg, wParam, lParam);
-    return DefFrameProcA (hWnd, hWndMDIClient, Msg, wParam, lParam);
-}
-public static const int /*long*/ DefWindowProc (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return DefWindowProcW (hWnd, Msg, wParam, lParam);
-    return DefWindowProcA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ DispatchMessage (MSG lpmsg) {
-    if (IsUnicode) return DispatchMessageW (lpmsg);
-    return DispatchMessageA (lpmsg);
-}
-
-public static const int DragQueryFile (int /*long*/ hDrop, int iFile, TCHAR lpszFile, int cch) {
-    if (IsUnicode) {
-        char [] lpszFile1 = lpszFile is null ? null : lpszFile.chars;
-        return DragQueryFileW (hDrop, iFile, lpszFile1, cch);
-    }
-    byte [] lpszFile1 = lpszFile is null ? null : lpszFile.bytes;
-    return DragQueryFileA (hDrop, iFile, lpszFile1, cch);
-}
-
-public static final BOOL DrawState (int /*long*/ hdc, int /*long*/ hbr, int /*long*/ lpOutputFunc, int /*long*/ lData, int /*long*/ wData, int x, int y, int cx, int cy, int fuFlags) {
-    if (IsUnicode) return DrawStateW (hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags);
-    return DrawStateA (hdc, hbr, lpOutputFunc, lData, wData, x, y, cx, cy, fuFlags);
-}
-
-public static const int DrawText (int /*long*/ hDC, TCHAR lpString, int nCount, RECT lpRect, int uFormat) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return DrawTextW (hDC, lpString1, nCount, lpRect, uFormat);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return DrawTextA (hDC, lpString1, nCount, lpRect, uFormat);
-}
-
-public static const int EnumFontFamilies (int /*long*/ hdc, TCHAR lpszFamily, int /*long*/ lpEnumFontFamProc, int /*long*/ lParam) {
-    if (IsUnicode) {
-        char [] lpszFamily1 = lpszFamily is null ? null : lpszFamily.chars;
-        return EnumFontFamiliesW (hdc, lpszFamily1, lpEnumFontFamProc, lParam);
-    }
-    byte [] lpszFamily1 = lpszFamily is null ? null : lpszFamily.bytes;
-    return EnumFontFamiliesA (hdc, lpszFamily1, lpEnumFontFamProc, lParam);
-}
-
-public static const int EnumFontFamiliesEx (int /*long*/ hdc, LOGFONT lpLogfont, int /*long*/ lpEnumFontFamExProc, int /*long*/ lParam, int dwFlags) {
-    if (IsUnicode) return EnumFontFamiliesExW (hdc, (LOGFONTW)lpLogfont, lpEnumFontFamExProc, lParam, dwFlags);
-    return EnumFontFamiliesExA (hdc, (LOGFONTA)lpLogfont, lpEnumFontFamExProc, lParam, dwFlags);
-}
-
-public static final BOOL EnumSystemLocales (int /*long*/ lpLocaleEnumProc, int dwFlags) {
-    if (IsUnicode) return EnumSystemLocalesW (lpLocaleEnumProc, dwFlags);
-    return EnumSystemLocalesA (lpLocaleEnumProc, dwFlags);
-}
-
-public static final BOOL EnumSystemLanguageGroups (int /*long*/ pLangGroupEnumProc, int dwFlags, int /*long*/ lParam) {
-    if (IsUnicode) return EnumSystemLanguageGroupsW (pLangGroupEnumProc, dwFlags, lParam);
-    return EnumSystemLanguageGroupsA (pLangGroupEnumProc, dwFlags, lParam);
-}
-
-public static const int ExpandEnvironmentStrings (TCHAR lpSrc, TCHAR lpDst, int nSize) {
-    if (IsUnicode) {
-        char [] lpSrc1 = lpSrc is null ? null : lpSrc.chars;
-        char [] lpDst1 = lpDst is null ? null : lpDst.chars;
-        return ExpandEnvironmentStringsW (lpSrc1, lpDst1, nSize);
-    }
-    byte [] lpSrc1 = lpSrc is null ? null : lpSrc.bytes;
-    byte [] lpDst1 = lpDst is null ? null : lpDst.bytes;
-    return ExpandEnvironmentStringsA (lpSrc1, lpDst1, nSize);
-}
-
-public static const int ExtractIconEx (TCHAR lpszFile, int nIconIndex, int /*long*/ [] phiconLarge, int /*long*/ [] phiconSmall, int nIcons) {
-    if (IsUnicode) {
-        char [] lpszFile1 = lpszFile is null ? null : lpszFile.chars;
-        return ExtractIconExW (lpszFile1, nIconIndex, phiconLarge, phiconSmall, nIcons);
-    }
-    byte [] lpszFile1 = lpszFile is null ? null : lpszFile.bytes;
-    return ExtractIconExA (lpszFile1, nIconIndex, phiconLarge, phiconSmall, nIcons);
-}
-
-public static final BOOL ExtTextOut(int /*long*/ hdc, int X, int Y, int fuOptions, RECT lprc, TCHAR lpString, int cbCount, int[] lpDx) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return ExtTextOutW (hdc, X, Y, fuOptions, lprc, lpString1, cbCount, lpDx);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return ExtTextOutA (hdc, X, Y, fuOptions, lprc, lpString1, cbCount, lpDx);
-}
-
-public static const int /*long*/ FindWindow (TCHAR lpClassName, TCHAR lpWindowName) {
-    if (IsUnicode) {
-        char [] lpClassName1 = lpClassName is null ? null : lpClassName.chars;
-        char [] lpWindowName1 = lpWindowName is null ? null : lpWindowName.chars;
-        return FindWindowW (lpClassName1, lpWindowName1);
-    }
-    byte [] lpClassName1 = lpClassName is null ? null : lpClassName.bytes;
-    byte [] lpWindowName1 = lpWindowName is null ? null : lpWindowName.bytes;
-    return FindWindowA (lpClassName1, lpWindowName1);
-}
-
-public static const int FormatMessage (int dwFlags, int /*long*/ lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int /*long*/ Arguments) {
-    if (IsUnicode) {
-        return FormatMessageW (dwFlags, lpSource, dwMessageId, dwLanguageId, lpBuffer, nSize, Arguments);
-    }
-    return FormatMessageA (dwFlags, lpSource, dwMessageId, dwLanguageId, lpBuffer, nSize, Arguments);
-}
-
-public static final BOOL GetCharABCWidths (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpabc) {
-    if (IsUnicode) return GetCharABCWidthsW (hdc,iFirstChar, iLastChar, lpabc);
-    return GetCharABCWidthsA (hdc,iFirstChar, iLastChar, lpabc);
-}
-
-public static const int GetCharacterPlacement (int /*long*/ hdc, TCHAR lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return GetCharacterPlacementW (hdc, lpString1, nCount, nMaxExtent, lpResults, dwFlags);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return GetCharacterPlacementA (hdc, lpString1, nCount, nMaxExtent, lpResults, dwFlags);
-}
-
-public static final BOOL GetCharWidth (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpabc) {
-    if (IsUnicode) return GetCharWidthW (hdc,iFirstChar, iLastChar, lpabc);
-    return GetCharWidthA (hdc,iFirstChar, iLastChar, lpabc);
-}
-
-public static final BOOL GetClassInfo (int /*long*/ hInstance, TCHAR lpClassName, WNDCLASS lpWndClass) {
-    if (IsUnicode) {
-        char [] lpClassName1 = lpClassName is null ? null : lpClassName.chars;
-        return GetClassInfoW (hInstance, lpClassName1, lpWndClass);
-    }
-    byte [] lpClassName1 = lpClassName is null ? null : lpClassName.bytes;
-    return GetClassInfoA (hInstance, lpClassName1, lpWndClass);
-}
-
-public static const int GetClassName (int /*long*/ hWnd, TCHAR lpClassName, int nMaxCount) {
-    if (IsUnicode) {
-        char [] lpClassName1 = lpClassName is null ? null : lpClassName.chars;
-        return GetClassNameW (hWnd, lpClassName1, nMaxCount);
-    }
-    byte [] lpClassName1 = lpClassName is null ? null : lpClassName.bytes;
-    return GetClassNameA (hWnd, lpClassName1, nMaxCount);
-}
-
-public static const int GetClipboardFormatName (int format, TCHAR lpszFormatName, int cchMaxCount) {
-    if (IsUnicode) {
-        char [] lpszFormatName1 = lpszFormatName is null ? null : lpszFormatName.chars;
-        return GetClipboardFormatNameW (format, lpszFormatName1, cchMaxCount);
-    }
-    byte [] lpszFormatName1 = lpszFormatName is null ? null : lpszFormatName.bytes;
-    return GetClipboardFormatNameA (format, lpszFormatName1, cchMaxCount);
-}
-
-public static const int GetDateFormat (int Locale, int dwFlags, SYSTEMTIME lpDate, TCHAR lpFormat, TCHAR lpDateStr, int cchDate) {
-    if (IsUnicode) {
-        char [] lpString1 = lpFormat is null ? null : lpFormat.chars;
-        char [] lpString2 = lpDateStr is null ? null : lpDateStr.chars;
-        return GetDateFormatW (Locale, dwFlags, lpDate, lpString1, lpString2, cchDate);
-    }
-    byte [] lpString1 = lpFormat is null ? null : lpFormat.bytes;
-    byte [] lpString2 = lpDateStr is null ? null : lpDateStr.bytes;
-    return GetDateFormatA (Locale, dwFlags, lpDate, lpString1, lpString2, cchDate);
-}
-
-public static const int GetKeyNameText (int lParam, TCHAR lpString, int nSize) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return GetKeyNameTextW (lParam, lpString1, nSize);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return GetKeyNameTextA (lParam, lpString1, nSize);
-}
-
-public static const int GetLocaleInfo (int Locale, int LCType, TCHAR lpLCData, int cchData) {
-    if (IsUnicode) {
-        char [] lpLCData1 = lpLCData is null ? null : lpLCData.chars;
-        return GetLocaleInfoW (Locale, LCType, lpLCData1, cchData);
-    }
-    byte [] lpLCData1 = lpLCData is null ? null : lpLCData.bytes;
-    return GetLocaleInfoA (Locale, LCType, lpLCData1, cchData);
-}
-
-public static final BOOL GetMenuItemInfo (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii) {
-    if (IsUnicode) return GetMenuItemInfoW (hMenu, uItem, fByPosition, lpmii);
-    return GetMenuItemInfoA (hMenu, uItem, fByPosition, lpmii);
-}
-
-public static final BOOL GetMessage (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax) {
-    if (IsUnicode) return GetMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax);
-    return GetMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax);
-}
-
-public static const int GetModuleFileName (int /*long*/ hModule, TCHAR lpFilename, int inSize) {
-    if (IsUnicode) {
-        char [] lpFilename1 = lpFilename is null ? null : lpFilename.chars;
-        return GetModuleFileNameW (hModule, lpFilename1, inSize);
-    }
-    byte [] lpFilename1 = lpFilename is null ? null : lpFilename.bytes;
-    return GetModuleFileNameA (hModule, lpFilename1, inSize);
-}
-
-public static const int /*long*/ GetModuleHandle (TCHAR lpModuleName) {
-    if (IsUnicode) {
-        char [] lpModuleName1 = lpModuleName is null ? null : lpModuleName.chars;
-        return GetModuleHandleW (lpModuleName1);
-    }
-    byte [] lpModuleName1 = lpModuleName is null ? null : lpModuleName.bytes;
-    return GetModuleHandleA (lpModuleName1);
-}
-
-public static final BOOL GetMonitorInfo (int /*long*/ hmonitor, MONITORINFO lpmi) {
-    if (IsUnicode) return GetMonitorInfoW (hmonitor, lpmi);
-    return GetMonitorInfoA (hmonitor, lpmi);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, BITMAP lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, DIBSECTION lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, EXTLOGPEN lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, LOGBRUSH lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, LOGFONT lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, (LOGFONTW)lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, (LOGFONTA)lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, LOGPEN lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static const int GetObject (int /*long*/ hgdiobj, int cbBuffer, int /*long*/ lpvObject) {
-    if (IsUnicode) return GetObjectW (hgdiobj, cbBuffer, lpvObject);
-    return GetObjectA (hgdiobj, cbBuffer, lpvObject);
-}
-
-public static final BOOL GetOpenFileName (OPENFILENAME lpofn) {
-    if (IsUnicode) return GetOpenFileNameW (lpofn);
-    return GetOpenFileNameA (lpofn);
-}
-
-public static const int GetProfileString (TCHAR lpAppName, TCHAR lpKeyName, TCHAR lpDefault, TCHAR lpReturnedString, int nSize) {
-    if (IsUnicode) {
-        char [] lpAppName1 = lpAppName is null ? null : lpAppName.chars;
-        char [] lpKeyName1 = lpKeyName is null ? null : lpKeyName.chars;
-        char [] lpDefault1 = lpDefault is null ? null : lpDefault.chars;
-        char [] lpReturnedString1 = lpReturnedString is null ? null : lpReturnedString.chars;
-        return GetProfileStringW (lpAppName1, lpKeyName1, lpDefault1, lpReturnedString1, nSize);
-    }
-    byte [] lpAppName1 = lpAppName is null ? null : lpAppName.bytes;
-    byte [] lpKeyName1 = lpKeyName is null ? null : lpKeyName.bytes;
-    byte [] lpDefault1 = lpDefault is null ? null : lpDefault.bytes;
-    byte [] lpReturnedString1 = lpReturnedString is null ? null : lpReturnedString.bytes;
-    return GetProfileStringA (lpAppName1, lpKeyName1, lpDefault1, lpReturnedString1, nSize);
-}
-
-public static int /*long*/ GetProp (int /*long*/ hWnd, int /*long*/ lpString) {
-    if (IsUnicode) return GetPropW (hWnd, lpString);
-    return GetPropA (hWnd, lpString);
-}
-
-public static final BOOL GetSaveFileName (OPENFILENAME lpofn) {
-    if (IsUnicode) return GetSaveFileNameW (lpofn);
-    return GetSaveFileNameA (lpofn);
-}
-
-public static final void GetStartupInfo (STARTUPINFO lpStartupInfo) {
-    if (IsUnicode) {
-        GetStartupInfoW (lpStartupInfo);
-    } else {
-        GetStartupInfoA (lpStartupInfo);
-    }
-}
-
-public static final BOOL GetTextExtentPoint32 (int /*long*/ hdc, TCHAR lpString, int cbString, SIZE lpSize) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return GetTextExtentPoint32W (hdc, lpString1, cbString, lpSize);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return GetTextExtentPoint32A (hdc, lpString1, cbString, lpSize);
-}
-
-public static final BOOL GetTextMetrics (int /*long*/ hdc, TEXTMETRIC lptm) {
-    if (IsUnicode) return GetTextMetricsW (hdc, (TEXTMETRICW)lptm);
-    return GetTextMetricsA (hdc, (TEXTMETRICA)lptm);
-}
-
-public static const int GetTimeFormat (int Locale, int dwFlags, SYSTEMTIME lpTime, TCHAR lpFormat, TCHAR lpTimeStr, int cchTime) {
-    if (IsUnicode) {
-        char [] lpString1 = lpFormat is null ? null : lpFormat.chars;
-        char [] lpString2 = lpTimeStr is null ? null : lpTimeStr.chars;
-        return GetTimeFormatW (Locale, dwFlags, lpTime, lpString1, lpString2, cchTime);
-    }
-    byte [] lpString1 = lpFormat is null ? null : lpFormat.bytes;
-    byte [] lpString2 = lpTimeStr is null ? null : lpTimeStr.bytes;
-    return GetTimeFormatA (Locale, dwFlags, lpTime, lpString1, lpString2, cchTime);
-}
-
-public static final BOOL GetVersionEx (OSVERSIONINFO lpVersionInfo) {
-    if (IsUnicode) return GetVersionExW ((OSVERSIONINFOW)lpVersionInfo);
-    return GetVersionExA ((OSVERSIONINFOA)lpVersionInfo);
-}
-
-public static final BOOL GetVersionEx (OSVERSIONINFOEX lpVersionInfo) {
-    if (IsUnicode) return GetVersionExW ((OSVERSIONINFOEXW)lpVersionInfo);
-    return GetVersionExA ((OSVERSIONINFOEXA)lpVersionInfo);
-}
-
-public static const int GetWindowLong (int /*long*/ hWnd, int nIndex) {
-    if (IsUnicode) return GetWindowLongW (hWnd, nIndex);
-    return GetWindowLongA (hWnd, nIndex);
-}
-
-public static const int /*long*/ GetWindowLongPtr (int /*long*/ hWnd, int nIndex) {
-    if (IsUnicode) return GetWindowLongPtrW (hWnd, nIndex);
-    return GetWindowLongPtrA (hWnd, nIndex);
-}
-
-public static const int GetWindowText (int /*long*/ hWnd, TCHAR lpString, int nMaxCount) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return GetWindowTextW (hWnd, lpString1, nMaxCount);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return GetWindowTextA (hWnd, lpString1, nMaxCount);
-}
-
-public static const int GetWindowTextLength (int /*long*/ hWnd) {
-    if (IsUnicode) return GetWindowTextLengthW (hWnd);
-    return GetWindowTextLengthA (hWnd);
-}
-
-public static const int GlobalAddAtom (TCHAR lpString) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return GlobalAddAtomW (lpString1);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return GlobalAddAtomA (lpString1);
-}
-
-public static final BOOL ImmGetCompositionFont (int /*long*/ hIMC, LOGFONT lplf) {
-    if (IsUnicode) return ImmGetCompositionFontW (hIMC, (LOGFONTW)lplf);
-    return ImmGetCompositionFontA (hIMC, (LOGFONTA)lplf);
-}
-
-public static final BOOL ImmSetCompositionFont (int /*long*/ hIMC, LOGFONT lplf) {
-    if (IsUnicode) return ImmSetCompositionFontW (hIMC, (LOGFONTW)lplf);
-    return ImmSetCompositionFontA (hIMC, (LOGFONTA)lplf);
-}
-
-public static const int ImmGetCompositionString (int /*long*/ hIMC, int dwIndex, TCHAR lpBuf, int dwBufLen) {
-    if (IsUnicode) {
-        char [] lpBuf1 = lpBuf is null ? null : lpBuf.chars;
-        return ImmGetCompositionStringW (hIMC, dwIndex, lpBuf1, dwBufLen);
-    }
-    byte [] lpBuf1 = lpBuf is null ? null : lpBuf.bytes;
-    return ImmGetCompositionStringA (hIMC, dwIndex, lpBuf1, dwBufLen);
-}
-
-public static final BOOL InsertMenu (int /*long*/ hMenu, int uPosition, int uFlags, int /*long*/ uIDNewItem, TCHAR lpNewItem) {
-    if (IsUnicode) {
-        char [] lpNewItem1 = lpNewItem is null ? null : lpNewItem.chars;
-        return InsertMenuW (hMenu, uPosition, uFlags, uIDNewItem, lpNewItem1);
-    }
-    byte [] lpNewItem1 = lpNewItem is null ? null : lpNewItem.bytes;
-    return InsertMenuA (hMenu, uPosition, uFlags, uIDNewItem, lpNewItem1);
-}
-
-public static final BOOL InsertMenuItem (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii) {
-    if (IsUnicode) return InsertMenuItemW (hMenu, uItem, fByPosition, lpmii);
-    return InsertMenuItemA (hMenu, uItem, fByPosition, lpmii);
-}
-
-public static const int /*long*/ LoadBitmap (int /*long*/ hInstance, int /*long*/ lpBitmapName) {
-    if (IsUnicode) return LoadBitmapW (hInstance, lpBitmapName);
-    return LoadBitmapA (hInstance, lpBitmapName);
-}
-
-public static const int /*long*/ LoadCursor (int /*long*/ hInstance, int /*long*/ lpCursorName) {
-    if (IsUnicode) return LoadCursorW (hInstance, lpCursorName);
-    return LoadCursorA (hInstance, lpCursorName);
-}
-
-public static const int /*long*/ LoadIcon (int /*long*/ hInstance, int /*long*/ lpIconName) {
-    if (IsUnicode) return LoadIconW (hInstance, lpIconName);
-    return LoadIconA (hInstance, lpIconName);
-}
-
-public static const int /*long*/ LoadImage (int /*long*/ hinst, TCHAR lpszName, int uType, int cxDesired, int cyDesired, int fuLoad) {
-    if (IsUnicode) {
-        char [] lpszName1 = lpszName is null ? null : lpszName.chars;
-        return LoadImageW (hinst, lpszName1, uType, cxDesired, cyDesired, fuLoad);
-    }
-    byte [] lpszName1 = lpszName is null ? null : lpszName.bytes;
-    return LoadImageA (hinst, lpszName1, uType, cxDesired, cyDesired, fuLoad);
-}
-
-public static const int /*long*/ LoadImage (int /*long*/ hinst, int /*long*/ lpszName, int uType, int cxDesired, int cyDesired, int fuLoad) {
-    if (IsUnicode) return LoadImageW (hinst, lpszName, uType, cxDesired, cyDesired, fuLoad);
-    return LoadImageA (hinst, lpszName, uType, cxDesired, cyDesired, fuLoad);
-}
-
-public static const int /*long*/ LoadLibrary (TCHAR lpLibFileName) {
-    if (IsUnicode) {
-        char [] lpLibFileName1 = lpLibFileName is null ? null : lpLibFileName.chars;
-        return LoadLibraryW (lpLibFileName1);
-    }
-    byte [] lpLibFileName1 = lpLibFileName is null ? null : lpLibFileName.bytes;
-    return LoadLibraryA (lpLibFileName1);
-}
-
-public static const int LoadString (int /*long*/ hinst, int uID, TCHAR lpBuffer, int nBufferMax) {
-    if (IsUnicode) {
-        char [] lpBuffer1 = lpBuffer is null ? null : lpBuffer.chars;
-        return LoadStringW (hinst, uID, lpBuffer1, nBufferMax);
-    }
-    byte [] lpBuffer1 = lpBuffer is null ? null : lpBuffer.bytes;
-    return LoadStringA (hinst, uID, lpBuffer1, nBufferMax);
-}
-
-public static const int MapVirtualKey (int uCode, int uMapType) {
-    if (IsUnicode) return MapVirtualKeyW (uCode, uMapType);
-    return MapVirtualKeyA (uCode, uMapType);
-}
-
-public static const int MessageBox (int /*long*/ hWnd, TCHAR lpText, TCHAR lpCaption, int uType) {
-    if (IsUnicode) {
-        char [] lpText1 = lpText is null ? null : lpText.chars;
-        char [] lpCaption1 = lpCaption is null ? null : lpCaption.chars;
-        return MessageBoxW (hWnd, lpText1, lpCaption1, uType);
-    }
-    byte [] lpText1 = lpText is null ? null : lpText.bytes;
-    byte [] lpCaption1 = lpCaption is null ? null : lpCaption.bytes;
-    return MessageBoxA (hWnd, lpText1, lpCaption1, uType);
-}
-
-public static final void MoveMemory (int /*long*/ Destination, TCHAR Source, int Length) {
-    if (IsUnicode) {
-        char [] Source1 = Source is null ? null : Source.chars;
-        MoveMemory (Destination, Source1, Length);
-    } else {
-        byte [] Source1 = Source is null ? null : Source.bytes;
-        MoveMemory (Destination, Source1, Length);
-    }
-}
-
-public static final void MoveMemory (TCHAR Destination, int /*long*/ Source, int Length) {
-    if (IsUnicode) {
-        char [] Destination1 = Destination is null ? null : Destination.chars;
-        MoveMemory (Destination1, Source, Length);
-    } else {
-        byte [] Destination1 = Destination is null ? null : Destination.bytes;
-        MoveMemory (Destination1, Source, Length);
-    }
-}
-
-public static final void MoveMemory (int /*long*/ Destination, LOGFONT Source, int Length) {
-    if (IsUnicode) {
-        MoveMemory (Destination, (LOGFONTW)Source, Length);
-    } else {
-        MoveMemory (Destination, (LOGFONTA)Source, Length);
-    }
-}
-
-public static final void MoveMemory (LOGFONT Destination, int /*long*/ Source, int Length) {
-    if (IsUnicode) {
-        MoveMemory ((LOGFONTW)Destination, Source, Length);
-    } else {
-        MoveMemory ((LOGFONTA)Destination, Source, Length);
-    }
-}
-
-public static final void MoveMemory (int /*long*/ Destination, NMTTDISPINFO Source, int Length) {
-    if (IsUnicode) {
-        MoveMemory (Destination, (NMTTDISPINFOW)Source, Length);
-    } else {
-        MoveMemory (Destination, (NMTTDISPINFOA)Source, Length);
-    }
-}
-
-public static final void MoveMemory (NMTTDISPINFO Destination, int /*long*/ Source, int Length) {
-    if (IsUnicode) {
-        MoveMemory ((NMTTDISPINFOW)Destination, Source, Length);
-    } else {
-        MoveMemory ((NMTTDISPINFOA)Destination, Source, Length);
-    }
-}
-
-public static final void MoveMemory (TEXTMETRIC Destination, int /*long*/ Source, int Length) {
-    if (IsUnicode) {
-        MoveMemory ((TEXTMETRICW)Destination, Source, Length);
-    } else {
-        MoveMemory ((TEXTMETRICA)Destination, Source, Length);
-    }
-}
-
-public static final BOOL PeekMessage (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax, int wRemoveMsg) {
-    if (IsUnicode) return PeekMessageW (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg);
-    return PeekMessageA (lpMsg, hWnd, wMsgFilterMin, wMsgFilterMax, wRemoveMsg);
-}
-
-public static final BOOL PostMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return PostMessageW (hWnd, Msg, wParam, lParam);
-    return PostMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static final BOOL PostThreadMessage (int idThread, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return PostThreadMessageW (idThread, Msg, wParam, lParam);
-    return PostThreadMessageA (idThread, Msg, wParam, lParam);
-}
-
-public static final BOOL PrintDlg (PRINTDLG lppd) {
-    if (IsUnicode) return PrintDlgW (lppd);
-    return PrintDlgA (lppd);
-}
-
-public static const int RegEnumKeyEx (int /*long*/ hKey, int dwIndex, TCHAR lpName, int [] lpcName, int [] lpReserved, TCHAR lpClass, int [] lpcClass, FILETIME lpftLastWriteTime) {
-    if (IsUnicode) {
-        char [] lpName1 = lpName is null ? null : lpName.chars;
-        char [] lpClass1 = lpClass is null ? null : lpClass.chars;
-        return RegEnumKeyExW (hKey, dwIndex, lpName1, lpcName, lpReserved, lpClass1, lpcClass, lpftLastWriteTime);
-    }
-    byte [] lpName1 = lpName is null ? null : lpName.bytes;
-    byte [] lpClass1 = lpClass is null ? null : lpClass.bytes;
-    return RegEnumKeyExA (hKey, dwIndex, lpName1, lpcName, lpReserved, lpClass1, lpcClass, lpftLastWriteTime);
-}
-
-public static const int RegisterClass (WNDCLASS lpWndClass) {
-    if (IsUnicode) return RegisterClassW (lpWndClass);
-    return RegisterClassA (lpWndClass);
-}
-
-public static const int RegisterClipboardFormat (TCHAR lpszFormat) {
-    if (IsUnicode) {
-        char [] lpszFormat1 = lpszFormat is null ? null : lpszFormat.chars;
-        return RegisterClipboardFormatW (lpszFormat1);
-    }
-    byte [] lpszFormat1 = lpszFormat is null ? null : lpszFormat.bytes;
-    return RegisterClipboardFormatA (lpszFormat1);
-}
-
-public static const int RegisterWindowMessage (TCHAR lpString) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return RegisterWindowMessageW (lpString1);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return RegisterWindowMessageA (lpString1);
-}
-
-public static const int RegOpenKeyEx (int /*long*/ hKey, TCHAR lpSubKey, int ulOptions, int samDesired, int /*long*/[] phkResult) {
-    if (IsUnicode) {
-        char [] lpSubKey1 = lpSubKey is null ? null : lpSubKey.chars;
-        return RegOpenKeyExW (hKey, lpSubKey1, ulOptions, samDesired, phkResult);
-    }
-    byte [] lpSubKey1 = lpSubKey is null ? null : lpSubKey.bytes;
-    return RegOpenKeyExA (hKey, lpSubKey1, ulOptions, samDesired, phkResult);
-}
-
-public static const int RegQueryInfoKey (int /*long*/ hKey, int /*long*/ lpClass, int[] lpcbClass, int /*long*/ lpReserved, int[] lpSubKeys, int[] lpcbMaxSubKeyLen, int[] lpcbMaxClassLen, int[] lpcValues, int[] lpcbMaxValueNameLen, int[] lpcbMaxValueLen, int[] lpcbSecurityDescriptor, int /*long*/ lpftLastWriteTime){
-    if (IsUnicode) return RegQueryInfoKeyW (hKey, lpClass, lpcbClass, lpReserved, lpSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues, lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor, lpftLastWriteTime);
-    return RegQueryInfoKeyA (hKey, lpClass, lpcbClass, lpReserved, lpSubKeys, lpcbMaxSubKeyLen, lpcbMaxClassLen, lpcValues, lpcbMaxValueNameLen, lpcbMaxValueLen, lpcbSecurityDescriptor, lpftLastWriteTime);
-}
-
-public static const int RegQueryValueEx (int /*long*/ hKey, TCHAR lpValueName, int /*long*/ lpReserved, int[] lpType, TCHAR lpData, int[] lpcbData) {
-    if (IsUnicode) {
-        char [] lpValueName1 = lpValueName is null ? null : lpValueName.chars;
-        char [] lpData1 = lpData is null ? null : lpData.chars;
-        return RegQueryValueExW (hKey, lpValueName1, lpReserved, lpType, lpData1, lpcbData);
-    }
-    byte [] lpValueName1 = lpValueName is null ? null : lpValueName.bytes;
-    byte [] lpData1 = lpData is null ? null : lpData.bytes;
-    return RegQueryValueExA (hKey, lpValueName1, lpReserved, lpType, lpData1, lpcbData);
-}
-
-public static const int RegQueryValueEx (int /*long*/ hKey, TCHAR lpValueName, int /*long*/ lpReserved, int[] lpType, int [] lpData, int[] lpcbData) {
-    if (IsUnicode) {
-        char [] lpValueName1 = lpValueName is null ? null : lpValueName.chars;
-        return RegQueryValueExW (hKey, lpValueName1, lpReserved, lpType, lpData, lpcbData);
-    }
-    byte [] lpValueName1 = lpValueName is null ? null : lpValueName.bytes;
-    return RegQueryValueExA (hKey, lpValueName1, lpReserved, lpType, lpData, lpcbData);
-}
-
-public static const int /*long*/ RemoveProp  (int /*long*/ hWnd, int /*long*/ lpString){
-    if (IsUnicode) return RemovePropW (hWnd, lpString);
-    return RemovePropA (hWnd, lpString);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TCHAR lParam) {
-    if (IsUnicode) {
-        char [] lParam1 = lParam is null ? null : lParam.chars;
-        return SendMessageW (hWnd, Msg, wParam, lParam1);
-    }
-    byte [] lParam1 = lParam is null ? null : lParam.bytes;
-    return SendMessageA (hWnd, Msg, wParam, lParam1);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int [] wParam, int [] lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SIZE lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ [] wParam, int /*long*/ lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int [] lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, char [] lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, short [] lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LITEM lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVCOLUMN lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVHITTESTINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVITEM lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, MARGINS lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, POINT lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, REBARBANDINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, RECT lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SYSTEMTIME lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTON lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTONINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TCITEM lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TOOLINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVHITTESTINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVINSERTSTRUCT lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVITEM lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVSORTCB lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, UDACCEL lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDHITTESTINFO lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDITEM lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDLAYOUT lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static const int /*long*/ SendMessage (int /*long*/ hWnd, int Msg, int /*long*/ wParam, BUTTON_IMAGELIST lParam) {
-    if (IsUnicode) return SendMessageW (hWnd, Msg, wParam, lParam);
-    return SendMessageA (hWnd, Msg, wParam, lParam);
-}
-
-public static final BOOL SetMenuItemInfo (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii) {
-    if (IsUnicode) return SetMenuItemInfoW (hMenu, uItem, fByPosition, lpmii);
-    return SetMenuItemInfoA (hMenu, uItem, fByPosition, lpmii);
-}
-
-public static BOOL SetProp (int /*long*/ hWnd, int /*long*/ lpString, int /*long*/ hData) {
-    if (IsUnicode) return SetPropW (hWnd, lpString, hData);
-    return SetPropA (hWnd, lpString, hData);
-}
-
-public static const int SetWindowLong (int /*long*/ hWnd, int nIndex, int dwNewLong) {
-    if (IsUnicode) return SetWindowLongW (hWnd, nIndex, dwNewLong);
-    return SetWindowLongA (hWnd, nIndex, dwNewLong);
-}
-
-public static const int /*long*/ SetWindowLongPtr (int /*long*/ hWnd, int nIndex, int /*long*/ dwNewLong) {
-    if (IsUnicode) return SetWindowLongPtrW (hWnd, nIndex, dwNewLong);
-    return SetWindowLongPtrA (hWnd, nIndex, dwNewLong);
-}
-
-public static const int /*long*/ SetWindowsHookEx (int idHook, int /*long*/ lpfn, int /*long*/ hMod, int dwThreadId) {
-    if (IsUnicode) return SetWindowsHookExW (idHook, lpfn, hMod, dwThreadId);
-    return SetWindowsHookExA (idHook, lpfn, hMod, dwThreadId);
-}
-
-public static final BOOL SetWindowText (int /*long*/ hWnd, TCHAR lpString) {
-    if (IsUnicode) {
-        char [] lpString1 = lpString is null ? null : lpString.chars;
-        return SetWindowTextW (hWnd, lpString1);
-    }
-    byte [] lpString1 = lpString is null ? null : lpString.bytes;
-    return SetWindowTextA (hWnd, lpString1);
-}
-
-public static const int /*long*/ SHBrowseForFolder (BROWSEINFO lpbi) {
-    if (IsUnicode) return SHBrowseForFolderW (lpbi);
-    return SHBrowseForFolderA (lpbi);
-}
-
-public static final BOOL ShellExecuteEx (SHELLEXECUTEINFO lpExecInfo) {
-    if (IsUnicode) return ShellExecuteExW (lpExecInfo);
-    return ShellExecuteExA (lpExecInfo);
-}
-
-public static int /*long*/ SHGetFileInfo (TCHAR pszPath, int dwFileAttributes, SHFILEINFO psfi, int cbFileInfo, int uFlags) {
-    if (IsUnicode) {
-        char [] pszPath1 = pszPath is null ? null : pszPath.chars;
-        return SHGetFileInfoW (pszPath1, dwFileAttributes, (SHFILEINFOW) psfi, cbFileInfo, uFlags);
-    }
-    byte [] pszPath1 = pszPath is null ? null : pszPath.bytes;
-    return SHGetFileInfoA (pszPath1, dwFileAttributes, (SHFILEINFOA) psfi, cbFileInfo, uFlags);
-}
-
-public static final BOOL Shell_NotifyIcon (int dwMessage, NOTIFYICONDATA lpData) {
-    if (IsUnicode) return Shell_NotifyIconW (dwMessage, (NOTIFYICONDATAW)lpData);
-    return Shell_NotifyIconA (dwMessage, (NOTIFYICONDATAA)lpData);
-}
-
-public static final BOOL SHGetPathFromIDList (int /*long*/ pidl, TCHAR pszPath) {
-    if (IsUnicode) {
-        char [] pszPath1 = pszPath is null ? null : pszPath.chars;
-        return SHGetPathFromIDListW (pidl, pszPath1);
-    }
-    byte [] pszPath1 = pszPath is null ? null : pszPath.bytes;
-    return SHGetPathFromIDListA (pidl, pszPath1);
-}
-
-public static const int StartDoc (int /*long*/ hdc, DOCINFO lpdi) {
-    if (IsUnicode) return StartDocW (hdc, lpdi);
-    return StartDocA (hdc, lpdi);
-}
-
-public static final BOOL SystemParametersInfo (int uiAction, int uiParam, RECT pvParam, int fWinIni) {
-    if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
-    return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
-}
-
-public static final BOOL SystemParametersInfo (int uiAction, int uiParam, HIGHCONTRAST pvParam, int fWinIni) {
-    if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
-    return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
-}
-
-public static final BOOL SystemParametersInfo (int uiAction, int uiParam, NONCLIENTMETRICS pvParam, int fWinIni) {
-    if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, (NONCLIENTMETRICSW)pvParam, fWinIni);
-    return SystemParametersInfoA (uiAction, uiParam, (NONCLIENTMETRICSA)pvParam, fWinIni);
-}
-
-public static final BOOL SystemParametersInfo (int uiAction, int uiParam, int [] pvParam, int fWinIni) {
-    if (IsUnicode) return SystemParametersInfoW (uiAction, uiParam, pvParam, fWinIni);
-    return SystemParametersInfoA (uiAction, uiParam, pvParam, fWinIni);
-}
-
-public static const int TranslateAccelerator (int /*long*/ hWnd, int /*long*/ hAccTable, MSG lpMsg) {
-    if (IsUnicode) return TranslateAcceleratorW (hWnd, hAccTable, lpMsg);
-    return TranslateAcceleratorA (hWnd, hAccTable, lpMsg);
-}
-
-public static final BOOL UnregisterClass (TCHAR lpClassName, int /*long*/ hInstance) {
-    if (IsUnicode) {
-        char [] lpClassName1 = lpClassName is null ? null : lpClassName.chars;
-        return UnregisterClassW (lpClassName1, hInstance);
-    }
-    byte [] lpClassName1 = lpClassName is null ? null : lpClassName.bytes;
-    return UnregisterClassA (lpClassName1, hInstance);
-}
-
-public static final short VkKeyScan (short ch) {
-    if (IsUnicode) return VkKeyScanW (ch);
-    return VkKeyScanA (ch);
-}
-
-/** Natives */
-public static final native int AbortDoc (int /*long*/ hdc);
-public static final native BOOL ActivateActCtx (int /*long*/ hActCtx, int /*long*/ [] lpCookie);
-public static final native int /*long*/ ActivateKeyboardLayout(int /*long*/ hkl, int Flags);
-public static final native int AddFontResourceExW(char[] lpszFilename, int fl, int /*long*/ pdv);
-public static final native int AddFontResourceExA(byte[] lpszFilename, int fl, int /*long*/ pdv);
-public static final native BOOL AdjustWindowRectEx (RECT lpRect, int dwStyle, BOOL bMenu, int dwExStyle);
-public static final native BOOL AlphaBlend(int /*long*/ hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int nHeightDest, int /*long*/ hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, BLENDFUNCTION blendFunction);
-public static final native BOOL AnimateWindow(int /*long*/ hwnd, int dwTime, int dwFlags);
-public static final native BOOL Arc (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXStartArc, int nYStartArc, int nXEndArc, int nYEndArc);
-public static final native int AssocQueryStringA(int flags, int str, byte[] pszAssoc, byte[] pszExtra, byte[] pszOut, int[] pcchOut);
-public static final native int AssocQueryStringW(int flags, int str, char[] pszAssoc, char[] pszExtra, char[] pszOut, int[] pcchOut);
-public static final native BOOL AttachThreadInput (int idAttach, int idAttachTo, BOOL fAttach);
-public static final native int /*long*/ BeginBufferedPaint (int /*long*/ hdcTarget, RECT prcTarget, int dwFormat, BP_PAINTPARAMS pPaintParams, int /*long*/ [] phdc);
-public static final native int /*long*/ BeginDeferWindowPos (int nNumWindows);
-public static final native int /*long*/ BeginPaint (int /*long*/ hWnd, PAINTSTRUCT lpPaint);
-public static final native BOOL BeginPath(int /*long*/ hdc);
-public static final native BOOL BitBlt (int /*long*/ hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, int /*long*/ hdcSrc, int nXSrc, int nYSrc, int dwRop);
-public static final native BOOL BringWindowToTop (int /*long*/ hWnd);
-public static final native int BufferedPaintInit ();
-public static final native int BufferedPaintSetAlpha (int /*long*/ hBufferedPaint, RECT prc, byte alpha);
-public static final native int BufferedPaintUnInit ();
-public static final native int Call (int /*long*/ address, DLLVERSIONINFO arg0);
-public static final native int /*long*/ CallNextHookEx(int /*long*/ hhk, int nCode, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ CallWindowProcW (int /*long*/ lpPrevWndFunc, int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ CallWindowProcA (int /*long*/ lpPrevWndFunc, int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native short CharLowerW (short ch);
-public static final native short CharLowerA (short ch);
-public static final native short CharUpperW (short ch);
-public static final native short CharUpperA (short ch);
-public static final native BOOL CheckMenuItem (int /*long*/ hmenu, int uIDCheckItem, int uCheck);
-public static final native BOOL ChooseColorW (CHOOSECOLOR lpcc);
-public static final native BOOL ChooseColorA (CHOOSECOLOR lpcc);
-public static final native BOOL ChooseFontW (CHOOSEFONT chooseFont);
-public static final native BOOL ChooseFontA (CHOOSEFONT chooseFont);
-public static final native BOOL ClientToScreen (int /*long*/ hWnd, POINT lpPoint);
-public static final native BOOL CloseClipboard ();
-public static final native BOOL CloseHandle (int /*long*/ hObject);
-public static final native int CloseThemeData (int /*long*/ hTheme);
-public static final native int CoCreateInstance (byte[] rclsid, int /*long*/ pUnkOuter, int dwClsContext, byte[] riid, int /*long*/[] ppv);
-public static final native int CoInternetIsFeatureEnabled (int FeatureEntry, int dwFlags);
-public static final native int CoInternetSetFeatureEnabled (int FeatureEntry, int dwFlags, BOOL fEnable);
-public static final native int CombineRgn (int /*long*/ hrgnDest, int /*long*/ hrgnSrc1, int /*long*/ hrgnSrc2, int fnCombineMode);
-public static final native BOOL CommandBar_AddAdornments (int /*long*/ hwndCB, int dwFlags, int dwReserved);
-public static final native int /*long*/ CommandBar_Create (int /*long*/ hInst, int /*long*/ hwndParent, int idCmdBar);
-public static final native void CommandBar_Destroy (int /*long*/ hwndCB);
-public static final native BOOL CommandBar_DrawMenuBar (int /*long*/ hwndCB, int iButton);
-public static final native int CommandBar_Height (int /*long*/ hdnwCB);
-public static final native BOOL CommandBar_InsertMenubarEx (int /*long*/ hwndCB, int /*long*/ hInst, int /*long*/ pszMenu, int iButton);
-public static final native BOOL CommandBar_Show (int /*long*/ hwndCB, BOOL fShow);
-public static final native int CommDlgExtendedError ();
-public static final native int /*long*/ CopyImage (int /*long*/ hImage, int uType, int cxDesired, int cyDesired, int fuFlags);
-public static final native int /*long*/ CreateAcceleratorTableW (byte [] lpaccl, int cEntries);
-public static final native int /*long*/ CreateAcceleratorTableA (byte [] lpaccl, int cEntries);
-public static final native int /*long*/ CreateActCtxW (ACTCTX pActCtx);
-public static final native int /*long*/ CreateActCtxA (ACTCTX pActCtx);
-public static final native int /*long*/ CreateBitmap (int nWidth, int nHeight, int cPlanes, int cBitsPerPel, byte [] lpvBits);
-public static final native BOOL CreateCaret (int /*long*/ hWnd, int /*long*/ hBitmap, int nWidth, int nHeight);
-public static final native int /*long*/ CreateCompatibleBitmap (int /*long*/ hdc, int nWidth, int nHeight);
-public static final native int /*long*/ CreateCompatibleDC (int /*long*/ hdc);
-public static final native int /*long*/ CreateCursor (int /*long*/ hInst, int xHotSpot, int yHotSpot, int nWidth, int nHeight, byte [] pvANDPlane, byte [] pvXORPlane);
-public static final native int /*long*/ CreateDCW (char [] lpszDriver, char [] lpszDevice, int /*long*/ lpszOutput, int /*long*/ lpInitData);
-public static final native int /*long*/ CreateDCA (byte [] lpszDriver, byte [] lpszDevice, int /*long*/ lpszOutput, int /*long*/ lpInitData);
-public static final native int /*long*/ CreateDIBSection(int /*long*/ hdc, byte[] pbmi, int iUsage, int /*long*/[] ppvBits, int /*long*/ hSection, int dwOffset);
-public static final native int /*long*/ CreateFontIndirectW (int /*long*/ lplf);
-public static final native int /*long*/ CreateFontIndirectA (int /*long*/ lplf);
-public static final native int /*long*/ CreateFontIndirectW (LOGFONTW lplf);
-public static final native int /*long*/ CreateFontIndirectA (LOGFONTA lplf);
-public static final native int /*long*/ CreateIconIndirect (ICONINFO lplf);
-public static final native int /*long*/ CreateMenu ();
-public static final native int /*long*/ CreatePalette (byte[] logPalette);
-public static final native int /*long*/ CreatePatternBrush (int /*long*/ colorRef);
-public static final native int /*long*/ CreatePen (int fnPenStyle, int nWidth, int crColor);
-public static final native int /*long*/ CreatePolygonRgn(int[] lppt, int cPoints, int fnPolyFillMode);
-public static final native int /*long*/ CreatePopupMenu ();
-public static final native BOOL CreateProcessW (int /*long*/ lpApplicationName, int /*long*/ lpCommandLine, int /*long*/ lpProcessAttributes, int /*long*/ lpThreadAttributes, BOOL bInheritHandles, int dwCreationFlags, int /*long*/ lpEnvironment, int /*long*/ lpCurrentDirectory, STARTUPINFO lpStartupInfo, PROCESS_INFORMATION lpProcessInformation);
-public static final native BOOL CreateProcessA (int /*long*/ lpApplicationName, int /*long*/ lpCommandLine, int /*long*/ lpProcessAttributes, int /*long*/ lpThreadAttributes, BOOL bInheritHandles, int dwCreationFlags, int /*long*/ lpEnvironment, int /*long*/ lpCurrentDirectory, STARTUPINFO lpStartupInfo, PROCESS_INFORMATION lpProcessInformation);
-public static final native int /*long*/ CreateRectRgn (int left, int top, int right, int bottom);
-public static final native int /*long*/ CreateSolidBrush (int colorRef);
-public static final native int CreateStreamOnHGlobal(int /*long*/ hGlobal, BOOL fDeleteOnRelease, int /*long*/[] ppstm);
-public static final native int /*long*/ CreateWindowExW (int dwExStyle, char [] lpClassName, char [] lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int /*long*/ hWndParent, int /*long*/ hMenu, int /*long*/ hInstance, CREATESTRUCT lpParam);
-public static final native int /*long*/ CreateWindowExA (int dwExStyle, byte [] lpClassName, byte [] lpWindowName, int dwStyle, int X, int Y, int nWidth, int nHeight, int /*long*/ hWndParent, int /*long*/ hMenu, int /*long*/ hInstance, CREATESTRUCT lpParam);
-public static final native int /*long*/ DeferWindowPos (int /*long*/ hWinPosInfo, int /*long*/ hWnd, int /*long*/ hWndInsertAfter, int X, int Y, int cx, int cy, int uFlags);
-public static final native int /*long*/ DefMDIChildProcW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ DefMDIChildProcA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ DefFrameProcW (int /*long*/ hWnd, int /*long*/ hWndMDIClient, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ DefFrameProcA (int /*long*/ hWnd, int /*long*/ hWndMDIClient, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ DefWindowProcW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ DefWindowProcA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native BOOL DeleteDC (int /*long*/ hdc);
-public static final native BOOL DeleteMenu (int /*long*/ hMenu, int uPosition, int uFlags);
-public static final native BOOL DeleteObject (int /*long*/ hGdiObj);
-public static final native BOOL DestroyAcceleratorTable (int /*long*/ hAccel);
-public static final native BOOL DestroyCaret ();
-public static final native BOOL DestroyCursor (int /*long*/ hCursor);
-public static final native BOOL DestroyIcon (int /*long*/ hIcon);
-public static final native BOOL DestroyMenu (int /*long*/ hMenu);
-public static final native BOOL DestroyWindow (int /*long*/ hWnd);
-public static final native int /*long*/ DispatchMessageW (MSG lpmsg);
-public static final native int /*long*/ DispatchMessageA (MSG lpmsg);
-public static final native BOOL DragDetect (int /*long*/ hwnd, POINT pt);
-public static final native void DragFinish (int /*long*/ hDrop);
-public static final native int DragQueryFileA (int /*long*/ hDrop, int iFile, byte[] lpszFile, int cch);
-public static final native int DragQueryFileW (int /*long*/ hDrop, int iFile, char[] lpszFile, int cch);
-public static final native BOOL DrawAnimatedRects (int /*long*/ hwnd, int idAni, RECT lprcFrom, RECT lprcTo);
-public static final native BOOL DrawEdge (int /*long*/ hdc, RECT qrc, int edge, int grfFlags);
-public static final native BOOL DrawFocusRect (int /*long*/ hDC, RECT lpRect);
-public static final native BOOL DrawFrameControl (int /*long*/ hdc, RECT lprc, int uType, int uState);
-public static final native BOOL DrawIconEx (int /*long*/ hdc, int xLeft, int yTop, int /*long*/ hIcon, int cxWidth, int cyWidth, int istepIfAniCur, int /*long*/ hbrFlickerFreeDraw, int diFlags);
-public static final native BOOL DrawMenuBar (int /*long*/ hWnd);
-public static final native BOOL DrawStateW (int /*long*/ hdc, int /*long*/ hbr, int /*long*/ lpOutputFunc, int /*long*/ lData, int /*long*/ wData, int x, int y, int cx, int cy, int fuFlags);
-public static final native BOOL DrawStateA (int /*long*/ hdc, int /*long*/ hbr, int /*long*/ lpOutputFunc, int /*long*/ lData, int /*long*/ wData, int x, int y, int cx, int cy, int fuFlags);
-public static final native int DrawTextW (int /*long*/ hDC, char [] lpString, int nCount, RECT lpRect, int uFormat);
-public static final native int DrawTextA (int /*long*/ hDC, byte [] lpString, int nCount, RECT lpRect, int uFormat);
-public static final native int DrawThemeBackground (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT pRect, RECT pClipRect);
-public static final native int DrawThemeEdge (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT pDestRect, int uEdge, int uFlags, RECT pContentRect);
-public static final native int DrawThemeIcon (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT pRect, int /*long*/ himl, int iImageIndex);
-public static final native int DrawThemeParentBackground (int /*long*/ hwnd, int /*long*/ hdc, RECT prc);
-public static final native int DrawThemeText (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, char[] pszText, int iCharCount, int dwTextFlags, int dwTextFlags2, RECT pRect);
-public static final native int DwmExtendFrameIntoClientArea (int /*long*/ hWnd, MARGINS pMarInset);
-public static final native BOOL Ellipse (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
-public static final native BOOL EnableMenuItem (int /*long*/ hMenu, int uIDEnableItem, int uEnable);
-public static final native BOOL EnableScrollBar (int /*long*/ hWnd, int wSBflags, int wArrows);
-public static final native BOOL EnableWindow (int /*long*/ hWnd, BOOL bEnable);
-public static final native BOOL EnumSystemLanguageGroupsW(int /*long*/ pLangGroupEnumProc, int dwFlags, int /*long*/ lParam);
-public static final native BOOL EnumSystemLanguageGroupsA(int /*long*/ pLangGroupEnumProc, int dwFlags, int /*long*/ lParam);
-public static final native BOOL EnumSystemLocalesW (int /*long*/ lpLocaleEnumProc, int dwFlags);
-public static final native BOOL EnumSystemLocalesA (int /*long*/ lpLocaleEnumProc, int dwFlags);
-public static final native BOOL EndDeferWindowPos (int /*long*/ hWinPosInfo);
-public static final native int EndBufferedPaint (int /*long*/ hBufferedPaint, BOOL fUpdateTarget);
-public static final native int EndDoc (int /*long*/ hdc);
-public static final native int EndPage (int /*long*/ hdc);
-public static final native int EndPaint (int /*long*/ hWnd, PAINTSTRUCT lpPaint);
-public static final native BOOL EndPath(int /*long*/ hdc);
-public static final native BOOL EnumDisplayMonitors (int /*long*/ hdc, RECT lprcClip, int /*long*/ lpfnEnum, int dwData);
-public static final native int EnumFontFamiliesW (int /*long*/ hdc, char [] lpszFamily, int /*long*/ lpEnumFontFamProc, int /*long*/ lParam);
-public static final native int EnumFontFamiliesA (int /*long*/ hdc, byte [] lpszFamily, int /*long*/ lpEnumFontFamProc, int /*long*/ lParam);
-public static final native int EnumFontFamiliesExW (int /*long*/ hdc, LOGFONTW lpLogfont, int /*long*/ lpEnumFontFamExProc, int /*long*/ lParam, int dwFlags);
-public static final native int EnumFontFamiliesExA (int /*long*/ hdc, LOGFONTA lpLogfont, int /*long*/ lpEnumFontFamExProc, int /*long*/ lParam, int dwFlags);
-public static final native BOOL EqualRect (RECT lprc1, RECT lprc2);
-public static final native BOOL EqualRgn (int /*long*/ hSrcRgn1, int /*long*/ hSrcRgn2);
-public static final native int ExcludeClipRect (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
-public static final native int ExpandEnvironmentStringsW (char [] lpSrc, char [] lsDst, int nSize);
-public static final native int ExpandEnvironmentStringsA (byte [] lpSrc, byte [] lsDst, int nSize);
-public static final native int /*long*/ ExtCreatePen (int dwPenStyle, int dwWidth, LOGBRUSH lplb, int dwStyleCount, int[] lpStyle);
-public static final native int /*long*/ ExtCreateRegion (float[] lpXform, int nCount, int[] lpRgnData);
-public static final native BOOL ExtTextOutW (int /*long*/ hdc, int X, int Y, int fuOptions, RECT lprc, char[] lpString, int cbCount, int[] lpDx);
-public static final native BOOL ExtTextOutA (int /*long*/ hdc, int X, int Y, int fuOptions, RECT lprc, byte[] lpString, int cbCount, int[] lpDx);
-public static final native int ExtractIconExW (char [] lpszFile, int nIconIndex, int /*long*/ [] phiconLarge, int /*long*/ [] phiconSmall, int nIcons);
-public static final native int ExtractIconExA (byte [] lpszFile, int nIconIndex, int /*long*/ [] phiconLarge, int /*long*/ [] phiconSmall, int nIcons);
-public static final native int FillRect (int /*long*/ hDC, RECT lprc, int /*long*/ hbr);
-public static final native BOOL FillPath (int /*long*/ hdc);
-public static final native int /*long*/ FindWindowA (byte [] lpClassName, byte [] lpWindowName);
-public static final native int /*long*/ FindWindowW (char [] lpClassName, char [] lpWindowName);
-public static final native int FormatMessageA (int dwFlags, int /*long*/ lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int /*long*/ Arguments);
-public static final native int FormatMessageW (int dwFlags, int /*long*/ lpSource, int dwMessageId, int dwLanguageId, int[] lpBuffer, int nSize, int /*long*/ Arguments);
-public static final native BOOL FreeLibrary (int /*long*/ hLibModule);
-public static final native int GdiSetBatchLimit (int dwLimit);
-public static final native int GetACP ();
-public static final native short GetAsyncKeyState (int nVirtKey);
-public static final native int /*long*/ GetActiveWindow ();
-public static final native int GetBkColor (int /*long*/ hDC);
-public static final native int /*long*/ GetCapture ();
-public static final native BOOL GetCaretPos (POINT lpPoint);
-public static final native BOOL GetCharABCWidthsA (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpabc);
-public static final native BOOL GetCharABCWidthsW (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpabc);
-public static final native int GetCharacterPlacementW (int /*long*/ hdc, char[] lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags);
-public static final native int GetCharacterPlacementA (int /*long*/ hdc, byte[] lpString, int nCount, int nMaxExtent, GCP_RESULTS lpResults, int dwFlags);
-public static final native BOOL GetCharWidthA (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpBuffer);
-public static final native BOOL GetCharWidthW (int /*long*/ hdc, int iFirstChar, int iLastChar, int [] lpBuffer);
-public static final native BOOL GetClassInfoW (int /*long*/ hInstance, char [] lpClassName, WNDCLASS lpWndClass);
-public static final native BOOL GetClassInfoA (int /*long*/ hInstance, byte [] lpClassName, WNDCLASS lpWndClass);
-public static final native int GetClassNameW (int /*long*/ hWnd, char [] lpClassName, int nMaxCount);
-public static final native int GetClassNameA (int /*long*/ hWnd, byte [] lpClassName, int nMaxCount);
-public static final native BOOL GetClientRect (int /*long*/ hWnd, RECT lpRect);
-public static final native int /*long*/ GetClipboardData (int uFormat);
-public static final native int GetClipboardFormatNameA (int format, byte[] lpszFormatName, int cchMaxCount);
-public static final native int GetClipboardFormatNameW (int format, char[] lpszFormatName, int cchMaxCount);
-public static final native int GetClipBox (int /*long*/ hdc, RECT lprc);
-public static final native int GetClipRgn (int /*long*/ hdc, int /*long*/ hrgn);
-public static final native BOOL GetComboBoxInfo (int /*long*/ hwndCombo, COMBOBOXINFO pcbi);
-public static final native int /*long*/ GetCurrentObject (int /*long*/ hdc, int uObjectType);
-public static final native int GetCurrentProcessId ();
-public static final native int GetCurrentThreadId ();
-public static final native int /*long*/ GetCursor ();
-public static final native BOOL GetCursorPos (POINT lpPoint);
-public static final native int GetDateFormatW(int Locale, int dwFlags, SYSTEMTIME lpDate, char [] lpFormat, char [] lpDateStr, int cchDate);
-public static final native int GetDateFormatA(int Locale, int dwFlags, SYSTEMTIME lpDate, byte [] lpFormat, byte [] lpDateStr, int cchDate);
-public static final native int /*long*/ GetDC (int /*long*/ hwnd);
-public static final native int /*long*/ GetDCEx (int /*long*/ hWnd, int /*long*/ hrgnClip, int flags);
-public static final native int /*long*/ GetDesktopWindow ();
-public static final native int GetDeviceCaps (int /*long*/ hdc, int nIndex);
-public static final native int GetDialogBaseUnits ();
-public static final native int GetDIBColorTable (int /*long*/ hdc, int uStartIndex, int cEntries, byte[] pColors);
-public static final native int GetDIBits (int /*long*/ hdc, int /*long*/ hbmp, int uStartScan, int cScanLines, int /*long*/ lpvBits, byte[] lpbi, int uUsage);
-public static final native int /*long*/ GetDlgItem (int /*long*/ hDlg, int nIDDlgItem);
-public static final native int GetDoubleClickTime ();
-public static final native int /*long*/ GetFocus ();
-public static final native int GetFontLanguageInfo (int /*long*/ hdc);
-public static final native int /*long*/ GetForegroundWindow ();
-public static final native BOOL GetGUIThreadInfo (int idThread, GUITHREADINFO lpgui);
-public static final native BOOL GetIconInfo (int /*long*/ hIcon, ICONINFO piconinfo);
-public static final native int GetKeyboardLayoutList (int nBuff, int /*long*/ [] lpList);
-public static final native int /*long*/ GetKeyboardLayout (int idThread);
-public static final native short GetKeyState (int nVirtKey);
-public static final native BOOL GetKeyboardState (byte [] lpKeyState);
-public static final native int GetKeyNameTextW (int lParam, char [] lpString, int nSize);
-public static final native int GetKeyNameTextA (int lParam, byte [] lpString, int nSize);
-public static final native int /*long*/ GetLastActivePopup (int /*long*/ hWnd);
-public static final native int GetLastError ();
-public static final native int GetLayout (int /*long*/ hdc);
-/* returns the instance handle to the swt library */
-public static final native int /*long*/ GetLibraryHandle ();
-public static final native int GetLocaleInfoW (int Locale, int LCType, char [] lpLCData, int cchData);
-public static final native int GetLocaleInfoA (int Locale, int LCType, byte [] lpLCData, int cchData);
-public static final native int /*long*/ GetMenu (int /*long*/ hWnd);
-public static final native BOOL GetMenuBarInfo (int /*long*/ hWnd, int idObject, int idItem, MENUBARINFO pmbi);
-public static final native int GetMenuDefaultItem (int /*long*/ hMenu, int fByPos, int gmdiFlags);
-public static final native BOOL GetMenuInfo (int /*long*/ hmenu, MENUINFO lpcmi);
-public static final native int GetMenuItemCount (int /*long*/ hMenu);
-public static final native BOOL GetMenuItemInfoW (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native BOOL GetMenuItemInfoA (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native BOOL GetMenuItemRect (int /*long*/ hWnd, int /*long*/ hMenu, int uItem, RECT lprcItem);
-public static final native BOOL GetMessageW (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax);
-public static final native BOOL GetMessageA (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax);
-public static final native int GetMessagePos ();
-public static final native int GetMessageTime ();
-public static final native int GetMetaRgn (int /*long*/ hdc, int /*long*/ hrgn);
-public static final native int GetThemeColor (int /*long*/ hTheme, int iPartId, int iStateId, int iPropId, int[] pColor);
-public static final native int GetThemeTextExtent (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, char[] pszText, int iCharCount, int dwTextFlags, RECT pBoundingRect, RECT pExtentRect);
-public static final native int GetTextCharset (int /*long*/ hdc);
-public static final native int GetTickCount ();
-public static final native int GetModuleFileNameW (int /*long*/ hModule, char [] lpFilename, int inSize);
-public static final native int GetModuleFileNameA (int /*long*/ hModule, byte [] lpFilename, int inSize);
-public static final native int /*long*/ GetModuleHandleW (char [] lpModuleName);
-public static final native int /*long*/ GetModuleHandleA (byte [] lpModuleName);
-public static final native BOOL GetMonitorInfoW (int /*long*/ hmonitor, MONITORINFO lpmi);
-public static final native BOOL GetMonitorInfoA (int /*long*/ hmonitor, MONITORINFO lpmi);
-public static final native int GetNearestPaletteIndex (int /*long*/ hPal, int crColor);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, BITMAP lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, BITMAP lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, DIBSECTION lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, DIBSECTION lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, EXTLOGPEN lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, EXTLOGPEN lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, LOGBRUSH lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, LOGBRUSH lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, LOGFONTA lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, LOGFONTW lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, LOGPEN lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, LOGPEN lpvObject);
-public static final native int GetObjectA (int /*long*/ hgdiobj, int cbBuffer, int /*long*/ lpvObject);
-public static final native int GetObjectW (int /*long*/ hgdiobj, int cbBuffer, int /*long*/ lpvObject);
-public static final native BOOL GetOpenFileNameW (OPENFILENAME lpofn);
-public static final native BOOL GetOpenFileNameA (OPENFILENAME lpofn);
-public static final native int GetPath (int /*long*/ hdc, int[] lpPoints, byte[] lpTypes, int nSize);
-public static final native int GetPaletteEntries (int /*long*/ hPalette, int iStartIndex, int nEntries, byte[] logPalette);
-public static final native int /*long*/ GetParent (int /*long*/ hWnd);
-public static final native int GetPixel (int /*long*/ hdc, int x, int y);
-public static final native int GetPolyFillMode (int /*long*/ hdc);
-public static final native int /*long*/ GetProcAddress (int /*long*/ hModule, byte [] lpProcName);
-public static final native int /*long*/ GetProcessHeap ();
-public static final native int GetProcessHeaps (int NumberOfHeaps, int /*long*/[] ProcessHeaps);
-public static final native int GetProfileStringW (char [] lpAppName, char [] lpKeyName, char [] lpDefault, char [] lpReturnedString, int nSize);
-public static final native int GetProfileStringA (byte [] lpAppName, byte [] lpKeyName, byte [] lpDefault, byte [] lpReturnedString, int nSize);
-public static final native int /*long*/ GetPropW (int /*long*/ hWnd, int /*long*/ lpString);
-public static final native int /*long*/ GetPropA (int /*long*/ hWnd, int /*long*/ lpString);
-public static final native int GetRandomRgn (int /*long*/ hdc, int /*long*/ hrgn, int iNum);
-public static final native int GetRegionData (int /*long*/ hRgn, int dwCount, int [] lpRgnData);
-public static final native int GetRgnBox (int /*long*/ hrgn, RECT lprc);
-public static final native int GetROP2 (int /*long*/ hdc);
-public static final native BOOL GetSaveFileNameW (OPENFILENAME lpofn);
-public static final native BOOL GetSaveFileNameA (OPENFILENAME lpofn);
-public static final native BOOL GetScrollInfo (int /*long*/ hwnd, int flags, SCROLLINFO info);
-public static final native void GetStartupInfoW (STARTUPINFO lpStartupInfo);
-public static final native void GetStartupInfoA (STARTUPINFO lpStartupInfo);
-public static final native int /*long*/ GetStockObject (int fnObject);
-public static final native int GetSysColor (int nIndex);
-public static final native int /*long*/ GetSysColorBrush (int nIndex);
-public static final native short GetSystemDefaultUILanguage ();
-public static final native int /*long*/ GetSystemMenu (int /*long*/ hWnd, BOOL bRevert);
-public static final native int GetSystemMetrics (int nIndex);
-public static final native int GetSystemPaletteEntries (int /*long*/ hdc, int iStartIndex, int nEntries, byte[] lppe);
-public static final native int GetTextColor (int /*long*/ hDC);
-public static final native BOOL GetTextExtentPoint32W (int /*long*/ hdc, char [] lpString, int cbString, SIZE lpSize);
-public static final native BOOL GetTextExtentPoint32A (int /*long*/ hdc, byte [] lpString, int cbString, SIZE lpSize);
-public static final native BOOL GetTextMetricsW (int /*long*/ hdc, TEXTMETRICW lptm);
-public static final native BOOL GetTextMetricsA (int /*long*/ hdc, TEXTMETRICA lptm);
-public static final native int GetThemeInt (int /*long*/ hTheme, int iPartId, int iStateId, int iPropId, int[] piVal);
-public static final native int GetThemeMargins (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, int iPropId, RECT prc, MARGINS pMargins);
-public static final native int GetThemeBackgroundContentRect (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT pBoundingRect, RECT pContentRect);
-public static final native int GetThemeBackgroundExtent (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT pContentRect, RECT pExtentRect);
-public static final native int GetThemePartSize (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, RECT prc, int eSize, SIZE psz);
-public static final native int GetThemeMetric (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, int iPropId, int[] piVal);
-public static final native int GetThemeRect (int /*long*/ hTheme, int iPartId, int iStateId, int iPropId, RECT pRect);
-public static final native int GetThemeSysSize (int /*long*/ hTheme, int iSizeID);
-public static final native int GetTimeFormatW(int Locale, int dwFlags, SYSTEMTIME lpTime, char [] lpFormat, char [] lpTimeStr, int cchTime);
-public static final native int GetTimeFormatA(int Locale, int dwFlags, SYSTEMTIME lpTime, byte [] lpFormat, byte [] lpTimeStr, int cchTime);
-public static final native BOOL GetUpdateRect (int /*long*/ hWnd, RECT lpRect, BOOL bErase);
-public static final native int GetUpdateRgn (int /*long*/ hWnd, int /*long*/ hRgn, BOOL bErase);
-public static final native BOOL GetVersionExW (OSVERSIONINFOEXW lpVersionInfo);
-public static final native BOOL GetVersionExA (OSVERSIONINFOEXA lpVersionInfo);
-public static final native BOOL GetVersionExW (OSVERSIONINFOW lpVersionInfo);
-public static final native BOOL GetVersionExA (OSVERSIONINFOA lpVersionInfo);
-public static final native int /*long*/ GetWindow (int /*long*/ hWnd, int uCmd);
-public static final native int GetWindowLongW (int /*long*/ hWnd, int nIndex);
-public static final native int GetWindowLongA (int /*long*/ hWnd, int nIndex);
-public static final native int /*long*/ GetWindowLongPtrW (int /*long*/ hWnd, int nIndex);
-public static final native int /*long*/ GetWindowLongPtrA (int /*long*/ hWnd, int nIndex);
-public static final native int /*long*/ GetWindowDC (int /*long*/ hWnd);
-public static final native BOOL GetWindowOrgEx (int /*long*/ hdc, POINT lpPoint);
-public static final native BOOL GetWindowPlacement (int /*long*/ hWnd, WINDOWPLACEMENT lpwndpl);
-public static final native BOOL GetWindowRect (int /*long*/ hWnd, RECT lpRect);
-public static final native int GetWindowRgn (int /*long*/ hWnd, int /*long*/ hRgn);
-public static final native int GetWindowTextW (int /*long*/ hWnd, char [] lpString, int nMaxCount);
-public static final native int GetWindowTextA (int /*long*/ hWnd, byte [] lpString, int nMaxCount);
-public static final native int GetWindowTextLengthW (int /*long*/ hWnd);
-public static final native int GetWindowTextLengthA (int /*long*/ hWnd);
-public static final native int GetWindowTheme (int /*long*/ hWnd);
-public static final native int GetWindowThreadProcessId (int /*long*/ hWnd, int [] lpdwProcessId);
-public static final native BOOL GetWorldTransform (int /*long*/ hdc, float[] lpXform);
-public static final native int GlobalAddAtomW (char [] lpString);
-public static final native int GlobalAddAtomA (byte [] lpString);
-public static final native int /*long*/ GlobalAlloc (int uFlags, int dwBytes);
-public static final native int /*long*/ GlobalFree (int /*long*/ hMem);
-public static final native int /*long*/ GlobalLock (int /*long*/ hMem);
-public static final native int GlobalSize (int /*long*/ hMem);
-public static final native BOOL GlobalUnlock (int /*long*/ hMem);
-public static final native BOOL GradientFill (int /*long*/ hdc, int /*long*/ pVertex, int dwNumVertex, int /*long*/ pMesh, int dwNumMesh, int dwMode);
-public static final native int /*long*/ HeapAlloc (int /*long*/ hHeap, int dwFlags, int dwBytes);
-public static final native BOOL HeapFree (int /*long*/ hHeap, int dwFlags, int /*long*/ lpMem);
-public static final native BOOL HeapValidate (int /*long*/ hHeap, int dwFlags, int /*long*/ lpMem);
-public static final native BOOL HideCaret (int /*long*/ hWnd);
-public static final native int HitTestThemeBackground (int /*long*/ hTheme, int /*long*/ hdc, int iPartId, int iStateId, int dwOptions, RECT pRect, int /*long*/ hrgn, POINT ptTest, short[] pwHitTestCode);
-public static final native int IIDFromString (char[] lpsz, byte[] lpiid);
-public static final native int ImageList_Add (int /*long*/ himl, int /*long*/ hbmImage, int /*long*/ hbmMask);
-public static final native int ImageList_AddMasked (int /*long*/ himl, int /*long*/ hbmImage, int crMask);
-public static final native BOOL ImageList_BeginDrag (int /*long*/ himl, int iTrack, int dxHotspot, int dyHotspot);
-public static final native int /*long*/ ImageList_Create (int cx, int cy, int flags, int cInitial, int cGrow);
-public static final native BOOL ImageList_Destroy (int /*long*/ himl);
-public static final native BOOL ImageList_DragEnter (int /*long*/ hwndLock, int x, int y);
-public static final native BOOL ImageList_DragLeave (int /*long*/ hwndLock);
-public static final native BOOL ImageList_DragMove (int x, int y);
-public static final native BOOL ImageList_DragShowNolock (BOOL fShow);
-public static final native BOOL ImageList_Draw (int /*long*/ himl, int i, int /*long*/ hdcDst, int x, int y, int fStyle);
-public static final native void ImageList_EndDrag ();
-public static final native int /*long*/ ImageList_GetDragImage (POINT ppt, POINT pptHotspot);
-public static final native int /*long*/ ImageList_GetIcon (int /*long*/ himl, int i, int flags);
-public static final native BOOL ImageList_GetIconSize (int /*long*/ himl, int [] cx, int [] cy);
-public static final native int ImageList_GetImageCount (int /*long*/ himl);
-public static final native BOOL ImageList_Remove (int /*long*/ himl, int i);
-public static final native BOOL ImageList_Replace (int /*long*/ himl, int i, int /*long*/ hbmImage, int /*long*/ hbmMask);
-public static final native int ImageList_ReplaceIcon (int /*long*/ himl, int i, int /*long*/ hicon);
-public static final native BOOL ImageList_SetIconSize (int /*long*/ himl, int cx, int cy);
-public static final native int /*long*/ ImmAssociateContext (int /*long*/ hWnd, int /*long*/ hIMC);
-public static final native int /*long*/ ImmCreateContext ();
-public static final native BOOL ImmDestroyContext (int /*long*/ hIMC);
-public static final native BOOL ImmDisableTextFrameService (int idThread);
-public static final native BOOL ImmGetCompositionFontW (int /*long*/ hIMC, LOGFONTW lplf);
-public static final native BOOL ImmGetCompositionFontA (int /*long*/ hIMC, LOGFONTA lplf);
-public static final native int ImmGetCompositionStringW (int /*long*/ hIMC, int dwIndex, char [] lpBuf, int dwBufLen);
-public static final native int ImmGetCompositionStringA (int /*long*/ hIMC, int dwIndex, byte [] lpBuf, int dwBufLen);
-public static final native int /*long*/ ImmGetContext (int /*long*/ hWnd);
-public static final native BOOL ImmGetConversionStatus (int /*long*/ hIMC, int [] lpfdwConversion, int [] lpfdwSentence);
-public static final native int /*long*/ ImmGetDefaultIMEWnd (int /*long*/ hWnd);
-public static final native BOOL ImmGetOpenStatus (int /*long*/ hIMC);
-public static final native BOOL ImmReleaseContext (int /*long*/ hWnd, int /*long*/ hIMC);
-public static final native BOOL ImmSetCompositionFontW (int /*long*/ hIMC, LOGFONTW lplf);
-public static final native BOOL ImmSetCompositionFontA (int /*long*/ hIMC, LOGFONTA lplf);
-public static final native BOOL ImmSetCompositionWindow (int /*long*/ hIMC, COMPOSITIONFORM lpCompForm);
-public static final native BOOL ImmSetConversionStatus (int /*long*/ hIMC, int fdwConversion, int dwSentence);
-public static final native BOOL ImmSetOpenStatus (int /*long*/ hIMC, BOOL fOpen);
-public static final native void InitCommonControls ();
-public static final native BOOL InitCommonControlsEx (INITCOMMONCONTROLSEX lpInitCtrls);
-public static final native BOOL InsertMenuW (int /*long*/ hMenu, int uPosition, int uFlags, int /*long*/ uIDNewItem, char [] lpNewItem);
-public static final native BOOL InsertMenuA (int /*long*/ hMenu, int uPosition, int uFlags, int /*long*/ uIDNewItem, byte [] lpNewItem);
-public static final native BOOL InsertMenuItemW (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native BOOL InsertMenuItemA (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native BOOL InternetSetOption (int /*long*/ hInternet, int dwOption, int /*long*/ lpBuffer, int dwBufferLength);
-public static final native int IntersectClipRect (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
-public static final native BOOL IntersectRect (RECT lprcDst, RECT lprcSrc1, RECT lprcSrc2);
-public static final native BOOL InvalidateRect (int /*long*/ hWnd, RECT lpRect, BOOL bErase);
-public static final native BOOL InvalidateRgn (int /*long*/ hWnd, int /*long*/ hRgn, BOOL bErase);
-public static final native BOOL IsAppThemed ();
-public static final native BOOL IsBadReadPtr (int /*long*/ lp, int ucb);
-public static final native BOOL IsBadWritePtr (int /*long*/ lp, int ucb);
-public static final native BOOL IsDBCSLeadByte (byte TestChar);
-public static final native BOOL IsHungAppWindow (int /*long*/ hWnd);
-public static final native BOOL IsIconic (int /*long*/ hWnd);
-public static final native BOOL IsPPC ();
-public static final native BOOL IsSP ();
-public static final native BOOL IsWindowEnabled (int /*long*/ hWnd);
-public static final native BOOL IsWindowVisible (int /*long*/ hWnd);
-public static final native BOOL IsZoomed (int /*long*/ hWnd);
-public static final native BOOL KillTimer (int /*long*/ hWnd, int /*long*/ uIDEvent);
-public static final native BOOL LineTo (int /*long*/ hdc, int x1, int x2);
-public static final native int /*long*/ LoadBitmapW (int /*long*/ hInstance, int /*long*/ lpBitmapName);
-public static final native int /*long*/ LoadBitmapA (int /*long*/ hInstance, int /*long*/ lpBitmapName);
-public static final native int /*long*/ LoadCursorW (int /*long*/ hInstance, int /*long*/ lpCursorName);
-public static final native int /*long*/ LoadCursorA (int /*long*/ hInstance, int /*long*/ lpCursorName);
-public static final native int /*long*/ LoadIconW (int /*long*/ hInstance, int /*long*/ lpIconName);
-public static final native int /*long*/ LoadIconA (int /*long*/ hInstance, int /*long*/ lpIconName);
-public static final native int /*long*/ LoadImageW (int /*long*/ hinst, char [] lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
-public static final native int /*long*/ LoadImageA (int /*long*/ hinst, byte [] lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
-public static final native int /*long*/ LoadImageW (int /*long*/ hinst, int /*long*/ lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
-public static final native int /*long*/ LoadImageA (int /*long*/ hinst, int /*long*/ lpszName, int uType, int cxDesired, int cyDesired, int fuLoad);
-public static final native int LoadStringW (int /*long*/ hinst, int uID, char [] lpBuffer, int nBufferMax);
-public static final native int LoadStringA (int /*long*/ hinst, int uID, byte [] lpBuffer, int nBufferMax);
-public static final native int /*long*/ LoadLibraryW (char [] lpLibFileName);
-public static final native int /*long*/ LoadLibraryA (byte [] lpLibFileName);
-public static final native int /*long*/ LocalFree (int /*long*/ hMem);
-public static final native BOOL LockWindowUpdate (int /*long*/ hWndLock);
-public static final native int MapVirtualKeyW (int uCode, int uMapType);
-public static final native int MapVirtualKeyA (int uCode, int uMapType);
-public static final native int MapWindowPoints (int /*long*/ hWndFrom, int /*long*/ hWndTo, POINT lpPoints, int cPoints);
-public static final native int MapWindowPoints (int /*long*/ hWndFrom, int /*long*/ hWndTo, RECT lpPoints, int cPoints);
-public static final native BOOL MCIWndRegisterClass ();
-public static final native BOOL MessageBeep (int uType);
-public static final native int MessageBoxW (int /*long*/ hWnd, char [] lpText, char [] lpCaption, int uType);
-public static final native int MessageBoxA (int /*long*/ hWnd, byte [] lpText, byte [] lpCaption, int uType);
-public static final native int /*long*/ MonitorFromWindow (int /*long*/ hwnd, int dwFlags);
-public static final native void MoveMemory (char[] Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (byte [] Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (byte [] Destination, ACCEL Source, int Length);
-public static final native void MoveMemory (byte [] Destination, BITMAPINFOHEADER Source, int Length);
-public static final native void MoveMemory (int [] Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (long [] Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (double[] Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (float[] Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (short[] Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, byte [] Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, char [] Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, int [] Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, GRADIENT_RECT Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, LOGFONTW Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, LOGFONTA Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, MEASUREITEMSTRUCT Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, MINMAXINFO Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, MSG Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, UDACCEL Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMTTDISPINFOW Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMTTDISPINFOA Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, OPENFILENAME Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, RECT Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, TRIVERTEX Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, WINDOWPOS Source, int Length);
-public static final native void MoveMemory (BITMAPINFOHEADER Destination, byte [] Source, int Length);
-public static final native void MoveMemory (DRAWITEMSTRUCT Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (EXTLOGPEN Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (HDITEM Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (HELPINFO Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (LOGFONTW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (LOGFONTA Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (MEASUREITEMSTRUCT Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (MINMAXINFO Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (OFNOTIFY Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (OPENFILENAME Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (POINT Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMHDR Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMRGINFO Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMCUSTOMDRAW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMLVCUSTOMDRAW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTBHOTITEM Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTVCUSTOMDRAW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTVITEMCHANGE Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMUPDOWN Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMLVCUSTOMDRAW Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMTVCUSTOMDRAW Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMLVDISPINFO Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, NMTVDISPINFO Source, int Length);
-public static final native void MoveMemory (NMLVDISPINFO Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTVDISPINFO Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMLVFINDITEM Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMLVODSTATECHANGE Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMHEADER Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMLINK Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMLISTVIEW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMREBARCHILDSIZE Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMREBARCHEVRON Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTOOLBAR Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTTDISPINFOW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (NMTTDISPINFOA Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (RECT Destination, int /*long*/[] Source, int Length);
-public static final native void MoveMemory (TEXTMETRICW Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (TEXTMETRICA Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (TVITEM Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (WINDOWPOS Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (MSG Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (UDACCEL Destination, int /*long*/ Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, DROPFILES Source, int Length);
-public static final native void MoveMemory (int /*long*/ DestinationPtr, double[] Source, int Length);
-public static final native void MoveMemory (int /*long*/ DestinationPtr, float[] Source, int Length);
-public static final native void MoveMemory (int /*long*/ DestinationPtr, long[] Source, int Length);
-public static final native void MoveMemory (int /*long*/ DestinationPtr, short[] Source, int Length);
-public static final native void MoveMemory (SCRIPT_ITEM Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (SCRIPT_LOGATTR Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (SCRIPT_PROPERTIES Destination, int /*long*/ SourcePtr, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, KEYBDINPUT Source, int Length);
-public static final native void MoveMemory (int /*long*/ Destination, MOUSEINPUT Source, int Length);
-public static final native BOOL MoveToEx (int /*long*/ hdc, int x1, int x2, int /*long*/ lPoint);
-public static final native int MsgWaitForMultipleObjectsEx (int nCount, int /*long*/ pHandles, int dwMilliseconds, int dwWakeMask, int dwFlags);
-//alias WINAPI.MultiByteToWideChar MultiByteToWideChar;
-public static final native void NotifyWinEvent (int event, int /*long*/ hwnd, int idObject, int idChild);
-public static final native BOOL OffsetRect (RECT lprc, int dx, int dy);
-public static final native int OffsetRgn (int /*long*/ hrgn, int nXOffset, int nYOffset);
-public static final native int OleInitialize (int /*long*/ pvReserved);
-public static final native void OleUninitialize ();
-public static final native BOOL OpenClipboard (int /*long*/ hWndNewOwner);
-public static final native int /*long*/ OpenThemeData (int /*long*/ hwnd, char[] pszClassList);
-public static final native BOOL PatBlt (int /*long*/ hdc, int x1, int x2, int w, int h, int rop);
-public static final native BOOL PeekMessageW (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax, int wRemoveMsg);
-public static final native BOOL PeekMessageA (MSG lpMsg, int /*long*/ hWnd, int wMsgFilterMin, int wMsgFilterMax, int wRemoveMsg);
-public static final native BOOL Pie (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXStartArc, int nYStartArc, int nXEndArc, int nYEndArc);
-public static final native BOOL Polygon (int /*long*/ hdc, int [] points, int nPoints);
-public static final native BOOL Polyline (int /*long*/ hdc, int[] points, int nPoints);
-public static final native BOOL PostMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native BOOL PostMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native BOOL PostThreadMessageW (int idThread, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native BOOL PostThreadMessageA (int idThread, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native short PRIMARYLANGID (short lgid);
-public static final native BOOL PrintDlgW (PRINTDLG lppd);
-public static final native BOOL PrintDlgA (PRINTDLG lppd);
-public static final native BOOL PrintWindow (int /*long*/ hwnd, int /*long*/ hdcBlt, int nFlags);
-public static final native BOOL PtInRect (RECT rect, POINT pt);
-public static final native BOOL PtInRegion (int /*long*/ hrgn, int X, int Y);
-public static final native int RealizePalette (int /*long*/ hDC);
-public static final native BOOL Rectangle (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
-public static final native BOOL RectInRegion (int /*long*/ hrgn, RECT lprc);
-public static final native BOOL RedrawWindow (int /*long*/ hWnd, RECT lprcUpdate, int /*long*/ hrgnUpdate, int flags);
-public static final native int RegCloseKey (int /*long*/ hKey);
-public static final native int RegEnumKeyExW (int /*long*/ hKey, int dwIndex, char [] lpName, int [] lpcName, int [] lpReserved, char [] lpClass, int [] lpcClass, FILETIME lpftLastWriteTime);
-public static final native int RegEnumKeyExA (int /*long*/ hKey, int dwIndex, byte [] lpName, int [] lpcName, int [] lpReserved, byte [] lpClass, int [] lpcClass, FILETIME lpftLastWriteTime);
-public static final native int RegisterClassW (WNDCLASS lpWndClass);
-public static final native int RegisterClassA (WNDCLASS lpWndClass);
-public static final native int RegisterWindowMessageW (char [] lpString);
-public static final native int RegisterWindowMessageA (byte [] lpString);
-public static final native int RegisterClipboardFormatA (byte[] lpszFormat);
-public static final native int RegisterClipboardFormatW (char[] lpszFormat);
-public static final native int RegOpenKeyExW (int /*long*/ hKey, char[] lpSubKey, int ulOptions, int samDesired, int /*long*/[] phkResult);
-public static final native int RegOpenKeyExA (int /*long*/ hKey, byte[] lpSubKey, int ulOptions, int samDesired, int /*long*/[] phkResult);
-public static final native int RegQueryInfoKeyW (int /*long*/ hKey, int /*long*/ lpClass, int[] lpcbClass, int /*long*/ lpReserved, int[] lpSubKeys, int[] lpcbMaxSubKeyLen, int[] lpcbMaxClassLen, int[] lpcValues, int[] lpcbMaxValueNameLen, int[] lpcbMaxValueLen, int[] lpcbSecurityDescriptor, int /*long*/ lpftLastWriteTime);
-public static final native int RegQueryInfoKeyA (int /*long*/ hKey, int /*long*/ lpClass, int[] lpcbClass, int /*long*/ lpReserved, int[] lpSubKeys, int[] lpcbMaxSubKeyLen, int[] lpcbMaxClassLen, int[] lpcValues, int[] lpcbMaxValueNameLen, int[] lpcbMaxValueLen, int[] lpcbSecurityDescriptor, int /*long*/ lpftLastWriteTime);
-public static final native int RegQueryValueExW (int /*long*/ hKey, char[] lpValueName, int /*long*/ lpReserved, int[] lpType, char [] lpData, int[] lpcbData);
-public static final native int RegQueryValueExW (int /*long*/ hKey, char[] lpValueName, int /*long*/ lpReserved, int[] lpType, int [] lpData, int[] lpcbData);
-public static final native int RegQueryValueExA (int /*long*/ hKey, byte[] lpValueName, int /*long*/ lpReserved, int[] lpType, byte [] lpData, int[] lpcbData);
-public static final native int RegQueryValueExA (int /*long*/ hKey, byte[] lpValueName, int /*long*/ lpReserved, int[] lpType, int [] lpData, int[] lpcbData);
-public static final native BOOL ReleaseCapture ();
-public static final native int ReleaseDC (int /*long*/ hWnd, int /*long*/ hDC);
-public static final native BOOL RemoveMenu (int /*long*/ hMenu, int uPosition, int uFlags);
-public static final native int /*long*/ RemovePropA (int /*long*/ hWnd, int /*long*/ lpString);
-public static final native int /*long*/ RemovePropW (int /*long*/ hWnd, int /*long*/ lpString);
-public static final native BOOL RestoreDC (int /*long*/ hdc, int nSavedDC);
-public static final native BOOL RoundRect (int /*long*/ hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nWidth, int nHeight);
-public static final native int SaveDC (int /*long*/ hdc);
-public static final native BOOL ScreenToClient (int /*long*/ hWnd, POINT lpPoint);
-public static final native int ScriptApplyDigitSubstitution (SCRIPT_DIGITSUBSTITUTE psds, SCRIPT_CONTROL psc, SCRIPT_STATE pss);
-public static final native int ScriptBreak (char[] pwcChars, int cChars, SCRIPT_ANALYSIS psa, int /*long*/ psla);
-public static final native int ScriptGetProperties (int /*long*/[] ppSp, int[] piNumScripts);
-public static final native int ScriptCacheGetHeight (int /*long*/ hdc, int /*long*/ psc, int[] tmHeight);
-public static final native int ScriptCPtoX (int iCP, BOOL fTrailing, int cChars, int cGlyphs, int /*long*/ pwLogClust, int /*long*/ psva, int /*long*/ piAdvance, SCRIPT_ANALYSIS psa, int[] piX);
-public static final native int ScriptFreeCache (int /*long*/ psc);
-public static final native int ScriptGetFontProperties (int /*long*/ hdc, int /*long*/ psc, SCRIPT_FONTPROPERTIES sfp);
-public static final native int ScriptGetLogicalWidths (SCRIPT_ANALYSIS psa, int cChars, int cGlyphs, int /*long*/ piGlyphWidth, int /*long*/ pwLogClust, int /*long*/ psva, int[] piDx);
-public static final native int ScriptItemize (char[] pwcInChars, int cInChars, int cMaxItems, SCRIPT_CONTROL psControl, SCRIPT_STATE psState, int /*long*/ pItems, int[] pcItems);
-public static final native int ScriptJustify (int /*long*/ psva, int /*long*/ piAdvance, int cGlyphs, int iDx, int iMinKashida, int /*long*/ piJustify);
-public static final native int ScriptLayout (int cRuns, byte[] pbLevel, int[] piVisualToLogical, int[] piLogicalToVisual);
-public static final native int ScriptPlace (int /*long*/ hdc, int /*long*/ psc, int /*long*/ pwGlyphs, int cGlyphs, int /*long*/ psva, SCRIPT_ANALYSIS psa, int /*long*/ piAdvance, int /*long*/ pGoffset, int[] pABC);
-public static final native int ScriptRecordDigitSubstitution (int Locale, SCRIPT_DIGITSUBSTITUTE psds);
-public static final native int ScriptShape (int /*long*/ hdc, int /*long*/ psc, char[] pwcChars, int cChars, int cMaxGlyphs, SCRIPT_ANALYSIS psa, int /*long*/ pwOutGlyphs, int /*long*/ pwLogClust, int /*long*/ psva, int[] pcGlyphs);
-public static final native int ScriptTextOut (int /*long*/ hdc, int /*long*/ psc, int x, int y, int fuOptions, RECT lprc, SCRIPT_ANALYSIS psa, int /*long*/ pwcReserved, int iReserved, int /*long*/ pwGlyphs, int cGlyphs, int /*long*/ piAdvance, int /*long*/ piJustify, int /*long*/ pGoffset);
-public static final native int ScriptXtoCP (int iX, int cChars, int cGlyphs, int /*long*/ pwLogClust, int /*long*/ psva, int /*long*/ piAdvance, SCRIPT_ANALYSIS psa, int[] piCP, int[] piTrailing);
-public static final native int ScrollWindowEx (int /*long*/ hWnd, int dx, int dy, RECT prcScroll, RECT prcClip, int /*long*/ hrgnUpdate, RECT prcUpdate, int flags);
-public static final native int SelectClipRgn (int /*long*/ hdc, int /*long*/ hrgn);
-public static final native int /*long*/ SelectObject (int /*long*/ hDC, int /*long*/ HGDIObj);
-public static final native int /*long*/ SelectPalette (int /*long*/ hDC, int /*long*/ hpal, BOOL bForceBackground);
-public static final native int SendInput (int nInputs, int /*long*/ pInputs, int cbSize);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int  [] wParam, int [] lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ [] wParam, int /*long*/ lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, char [] lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int [] lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, short [] lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVCOLUMN lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LITEM lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVITEM lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, MARGINS lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, POINT lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, REBARBANDINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, RECT lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SYSTEMTIME lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTON lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTONINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TCITEM lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TOOLINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVINSERTSTRUCT lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVITEM lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVSORTCB lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, UDACCEL lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDITEM lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDLAYOUT lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, BUTTON_IMAGELIST lParam);
-public static final native int /*long*/ SendMessageW (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SIZE lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int [] wParam, int [] lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ [] wParam, int /*long*/ lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, byte [] lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int [] lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, short [] lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, char [] lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, int /*long*/ lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVCOLUMN lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LITEM lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, LVITEM lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, MARGINS lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, POINT lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, REBARBANDINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, RECT lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SYSTEMTIME lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTON lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TBBUTTONINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TCITEM lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TOOLINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVINSERTSTRUCT lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVITEM lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, TVSORTCB lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, UDACCEL lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDHITTESTINFO lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDITEM lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, HDLAYOUT lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, BUTTON_IMAGELIST lParam);
-public static final native int /*long*/ SendMessageA (int /*long*/ hWnd, int Msg, int /*long*/ wParam, SIZE lParam);
-public static final native int /*long*/ SetActiveWindow (int /*long*/ hWnd);
-public static final native int SetBkColor (int /*long*/ hdc, int colorRef);
-public static final native int SetBkMode (int /*long*/ hdc, int mode);
-public static final native BOOL SetBrushOrgEx (int /*long*/ hdc, int nXOrg, int nYOrg, POINT lppt);
-public static final native int /*long*/ SetCapture (int /*long*/ hWnd);
-public static final native BOOL SetCaretPos (int X, int Y);
-public static final native int /*long*/ SetClipboardData (int uFormat, int /*long*/ hMem);
-public static final native int /*long*/ SetCursor (int /*long*/ hCursor);
-public static final native BOOL SetCursorPos (int X, int Y);
-public static final native int SetDIBColorTable (int /*long*/ hdc, int uStartIndex, int cEntries, byte[] pColors);
-public static final native int SetErrorMode (int uMode);
-public static final native int /*long*/ SetFocus (int /*long*/ hWnd);
-public static final native BOOL SetForegroundWindow (int /*long*/ hWnd);
-public static final native int SetGraphicsMode (int /*long*/ hdc, int iMode);
-public static final native BOOL SetLayeredWindowAttributes(int /*long*/ hwnd, int crKey, byte bAlpha, int dwFlags);
-public static final native int SetLayout (int /*long*/ hdc, int dwLayout);
-public static final native BOOL SetMenu (int /*long*/ hWnd, int /*long*/ hMenu);
-public static final native BOOL SetMenuDefaultItem (int /*long*/ hMenu, int uItem, int fByPos);
-public static final native BOOL SetMenuInfo (int /*long*/ hmenu, MENUINFO lpcmi);
-public static final native BOOL SetMenuItemInfoW (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native BOOL SetMenuItemInfoA (int /*long*/ hMenu, int uItem, BOOL fByPosition, MENUITEMINFO lpmii);
-public static final native int SetMetaRgn (int /*long*/ hdc);
-public static final native int SetPaletteEntries (int /*long*/ hPal, int iStart, int cEntries, byte[] lppe);
-public static final native int /*long*/ SetParent (int /*long*/ hWndChild, int /*long*/ hWndNewParent);
-public static final native int SetPixel (int /*long*/ hdc, int X, int Y, int crColor);
-public static final native int SetPolyFillMode (int /*long*/ hdc, int iPolyFillMode);
-public static final native BOOL SetProcessDPIAware ();
-public static final native BOOL SetRect (RECT lprc, int xLeft, int yTop, int xRight, int yBottom);
-public static final native BOOL SetRectRgn (int /*long*/ hrgn, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
-public static final native int SetROP2 (int /*long*/ hdc, int fnDrawMode);
-public static final native BOOL SetScrollInfo (int /*long*/ hwnd, int flags, SCROLLINFO info, BOOL fRedraw);
-public static final native int SetStretchBltMode (int /*long*/ hdc, int iStretchMode);
-public static final native BOOL SetPropW (int /*long*/ hWnd, int /*long*/ lpString, int /*long*/ hData);
-public static final native BOOL SetPropA (int /*long*/ hWnd, int /*long*/ lpString, int /*long*/ hData);
-public static final native int SetTextAlign (int /*long*/ hdc, int fMode);
-public static final native int SetTextColor (int /*long*/ hdc, int colorRef);
-public static final native int /*long*/ SetTimer (int /*long*/ hWnd, int /*long*/ nIDEvent, int Elapse, int /*long*/ lpTimerFunc);
-public static final native int SetWindowLongW (int /*long*/ hWnd, int nIndex, int dwNewLong);
-public static final native int SetWindowLongA (int /*long*/ hWnd, int nIndex, int dwNewLong);
-public static final native int /*long*/ SetWindowLongPtrW (int /*long*/ hWnd, int nIndex, int /*long*/ dwNewLong);
-public static final native int /*long*/ SetWindowLongPtrA (int /*long*/ hWnd, int nIndex, int /*long*/ dwNewLong);
-public static final native BOOL SetWindowOrgEx (int /*long*/ hdc, int X, int Y, POINT lpPoint);
-public static final native BOOL SetWindowPlacement (int /*long*/ hWnd, WINDOWPLACEMENT lpwndpl);
-public static final native BOOL SetWindowPos(int /*long*/ hWnd, int /*long*/ hWndInsertAfter, int X, int Y, int cx, int cy, int uFlags);
-public static final native int SetWindowRgn (int /*long*/ hWnd, int /*long*/ hRgn, BOOL bRedraw);
-public static final native BOOL SetWindowTextW (int /*long*/ hWnd, char [] lpString);
-public static final native BOOL SetWindowTextA (int /*long*/ hWnd, byte [] lpString);
-public static final native int SetWindowTheme (int /*long*/ hwnd, char [] pszSubAppName, char [] pszSubIdList);
-public static final native int /*long*/ SetWindowsHookExW (int idHook, int /*long*/ lpfn,  int /*long*/ hMod,  int dwThreadId);
-public static final native int /*long*/ SetWindowsHookExA (int idHook, int /*long*/ lpfn,  int /*long*/ hMod,  int dwThreadId);
-public static final native BOOL SetWorldTransform(int /*long*/ hdc, float[] lpXform);
-public static final native int /*long*/ SHBrowseForFolderW (BROWSEINFO lpbi);
-public static final native int /*long*/ SHBrowseForFolderA (BROWSEINFO lpbi);
-public static final native BOOL SHCreateMenuBar (SHMENUBARINFO pmb);
-public static final native int /*long*/ SHGetFileInfoW (char [] pszPath, int dwFileAttributes, SHFILEINFOW psfi, int cbFileInfo, int uFlags);
-public static final native int /*long*/ SHGetFileInfoA (byte [] pszPath, int dwFileAttributes, SHFILEINFOA psfi, int cbFileInfo, int uFlags);
-public static final native BOOL SHHandleWMSettingChange (int /*long*/ hwnd, int /*long*/ wParam, int /*long*/ lParam, SHACTIVATEINFO psai);
-public static final native int SHRecognizeGesture (SHRGINFO shrg);
-public static final native void SHSendBackToFocusWindow (int uMsg, int /*long*/ wp, int /*long*/ lp);
-public static final native BOOL SHSipPreference (int /*long*/ hwnd, int st);
-public static final native BOOL ShellExecuteExW (SHELLEXECUTEINFO lpExecInfo);
-public static final native BOOL ShellExecuteExA (SHELLEXECUTEINFO lpExecInfo);
-public static final native BOOL Shell_NotifyIconA (int dwMessage, NOTIFYICONDATAA lpData);
-public static final native BOOL Shell_NotifyIconW (int dwMessage, NOTIFYICONDATAW lpData);
-public static final native int SHGetMalloc (int /*long*/ [] ppMalloc);
-public static final native BOOL SHGetPathFromIDListW (int /*long*/ pidl, char [] pszPath);
-public static final native BOOL SHGetPathFromIDListA (int /*long*/ pidl, byte [] pszPath);
-public static final native BOOL SHSetAppKeyWndAssoc (byte bVk, int /*long*/ hwnd);
-public static final native BOOL ShowCaret (int /*long*/ hWnd);
-public static final native BOOL ShowOwnedPopups (int /*long*/ hWnd, BOOL fShow);
-public static final native BOOL ShowScrollBar (int /*long*/ hWnd, int wBar, BOOL bShow);
-public static final native BOOL ShowWindow (int /*long*/ hWnd, int nCmdShow);
-public static final native BOOL SipGetInfo (SIPINFO pSipInfo);
-public static final native int StartDocW (int /*long*/ hdc, DOCINFO lpdi);
-public static final native int StartDocA (int /*long*/ hdc, DOCINFO lpdi);
-public static final native int StartPage (int /*long*/ hdc);
-public static final native BOOL StretchBlt (int /*long*/ hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int nHeightDest, int /*long*/ hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, int dwRop);
-public static final native BOOL StrokePath (int /*long*/ hdc);
-public static final native BOOL SystemParametersInfoW (int uiAction, int uiParam, HIGHCONTRAST pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoA (int uiAction, int uiParam, HIGHCONTRAST pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoW (int uiAction, int uiParam, RECT pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoA (int uiAction, int uiParam, RECT pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoW (int uiAction, int uiParam, NONCLIENTMETRICSW pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoA (int uiAction, int uiParam, NONCLIENTMETRICSA pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoW (int uiAction, int uiParam, int [] pvParam, int fWinIni);
-public static final native BOOL SystemParametersInfoA (int uiAction, int uiParam, int [] pvParam, int fWinIni);
-public static final native int ToAscii (int uVirtKey, int uScanCode, byte [] lpKeyState, short [] lpChar, int uFlags);
-public static final native int ToUnicode (int wVirtKey, int wScanCode, byte [] lpKeyState, char [] pwszBuff, int cchBuff, int wFlags);
-public static final native BOOL TrackMouseEvent (TRACKMOUSEEVENT lpEventTrack);
-public static final native BOOL TrackPopupMenu (int /*long*/ hMenu, int uFlags, int x, int y, int nReserved, int /*long*/ hWnd, RECT prcRect);
-public static final native int TranslateAcceleratorW (int /*long*/ hWnd, int /*long*/ hAccTable, MSG lpMsg);
-public static final native int TranslateAcceleratorA (int /*long*/ hWnd, int /*long*/ hAccTable, MSG lpMsg);
-public static final native BOOL TranslateCharsetInfo (int /*long*/ lpSrc, int [] lpCs, int dwFlags);
-public static final native BOOL TranslateMDISysAccel (int /*long*/ hWndClient, MSG lpMsg);
-public static final native BOOL TranslateMessage (MSG lpmsg);
-public static final native BOOL TransparentBlt (int /*long*/ hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int hHeightDest, int /*long*/ hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, int crTransparent);
-public static final native BOOL TransparentImage (int /*long*/ hdcDest, int DstX, int DstY, int DstCx, int DstCy,int /*long*/ hSrc, int SrcX, int SrcY, int SrcCx, int SrcCy, int TransparentColor);
-public static final native BOOL UnhookWindowsHookEx (int /*long*/ hhk);
-public static final native BOOL UnregisterClassW (char [] lpClassName, int /*long*/ hInstance);
-public static final native BOOL UnregisterClassA (byte [] lpClassName, int /*long*/ hInstance);
-public static final native BOOL UpdateWindow (int /*long*/ hWnd);
-public static final native BOOL ValidateRect (int /*long*/ hWnd, RECT lpRect);
-public static final native short VkKeyScanW (short ch);
-public static final native short VkKeyScanA (short ch);
-
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl);
-
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, int arg0);
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, long arg0);
-
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, int arg0, int arg1, int arg2, int[] arg3);
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, long arg0, long arg1, int arg2, long[] arg3);
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, int arg0, long arg1, int arg2, long[] arg3);
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, long arg0, int arg1, int arg2, long[] arg3);
-
-public static final native int VtblCall (int fnNumber, int /*long*/ ppVtbl, char[] arg0, int arg1, int arg2, int[] arg3, int[] arg4);
-
-++/
-
 /** Ansi/Unicode wrappers */
 // Unicode/Ansi alias
 version(ANSI) {
@@ -4087,6 +2359,7 @@
     alias WINAPI.GetMonitorInfoA GetMonitorInfo;
     alias WINAPI.GetObjectA GetObject;
     alias WINAPI.GetOpenFileNameA GetOpenFileName;
+    alias WINAPI.GetOutlineTextMetricsA GetOutlineTextMetrics;
     alias WINAPI.GetProfileStringA _GetProfileString;
     alias WINAPI.GetPropA GetProp;
     alias WINAPI.GetSaveFileNameA GetSaveFileName;
@@ -4095,7 +2368,7 @@
     alias WINAPI.GetTextMetricsA GetTextMetrics;
     alias WINAPI.GetVersionExA GetVersionEx;
     alias WINAPI.GetWindowLongA GetWindowLong;
-    alias WINAPI.GetWindowLongPtrA GetWindowLongPtr;
+    alias WINAPI.GetWindowLongA GetWindowLongPtr; // is a macro
     alias WINAPI.GetWindowTextA _GetWindowText;
     alias WINAPI.GetWindowTextLengthA GetWindowTextLength;
     alias WINAPI.GlobalAddAtomA GlobalAddAtom;
@@ -4132,7 +2405,7 @@
     alias WINAPI.SetMenuItemInfoA SetMenuItemInfo;
     alias WINAPI.SetPropA SetProp;
     alias WINAPI.SetWindowLongA SetWindowLong;
-    alias WINAPI.SetWindowLongPtrA SetWindowLongPtr;
+    alias WINAPI.SetWindowLongA SetWindowLongPtr;
     alias WINAPI.SetWindowTextA SetWindowText;
     alias WINAPI.SetWindowsHookExA SetWindowsHookEx;
     alias WINAPI.ShellExecuteExA ShellExecuteEx;
@@ -4191,6 +2464,7 @@
     alias WINAPI.GetMonitorInfoW GetMonitorInfo;
     alias WINAPI.GetObjectW GetObject;
     alias WINAPI.GetOpenFileNameW GetOpenFileName;
+    alias WINAPI.GetOutlineTextMetricsW GetOutlineTextMetrics;
     alias WINAPI.GetProfileStringW _GetProfileString;
     alias WINAPI.GetPropW GetProp;
     alias WINAPI.GetSaveFileNameW GetSaveFileName;
@@ -4200,7 +2474,7 @@
     alias WINAPI.GetTextMetricsW GetTextMetrics;
     alias WINAPI.GetVersionExW GetVersionEx;
     alias WINAPI.GetWindowLongW GetWindowLong;
-    alias WINAPI.GetWindowLongPtrW GetWindowLongPtr;
+    alias WINAPI.GetWindowLongW GetWindowLongPtr; // is a macro
     alias WINAPI.GetWindowTextW _GetWindowText;
     alias WINAPI.GetWindowTextLengthW GetWindowTextLength;
     alias WINAPI.GlobalAddAtomW GlobalAddAtom;
@@ -4236,7 +2510,7 @@
     alias WINAPI.SendMessageW SendMessage;
     alias WINAPI.SetMenuItemInfoW SetMenuItemInfo;
     alias WINAPI.SetWindowLongW SetWindowLong;
-    alias WINAPI.SetWindowLongPtrW SetWindowLongPtr;
+    alias WINAPI.SetWindowLongW SetWindowLongPtr;
     alias WINAPI.SetWindowTextW SetWindowText;
     alias WINAPI.SetWindowsHookExW SetWindowsHookEx;
     alias WINAPI.SetPropW SetProp;
@@ -4397,6 +2671,25 @@
         LPCANDIDATEFORM lpCandidate
     ) ImmSetCandidateWindow;
 
+    BOOL function(
+        HWND hwnd,
+        COLORREF *pcrKey,
+        BYTE *pbAlpha,
+        DWORD *pdwFlags
+    )GetLayeredWindowAttributes;
+
+    BOOL function(
+        HWND hwnd,
+        COLORREF crKey,
+        BYTE bAlpha,
+        DWORD dwFlags
+    )SetLayeredWindowAttributes;
+
+    BOOL function(
+        HWND hwnd,               // Window to copy
+        HDC  hdcBlt,             // HDC to print into
+        UINT nFlags              // Optional flags
+    ) PrintWindow;
 } // public static extern(Windows)
 
 
@@ -4408,6 +2701,9 @@
 static Symbol[] Symbols_User32 = [
     { "SetProcessDPIAware", cast(void**)& SetProcessDPIAware, 6, 0 },
     { "ImmSetCandidateWindow", cast(void**)& ImmSetCandidateWindow, 6, 0 },
+    { "GetLayeredWindowAttributes", cast(void**)& GetLayeredWindowAttributes, 5, 1 },
+    { "SetLayeredWindowAttributes", cast(void**)& SetLayeredWindowAttributes, 5, 0 },
+    { "PrintWindow", cast(void**)& PrintWindow, 5, 0 },
 ];
 
 // Imm32.lib
@@ -5196,10 +3492,21 @@
 public static int MAKEWORD(int l, int h){
     return ( h << 16 )|( l &0xFFFF );
 }
-public static int /*long*/ MAKEWPARAM(int l, int h);
-public static int /*long*/ MAKELPARAM(int l, int h);
-public static int /*long*/ MAKELRESULT(int l, int h);
-public static int GET_WHEEL_DELTA_WPARAM(int /*long*/ wParam);
+public static int MAKELONG( int low, int high){
+    return (low & 0xFFFF) | (high << 16);
+}
+public static int /*long*/ MAKEWPARAM(int l, int h){
+    return MAKELONG( l, h );
+}
+public static int /*long*/ MAKELPARAM(int l, int h){
+    return MAKELONG( l, h );
+}
+public static int /*long*/ MAKELRESULT(int l, int h){
+    return MAKELONG( l, h );
+}
+public static int GET_WHEEL_DELTA_WPARAM(int /*long*/ wParam){
+    return  HIWORD(wParam);
+}
 
 public static int GET_X_LPARAM(int /*long*/ lp){
     return cast(short) (lp & 0xFFFF);
@@ -5209,8 +3516,6 @@
     return cast(short) (lp >> 16);
 }
 
-alias WINAPI.GetOutlineTextMetrics GetOutlineTextMetrics;
-
 static bool TreeView_GetItemRect( HWND hwnd, HTREEITEM hitem, RECT* prc, bool code) {
     *cast(HTREEITEM *)prc = hitem;
     return cast(bool) SendMessage( hwnd, TVM_GETITEMRECT, code, cast(int)prc );
@@ -5218,8 +3523,6 @@
 static int strlen( char* ptr ){
     return tango.stdc.string.strlen( ptr );
 }
-alias WINAPI.GetLayeredWindowAttributes GetLayeredWindowAttributes;
-alias WINAPI.SetLayeredWindowAttributes SetLayeredWindowAttributes;
 
 static void POINTSTOPOINT( inout POINT pt, int pts) {
     pt.x = cast(SHORT) LOWORD(pts);
@@ -5227,7 +3530,6 @@
 }
 
 alias WINAPI.GetScrollBarInfo GetScrollBarInfo;
-alias WINAPI.PrintWindow PrintWindow;
 } // END of OS
 //-----------------------------------------------------------------------------
 import tango.sys.win32.CodePage : CodePage;
--- a/dwt/internal/win32/WINAPI.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/internal/win32/WINAPI.d	Sat May 17 19:23:59 2008 +0200
@@ -265,7 +265,7 @@
 //     WINBOOL GetCharABCWidthsFloatA(HDC, UINT, UINT, LPABCFLOAT);
 //     DWORD GetGlyphOutlineA(HDC, UINT, UINT, LPGLYPHMETRICS, DWORD, LPVOID, PMAT2);
 //     HMETAFILE GetMetaFileA(LPCSTR);
-//     UINT GetOutlineTextMetricsA(HDC, UINT, LPOUTLINETEXTMETRIC);
+     UINT GetOutlineTextMetricsA(HDC, UINT, LPOUTLINETEXTMETRIC);
 //     WINBOOL GetTextExtentPointA(HDC, LPCSTR, int, LPSIZE);
 //     WINBOOL GetTextExtentPoint32A(HDC, LPCSTR, int, LPSIZE);
 //     WINBOOL GetTextExtentExPointA(HDC, LPCSTR, int, int, LPINT, LPINT, LPSIZE);
@@ -656,7 +656,7 @@
 //     WINBOOL GetCharABCWidthsFloatW(HDC, UINT, UINT, LPABCFLOAT);
 //     DWORD GetGlyphOutlineW(HDC, UINT, UINT, LPGLYPHMETRICS, DWORD, LPVOID, PMAT2);
 //     HMETAFILE GetMetaFileW(LPCWSTR);
-//     UINT GetOutlineTextMetricsW(HDC, UINT, LPOUTLINETEXTMETRIC);
+     UINT GetOutlineTextMetricsW(HDC, UINT, LPOUTLINETEXTMETRIC);
 //     WINBOOL GetTextExtentPointW(HDC, LPCWSTR, int, LPSIZE);
 //     WINBOOL GetTextExtentPoint32W(HDC, LPCWSTR, int, LPSIZE);
 //     WINBOOL GetTextExtentExPointW(HDC, LPCWSTR, int, int, LPINT, LPINT, LPSIZE);
@@ -2858,15 +2858,6 @@
 LONG GetWindowLongA(HWND hWnd, int nIndex);
 LONG GetWindowLongW(HWND hWnd, int nIndex);
 
-LONG_PTR GetWindowLongPtrA(
-    HWND hWnd,
-    int nIndex
-);
-LONG_PTR GetWindowLongPtrW(
-    HWND hWnd,
-    int nIndex
-);
-
 BOOL GetWindowPlacement(
     HWND hWnd,
     WINDOWPLACEMENT *lpwndpl
@@ -3651,18 +3642,6 @@
     LONG dwNewLong
 );
 
-LONG_PTR SetWindowLongPtrA(
-    HWND hWnd,
-    int nIndex,
-    LONG_PTR dwNewLong
-);
-
-LONG_PTR SetWindowLongPtrW(
-    HWND hWnd,
-    int nIndex,
-    LONG_PTR dwNewLong
-);
-
 BOOL SetWindowPlacement(
     HWND hWnd,
     WINDOWPLACEMENT *lpwndpl
@@ -3822,34 +3801,11 @@
 SHORT VkKeyScanW(wchar ch);
 BOOL WaitMessage();
 
-UINT GetOutlineTextMetrics(
-  HDC                  hdc,
-  UINT                 cbData,
-  LPOUTLINETEXTMETRICW lpOTM
-);
-
-BOOL GetLayeredWindowAttributes(
-    HWND hwnd,
-    COLORREF *pcrKey,
-    BYTE *pbAlpha,
-    DWORD *pdwFlags
-);
-BOOL SetLayeredWindowAttributes(
-    HWND hwnd,
-    COLORREF crKey,
-    BYTE bAlpha,
-    DWORD dwFlags
-);
 BOOL GetScrollBarInfo(
     HWND hwnd,
     LONG idObject,
     PSCROLLBARINFO psbi
 );
-BOOL PrintWindow(
-  HWND hwnd,               // Window to copy
-  HDC  hdcBlt,             // HDC to print into
-  UINT nFlags              // Optional flags
-);
 
 }
 
--- a/dwt/widgets/Combo.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/Combo.d	Sat May 17 19:23:59 2008 +0200
@@ -327,6 +327,7 @@
                 int /*long*/ result = OS.CallWindowProc (ComboProc, hwnd, msg, wParam, lParam);
                 ignoreResize = false;
                 return result;
+            default:
             }
         }
         return OS.CallWindowProc( ComboProc, hwnd, msg, wParam, lParam);
--- a/dwt/widgets/Display.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/Display.d	Sat May 17 19:23:59 2008 +0200
@@ -4587,6 +4587,7 @@
                     }
                     break;
                 }
+                default:
             }
         }
     }
--- a/dwt/widgets/IME.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/IME.d	Sat May 17 19:23:59 2008 +0200
@@ -159,6 +159,7 @@
                 pda.lsStyle = OS.TF_LS_SOLID;
                 pda.fBoldLine = attInfo is OS.TF_ATTR_TARGET_CONVERTED;
                 break;
+            default:
         }
     }
     return pda;
@@ -311,6 +312,7 @@
                                         int colorRef = OS.GetSysColor (attr.crText.cr);
                                         style.foreground = Color.win32_new (display, colorRef);
                                         break;
+                                    default:
                                 }
                                 switch (attr.crBk.type) {
                                     case OS.TF_CT_COLORREF:
@@ -320,6 +322,7 @@
                                         int colorRef = OS.GetSysColor (attr.crBk.cr);
                                         style.background = Color.win32_new (display, colorRef);
                                         break;
+                                    default:
                                 }
                                 switch (attr.crLine.type) {
                                     case OS.TF_CT_COLORREF:
@@ -329,6 +332,7 @@
                                         int colorRef = OS.GetSysColor (attr.crLine.cr);
                                         style.underlineColor = Color.win32_new (display, colorRef);
                                         break;
+                                    default:
                                 }
                                 style.underline = attr.lsStyle !is OS.TF_LS_NONE;
                                 switch (attr.lsStyle) {
@@ -344,6 +348,7 @@
                                     case OS.TF_LS_SOLID:
                                         style.underlineStyle = attr.fBoldLine ? UNDERLINE_IME_THICK : DWT.UNDERLINE_SINGLE;
                                         break;
+                                    default:
                                 }
                             }
                         }
--- a/dwt/widgets/List.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/List.d	Sat May 17 19:23:59 2008 +0200
@@ -210,6 +210,7 @@
             if (redraw) OS.DefWindowProc (handle, OS.WM_SETREDRAW, 0, 0);
             break;
         }
+        default:
     }
     int /*long*/ code = OS.CallWindowProc (ListProc, hwnd, msg, wParam, lParam);
     switch (msg) {
@@ -221,6 +222,7 @@
             }
             break;
         }
+        default:
     }
     return code;
 }
@@ -1574,6 +1576,7 @@
                     postEvent (DWT.Selection);
                     return LRESULT.ZERO;
                 }
+                default:
             }
         }
     }
@@ -1652,6 +1655,7 @@
                     location = count - 1;
                     break;
                 }
+                default:
             }
             if (location !is -1) {
                 OS.SendMessage (handle, OS.WM_CHANGEUISTATE, OS.UIS_INITIALIZE, 0);
--- a/dwt/widgets/ProgressBar.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/ProgressBar.d	Sat May 17 19:23:59 2008 +0200
@@ -214,13 +214,13 @@
  * Returns the state of the receiver. The value will be one of
  * <code>NORMAL</code>, <code>ERROR</code> or <code>PAUSED</code>.
  *
- * @return the state 
+ * @return the state
  *
  * @exception DWTException <ul>
  *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
  *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
  * </ul>
- * 
+ *
  * @since 3.4
  */
 public int getState () {
@@ -231,6 +231,7 @@
             case OS.PBST_NORMAL: return DWT.NORMAL;
             case OS.PBST_ERROR: return DWT.ERROR;
             case OS.PBST_PAUSED: return DWT.PAUSED;
+            default:
         }
     }
     return DWT.NORMAL;
@@ -357,7 +358,7 @@
  *    <li>ERROR_WIDGET_DISPOSED - if the receiver has been disposed</li>
  *    <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li>
  * </ul>
- * 
+ *
  * @since 3.4
  */
 public void setState (int state) {
@@ -373,6 +374,7 @@
             case DWT.PAUSED:
                 OS.SendMessage (handle, OS.PBM_SETSTATE, OS.PBST_PAUSED, 0);
                 break;
+            default:
         }
     }
 }
--- a/dwt/widgets/ScrollBar.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/ScrollBar.d	Sat May 17 19:23:59 2008 +0200
@@ -680,6 +680,7 @@
             case OS.SB_VERT:
                 bar = parent.getHorizontalBar ();
                 break;
+            default:
         }
         barVisible = bar !is null && bar.getVisible ();
     }
--- a/dwt/widgets/Table.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/Table.d	Sat May 17 19:23:59 2008 +0200
@@ -356,6 +356,7 @@
                 }
                 if (fixScroll) OS.SetWindowLong (handle, OS.GWL_STYLE, bits);
             }
+            default:
         }
     }
     int /*long*/ code = 0;
@@ -6767,6 +6768,7 @@
             }
             return new LRESULT (code);
         }
+        default:
     }
     return null;
 }
@@ -6859,6 +6861,7 @@
                 OS.ReleaseDC (handle, hDC);
             }
         }
+        default:
     }
     return null;
 }
--- a/dwt/widgets/Text.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/Text.d	Sat May 17 19:23:59 2008 +0200
@@ -214,6 +214,7 @@
             }
             break;
         }
+        default:
     }
     int /*long*/ code = OS.CallWindowProc (EditProc, hwnd, msg, wParam, lParam);
     switch (msg) {
@@ -225,6 +226,7 @@
             }
             break;
         }
+        default:
     }
     return code;
 }
--- a/dwt/widgets/Tree.d	Sat May 17 17:34:28 2008 +0200
+++ b/dwt/widgets/Tree.d	Sat May 17 19:23:59 2008 +0200
@@ -6912,6 +6912,7 @@
             case OS.SB_PAGEUP:
                 fixScroll = (style & DWT.VIRTUAL) !is 0 || hooks (DWT.EraseItem) || hooks (DWT.PaintItem);
                 break;
+            default:
         }
     }
     if (fixScroll) {
@@ -7418,6 +7419,7 @@
                 case OS.HDN_DIVIDERDBLCLICKW:
                 case OS.HDN_DIVIDERDBLCLICKA:
                     if (column !is null) column.pack ();
+                default:
             }
             break;
         }
@@ -7576,6 +7578,7 @@
             }
             break;
         }
+        default:
     }
     return null;
 }
@@ -7609,6 +7612,7 @@
             }
             return result;
         }
+        default:
     }
     return null;
 }
@@ -7716,6 +7720,7 @@
             }
             break;
         }
+        default:
     }
     return null;
 }