w32

package
v3.0.0-alpha.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2024 License: MIT Imports: 18 Imported by: 0

Documentation

Rendered for windows/amd64

Overview

* Copyright (C) 2019 The Winc Authors. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 The Winc Authors. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 The Winc Authors. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 The Winc Authors. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 The Winc Authors. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 Tad Vizbaras. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 Tad Vizbaras. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 Tad Vizbaras. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 Tad Vizbaras. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

* Copyright (C) 2019 Tad Vizbaras. All Rights Reserved. * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved.

Index

Constants

View Source
const (
	FALSE = 0
	TRUE  = 1
)
View Source
const (
	NO_ERROR                         = 0
	ERROR_SUCCESS                    = 0
	ERROR_FILE_NOT_FOUND             = 2
	ERROR_PATH_NOT_FOUND             = 3
	ERROR_ACCESS_DENIED              = 5
	ERROR_INVALID_HANDLE             = 6
	ERROR_BAD_FORMAT                 = 11
	ERROR_INVALID_NAME               = 123
	ERROR_MORE_DATA                  = 234
	ERROR_NO_MORE_ITEMS              = 259
	ERROR_INVALID_SERVICE_CONTROL    = 1052
	ERROR_SERVICE_REQUEST_TIMEOUT    = 1053
	ERROR_SERVICE_NO_THREAD          = 1054
	ERROR_SERVICE_DATABASE_LOCKED    = 1055
	ERROR_SERVICE_ALREADY_RUNNING    = 1056
	ERROR_SERVICE_DISABLED           = 1058
	ERROR_SERVICE_DOES_NOT_EXIST     = 1060
	ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061
	ERROR_SERVICE_NOT_ACTIVE         = 1062
	ERROR_DATABASE_DOES_NOT_EXIST    = 1065
	ERROR_SERVICE_DEPENDENCY_FAIL    = 1068
	ERROR_SERVICE_LOGON_FAILED       = 1069
	ERROR_SERVICE_MARKED_FOR_DELETE  = 1072
	ERROR_SERVICE_DEPENDENCY_DELETED = 1075
)
View Source
const (
	SE_ERR_FNF             = 2
	SE_ERR_PNF             = 3
	SE_ERR_ACCESSDENIED    = 5
	SE_ERR_OOM             = 8
	SE_ERR_DLLNOTFOUND     = 32
	SE_ERR_SHARE           = 26
	SE_ERR_ASSOCINCOMPLETE = 27
	SE_ERR_DDETIMEOUT      = 28
	SE_ERR_DDEFAIL         = 29
	SE_ERR_DDEBUSY         = 30
	SE_ERR_NOASSOC         = 31
)
View Source
const (
	EDS_ROTATEDMODE = 0x00000001
	EDS_RAWMODE     = 0x00000002
	DMDO_DEFAULT    = 0
	DMDO_90         = 1
	DMDO_180        = 2
	DMDO_270        = 3
)
View Source
const (
	IMAGE_BITMAP      = 0
	IMAGE_ICON        = 1
	IMAGE_CURSOR      = 2
	IMAGE_ENHMETAFILE = 3
)
View Source
const (
	SW_HIDE            = 0
	SW_NORMAL          = 1
	SW_SHOWNORMAL      = 1
	SW_SHOWMINIMIZED   = 2
	SW_MAXIMIZE        = 3
	SW_SHOWMAXIMIZED   = 3
	SW_SHOWNOACTIVATE  = 4
	SW_SHOW            = 5
	SW_MINIMIZE        = 6
	SW_SHOWMINNOACTIVE = 7
	SW_SHOWNA          = 8
	SW_RESTORE         = 9
	SW_SHOWDEFAULT     = 10
	SW_FORCEMINIMIZE   = 11
)

ShowWindow constants

View Source
const (
	CS_VREDRAW         = 0x00000001
	CS_HREDRAW         = 0x00000002
	CS_KEYCVTWINDOW    = 0x00000004
	CS_DBLCLKS         = 0x00000008
	CS_OWNDC           = 0x00000020
	CS_CLASSDC         = 0x00000040
	CS_PARENTDC        = 0x00000080
	CS_NOKEYCVT        = 0x00000100
	CS_NOCLOSE         = 0x00000200
	CS_SAVEBITS        = 0x00000800
	CS_BYTEALIGNCLIENT = 0x00001000
	CS_BYTEALIGNWINDOW = 0x00002000
	CS_GLOBALCLASS     = 0x00004000
	CS_IME             = 0x00010000
	CS_DROPSHADOW      = 0x00020000
)

Window class styles

View Source
const (
	IDC_ARROW       = 32512
	IDC_IBEAM       = 32513
	IDC_WAIT        = 32514
	IDC_CROSS       = 32515
	IDC_UPARROW     = 32516
	IDC_SIZENWSE    = 32642
	IDC_SIZENESW    = 32643
	IDC_SIZEWE      = 32644
	IDC_SIZENS      = 32645
	IDC_SIZEALL     = 32646
	IDC_NO          = 32648
	IDC_HAND        = 32649
	IDC_APPSTARTING = 32650
	IDC_HELP        = 32651
	IDC_ICON        = 32641
	IDC_SIZE        = 32640
)

Predefined cursor constants

View Source
const (
	IDI_APPLICATION = 32512
	IDI_HAND        = 32513
	IDI_QUESTION    = 32514
	IDI_EXCLAMATION = 32515
	IDI_ASTERISK    = 32516
	IDI_WARNING     = IDI_EXCLAMATION
	IDI_ERROR       = IDI_HAND
	IDI_INFORMATION = IDI_ASTERISK
)

Predefined icon constants

View Source
const (
	BS_3STATE          = 5
	BS_AUTO3STATE      = 6
	BS_AUTOCHECKBOX    = 3
	BS_AUTORADIOBUTTON = 9
	BS_BITMAP          = 128
	BS_BOTTOM          = 0x800
	BS_CENTER          = 0x300
	BS_CHECKBOX        = 2
	BS_DEFPUSHBUTTON   = 1
	BS_GROUPBOX        = 7
	BS_ICON            = 64
	BS_LEFT            = 256
	BS_LEFTTEXT        = 32
	BS_MULTILINE       = 0x2000
	BS_NOTIFY          = 0x4000
	BS_OWNERDRAW       = 0xB
	BS_PUSHBUTTON      = 0
	BS_PUSHLIKE        = 4096
	BS_RADIOBUTTON     = 4
	BS_RIGHT           = 512
	BS_RIGHTBUTTON     = 32
	BS_TEXT            = 0
	BS_TOP             = 0x400
	BS_USERBUTTON      = 8
	BS_VCENTER         = 0xC00
	BS_FLAT            = 0x8000
	BS_SPLITBUTTON     = 0x000C // >= Vista
	BS_DEFSPLITBUTTON  = 0x000D // >= Vista
)

Button style constants

View Source
const (
	BST_CHECKED       = 1
	BST_INDETERMINATE = 2
	BST_UNCHECKED     = 0
	BST_FOCUS         = 8
	BST_PUSHED        = 4
)

Button state constants

View Source
const (
	COLOR_3DDKSHADOW              = 21
	COLOR_3DFACE                  = 15
	COLOR_3DHILIGHT               = 20
	COLOR_3DHIGHLIGHT             = 20
	COLOR_3DLIGHT                 = 22
	COLOR_BTNHILIGHT              = 20
	COLOR_3DSHADOW                = 16
	COLOR_ACTIVEBORDER            = 10
	COLOR_ACTIVECAPTION           = 2
	COLOR_APPWORKSPACE            = 12
	COLOR_BACKGROUND              = 1
	COLOR_DESKTOP                 = 1
	COLOR_BTNFACE                 = 15
	COLOR_BTNHIGHLIGHT            = 20
	COLOR_BTNSHADOW               = 16
	COLOR_BTNTEXT                 = 18
	COLOR_CAPTIONTEXT             = 9
	COLOR_GRAYTEXT                = 17
	COLOR_HIGHLIGHT               = 13
	COLOR_HIGHLIGHTTEXT           = 14
	COLOR_INACTIVEBORDER          = 11
	COLOR_INACTIVECAPTION         = 3
	COLOR_INACTIVECAPTIONTEXT     = 19
	COLOR_INFOBK                  = 24
	COLOR_INFOTEXT                = 23
	COLOR_MENU                    = 4
	COLOR_MENUTEXT                = 7
	COLOR_SCROLLBAR               = 0
	COLOR_WINDOW                  = 5
	COLOR_WINDOWFRAME             = 6
	COLOR_WINDOWTEXT              = 8
	COLOR_HOTLIGHT                = 26
	COLOR_GRADIENTACTIVECAPTION   = 27
	COLOR_GRADIENTINACTIVECAPTION = 28
)

Predefined brushes constants

View Source
const (
	BM_CLICK    = 245
	BM_GETCHECK = 240
	BM_GETIMAGE = 246
	BM_GETSTATE = 242
	BM_SETCHECK = 241
	BM_SETIMAGE = 247
	BM_SETSTATE = 243
	BM_SETSTYLE = 244
)

Button message constants

View Source
const (
	BN_CLICKED       = 0
	BN_PAINT         = 1
	BN_HILITE        = 2
	BN_PUSHED        = BN_HILITE
	BN_UNHILITE      = 3
	BN_UNPUSHED      = BN_UNHILITE
	BN_DISABLE       = 4
	BN_DOUBLECLICKED = 5
	BN_DBLCLK        = BN_DOUBLECLICKED
	BN_SETFOCUS      = 6
	BN_KILLFOCUS     = 7
)

Button notifications

View Source
const (
	TPM_CENTERALIGN     = 0x0004
	TPM_LEFTALIGN       = 0x0000
	TPM_RIGHTALIGN      = 0x0008
	TPM_BOTTOMALIGN     = 0x0020
	TPM_TOPALIGN        = 0x0000
	TPM_VCENTERALIGN    = 0x0010
	TPM_NONOTIFY        = 0x0080
	TPM_RETURNCMD       = 0x0100
	TPM_LEFTBUTTON      = 0x0000
	TPM_RIGHTBUTTON     = 0x0002
	TPM_HORNEGANIMATION = 0x0800
	TPM_HORPOSANIMATION = 0x0400
	TPM_NOANIMATION     = 0x4000
	TPM_VERNEGANIMATION = 0x2000
	TPM_VERPOSANIMATION = 0x1000
	TPM_HORIZONTAL      = 0x0000
	TPM_VERTICAL        = 0x0040
)

TrackPopupMenu[Ex] flags

View Source
const (
	GWL_EXSTYLE     = -20
	GWL_STYLE       = -16
	GWL_WNDPROC     = -4
	GWLP_WNDPROC    = -4
	GWL_HINSTANCE   = -6
	GWLP_HINSTANCE  = -6
	GWL_HWNDPARENT  = -8
	GWLP_HWNDPARENT = -8
	GWL_ID          = -12
	GWLP_ID         = -12
	GWL_USERDATA    = -21
	GWLP_USERDATA   = -21
)

GetWindowLong and GetWindowLongPtr constants

View Source
const (
	GW_HWNDFIRST    = 0
	GW_HWNDLAST     = 1
	GW_HWNDNEXT     = 2
	GW_HWNDPREV     = 3
	GW_OWNER        = 4
	GW_CHILD        = 5
	GW_ENABLEDPOPUP = 6
)
View Source
const (
	WS_OVERLAPPED       = 0x00000000
	WS_POPUP            = 0x80000000
	WS_CHILD            = 0x40000000
	WS_MINIMIZE         = 0x20000000
	WS_VISIBLE          = 0x10000000
	WS_DISABLED         = 0x08000000
	WS_CLIPSIBLINGS     = 0x04000000
	WS_CLIPCHILDREN     = 0x02000000
	WS_MAXIMIZE         = 0x01000000
	WS_CAPTION          = 0x00C00000
	WS_BORDER           = 0x00800000
	WS_DLGFRAME         = 0x00400000
	WS_VSCROLL          = 0x00200000
	WS_HSCROLL          = 0x00100000
	WS_SYSMENU          = 0x00080000
	WS_THICKFRAME       = 0x00040000
	WS_GROUP            = 0x00020000
	WS_TABSTOP          = 0x00010000
	WS_MINIMIZEBOX      = 0x00020000
	WS_MAXIMIZEBOX      = 0x00010000
	WS_TILED            = 0x00000000
	WS_ICONIC           = 0x20000000
	WS_SIZEBOX          = 0x00040000
	WS_OVERLAPPEDWINDOW = 0x00000000 | 0x00C00000 | 0x00080000 | 0x00040000 | 0x00020000 | 0x00010000
	WS_POPUPWINDOW      = 0x80000000 | 0x00800000 | 0x00080000
	WS_CHILDWINDOW      = 0x40000000
)

Window style constants

View Source
const (
	WS_EX_DLGMODALFRAME       = 0x00000001
	WS_EX_NOPARENTNOTIFY      = 0x00000004
	WS_EX_TOPMOST             = 0x00000008
	WS_EX_ACCEPTFILES         = 0x00000010
	WS_EX_TRANSPARENT         = 0x00000020
	WS_EX_MDICHILD            = 0x00000040
	WS_EX_TOOLWINDOW          = 0x00000080
	WS_EX_WINDOWEDGE          = 0x00000100
	WS_EX_CLIENTEDGE          = 0x00000200
	WS_EX_CONTEXTHELP         = 0x00000400
	WS_EX_COMPOSITED          = 0x02000000
	WS_EX_RIGHT               = 0x00001000
	WS_EX_LEFT                = 0x00000000
	WS_EX_RTLREADING          = 0x00002000
	WS_EX_LTRREADING          = 0x00000000
	WS_EX_LEFTSCROLLBAR       = 0x00004000
	WS_EX_RIGHTSCROLLBAR      = 0x00000000
	WS_EX_CONTROLPARENT       = 0x00010000
	WS_EX_STATICEDGE          = 0x00020000
	WS_EX_APPWINDOW           = 0x00040000
	WS_EX_OVERLAPPEDWINDOW    = 0x00000100 | 0x00000200
	WS_EX_PALETTEWINDOW       = 0x00000100 | 0x00000080 | 0x00000008
	WS_EX_LAYERED             = 0x00080000
	WS_EX_NOINHERITLAYOUT     = 0x00100000
	WS_EX_NOREDIRECTIONBITMAP = 0x00200000
	WS_EX_LAYOUTRTL           = 0x00400000
	WS_EX_NOACTIVATE          = 0x08000000
)

Extended window style constants

View Source
const (
	WM_APP                    = 32768
	WM_ACTIVATE               = 6
	WM_ACTIVATEAPP            = 28
	WM_AFXFIRST               = 864
	WM_AFXLAST                = 895
	WM_ASKCBFORMATNAME        = 780
	WM_CANCELJOURNAL          = 75
	WM_CANCELMODE             = 31
	WM_CAPTURECHANGED         = 533
	WM_CHANGECBCHAIN          = 781
	WM_CHAR                   = 258
	WM_CHARTOITEM             = 47
	WM_CHILDACTIVATE          = 34
	WM_CLEAR                  = 771
	WM_CLOSE                  = 16
	WM_COMMAND                = 273
	WM_COMMNOTIFY             = 68 /* OBSOLETE */
	WM_COMPACTING             = 65
	WM_COMPAREITEM            = 57
	WM_CONTEXTMENU            = 123
	WM_COPY                   = 769
	WM_COPYDATA               = 74
	WM_CREATE                 = 1
	WM_CTLCOLORBTN            = 309
	WM_CTLCOLORDLG            = 310
	WM_CTLCOLOREDIT           = 307
	WM_CTLCOLORLISTBOX        = 308
	WM_CTLCOLORMSGBOX         = 306
	WM_CTLCOLORSCROLLBAR      = 311
	WM_CTLCOLORSTATIC         = 312
	WM_CUT                    = 768
	WM_DEADCHAR               = 259
	WM_DELETEITEM             = 45
	WM_DESTROY                = 2
	WM_DESTROYCLIPBOARD       = 775
	WM_DEVICECHANGE           = 537
	WM_DEVMODECHANGE          = 27
	WM_DISPLAYCHANGE          = 126
	WM_DRAWCLIPBOARD          = 776
	WM_DRAWITEM               = 43
	WM_DROPFILES              = 563
	WM_ENABLE                 = 10
	WM_ENDSESSION             = 22
	WM_ENTERIDLE              = 289
	WM_ENTERMENULOOP          = 529
	WM_ENTERSIZEMOVE          = 561
	WM_ERASEBKGND             = 20
	WM_EXITMENULOOP           = 530
	WM_EXITSIZEMOVE           = 562
	WM_FONTCHANGE             = 29
	WM_GETDLGCODE             = 135
	WM_GETFONT                = 49
	WM_GETHOTKEY              = 51
	WM_GETICON                = 127
	WM_GETMINMAXINFO          = 36
	WM_GETTEXT                = 13
	WM_GETTEXTLENGTH          = 14
	WM_HANDHELDFIRST          = 856
	WM_HANDHELDLAST           = 863
	WM_HELP                   = 83
	WM_HOTKEY                 = 786
	WM_HSCROLL                = 276
	WM_HSCROLLCLIPBOARD       = 782
	WM_ICONERASEBKGND         = 39
	WM_INITDIALOG             = 272
	WM_INITMENU               = 278
	WM_INITMENUPOPUP          = 279
	WM_INPUT                  = 0x00FF
	WM_INPUTLANGCHANGE        = 81
	WM_INPUTLANGCHANGEREQUEST = 80
	WM_KEYDOWN                = 256
	WM_KEYUP                  = 257
	WM_KILLFOCUS              = 8
	WM_MDIACTIVATE            = 546
	WM_MDICASCADE             = 551
	WM_MDICREATE              = 544
	WM_MDIDESTROY             = 545
	WM_MDIGETACTIVE           = 553
	WM_MDIICONARRANGE         = 552
	WM_MDIMAXIMIZE            = 549
	WM_MDINEXT                = 548
	WM_MDIREFRESHMENU         = 564
	WM_MDIRESTORE             = 547
	WM_MDISETMENU             = 560
	WM_MDITILE                = 550
	WM_MEASUREITEM            = 44
	WM_GETOBJECT              = 0x003D
	WM_CHANGEUISTATE          = 0x0127
	WM_UPDATEUISTATE          = 0x0128
	WM_QUERYUISTATE           = 0x0129
	WM_UNINITMENUPOPUP        = 0x0125
	WM_MENURBUTTONUP          = 290
	WM_MENUCOMMAND            = 0x0126
	WM_MENUGETOBJECT          = 0x0124
	WM_MENUDRAG               = 0x0123
	WM_APPCOMMAND             = 0x0319
	WM_MENUCHAR               = 288
	WM_MENUSELECT             = 287
	WM_MOVE                   = 3
	WM_MOVING                 = 534
	WM_NCACTIVATE             = 134
	WM_NCCALCSIZE             = 131
	WM_NCCREATE               = 129
	WM_NCDESTROY              = 130
	WM_NCHITTEST              = 132
	WM_NCLBUTTONDBLCLK        = 163
	WM_NCLBUTTONDOWN          = 161
	WM_NCLBUTTONUP            = 162
	WM_NCMBUTTONDBLCLK        = 169
	WM_NCMBUTTONDOWN          = 167
	WM_NCMBUTTONUP            = 168
	WM_NCXBUTTONDOWN          = 171
	WM_NCXBUTTONUP            = 172
	WM_NCXBUTTONDBLCLK        = 173
	WM_NCMOUSEHOVER           = 0x02A0
	WM_NCMOUSELEAVE           = 0x02A2
	WM_NCMOUSEMOVE            = 160
	WM_NCPAINT                = 133
	WM_NCRBUTTONDBLCLK        = 166
	WM_NCRBUTTONDOWN          = 164
	WM_NCRBUTTONUP            = 165
	WM_NEXTDLGCTL             = 40
	WM_NEXTMENU               = 531
	WM_NOTIFY                 = 78
	WM_NOTIFYFORMAT           = 85
	WM_NULL                   = 0
	WM_PAINT                  = 15
	WM_PAINTCLIPBOARD         = 777
	WM_PAINTICON              = 38
	WM_PALETTECHANGED         = 785
	WM_PALETTEISCHANGING      = 784
	WM_PARENTNOTIFY           = 528
	WM_PASTE                  = 770
	WM_PENWINFIRST            = 896
	WM_PENWINLAST             = 911
	WM_POWER                  = 72
	WM_POWERBROADCAST         = 536
	WM_PRINT                  = 791
	WM_PRINTCLIENT            = 792
	WM_QUERYDRAGICON          = 55
	WM_QUERYENDSESSION        = 17
	WM_QUERYNEWPALETTE        = 783
	WM_QUERYOPEN              = 19
	WM_QUEUESYNC              = 35
	WM_QUIT                   = 18
	WM_RENDERALLFORMATS       = 774
	WM_RENDERFORMAT           = 773
	WM_SETCURSOR              = 32
	WM_SETFOCUS               = 7
	WM_SETFONT                = 48
	WM_SETHOTKEY              = 50
	WM_SETICON                = 128
	WM_SETREDRAW              = 11
	WM_SETTEXT                = 12
	WM_SETTINGCHANGE          = 26
	WM_SHOWWINDOW             = 24
	WM_SIZE                   = 5
	WM_SIZECLIPBOARD          = 779
	WM_SIZING                 = 532
	WM_SPOOLERSTATUS          = 42
	WM_STYLECHANGED           = 125
	WM_STYLECHANGING          = 124
	WM_SYSCHAR                = 262
	WM_SYSCOLORCHANGE         = 21
	WM_SYSCOMMAND             = 274
	WM_SYSDEADCHAR            = 263
	WM_SYSKEYDOWN             = 260
	WM_SYSKEYUP               = 261
	WM_TCARD                  = 82
	WM_THEMECHANGED           = 794
	WM_TIMECHANGE             = 30
	WM_TIMER                  = 275
	WM_UNDO                   = 772
	WM_USER                   = 1024
	WM_USERCHANGED            = 84
	WM_VKEYTOITEM             = 46
	WM_VSCROLL                = 277
	WM_VSCROLLCLIPBOARD       = 778
	WM_WINDOWPOSCHANGED       = 71
	WM_WINDOWPOSCHANGING      = 70
	WM_WININICHANGE           = 26
	WM_KEYFIRST               = 256
	WM_KEYLAST                = 264
	WM_SYNCPAINT              = 136
	WM_MOUSEACTIVATE          = 33
	WM_MOUSEMOVE              = 512
	WM_LBUTTONDOWN            = 513
	WM_LBUTTONUP              = 514
	WM_LBUTTONDBLCLK          = 515
	WM_RBUTTONDOWN            = 516
	WM_RBUTTONUP              = 517
	WM_RBUTTONDBLCLK          = 518
	WM_MBUTTONDOWN            = 519
	WM_MBUTTONUP              = 520
	WM_MBUTTONDBLCLK          = 521
	WM_MOUSEWHEEL             = 522
	WM_MOUSEHWHEEL            = 526
	WM_MOUSEFIRST             = 512
	WM_XBUTTONDOWN            = 523
	WM_XBUTTONUP              = 524
	WM_XBUTTONDBLCLK          = 525
	WM_MOUSELAST              = 525
	WM_MOUSEHOVER             = 0x2A1
	WM_MOUSELEAVE             = 0x2A3
	WM_CLIPBOARDUPDATE        = 0x031D
	WM_DPICHANGED             = 0x02E0
)

Window message constants

View Source
const (
	WA_INACTIVE    = 0
	WA_ACTIVE      = 1
	WA_CLICKACTIVE = 2
)

WM_ACTIVATE

View Source
const (
	FW_DONTCARE   = 0
	FW_THIN       = 100
	FW_EXTRALIGHT = 200
	FW_ULTRALIGHT = FW_EXTRALIGHT
	FW_LIGHT      = 300
	FW_NORMAL     = 400
	FW_REGULAR    = 400
	FW_MEDIUM     = 500
	FW_SEMIBOLD   = 600
	FW_DEMIBOLD   = FW_SEMIBOLD
	FW_BOLD       = 700
	FW_EXTRABOLD  = 800
	FW_ULTRABOLD  = FW_EXTRABOLD
	FW_HEAVY      = 900
	FW_BLACK      = FW_HEAVY
)

Font weight constants

View Source
const (
	ANSI_CHARSET        = 0
	DEFAULT_CHARSET     = 1
	SYMBOL_CHARSET      = 2
	SHIFTJIS_CHARSET    = 128
	HANGEUL_CHARSET     = 129
	HANGUL_CHARSET      = 129
	GB2312_CHARSET      = 134
	CHINESEBIG5_CHARSET = 136
	GREEK_CHARSET       = 161
	TURKISH_CHARSET     = 162
	HEBREW_CHARSET      = 177
	ARABIC_CHARSET      = 178
	BALTIC_CHARSET      = 186
	RUSSIAN_CHARSET     = 204
	THAI_CHARSET        = 222
	EASTEUROPE_CHARSET  = 238
	OEM_CHARSET         = 255
	JOHAB_CHARSET       = 130
	VIETNAMESE_CHARSET  = 163
	MAC_CHARSET         = 77
)

Charset constants

View Source
const (
	// PBT_APMPOWERSTATUSCHANGE - Power status has changed.
	PBT_APMPOWERSTATUSCHANGE = 10

	// PBT_APMRESUMEAUTOMATIC -Operation is resuming automatically from a low-power state. This message is sent every time the system resumes.
	PBT_APMRESUMEAUTOMATIC = 18

	// PBT_APMRESUMESUSPEND - Operation is resuming from a low-power state. This message is sent after PBT_APMRESUMEAUTOMATIC if the resume is triggered by user input, such as pressing a key.
	PBT_APMRESUMESUSPEND = 7

	// PBT_APMSUSPEND - System is suspending operation.
	PBT_APMSUSPEND = 4

	// PBT_POWERSETTINGCHANGE - A power setting change event has been received.
	PBT_POWERSETTINGCHANGE = 32787
)
View Source
const (
	OUT_DEFAULT_PRECIS   = 0
	OUT_STRING_PRECIS    = 1
	OUT_CHARACTER_PRECIS = 2
	OUT_STROKE_PRECIS    = 3
	OUT_TT_PRECIS        = 4
	OUT_DEVICE_PRECIS    = 5
	OUT_RASTER_PRECIS    = 6
	OUT_TT_ONLY_PRECIS   = 7
	OUT_OUTLINE_PRECIS   = 8
	OUT_PS_ONLY_PRECIS   = 10
)

Font output precision constants

View Source
const (
	CLIP_DEFAULT_PRECIS   = 0
	CLIP_CHARACTER_PRECIS = 1
	CLIP_STROKE_PRECIS    = 2
	CLIP_MASK             = 15
	CLIP_LH_ANGLES        = 16
	CLIP_TT_ALWAYS        = 32
	CLIP_EMBEDDED         = 128
)

Font clipping precision constants

View Source
const (
	DEFAULT_QUALITY        = 0
	DRAFT_QUALITY          = 1
	PROOF_QUALITY          = 2
	NONANTIALIASED_QUALITY = 3
	ANTIALIASED_QUALITY    = 4
	CLEARTYPE_QUALITY      = 5
)

Font output quality constants

View Source
const (
	DEFAULT_PITCH  = 0
	FIXED_PITCH    = 1
	VARIABLE_PITCH = 2
)

Font pitch constants

View Source
const (
	FF_DECORATIVE = 80
	FF_DONTCARE   = 0
	FF_MODERN     = 48
	FF_ROMAN      = 16
	FF_SCRIPT     = 64
	FF_SWISS      = 32
)

Font family constants

View Source
const (
	DC_FIELDS            = 1
	DC_PAPERS            = 2
	DC_PAPERSIZE         = 3
	DC_MINEXTENT         = 4
	DC_MAXEXTENT         = 5
	DC_BINS              = 6
	DC_DUPLEX            = 7
	DC_SIZE              = 8
	DC_EXTRA             = 9
	DC_VERSION           = 10
	DC_DRIVER            = 11
	DC_BINNAMES          = 12
	DC_ENUMRESOLUTIONS   = 13
	DC_FILEDEPENDENCIES  = 14
	DC_TRUETYPE          = 15
	DC_PAPERNAMES        = 16
	DC_ORIENTATION       = 17
	DC_COPIES            = 18
	DC_BINADJUST         = 19
	DC_EMF_COMPLIANT     = 20
	DC_DATATYPE_PRODUCED = 21
	DC_COLLATE           = 22
	DC_MANUFACTURER      = 23
	DC_MODEL             = 24
	DC_PERSONALITY       = 25
	DC_PRINTRATE         = 26
	DC_PRINTRATEUNIT     = 27
	DC_PRINTERMEM        = 28
	DC_MEDIAREADY        = 29
	DC_STAPLE            = 30
	DC_PRINTRATEPPM      = 31
	DC_COLORDEVICE       = 32
	DC_NUP               = 33
	DC_MEDIATYPENAMES    = 34
	DC_MEDIATYPES        = 35
)

DeviceCapabilities capabilities

View Source
const (
	DRIVERVERSION   = 0
	TECHNOLOGY      = 2
	HORZSIZE        = 4
	VERTSIZE        = 6
	HORZRES         = 8
	VERTRES         = 10
	LOGPIXELSX      = 88
	LOGPIXELSY      = 90
	BITSPIXEL       = 12
	PLANES          = 14
	NUMBRUSHES      = 16
	NUMPENS         = 18
	NUMFONTS        = 22
	NUMCOLORS       = 24
	NUMMARKERS      = 20
	ASPECTX         = 40
	ASPECTY         = 42
	ASPECTXY        = 44
	PDEVICESIZE     = 26
	CLIPCAPS        = 36
	SIZEPALETTE     = 104
	NUMRESERVED     = 106
	COLORRES        = 108
	PHYSICALWIDTH   = 110
	PHYSICALHEIGHT  = 111
	PHYSICALOFFSETX = 112
	PHYSICALOFFSETY = 113
	SCALINGFACTORX  = 114
	SCALINGFACTORY  = 115
	VREFRESH        = 116
	DESKTOPHORZRES  = 118
	DESKTOPVERTRES  = 117
	BLTALIGNMENT    = 119
	SHADEBLENDCAPS  = 120
	COLORMGMTCAPS   = 121
	RASTERCAPS      = 38
	CURVECAPS       = 28
	LINECAPS        = 30
	POLYGONALCAPS   = 32
	TEXTCAPS        = 34
)

GetDeviceCaps index constants

View Source
const (
	DT_PLOTTER    = 0
	DT_RASDISPLAY = 1
	DT_RASPRINTER = 2
	DT_RASCAMERA  = 3
	DT_CHARSTREAM = 4
	DT_METAFILE   = 5
	DT_DISPFILE   = 6
)

GetDeviceCaps TECHNOLOGY constants

View Source
const (
	SB_NONE          = 0x00
	SB_CONST_ALPHA   = 0x01
	SB_PIXEL_ALPHA   = 0x02
	SB_PREMULT_ALPHA = 0x04
	SB_GRAD_RECT     = 0x10
	SB_GRAD_TRI      = 0x20
)

GetDeviceCaps SHADEBLENDCAPS constants

View Source
const (
	CM_NONE       = 0x00
	CM_DEVICE_ICM = 0x01
	CM_GAMMA_RAMP = 0x02
	CM_CMYK_COLOR = 0x04
)

GetDeviceCaps COLORMGMTCAPS constants

View Source
const (
	RC_BANDING      = 2
	RC_BITBLT       = 1
	RC_BITMAP64     = 8
	RC_DI_BITMAP    = 128
	RC_DIBTODEV     = 512
	RC_FLOODFILL    = 4096
	RC_GDI20_OUTPUT = 16
	RC_PALETTE      = 256
	RC_SCALING      = 4
	RC_STRETCHBLT   = 2048
	RC_STRETCHDIB   = 8192
	RC_DEVBITS      = 0x8000
	RC_OP_DX_OUTPUT = 0x4000
)

GetDeviceCaps RASTERCAPS constants

View Source
const (
	CC_NONE       = 0
	CC_CIRCLES    = 1
	CC_PIE        = 2
	CC_CHORD      = 4
	CC_ELLIPSES   = 8
	CC_WIDE       = 16
	CC_STYLED     = 32
	CC_WIDESTYLED = 64
	CC_INTERIORS  = 128
	CC_ROUNDRECT  = 256
)

GetDeviceCaps CURVECAPS constants

View Source
const (
	LC_NONE       = 0
	LC_POLYLINE   = 2
	LC_MARKER     = 4
	LC_POLYMARKER = 8
	LC_WIDE       = 16
	LC_STYLED     = 32
	LC_WIDESTYLED = 64
	LC_INTERIORS  = 128
)

GetDeviceCaps LINECAPS constants

View Source
const (
	PC_NONE        = 0
	PC_POLYGON     = 1
	PC_POLYPOLYGON = 256
	PC_PATHS       = 512
	PC_RECTANGLE   = 2
	PC_WINDPOLYGON = 4
	PC_SCANLINE    = 8
	PC_TRAPEZOID   = 4
	PC_WIDE        = 16
	PC_STYLED      = 32
	PC_WIDESTYLED  = 64
	PC_INTERIORS   = 128
)

GetDeviceCaps POLYGONALCAPS constants

View Source
const (
	TC_OP_CHARACTER = 1
	TC_OP_STROKE    = 2
	TC_CP_STROKE    = 4
	TC_CR_90        = 8
	TC_CR_ANY       = 16
	TC_SF_X_YINDEP  = 32
	TC_SA_DOUBLE    = 64
	TC_SA_INTEGER   = 128
	TC_SA_CONTIN    = 256
	TC_EA_DOUBLE    = 512
	TC_IA_ABLE      = 1024
	TC_UA_ABLE      = 2048
	TC_SO_ABLE      = 4096
	TC_RA_ABLE      = 8192
	TC_VA_ABLE      = 16384
	TC_RESERVED     = 32768
	TC_SCROLLBLT    = 65536
)

GetDeviceCaps TEXTCAPS constants

View Source
const (
	SS_BITMAP          = 14
	SS_BLACKFRAME      = 7
	SS_BLACKRECT       = 4
	SS_CENTER          = 1
	SS_CENTERIMAGE     = 512
	SS_EDITCONTROL     = 0x2000
	SS_ENHMETAFILE     = 15
	SS_ETCHEDFRAME     = 18
	SS_ETCHEDHORZ      = 16
	SS_ETCHEDVERT      = 17
	SS_GRAYFRAME       = 8
	SS_GRAYRECT        = 5
	SS_ICON            = 3
	SS_LEFT            = 0
	SS_LEFTNOWORDWRAP  = 0xc
	SS_NOPREFIX        = 128
	SS_NOTIFY          = 256
	SS_OWNERDRAW       = 0xd
	SS_REALSIZECONTROL = 0x040
	SS_REALSIZEIMAGE   = 0x800
	SS_RIGHT           = 2
	SS_RIGHTJUST       = 0x400
	SS_SIMPLE          = 11
	SS_SUNKEN          = 4096
	SS_WHITEFRAME      = 9
	SS_WHITERECT       = 6
	SS_USERITEM        = 10
	SS_TYPEMASK        = 0x0000001F
	SS_ENDELLIPSIS     = 0x00004000
	SS_PATHELLIPSIS    = 0x00008000
	SS_WORDELLIPSIS    = 0x0000C000
	SS_ELLIPSISMASK    = 0x0000C000
)

Static control styles

View Source
const (
	FLASHW_STOP      = 0  // Stop flashing. The system restores the window to its original state.
	FLASHW_CAPTION   = 1  // Flash the window caption.
	FLASHW_TRAY      = 2  // Flash the taskbar button.
	FLASHW_ALL       = 3  // Flash both the window caption and taskbar button. This is equivalent to setting the FLASHW_CAPTION | FLASHW_TRAY flags.
	FLASHW_TIMER     = 4  // Flash continuously, until the FLASHW_STOP flag is set.
	FLASHW_TIMERNOFG = 12 // Flash continuously until the window comes to the foreground.
)
View Source
const (
	ES_LEFT        = 0x0000
	ES_CENTER      = 0x0001
	ES_RIGHT       = 0x0002
	ES_MULTILINE   = 0x0004
	ES_UPPERCASE   = 0x0008
	ES_LOWERCASE   = 0x0010
	ES_PASSWORD    = 0x0020
	ES_AUTOVSCROLL = 0x0040
	ES_AUTOHSCROLL = 0x0080
	ES_NOHIDESEL   = 0x0100
	ES_OEMCONVERT  = 0x0400
	ES_READONLY    = 0x0800
	ES_WANTRETURN  = 0x1000
	ES_NUMBER      = 0x2000
)

Edit styles

View Source
const (
	EN_SETFOCUS     = 0x0100
	EN_KILLFOCUS    = 0x0200
	EN_CHANGE       = 0x0300
	EN_UPDATE       = 0x0400
	EN_ERRSPACE     = 0x0500
	EN_MAXTEXT      = 0x0501
	EN_HSCROLL      = 0x0601
	EN_VSCROLL      = 0x0602
	EN_ALIGN_LTR_EC = 0x0700
	EN_ALIGN_RTL_EC = 0x0701
)

Edit notifications

View Source
const (
	EM_GETSEL              = 0x00B0
	EM_SETSEL              = 0x00B1
	EM_GETRECT             = 0x00B2
	EM_SETRECT             = 0x00B3
	EM_SETRECTNP           = 0x00B4
	EM_SCROLL              = 0x00B5
	EM_LINESCROLL          = 0x00B6
	EM_SCROLLCARET         = 0x00B7
	EM_GETMODIFY           = 0x00B8
	EM_SETMODIFY           = 0x00B9
	EM_GETLINECOUNT        = 0x00BA
	EM_LINEINDEX           = 0x00BB
	EM_SETHANDLE           = 0x00BC
	EM_GETHANDLE           = 0x00BD
	EM_GETTHUMB            = 0x00BE
	EM_LINELENGTH          = 0x00C1
	EM_REPLACESEL          = 0x00C2
	EM_GETLINE             = 0x00C4
	EM_LIMITTEXT           = 0x00C5
	EM_CANUNDO             = 0x00C6
	EM_UNDO                = 0x00C7
	EM_FMTLINES            = 0x00C8
	EM_LINEFROMCHAR        = 0x00C9
	EM_SETTABSTOPS         = 0x00CB
	EM_SETPASSWORDCHAR     = 0x00CC
	EM_EMPTYUNDOBUFFER     = 0x00CD
	EM_GETFIRSTVISIBLELINE = 0x00CE
	EM_SETREADONLY         = 0x00CF
	EM_SETWORDBREAKPROC    = 0x00D0
	EM_GETWORDBREAKPROC    = 0x00D1
	EM_GETPASSWORDCHAR     = 0x00D2
	EM_SETMARGINS          = 0x00D3
	EM_GETMARGINS          = 0x00D4
	EM_SETLIMITTEXT        = EM_LIMITTEXT
	EM_GETLIMITTEXT        = 0x00D5
	EM_POSFROMCHAR         = 0x00D6
	EM_CHARFROMPOS         = 0x00D7
	EM_SETIMESTATUS        = 0x00D8
	EM_GETIMESTATUS        = 0x00D9
	EM_SETCUEBANNER        = 0x1501
	EM_GETCUEBANNER        = 0x1502
)

Edit messages

View Source
const (
	CCM_FIRST            = 0x2000
	CCM_LAST             = CCM_FIRST + 0x200
	CCM_SETBKCOLOR       = 8193
	CCM_SETCOLORSCHEME   = 8194
	CCM_GETCOLORSCHEME   = 8195
	CCM_GETDROPTARGET    = 8196
	CCM_SETUNICODEFORMAT = 8197
	CCM_GETUNICODEFORMAT = 8198
	CCM_SETVERSION       = 0x2007
	CCM_GETVERSION       = 0x2008
	CCM_SETNOTIFYWINDOW  = 0x2009
	CCM_SETWINDOWTHEME   = 0x200b
	CCM_DPISCALE         = 0x200c
)
View Source
const (
	CCS_TOP           = 1
	CCS_NOMOVEY       = 2
	CCS_BOTTOM        = 3
	CCS_NORESIZE      = 4
	CCS_NOPARENTALIGN = 8
	CCS_ADJUSTABLE    = 32
	CCS_NODIVIDER     = 64
	CCS_VERT          = 128
	CCS_LEFT          = 129
	CCS_NOMOVEX       = 130
	CCS_RIGHT         = 131
)

Common controls styles

View Source
const (
	PROGRESS_CLASS  = "msctls_progress32"
	PBM_SETPOS      = WM_USER + 2
	PBM_DELTAPOS    = WM_USER + 3
	PBM_SETSTEP     = WM_USER + 4
	PBM_STEPIT      = WM_USER + 5
	PBM_SETRANGE32  = 1030
	PBM_GETRANGE    = 1031
	PBM_GETPOS      = 1032
	PBM_SETBARCOLOR = 1033
	PBM_SETBKCOLOR  = CCM_SETBKCOLOR
	PBS_SMOOTH      = 1
	PBS_VERTICAL    = 4
)

ProgressBar messages

View Source
const (
	TBS_AUTOTICKS      = 1
	TBS_VERT           = 2
	TBS_HORZ           = 0
	TBS_TOP            = 4
	TBS_BOTTOM         = 0
	TBS_LEFT           = 4
	TBS_RIGHT          = 0
	TBS_BOTH           = 8
	TBS_NOTICKS        = 16
	TBS_ENABLESELRANGE = 32
	TBS_FIXEDLENGTH    = 64
	TBS_NOTHUMB        = 128
	TBS_TOOLTIPS       = 0x0100
)

Trackbar messages and constants

View Source
const (
	TBM_GETPOS         = WM_USER
	TBM_GETRANGEMIN    = WM_USER + 1
	TBM_GETRANGEMAX    = WM_USER + 2
	TBM_GETTIC         = WM_USER + 3
	TBM_SETTIC         = WM_USER + 4
	TBM_SETPOS         = WM_USER + 5
	TBM_SETRANGE       = WM_USER + 6
	TBM_SETRANGEMIN    = WM_USER + 7
	TBM_SETRANGEMAX    = WM_USER + 8
	TBM_CLEARTICS      = WM_USER + 9
	TBM_SETSEL         = WM_USER + 10
	TBM_SETSELSTART    = WM_USER + 11
	TBM_SETSELEND      = WM_USER + 12
	TBM_GETPTICS       = WM_USER + 14
	TBM_GETTICPOS      = WM_USER + 15
	TBM_GETNUMTICS     = WM_USER + 16
	TBM_GETSELSTART    = WM_USER + 17
	TBM_GETSELEND      = WM_USER + 18
	TBM_CLEARSEL       = WM_USER + 19
	TBM_SETTICFREQ     = WM_USER + 20
	TBM_SETPAGESIZE    = WM_USER + 21
	TBM_GETPAGESIZE    = WM_USER + 22
	TBM_SETLINESIZE    = WM_USER + 23
	TBM_GETLINESIZE    = WM_USER + 24
	TBM_GETTHUMBRECT   = WM_USER + 25
	TBM_GETCHANNELRECT = WM_USER + 26
	TBM_SETTHUMBLENGTH = WM_USER + 27
	TBM_GETTHUMBLENGTH = WM_USER + 28
	TBM_SETTOOLTIPS    = WM_USER + 29
	TBM_GETTOOLTIPS    = WM_USER + 30
	TBM_SETTIPSIDE     = WM_USER + 31
	TBM_SETBUDDY       = WM_USER + 32
	TBM_GETBUDDY       = WM_USER + 33
)
View Source
const (
	TB_LINEUP        = 0
	TB_LINEDOWN      = 1
	TB_PAGEUP        = 2
	TB_PAGEDOWN      = 3
	TB_THUMBPOSITION = 4
	TB_THUMBTRACK    = 5
	TB_TOP           = 6
	TB_BOTTOM        = 7
	TB_ENDTRACK      = 8
)
View Source
const (
	OFN_ALLOWMULTISELECT     = 0x00000200
	OFN_CREATEPROMPT         = 0x00002000
	OFN_DONTADDTORECENT      = 0x02000000
	OFN_ENABLEHOOK           = 0x00000020
	OFN_ENABLEINCLUDENOTIFY  = 0x00400000
	OFN_ENABLESIZING         = 0x00800000
	OFN_ENABLETEMPLATE       = 0x00000040
	OFN_ENABLETEMPLATEHANDLE = 0x00000080
	OFN_EXPLORER             = 0x00080000
	OFN_EXTENSIONDIFFERENT   = 0x00000400
	OFN_FILEMUSTEXIST        = 0x00001000
	OFN_FORCESHOWHIDDEN      = 0x10000000
	OFN_HIDEREADONLY         = 0x00000004
	OFN_LONGNAMES            = 0x00200000
	OFN_NOCHANGEDIR          = 0x00000008
	OFN_NODEREFERENCELINKS   = 0x00100000
	OFN_NOLONGNAMES          = 0x00040000
	OFN_NONETWORKBUTTON      = 0x00020000
	OFN_NOREADONLYRETURN     = 0x00008000
	OFN_NOTESTFILECREATE     = 0x00010000
	OFN_NOVALIDATE           = 0x00000100
	OFN_OVERWRITEPROMPT      = 0x00000002
	OFN_PATHMUSTEXIST        = 0x00000800
	OFN_READONLY             = 0x00000001
	OFN_SHAREAWARE           = 0x00004000
	OFN_SHOWHELP             = 0x00000010
)

GetOpenFileName and GetSaveFileName flags

View Source
const (
	BIF_RETURNONLYFSDIRS    = 0x00000001
	BIF_DONTGOBELOWDOMAIN   = 0x00000002
	BIF_STATUSTEXT          = 0x00000004
	BIF_RETURNFSANCESTORS   = 0x00000008
	BIF_EDITBOX             = 0x00000010
	BIF_VALIDATE            = 0x00000020
	BIF_NEWDIALOGSTYLE      = 0x00000040
	BIF_BROWSEINCLUDEURLS   = 0x00000080
	BIF_USENEWUI            = BIF_EDITBOX | BIF_NEWDIALOGSTYLE
	BIF_UAHINT              = 0x00000100
	BIF_NONEWFOLDERBUTTON   = 0x00000200
	BIF_NOTRANSLATETARGETS  = 0x00000400
	BIF_BROWSEFORCOMPUTER   = 0x00001000
	BIF_BROWSEFORPRINTER    = 0x00002000
	BIF_BROWSEINCLUDEFILES  = 0x00004000
	BIF_SHAREABLE           = 0x00008000
	BIF_BROWSEFILEJUNCTIONS = 0x00010000
)

SHBrowseForFolder flags

View Source
const (
	MB_OK                = 0x00000000
	MB_OKCANCEL          = 0x00000001
	MB_ABORTRETRYIGNORE  = 0x00000002
	MB_YESNOCANCEL       = 0x00000003
	MB_YESNO             = 0x00000004
	MB_RETRYCANCEL       = 0x00000005
	MB_CANCELTRYCONTINUE = 0x00000006
	MB_ICONHAND          = 0x00000010
	MB_ICONQUESTION      = 0x00000020
	MB_ICONEXCLAMATION   = 0x00000030
	MB_ICONASTERISK      = 0x00000040
	MB_USERICON          = 0x00000080
	MB_ICONWARNING       = MB_ICONEXCLAMATION
	MB_ICONERROR         = MB_ICONHAND
	MB_ICONINFORMATION   = MB_ICONASTERISK
	MB_ICONSTOP          = MB_ICONHAND
	MB_DEFBUTTON1        = 0x00000000
	MB_DEFBUTTON2        = 0x00000100
	MB_DEFBUTTON3        = 0x00000200
	MB_DEFBUTTON4        = 0x00000300
)

MessageBox flags

View Source
const (
	E_INVALIDARG  = 0x80070057
	E_OUTOFMEMORY = 0x8007000E
	E_UNEXPECTED  = 0x8000FFFF
)

COM

View Source
const (
	S_OK               = 0
	S_FALSE            = 0x0001
	RPC_E_CHANGED_MODE = 0x80010106
)
View Source
const (
	SM_CXSCREEN             = 0
	SM_CYSCREEN             = 1
	SM_CXVSCROLL            = 2
	SM_CYHSCROLL            = 3
	SM_CYCAPTION            = 4
	SM_CXBORDER             = 5
	SM_CYBORDER             = 6
	SM_CXDLGFRAME           = 7
	SM_CYDLGFRAME           = 8
	SM_CYVTHUMB             = 9
	SM_CXHTHUMB             = 10
	SM_CXICON               = 11
	SM_CYICON               = 12
	SM_CXCURSOR             = 13
	SM_CYCURSOR             = 14
	SM_CYMENU               = 15
	SM_CXFULLSCREEN         = 16
	SM_CYFULLSCREEN         = 17
	SM_CYKANJIWINDOW        = 18
	SM_MOUSEPRESENT         = 19
	SM_CYVSCROLL            = 20
	SM_CXHSCROLL            = 21
	SM_DEBUG                = 22
	SM_SWAPBUTTON           = 23
	SM_RESERVED1            = 24
	SM_RESERVED2            = 25
	SM_RESERVED3            = 26
	SM_RESERVED4            = 27
	SM_CXMIN                = 28
	SM_CYMIN                = 29
	SM_CXSIZE               = 30
	SM_CYSIZE               = 31
	SM_CXFRAME              = 32
	SM_CYFRAME              = 33
	SM_CXMINTRACK           = 34
	SM_CYMINTRACK           = 35
	SM_CXDOUBLECLK          = 36
	SM_CYDOUBLECLK          = 37
	SM_CXICONSPACING        = 38
	SM_CYICONSPACING        = 39
	SM_MENUDROPALIGNMENT    = 40
	SM_PENWINDOWS           = 41
	SM_DBCSENABLED          = 42
	SM_CMOUSEBUTTONS        = 43
	SM_CXFIXEDFRAME         = SM_CXDLGFRAME
	SM_CYFIXEDFRAME         = SM_CYDLGFRAME
	SM_CXSIZEFRAME          = SM_CXFRAME
	SM_CYSIZEFRAME          = SM_CYFRAME
	SM_SECURE               = 44
	SM_CXEDGE               = 45
	SM_CYEDGE               = 46
	SM_CXMINSPACING         = 47
	SM_CYMINSPACING         = 48
	SM_CXSMICON             = 49
	SM_CYSMICON             = 50
	SM_CYSMCAPTION          = 51
	SM_CXSMSIZE             = 52
	SM_CYSMSIZE             = 53
	SM_CXMENUSIZE           = 54
	SM_CYMENUSIZE           = 55
	SM_ARRANGE              = 56
	SM_CXMINIMIZED          = 57
	SM_CYMINIMIZED          = 58
	SM_CXMAXTRACK           = 59
	SM_CYMAXTRACK           = 60
	SM_CXMAXIMIZED          = 61
	SM_CYMAXIMIZED          = 62
	SM_NETWORK              = 63
	SM_CLEANBOOT            = 67
	SM_CXDRAG               = 68
	SM_CYDRAG               = 69
	SM_SHOWSOUNDS           = 70
	SM_CXMENUCHECK          = 71
	SM_CYMENUCHECK          = 72
	SM_SLOWMACHINE          = 73
	SM_MIDEASTENABLED       = 74
	SM_MOUSEWHEELPRESENT    = 75
	SM_XVIRTUALSCREEN       = 76
	SM_YVIRTUALSCREEN       = 77
	SM_CXVIRTUALSCREEN      = 78
	SM_CYVIRTUALSCREEN      = 79
	SM_CMONITORS            = 80
	SM_SAMEDISPLAYFORMAT    = 81
	SM_IMMENABLED           = 82
	SM_CXFOCUSBORDER        = 83
	SM_CYFOCUSBORDER        = 84
	SM_TABLETPC             = 86
	SM_MEDIACENTER          = 87
	SM_STARTER              = 88
	SM_SERVERR2             = 89
	SM_CMETRICS             = 91
	SM_REMOTESESSION        = 0x1000
	SM_SHUTTINGDOWN         = 0x2000
	SM_REMOTECONTROL        = 0x2001
	SM_CARETBLINKINGENABLED = 0x2002
)

GetSystemMetrics constants

View Source
const (
	CLSCTX_INPROC_SERVER   = 1
	CLSCTX_INPROC_HANDLER  = 2
	CLSCTX_LOCAL_SERVER    = 4
	CLSCTX_INPROC_SERVER16 = 8
	CLSCTX_REMOTE_SERVER   = 16
	CLSCTX_ALL             = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER
	CLSCTX_INPROC          = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER
	CLSCTX_SERVER          = CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER
)
View Source
const (
	COINIT_APARTMENTTHREADED = 0x2
	COINIT_MULTITHREADED     = 0x0
	COINIT_DISABLE_OLE1DDE   = 0x4
	COINIT_SPEED_OVER_MEMORY = 0x8
)
View Source
const (
	DISPATCH_METHOD         = 1
	DISPATCH_PROPERTYGET    = 2
	DISPATCH_PROPERTYPUT    = 4
	DISPATCH_PROPERTYPUTREF = 8
)
View Source
const (
	CC_FASTCALL = iota
	CC_CDECL
	CC_MSCPASCAL
	CC_PASCAL = CC_MSCPASCAL
	CC_MACPASCAL
	CC_STDCALL
	CC_FPFASTCALL
	CC_SYSCALL
	CC_MPWCDECL
	CC_MPWPASCAL
	CC_MAX = CC_MPWPASCAL
)
View Source
const (
	VT_EMPTY           = 0x0
	VT_NULL            = 0x1
	VT_I2              = 0x2
	VT_I4              = 0x3
	VT_R4              = 0x4
	VT_R8              = 0x5
	VT_CY              = 0x6
	VT_DATE            = 0x7
	VT_BSTR            = 0x8
	VT_DISPATCH        = 0x9
	VT_ERROR           = 0xa
	VT_BOOL            = 0xb
	VT_VARIANT         = 0xc
	VT_UNKNOWN         = 0xd
	VT_DECIMAL         = 0xe
	VT_I1              = 0x10
	VT_UI1             = 0x11
	VT_UI2             = 0x12
	VT_UI4             = 0x13
	VT_I8              = 0x14
	VT_UI8             = 0x15
	VT_INT             = 0x16
	VT_UINT            = 0x17
	VT_VOID            = 0x18
	VT_HRESULT         = 0x19
	VT_PTR             = 0x1a
	VT_SAFEARRAY       = 0x1b
	VT_CARRAY          = 0x1c
	VT_USERDEFINED     = 0x1d
	VT_LPSTR           = 0x1e
	VT_LPWSTR          = 0x1f
	VT_RECORD          = 0x24
	VT_INT_PTR         = 0x25
	VT_UINT_PTR        = 0x26
	VT_FILETIME        = 0x40
	VT_BLOB            = 0x41
	VT_STREAM          = 0x42
	VT_STORAGE         = 0x43
	VT_STREAMED_OBJECT = 0x44
	VT_STORED_OBJECT   = 0x45
	VT_BLOB_OBJECT     = 0x46
	VT_CF              = 0x47
	VT_CLSID           = 0x48
	VT_BSTR_BLOB       = 0xfff
	VT_VECTOR          = 0x1000
	VT_ARRAY           = 0x2000
	VT_BYREF           = 0x4000
	VT_RESERVED        = 0x8000
	VT_ILLEGAL         = 0xffff
	VT_ILLEGALMASKED   = 0xfff
	VT_TYPEMASK        = 0xfff
)
View Source
const (
	DISPID_UNKNOWN     = -1
	DISPID_VALUE       = 0
	DISPID_PROPERTYPUT = -3
	DISPID_NEWENUM     = -4
	DISPID_EVALUATE    = -5
	DISPID_CONSTRUCTOR = -6
	DISPID_DESTRUCTOR  = -7
	DISPID_COLLECT     = -8
)
View Source
const (
	MONITOR_DEFAULTTONULL    = 0x00000000
	MONITOR_DEFAULTTOPRIMARY = 0x00000001
	MONITOR_DEFAULTTONEAREST = 0x00000002

	MONITORINFOF_PRIMARY = 0x00000001
)
View Source
const (
	CCHDEVICENAME = 32
	CCHFORMNAME   = 32
)
View Source
const (
	IDOK       = 1
	IDCANCEL   = 2
	IDABORT    = 3
	IDRETRY    = 4
	IDIGNORE   = 5
	IDYES      = 6
	IDNO       = 7
	IDCLOSE    = 8
	IDHELP     = 9
	IDTRYAGAIN = 10
	IDCONTINUE = 11
	IDTIMEOUT  = 32000
)
View Source
const (
	NM_FIRST           = 0
	NM_OUTOFMEMORY     = NM_FIRST - 1
	NM_CLICK           = NM_FIRST - 2
	NM_DBLCLK          = NM_FIRST - 3
	NM_RETURN          = NM_FIRST - 4
	NM_RCLICK          = NM_FIRST - 5
	NM_RDBLCLK         = NM_FIRST - 6
	NM_SETFOCUS        = NM_FIRST - 7
	NM_KILLFOCUS       = NM_FIRST - 8
	NM_CUSTOMDRAW      = NM_FIRST - 12
	NM_HOVER           = NM_FIRST - 13
	NM_NCHITTEST       = NM_FIRST - 14
	NM_KEYDOWN         = NM_FIRST - 15
	NM_RELEASEDCAPTURE = NM_FIRST - 16
	NM_SETCURSOR       = NM_FIRST - 17
	NM_CHAR            = NM_FIRST - 18
	NM_TOOLTIPSCREATED = NM_FIRST - 19
	NM_LAST            = NM_FIRST - 99
)

Generic WM_NOTIFY notification codes

View Source
const (
	LVM_FIRST                    = 0x1000
	LVM_GETITEMCOUNT             = LVM_FIRST + 4
	LVM_SETIMAGELIST             = LVM_FIRST + 3
	LVM_GETIMAGELIST             = LVM_FIRST + 2
	LVM_GETITEM                  = LVM_FIRST + 75
	LVM_SETITEM                  = LVM_FIRST + 76
	LVM_INSERTITEM               = LVM_FIRST + 77
	LVM_DELETEITEM               = LVM_FIRST + 8
	LVM_DELETEALLITEMS           = LVM_FIRST + 9
	LVM_GETCALLBACKMASK          = LVM_FIRST + 10
	LVM_SETCALLBACKMASK          = LVM_FIRST + 11
	LVM_SETUNICODEFORMAT         = CCM_SETUNICODEFORMAT
	LVM_GETNEXTITEM              = LVM_FIRST + 12
	LVM_FINDITEM                 = LVM_FIRST + 83
	LVM_GETITEMRECT              = LVM_FIRST + 14
	LVM_GETSTRINGWIDTH           = LVM_FIRST + 87
	LVM_HITTEST                  = LVM_FIRST + 18
	LVM_ENSUREVISIBLE            = LVM_FIRST + 19
	LVM_SCROLL                   = LVM_FIRST + 20
	LVM_REDRAWITEMS              = LVM_FIRST + 21
	LVM_ARRANGE                  = LVM_FIRST + 22
	LVM_EDITLABEL                = LVM_FIRST + 118
	LVM_GETEDITCONTROL           = LVM_FIRST + 24
	LVM_GETCOLUMN                = LVM_FIRST + 95
	LVM_SETCOLUMN                = LVM_FIRST + 96
	LVM_INSERTCOLUMN             = LVM_FIRST + 97
	LVM_DELETECOLUMN             = LVM_FIRST + 28
	LVM_GETCOLUMNWIDTH           = LVM_FIRST + 29
	LVM_SETCOLUMNWIDTH           = LVM_FIRST + 30
	LVM_GETHEADER                = LVM_FIRST + 31
	LVM_CREATEDRAGIMAGE          = LVM_FIRST + 33
	LVM_GETVIEWRECT              = LVM_FIRST + 34
	LVM_GETTEXTCOLOR             = LVM_FIRST + 35
	LVM_SETTEXTCOLOR             = LVM_FIRST + 36
	LVM_GETTEXTBKCOLOR           = LVM_FIRST + 37
	LVM_SETTEXTBKCOLOR           = LVM_FIRST + 38
	LVM_GETTOPINDEX              = LVM_FIRST + 39
	LVM_GETCOUNTPERPAGE          = LVM_FIRST + 40
	LVM_GETORIGIN                = LVM_FIRST + 41
	LVM_UPDATE                   = LVM_FIRST + 42
	LVM_SETITEMSTATE             = LVM_FIRST + 43
	LVM_GETITEMSTATE             = LVM_FIRST + 44
	LVM_GETITEMTEXT              = LVM_FIRST + 115
	LVM_SETITEMTEXT              = LVM_FIRST + 116
	LVM_SETITEMCOUNT             = LVM_FIRST + 47
	LVM_SORTITEMS                = LVM_FIRST + 48
	LVM_SETITEMPOSITION32        = LVM_FIRST + 49
	LVM_GETSELECTEDCOUNT         = LVM_FIRST + 50
	LVM_GETITEMSPACING           = LVM_FIRST + 51
	LVM_GETISEARCHSTRING         = LVM_FIRST + 117
	LVM_SETICONSPACING           = LVM_FIRST + 53
	LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54
	LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55
	LVM_GETSUBITEMRECT           = LVM_FIRST + 56
	LVM_SUBITEMHITTEST           = LVM_FIRST + 57
	LVM_SETCOLUMNORDERARRAY      = LVM_FIRST + 58
	LVM_GETCOLUMNORDERARRAY      = LVM_FIRST + 59
	LVM_SETHOTITEM               = LVM_FIRST + 60
	LVM_GETHOTITEM               = LVM_FIRST + 61
	LVM_SETHOTCURSOR             = LVM_FIRST + 62
	LVM_GETHOTCURSOR             = LVM_FIRST + 63
	LVM_APPROXIMATEVIEWRECT      = LVM_FIRST + 64
	LVM_SETWORKAREAS             = LVM_FIRST + 65
	LVM_GETWORKAREAS             = LVM_FIRST + 70
	LVM_GETNUMBEROFWORKAREAS     = LVM_FIRST + 73
	LVM_GETSELECTIONMARK         = LVM_FIRST + 66
	LVM_SETSELECTIONMARK         = LVM_FIRST + 67
	LVM_SETHOVERTIME             = LVM_FIRST + 71
	LVM_GETHOVERTIME             = LVM_FIRST + 72
	LVM_SETTOOLTIPS              = LVM_FIRST + 74
	LVM_GETTOOLTIPS              = LVM_FIRST + 78
	LVM_SORTITEMSEX              = LVM_FIRST + 81
	LVM_SETBKIMAGE               = LVM_FIRST + 138
	LVM_GETBKIMAGE               = LVM_FIRST + 139
	LVM_SETSELECTEDCOLUMN        = LVM_FIRST + 140
	LVM_SETVIEW                  = LVM_FIRST + 142
	LVM_GETVIEW                  = LVM_FIRST + 143
	LVM_INSERTGROUP              = LVM_FIRST + 145
	LVM_SETGROUPINFO             = LVM_FIRST + 147
	LVM_GETGROUPINFO             = LVM_FIRST + 149
	LVM_REMOVEGROUP              = LVM_FIRST + 150
	LVM_MOVEGROUP                = LVM_FIRST + 151
	LVM_GETGROUPCOUNT            = LVM_FIRST + 152
	LVM_GETGROUPINFOBYINDEX      = LVM_FIRST + 153
	LVM_MOVEITEMTOGROUP          = LVM_FIRST + 154
	LVM_GETGROUPRECT             = LVM_FIRST + 98
	LVM_SETGROUPMETRICS          = LVM_FIRST + 155
	LVM_GETGROUPMETRICS          = LVM_FIRST + 156
	LVM_ENABLEGROUPVIEW          = LVM_FIRST + 157
	LVM_SORTGROUPS               = LVM_FIRST + 158
	LVM_INSERTGROUPSORTED        = LVM_FIRST + 159
	LVM_REMOVEALLGROUPS          = LVM_FIRST + 160
	LVM_HASGROUP                 = LVM_FIRST + 161
	LVM_GETGROUPSTATE            = LVM_FIRST + 92
	LVM_GETFOCUSEDGROUP          = LVM_FIRST + 93
	LVM_SETTILEVIEWINFO          = LVM_FIRST + 162
	LVM_GETTILEVIEWINFO          = LVM_FIRST + 163
	LVM_SETTILEINFO              = LVM_FIRST + 164
	LVM_GETTILEINFO              = LVM_FIRST + 165
	LVM_SETINSERTMARK            = LVM_FIRST + 166
	LVM_GETINSERTMARK            = LVM_FIRST + 167
	LVM_INSERTMARKHITTEST        = LVM_FIRST + 168
	LVM_GETINSERTMARKRECT        = LVM_FIRST + 169
	LVM_SETINSERTMARKCOLOR       = LVM_FIRST + 170
	LVM_GETINSERTMARKCOLOR       = LVM_FIRST + 171
	LVM_SETINFOTIP               = LVM_FIRST + 173
	LVM_GETSELECTEDCOLUMN        = LVM_FIRST + 174
	LVM_ISGROUPVIEWENABLED       = LVM_FIRST + 175
	LVM_GETOUTLINECOLOR          = LVM_FIRST + 176
	LVM_SETOUTLINECOLOR          = LVM_FIRST + 177
	LVM_CANCELEDITLABEL          = LVM_FIRST + 179
	LVM_MAPINDEXTOID             = LVM_FIRST + 180
	LVM_MAPIDTOINDEX             = LVM_FIRST + 181
	LVM_ISITEMVISIBLE            = LVM_FIRST + 182
	LVM_GETNEXTITEMINDEX         = LVM_FIRST + 211
)

ListView messages

View Source
const (
	LVN_FIRST = -100

	LVN_ITEMCHANGING      = LVN_FIRST - 0
	LVN_ITEMCHANGED       = LVN_FIRST - 1
	LVN_INSERTITEM        = LVN_FIRST - 2
	LVN_DELETEITEM        = LVN_FIRST - 3
	LVN_DELETEALLITEMS    = LVN_FIRST - 4
	LVN_BEGINLABELEDITA   = LVN_FIRST - 5
	LVN_BEGINLABELEDITW   = LVN_FIRST - 75
	LVN_ENDLABELEDITA     = LVN_FIRST - 6
	LVN_ENDLABELEDITW     = LVN_FIRST - 76
	LVN_COLUMNCLICK       = LVN_FIRST - 8
	LVN_BEGINDRAG         = LVN_FIRST - 9
	LVN_BEGINRDRAG        = LVN_FIRST - 11
	LVN_ODCACHEHINT       = LVN_FIRST - 13
	LVN_ODFINDITEMA       = LVN_FIRST - 52
	LVN_ODFINDITEMW       = LVN_FIRST - 79
	LVN_ITEMACTIVATE      = LVN_FIRST - 14
	LVN_ODSTATECHANGED    = LVN_FIRST - 15
	LVN_HOTTRACK          = LVN_FIRST - 21
	LVN_GETDISPINFO       = LVN_FIRST - 77
	LVN_SETDISPINFO       = LVN_FIRST - 78
	LVN_KEYDOWN           = LVN_FIRST - 55
	LVN_MARQUEEBEGIN      = LVN_FIRST - 56
	LVN_GETINFOTIP        = LVN_FIRST - 58
	LVN_INCREMENTALSEARCH = LVN_FIRST - 63
	LVN_BEGINSCROLL       = LVN_FIRST - 80
	LVN_ENDSCROLL         = LVN_FIRST - 81
)

ListView notifications

View Source
const (
	LVSCW_AUTOSIZE           = ^uintptr(0)
	LVSCW_AUTOSIZE_USEHEADER = ^uintptr(1)
)
View Source
const (
	LVNI_ALL         = 0
	LVNI_FOCUSED     = 1
	LVNI_SELECTED    = 2
	LVNI_CUT         = 4
	LVNI_DROPHILITED = 8
	LVNI_ABOVE       = 256
	LVNI_BELOW       = 512
	LVNI_TOLEFT      = 1024
	LVNI_TORIGHT     = 2048
)

ListView LVNI constants

View Source
const (
	LVS_ICON            = 0x0000
	LVS_REPORT          = 0x0001
	LVS_SMALLICON       = 0x0002
	LVS_LIST            = 0x0003
	LVS_TYPEMASK        = 0x0003
	LVS_SINGLESEL       = 0x0004
	LVS_SHOWSELALWAYS   = 0x0008
	LVS_SORTASCENDING   = 0x0010
	LVS_SORTDESCENDING  = 0x0020
	LVS_SHAREIMAGELISTS = 0x0040
	LVS_NOLABELWRAP     = 0x0080
	LVS_AUTOARRANGE     = 0x0100
	LVS_EDITLABELS      = 0x0200
	LVS_OWNERDATA       = 0x1000
	LVS_NOSCROLL        = 0x2000
	LVS_TYPESTYLEMASK   = 0xfc00
	LVS_ALIGNTOP        = 0x0000
	LVS_ALIGNLEFT       = 0x0800
	LVS_ALIGNMASK       = 0x0c00
	LVS_OWNERDRAWFIXED  = 0x0400
	LVS_NOCOLUMNHEADER  = 0x4000
	LVS_NOSORTHEADER    = 0x8000
)

ListView styles

View Source
const (
	LVS_EX_GRIDLINES        = 0x00000001
	LVS_EX_SUBITEMIMAGES    = 0x00000002
	LVS_EX_CHECKBOXES       = 0x00000004
	LVS_EX_TRACKSELECT      = 0x00000008
	LVS_EX_HEADERDRAGDROP   = 0x00000010
	LVS_EX_FULLROWSELECT    = 0x00000020
	LVS_EX_ONECLICKACTIVATE = 0x00000040
	LVS_EX_TWOCLICKACTIVATE = 0x00000080
	LVS_EX_FLATSB           = 0x00000100
	LVS_EX_REGIONAL         = 0x00000200
	LVS_EX_INFOTIP          = 0x00000400
	LVS_EX_UNDERLINEHOT     = 0x00000800
	LVS_EX_UNDERLINECOLD    = 0x00001000
	LVS_EX_MULTIWORKAREAS   = 0x00002000
	LVS_EX_LABELTIP         = 0x00004000
	LVS_EX_BORDERSELECT     = 0x00008000
	LVS_EX_DOUBLEBUFFER     = 0x00010000
	LVS_EX_HIDELABELS       = 0x00020000
	LVS_EX_SINGLEROW        = 0x00040000
	LVS_EX_SNAPTOGRID       = 0x00080000
	LVS_EX_SIMPLESELECT     = 0x00100000
)

ListView extended styles

View Source
const (
	LVCF_FMT     = 0x0001
	LVCF_WIDTH   = 0x0002
	LVCF_TEXT    = 0x0004
	LVCF_SUBITEM = 0x0008
	LVCF_IMAGE   = 0x0010
	LVCF_ORDER   = 0x0020
)

ListView column flags

View Source
const (
	LVCFMT_LEFT            = 0x0000
	LVCFMT_RIGHT           = 0x0001
	LVCFMT_CENTER          = 0x0002
	LVCFMT_JUSTIFYMASK     = 0x0003
	LVCFMT_IMAGE           = 0x0800
	LVCFMT_BITMAP_ON_RIGHT = 0x1000
	LVCFMT_COL_HAS_IMAGES  = 0x8000
)

ListView column format constants

View Source
const (
	LVIF_TEXT        = 0x00000001
	LVIF_IMAGE       = 0x00000002
	LVIF_PARAM       = 0x00000004
	LVIF_STATE       = 0x00000008
	LVIF_INDENT      = 0x00000010
	LVIF_NORECOMPUTE = 0x00000800
	LVIF_GROUPID     = 0x00000100
	LVIF_COLUMNS     = 0x00000200
)

ListView item flags

View Source
const (
	LVIS_FOCUSED        = 1
	LVIS_SELECTED       = 2
	LVIS_CUT            = 4
	LVIS_DROPHILITED    = 8
	LVIS_OVERLAYMASK    = 0xF00
	LVIS_STATEIMAGEMASK = 0xF000
)

ListView item states

View Source
const (
	LVHT_NOWHERE         = 0x00000001
	LVHT_ONITEMICON      = 0x00000002
	LVHT_ONITEMLABEL     = 0x00000004
	LVHT_ONITEMSTATEICON = 0x00000008
	LVHT_ONITEM          = LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON

	LVHT_ABOVE   = 0x00000008
	LVHT_BELOW   = 0x00000010
	LVHT_TORIGHT = 0x00000020
	LVHT_TOLEFT  = 0x00000040
)

ListView hit test constants

View Source
const (
	LVSIL_NORMAL      = 0
	LVSIL_SMALL       = 1
	LVSIL_STATE       = 2
	LVSIL_GROUPHEADER = 3
)

ListView image list types

View Source
const (
	ICC_LISTVIEW_CLASSES   = 1
	ICC_TREEVIEW_CLASSES   = 2
	ICC_BAR_CLASSES        = 4
	ICC_TAB_CLASSES        = 8
	ICC_UPDOWN_CLASS       = 16
	ICC_PROGRESS_CLASS     = 32
	ICC_HOTKEY_CLASS       = 64
	ICC_ANIMATE_CLASS      = 128
	ICC_WIN95_CLASSES      = 255
	ICC_DATE_CLASSES       = 256
	ICC_USEREX_CLASSES     = 512
	ICC_COOL_CLASSES       = 1024
	ICC_INTERNET_CLASSES   = 2048
	ICC_PAGESCROLLER_CLASS = 4096
	ICC_NATIVEFNTCTL_CLASS = 8192
	INFOTIPSIZE            = 1024
	ICC_STANDARD_CLASSES   = 0x00004000
	ICC_LINK_CLASS         = 0x00008000
)

InitCommonControlsEx flags

View Source
const (
	DLGC_WANTARROWS      = 0x0001
	DLGC_WANTTAB         = 0x0002
	DLGC_WANTALLKEYS     = 0x0004
	DLGC_WANTMESSAGE     = 0x0004
	DLGC_HASSETSEL       = 0x0008
	DLGC_DEFPUSHBUTTON   = 0x0010
	DLGC_UNDEFPUSHBUTTON = 0x0020
	DLGC_RADIOBUTTON     = 0x0040
	DLGC_WANTCHARS       = 0x0080
	DLGC_STATIC          = 0x0100
	DLGC_BUTTON          = 0x2000
)

Dialog Codes

View Source
const (
	DWL_MSGRESULT = 0
	DWL_DLGPROC   = 4
	DWL_USER      = 8
)

Get/SetWindowWord/Long offsets for use with WC_DIALOG windows

View Source
const (
	KEY_ALL_ACCESS         = 0xF003F
	KEY_CREATE_SUB_KEY     = 0x0004
	KEY_ENUMERATE_SUB_KEYS = 0x0008
	KEY_NOTIFY             = 0x0010
	KEY_QUERY_VALUE        = 0x0001
	KEY_SET_VALUE          = 0x0002
	KEY_READ               = 0x20019
	KEY_WRITE              = 0x20006
)

Registry Key Security and Access Rights

View Source
const (
	NFR_ANSI    = 1
	NFR_UNICODE = 2
	NF_QUERY    = 3
	NF_REQUERY  = 4
)
View Source
const (
	RRF_RT_REG_NONE         = 0x00000001
	RRF_RT_REG_SZ           = 0x00000002
	RRF_RT_REG_EXPAND_SZ    = 0x00000004
	RRF_RT_REG_BINARY       = 0x00000008
	RRF_RT_REG_DWORD        = 0x00000010
	RRF_RT_REG_MULTI_SZ     = 0x00000020
	RRF_RT_REG_QWORD        = 0x00000040
	RRF_RT_DWORD            = RRF_RT_REG_BINARY | RRF_RT_REG_DWORD
	RRF_RT_QWORD            = RRF_RT_REG_BINARY | RRF_RT_REG_QWORD
	RRF_RT_ANY              = 0x0000ffff
	RRF_NOEXPAND            = 0x10000000
	RRF_ZEROONFAILURE       = 0x20000000
	REG_PROCESS_APPKEY      = 0x00000001
	REG_MUI_STRING_TRUNCATE = 0x00000001
)

Registry value types

View Source
const (
	PM_NOREMOVE = 0x000
	PM_REMOVE   = 0x001
	PM_NOYIELD  = 0x002
)

PeekMessage wRemoveMsg value

View Source
const (
	ILC_MASK             = 0x00000001
	ILC_COLOR            = 0x00000000
	ILC_COLORDDB         = 0x000000FE
	ILC_COLOR4           = 0x00000004
	ILC_COLOR8           = 0x00000008
	ILC_COLOR16          = 0x00000010
	ILC_COLOR24          = 0x00000018
	ILC_COLOR32          = 0x00000020
	ILC_PALETTE          = 0x00000800
	ILC_MIRROR           = 0x00002000
	ILC_PERITEMMIRROR    = 0x00008000
	ILC_ORIGINALSIZE     = 0x00010000
	ILC_HIGHQUALITYSCALE = 0x00020000
)

ImageList flags

View Source
const (
	KF_EXTENDED = 0x0100
	KF_DLGMODE  = 0x0800
	KF_MENUMODE = 0x1000
	KF_ALTDOWN  = 0x2000
	KF_REPEAT   = 0x4000
	KF_UP       = 0x8000
)

Keystroke Message Flags

View Source
const (
	REG_NONE                       = 0
	REG_SZ                         = 1
	REG_EXPAND_SZ                  = 2
	REG_BINARY                     = 3
	REG_DWORD                      = 4
	REG_DWORD_LITTLE_ENDIAN        = 4
	REG_DWORD_BIG_ENDIAN           = 5
	REG_LINK                       = 6
	REG_MULTI_SZ                   = 7
	REG_RESOURCE_LIST              = 8
	REG_FULL_RESOURCE_DESCRIPTOR   = 9
	REG_RESOURCE_REQUIREMENTS_LIST = 10
	REG_QWORD                      = 11
	REG_QWORD_LITTLE_ENDIAN        = 11
)

Registry Value Types

View Source
const (
	TTS_ALWAYSTIP      = 0x01
	TTS_NOPREFIX       = 0x02
	TTS_NOANIMATE      = 0x10
	TTS_NOFADE         = 0x20
	TTS_BALLOON        = 0x40
	TTS_CLOSE          = 0x80
	TTS_USEVISUALSTYLE = 0x100
)

Tooltip styles

View Source
const (
	TTM_ACTIVATE        = WM_USER + 1
	TTM_SETDELAYTIME    = WM_USER + 3
	TTM_ADDTOOL         = WM_USER + 50
	TTM_DELTOOL         = WM_USER + 51
	TTM_NEWTOOLRECT     = WM_USER + 52
	TTM_RELAYEVENT      = WM_USER + 7
	TTM_GETTOOLINFO     = WM_USER + 53
	TTM_SETTOOLINFO     = WM_USER + 54
	TTM_HITTEST         = WM_USER + 55
	TTM_GETTEXT         = WM_USER + 56
	TTM_UPDATETIPTEXT   = WM_USER + 57
	TTM_GETTOOLCOUNT    = WM_USER + 13
	TTM_ENUMTOOLS       = WM_USER + 58
	TTM_GETCURRENTTOOL  = WM_USER + 59
	TTM_WINDOWFROMPOINT = WM_USER + 16
	TTM_TRACKACTIVATE   = WM_USER + 17
	TTM_TRACKPOSITION   = WM_USER + 18
	TTM_SETTIPBKCOLOR   = WM_USER + 19
	TTM_SETTIPTEXTCOLOR = WM_USER + 20
	TTM_GETDELAYTIME    = WM_USER + 21
	TTM_GETTIPBKCOLOR   = WM_USER + 22
	TTM_GETTIPTEXTCOLOR = WM_USER + 23
	TTM_SETMAXTIPWIDTH  = WM_USER + 24
	TTM_GETMAXTIPWIDTH  = WM_USER + 25
	TTM_SETMARGIN       = WM_USER + 26
	TTM_GETMARGIN       = WM_USER + 27
	TTM_POP             = WM_USER + 28
	TTM_UPDATE          = WM_USER + 29
	TTM_GETBUBBLESIZE   = WM_USER + 30
	TTM_ADJUSTRECT      = WM_USER + 31
	TTM_SETTITLE        = WM_USER + 33
	TTM_POPUP           = WM_USER + 34
	TTM_GETTITLE        = WM_USER + 35
)

Tooltip messages

View Source
const (
	TTI_NONE          = 0
	TTI_INFO          = 1
	TTI_WARNING       = 2
	TTI_ERROR         = 3
	TTI_INFO_LARGE    = 4
	TTI_WARNING_LARGE = 5
	TTI_ERROR_LARGE   = 6
)

Tooltip icons

View Source
const (
	TTN_FIRST       = -520
	TTN_LAST        = -549
	TTN_GETDISPINFO = TTN_FIRST - 10
	TTN_SHOW        = TTN_FIRST - 1
	TTN_POP         = TTN_FIRST - 2
	TTN_LINKCLICK   = TTN_FIRST - 3
	TTN_NEEDTEXT    = TTN_GETDISPINFO
)

Tooltip notifications

View Source
const (
	TTF_IDISHWND    = 0x0001
	TTF_CENTERTIP   = 0x0002
	TTF_RTLREADING  = 0x0004
	TTF_SUBCLASS    = 0x0010
	TTF_TRACK       = 0x0020
	TTF_ABSOLUTE    = 0x0080
	TTF_TRANSPARENT = 0x0100
	TTF_PARSELINKS  = 0x1000
	TTF_DI_SETITEM  = 0x8000
)
View Source
const (
	SWP_NOSIZE         = 0x0001
	SWP_NOMOVE         = 0x0002
	SWP_NOZORDER       = 0x0004
	SWP_NOREDRAW       = 0x0008
	SWP_NOACTIVATE     = 0x0010
	SWP_FRAMECHANGED   = 0x0020
	SWP_SHOWWINDOW     = 0x0040
	SWP_HIDEWINDOW     = 0x0080
	SWP_NOCOPYBITS     = 0x0100
	SWP_NOOWNERZORDER  = 0x0200
	SWP_NOSENDCHANGING = 0x0400
	SWP_DRAWFRAME      = SWP_FRAMECHANGED
	SWP_NOREPOSITION   = SWP_NOOWNERZORDER
	SWP_DEFERERASE     = 0x2000
	SWP_ASYNCWINDOWPOS = 0x4000
)
View Source
const (
	HWND_BROADCAST = HWND(0xFFFF)
	HWND_BOTTOM    = HWND(1)
	HWND_NOTOPMOST = ^HWND(1) // -2
	HWND_TOP       = HWND(0)
	HWND_TOPMOST   = ^HWND(0) // -1
	HWND_DESKTOP   = HWND(0)
	HWND_MESSAGE   = ^HWND(2) // -3
)

Predefined window handles

View Source
const (
	PS_COSMETIC  = 0x00000000
	PS_GEOMETRIC = 0x00010000
	PS_TYPE_MASK = 0x000F0000
)

Pen types

View Source
const (
	PS_SOLID       = 0
	PS_DASH        = 1
	PS_DOT         = 2
	PS_DASHDOT     = 3
	PS_DASHDOTDOT  = 4
	PS_NULL        = 5
	PS_INSIDEFRAME = 6
	PS_USERSTYLE   = 7
	PS_ALTERNATE   = 8
	PS_STYLE_MASK  = 0x0000000F
)

Pen styles

View Source
const (
	PS_ENDCAP_ROUND  = 0x00000000
	PS_ENDCAP_SQUARE = 0x00000100
	PS_ENDCAP_FLAT   = 0x00000200
	PS_ENDCAP_MASK   = 0x00000F00
)

Pen cap types

View Source
const (
	PS_JOIN_ROUND = 0x00000000
	PS_JOIN_BEVEL = 0x00001000
	PS_JOIN_MITER = 0x00002000
	PS_JOIN_MASK  = 0x0000F000
)

Pen join types

View Source
const (
	HS_HORIZONTAL = 0
	HS_VERTICAL   = 1
	HS_FDIAGONAL  = 2
	HS_BDIAGONAL  = 3
	HS_CROSS      = 4
	HS_DIAGCROSS  = 5
)

Hatch styles

View Source
const (
	WHITE_BRUSH         = 0
	LTGRAY_BRUSH        = 1
	GRAY_BRUSH          = 2
	DKGRAY_BRUSH        = 3
	BLACK_BRUSH         = 4
	NULL_BRUSH          = 5
	HOLLOW_BRUSH        = NULL_BRUSH
	WHITE_PEN           = 6
	BLACK_PEN           = 7
	NULL_PEN            = 8
	OEM_FIXED_FONT      = 10
	ANSI_FIXED_FONT     = 11
	ANSI_VAR_FONT       = 12
	SYSTEM_FONT         = 13
	DEVICE_DEFAULT_FONT = 14
	DEFAULT_PALETTE     = 15
	SYSTEM_FIXED_FONT   = 16
	DEFAULT_GUI_FONT    = 17
	DC_BRUSH            = 18
	DC_PEN              = 19
)

Stock Logical Objects

View Source
const (
	BS_SOLID         = 0
	BS_NULL          = 1
	BS_HOLLOW        = BS_NULL
	BS_HATCHED       = 2
	BS_PATTERN       = 3
	BS_INDEXED       = 4
	BS_DIBPATTERN    = 5
	BS_DIBPATTERNPT  = 6
	BS_PATTERN8X8    = 7
	BS_DIBPATTERN8X8 = 8
	BS_MONOPATTERN   = 9
)

Brush styles

View Source
const (
	TME_HOVER     = 0x00000001
	TME_LEAVE     = 0x00000002
	TME_NONCLIENT = 0x00000010
	TME_QUERY     = 0x40000000
	TME_CANCEL    = 0x80000000

	HOVER_DEFAULT = 0xFFFFFFFF
)

TRACKMOUSEEVENT flags

View Source
const (
	HTERROR       = -2
	HTTRANSPARENT = -1
	HTNOWHERE     = 0
	HTCLIENT      = 1
	HTCAPTION     = 2
	HTSYSMENU     = 3
	HTGROWBOX     = 4
	HTSIZE        = HTGROWBOX
	HTMENU        = 5
	HTHSCROLL     = 6
	HTVSCROLL     = 7
	HTMINBUTTON   = 8
	HTMAXBUTTON   = 9
	HTLEFT        = 10
	HTRIGHT       = 11
	HTTOP         = 12
	HTTOPLEFT     = 13
	HTTOPRIGHT    = 14
	HTBOTTOM      = 15
	HTBOTTOMLEFT  = 16
	HTBOTTOMRIGHT = 17
	HTBORDER      = 18
	HTREDUCE      = HTMINBUTTON
	HTZOOM        = HTMAXBUTTON
	HTSIZEFIRST   = HTLEFT
	HTSIZELAST    = HTBOTTOMRIGHT
	HTOBJECT      = 19
	HTCLOSE       = 20
	HTHELP        = 21
)

WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes

View Source
const (
	DT_TOP                  = 0x00000000
	DT_LEFT                 = 0x00000000
	DT_CENTER               = 0x00000001
	DT_RIGHT                = 0x00000002
	DT_VCENTER              = 0x00000004
	DT_BOTTOM               = 0x00000008
	DT_WORDBREAK            = 0x00000010
	DT_SINGLELINE           = 0x00000020
	DT_EXPANDTABS           = 0x00000040
	DT_TABSTOP              = 0x00000080
	DT_NOCLIP               = 0x00000100
	DT_EXTERNALLEADING      = 0x00000200
	DT_CALCRECT             = 0x00000400
	DT_NOPREFIX             = 0x00000800
	DT_INTERNAL             = 0x00001000
	DT_EDITCONTROL          = 0x00002000
	DT_PATH_ELLIPSIS        = 0x00004000
	DT_END_ELLIPSIS         = 0x00008000
	DT_MODIFYSTRING         = 0x00010000
	DT_RTLREADING           = 0x00020000
	DT_WORD_ELLIPSIS        = 0x00040000
	DT_NOFULLWIDTHCHARBREAK = 0x00080000
	DT_HIDEPREFIX           = 0x00100000
	DT_PREFIXONLY           = 0x00200000
)

DrawText[Ex] format flags

View Source
const (
	TRANSPARENT = 1
	OPAQUE      = 2
	BKMODE_LAST = 2
)

Background Modes

View Source
const (
	GMEM_FIXED          = 0x0000
	GMEM_MOVEABLE       = 0x0002
	GMEM_NOCOMPACT      = 0x0010
	GMEM_NODISCARD      = 0x0020
	GMEM_ZEROINIT       = 0x0040
	GMEM_MODIFY         = 0x0080
	GMEM_DISCARDABLE    = 0x0100
	GMEM_NOT_BANKED     = 0x1000
	GMEM_SHARE          = 0x2000
	GMEM_DDESHARE       = 0x2000
	GMEM_NOTIFY         = 0x4000
	GMEM_LOWER          = GMEM_NOT_BANKED
	GMEM_VALID_FLAGS    = 0x7F72
	GMEM_INVALID_HANDLE = 0x8000
	GHND                = GMEM_MOVEABLE | GMEM_ZEROINIT
	GPTR                = GMEM_FIXED | GMEM_ZEROINIT
)

Global Memory Flags

View Source
const (
	SRCCOPY        = 0x00CC0020
	SRCPAINT       = 0x00EE0086
	SRCAND         = 0x008800C6
	SRCINVERT      = 0x00660046
	SRCERASE       = 0x00440328
	NOTSRCCOPY     = 0x00330008
	NOTSRCERASE    = 0x001100A6
	MERGECOPY      = 0x00C000CA
	MERGEPAINT     = 0x00BB0226
	PATCOPY        = 0x00F00021
	PATPAINT       = 0x00FB0A09
	PATINVERT      = 0x005A0049
	DSTINVERT      = 0x00550009
	BLACKNESS      = 0x00000042
	WHITENESS      = 0x00FF0062
	NOMIRRORBITMAP = 0x80000000
	CAPTUREBLT     = 0x40000000
)

Ternary raster operations

View Source
const (
	CF_TEXT            = 1
	CF_BITMAP          = 2
	CF_METAFILEPICT    = 3
	CF_SYLK            = 4
	CF_DIF             = 5
	CF_TIFF            = 6
	CF_OEMTEXT         = 7
	CF_DIB             = 8
	CF_PALETTE         = 9
	CF_PENDATA         = 10
	CF_RIFF            = 11
	CF_WAVE            = 12
	CF_UNICODETEXT     = 13
	CF_ENHMETAFILE     = 14
	CF_HDROP           = 15
	CF_LOCALE          = 16
	CF_DIBV5           = 17
	CF_MAX             = 18
	CF_OWNERDISPLAY    = 0x0080
	CF_DSPTEXT         = 0x0081
	CF_DSPBITMAP       = 0x0082
	CF_DSPMETAFILEPICT = 0x0083
	CF_DSPENHMETAFILE  = 0x008E
	CF_PRIVATEFIRST    = 0x0200
	CF_PRIVATELAST     = 0x02FF
	CF_GDIOBJFIRST     = 0x0300
	CF_GDIOBJLAST      = 0x03FF
)

Clipboard formats

View Source
const (
	BI_RGB       = 0
	BI_RLE8      = 1
	BI_RLE4      = 2
	BI_BITFIELDS = 3
	BI_JPEG      = 4
	BI_PNG       = 5
)

Bitmap compression formats

View Source
const (
	DIB_PAL_COLORS = 1
	DIB_RGB_COLORS = 0
)

SetDIBitsToDevice fuColorUse

View Source
const (
	SC_MANAGER_CONNECT            = 0x0001
	SC_MANAGER_CREATE_SERVICE     = 0x0002
	SC_MANAGER_ENUMERATE_SERVICE  = 0x0004
	SC_MANAGER_LOCK               = 0x0008
	SC_MANAGER_QUERY_LOCK_STATUS  = 0x0010
	SC_MANAGER_MODIFY_BOOT_CONFIG = 0x0020
	SC_MANAGER_ALL_ACCESS         = STANDARD_RIGHTS_REQUIRED | SC_MANAGER_CONNECT | SC_MANAGER_CREATE_SERVICE | SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_LOCK | SC_MANAGER_QUERY_LOCK_STATUS | SC_MANAGER_MODIFY_BOOT_CONFIG
)

Service Control Manager object specific access types

View Source
const (
	SERVICE_KERNEL_DRIVER       = 0x00000001
	SERVICE_FILE_SYSTEM_DRIVER  = 0x00000002
	SERVICE_ADAPTER             = 0x00000004
	SERVICE_RECOGNIZER_DRIVER   = 0x00000008
	SERVICE_DRIVER              = SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER | SERVICE_RECOGNIZER_DRIVER
	SERVICE_WIN32_OWN_PROCESS   = 0x00000010
	SERVICE_WIN32_SHARE_PROCESS = 0x00000020
	SERVICE_WIN32               = SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS
	SERVICE_INTERACTIVE_PROCESS = 0x00000100
	SERVICE_TYPE_ALL            = SERVICE_WIN32 | SERVICE_ADAPTER | SERVICE_DRIVER | SERVICE_INTERACTIVE_PROCESS
)

Service Types (Bit Mask)

View Source
const (
	SERVICE_STOPPED          = 0x00000001
	SERVICE_START_PENDING    = 0x00000002
	SERVICE_STOP_PENDING     = 0x00000003
	SERVICE_RUNNING          = 0x00000004
	SERVICE_CONTINUE_PENDING = 0x00000005
	SERVICE_PAUSE_PENDING    = 0x00000006
	SERVICE_PAUSED           = 0x00000007
)

Service State -- for CurrentState

View Source
const (
	SERVICE_ACCEPT_STOP                  = 0x00000001
	SERVICE_ACCEPT_PAUSE_CONTINUE        = 0x00000002
	SERVICE_ACCEPT_SHUTDOWN              = 0x00000004
	SERVICE_ACCEPT_PARAMCHANGE           = 0x00000008
	SERVICE_ACCEPT_NETBINDCHANGE         = 0x00000010
	SERVICE_ACCEPT_HARDWAREPROFILECHANGE = 0x00000020
	SERVICE_ACCEPT_POWEREVENT            = 0x00000040
	SERVICE_ACCEPT_SESSIONCHANGE         = 0x00000080
	SERVICE_ACCEPT_PRESHUTDOWN           = 0x00000100
	SERVICE_ACCEPT_TIMECHANGE            = 0x00000200
	SERVICE_ACCEPT_TRIGGEREVENT          = 0x00000400
)

Controls Accepted (Bit Mask)

View Source
const (
	SERVICE_QUERY_CONFIG         = 0x0001
	SERVICE_CHANGE_CONFIG        = 0x0002
	SERVICE_QUERY_STATUS         = 0x0004
	SERVICE_ENUMERATE_DEPENDENTS = 0x0008
	SERVICE_START                = 0x0010
	SERVICE_STOP                 = 0x0020
	SERVICE_PAUSE_CONTINUE       = 0x0040
	SERVICE_INTERROGATE          = 0x0080
	SERVICE_USER_DEFINED_CONTROL = 0x0100

	SERVICE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED |
		SERVICE_QUERY_CONFIG |
		SERVICE_CHANGE_CONFIG |
		SERVICE_QUERY_STATUS |
		SERVICE_ENUMERATE_DEPENDENTS |
		SERVICE_START |
		SERVICE_STOP |
		SERVICE_PAUSE_CONTINUE |
		SERVICE_INTERROGATE |
		SERVICE_USER_DEFINED_CONTROL
)

Service object specific access type

View Source
const (
	MAPVK_VK_TO_CHAR   = 2
	MAPVK_VK_TO_VSC    = 0
	MAPVK_VSC_TO_VK    = 1
	MAPVK_VSC_TO_VK_EX = 3
)

MapVirtualKey maptypes

View Source
const (
	EVENTLOG_SEEK_READ       = 0x0002
	EVENTLOG_SEQUENTIAL_READ = 0x0001
	EVENTLOG_FORWARDS_READ   = 0x0004
	EVENTLOG_BACKWARDS_READ  = 0x0008
)

ReadEventLog Flags

View Source
const (
	TH32CS_SNAPHEAPLIST = 0x00000001
	TH32CS_SNAPPROCESS  = 0x00000002
	TH32CS_SNAPTHREAD   = 0x00000004
	TH32CS_SNAPMODULE   = 0x00000008
	TH32CS_SNAPMODULE32 = 0x00000010
	TH32CS_INHERIT      = 0x80000000
	TH32CS_SNAPALL      = TH32CS_SNAPHEAPLIST | TH32CS_SNAPMODULE | TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD
)

CreateToolhelp32Snapshot flags

View Source
const (
	MAX_MODULE_NAME32 = 255
	MAX_PATH          = 260
)
View Source
const (
	NIM_ADD        = 0x00000000
	NIM_MODIFY     = 0x00000001
	NIM_DELETE     = 0x00000002
	NIM_SETVERSION = 0x00000004

	NIF_MESSAGE = 0x00000001
	NIF_ICON    = 0x00000002
	NIF_TIP     = 0x00000004
	NIF_STATE   = 0x00000008
	NIF_INFO    = 0x00000010

	NIS_HIDDEN = 0x00000001

	NIIF_NONE               = 0x00000000
	NIIF_INFO               = 0x00000001
	NIIF_WARNING            = 0x00000002
	NIIF_ERROR              = 0x00000003
	NIIF_USER               = 0x00000004
	NIIF_NOSOUND            = 0x00000010
	NIIF_LARGE_ICON         = 0x00000020
	NIIF_RESPECT_QUIET_TIME = 0x00000080
	NIIF_ICON_MASK          = 0x0000000F
)
View Source
const (
	FOREGROUND_BLUE            = 0x0001
	FOREGROUND_GREEN           = 0x0002
	FOREGROUND_RED             = 0x0004
	FOREGROUND_INTENSITY       = 0x0008
	BACKGROUND_BLUE            = 0x0010
	BACKGROUND_GREEN           = 0x0020
	BACKGROUND_RED             = 0x0040
	BACKGROUND_INTENSITY       = 0x0080
	COMMON_LVB_LEADING_BYTE    = 0x0100
	COMMON_LVB_TRAILING_BYTE   = 0x0200
	COMMON_LVB_GRID_HORIZONTAL = 0x0400
	COMMON_LVB_GRID_LVERTICAL  = 0x0800
	COMMON_LVB_GRID_RVERTICAL  = 0x1000
	COMMON_LVB_REVERSE_VIDEO   = 0x4000
	COMMON_LVB_UNDERSCORE      = 0x8000
)
View Source
const (
	DWM_BB_ENABLE                = 0x00000001 //     A value for the fEnable member has been specified.
	DWM_BB_BLURREGION            = 0x00000002 //     A value for the hRgnBlur member has been specified.
	DWM_BB_TRANSITIONONMAXIMIZED = 0x00000004 //     A value for the fTransitionOnMaximized member has been specified.
)

Flags used by the DWM_BLURBEHIND structure to indicate which of its members contain valid information.

View Source
const (
	DWM_EC_DISABLECOMPOSITION = 0 //     Disable composition
	DWM_EC_ENABLECOMPOSITION  = 1 //     Enable composition
)

Flags used by the DwmEnableComposition function to change the state of Desktop Window Manager (DWM) composition.

View Source
const (
	DWMSC_DOWN      = 0x00000001
	DWMSC_UP        = 0x00000002
	DWMSC_DRAG      = 0x00000004
	DWMSC_HOLD      = 0x00000008
	DWMSC_PENBARREL = 0x00000010
	DWMSC_NONE      = 0x00000000
	DWMSC_ALL       = 0xFFFFFFFF
)
View Source
const (
	DWM_SOURCE_FRAME_SAMPLING_POINT = iota + 1
	DWM_SOURCE_FRAME_SAMPLING_COVERAGE
	DWM_SOURCE_FRAME_SAMPLING_LAST
)

TODO: need to verify this construction Flags used by the DwmSetPresentParameters function to specify the frame sampling type

View Source
const (
	DWM_TNP_RECTDESTINATION      = 0x00000001 //    A value for the rcDestination member has been specified
	DWM_TNP_RECTSOURCE           = 0x00000002 //    A value for the rcSource member has been specified
	DWM_TNP_OPACITY              = 0x00000004 //    A value for the opacity member has been specified
	DWM_TNP_VISIBLE              = 0x00000008 //    A value for the fVisible member has been specified
	DWM_TNP_SOURCECLIENTAREAONLY = 0x00000010 //    A value for the fSourceClientAreaOnly member has been specified
)

Flags used by the DWM_THUMBNAIL_PROPERTIES structure to indicate which of its members contain valid information.

View Source
const (
	DWMFLIP3D_DEFAULT = iota + 1
	DWMFLIP3D_EXCLUDEBELOW
	DWMFLIP3D_EXCLUDEABOVE
	DWMFLIP3D_LAST
)

TODO: need to verify this construction Flags used by the DwmSetWindowAttribute function to specify the Flip3D window policy

View Source
const (
	DWMNCRP_USEWINDOWSTYLE = iota + 1
	DWMNCRP_DISABLED
	DWMNCRP_ENABLED
	DWMNCRP_LAST
)

TODO: need to verify this construction Flags used by the DwmSetWindowAttribute function to specify the non-client area rendering policy

View Source
const (
	DWMTRANSITION_OWNEDWINDOW_NULL       = -1
	DWMTRANSITION_OWNEDWINDOW_REPOSITION = 0
)
View Source
const (
	DWMWA_NCRENDERING_ENABLED = iota + 1
	DWMWA_NCRENDERING_POLICY
	DWMWA_TRANSITIONS_FORCEDISABLED
	DWMWA_ALLOW_NCPAINT
	DWMWA_CAPTION_BUTTON_BOUNDS
	DWMWA_NONCLIENT_RTL_LAYOUT
	DWMWA_FORCE_ICONIC_REPRESENTATION
	DWMWA_FLIP3D_POLICY
	DWMWA_EXTENDED_FRAME_BOUNDS
	DWMWA_HAS_ICONIC_BITMAP
	DWMWA_DISALLOW_PEEK
	DWMWA_EXCLUDED_FROM_PEEK
	DWMWA_CLOAK
	DWMWA_CLOAKED
	DWMWA_FREEZE_REPRESENTATION
	DWMWA_LAST
)

TODO: need to verify this construction Flags used by the DwmGetWindowAttribute and DwmSetWindowAttribute functions to specify window attributes for non-client rendering

View Source
const (
	GT_PEN_TAP                 = 0
	GT_PEN_DOUBLETAP           = 1
	GT_PEN_RIGHTTAP            = 2
	GT_PEN_PRESSANDHOLD        = 3
	GT_PEN_PRESSANDHOLDABORT   = 4
	GT_TOUCH_TAP               = 5
	GT_TOUCH_DOUBLETAP         = 6
	GT_TOUCH_RIGHTTAP          = 7
	GT_TOUCH_PRESSANDHOLD      = 8
	GT_TOUCH_PRESSANDHOLDABORT = 9
	GT_TOUCH_PRESSANDTAP       = 10
)

TODO: use iota? Identifies the gesture type

View Source
const (
	ICON_SMALL  = 0
	ICON_BIG    = 1
	ICON_SMALL2 = 2
)

Icons

View Source
const (
	SIZE_RESTORED  = 0
	SIZE_MINIMIZED = 1
	SIZE_MAXIMIZED = 2
	SIZE_MAXSHOW   = 3
	SIZE_MAXHIDE   = 4
)
View Source
const (
	XBUTTON1 = 1
	XBUTTON2 = 2
)

XButton values

View Source
const (
	LR_LOADFROMFILE = 0x00000010
	LR_DEFAULTSIZE  = 0x00000040
)
View Source
const (
	DM_SPECVERSION = 0x0401

	DM_ORIENTATION        = 0x00000001
	DM_PAPERSIZE          = 0x00000002
	DM_PAPERLENGTH        = 0x00000004
	DM_PAPERWIDTH         = 0x00000008
	DM_SCALE              = 0x00000010
	DM_POSITION           = 0x00000020
	DM_NUP                = 0x00000040
	DM_DISPLAYORIENTATION = 0x00000080
	DM_COPIES             = 0x00000100
	DM_DEFAULTSOURCE      = 0x00000200
	DM_PRINTQUALITY       = 0x00000400
	DM_COLOR              = 0x00000800
	DM_DUPLEX             = 0x00001000
	DM_YRESOLUTION        = 0x00002000
	DM_TTOPTION           = 0x00004000
	DM_COLLATE            = 0x00008000
	DM_FORMNAME           = 0x00010000
	DM_LOGPIXELS          = 0x00020000
	DM_BITSPERPEL         = 0x00040000
	DM_PELSWIDTH          = 0x00080000
	DM_PELSHEIGHT         = 0x00100000
	DM_DISPLAYFLAGS       = 0x00200000
	DM_DISPLAYFREQUENCY   = 0x00400000
	DM_ICMMETHOD          = 0x00800000
	DM_ICMINTENT          = 0x01000000
	DM_MEDIATYPE          = 0x02000000
	DM_DITHERTYPE         = 0x04000000
	DM_PANNINGWIDTH       = 0x08000000
	DM_PANNINGHEIGHT      = 0x10000000
	DM_DISPLAYFIXEDOUTPUT = 0x20000000
)

Devmode

View Source
const (
	CDS_UPDATEREGISTRY  = 0x00000001
	CDS_TEST            = 0x00000002
	CDS_FULLSCREEN      = 0x00000004
	CDS_GLOBAL          = 0x00000008
	CDS_SET_PRIMARY     = 0x00000010
	CDS_VIDEOPARAMETERS = 0x00000020
	CDS_RESET           = 0x40000000
	CDS_NORESET         = 0x10000000

	DISP_CHANGE_SUCCESSFUL  = 0
	DISP_CHANGE_RESTART     = 1
	DISP_CHANGE_FAILED      = -1
	DISP_CHANGE_BADMODE     = -2
	DISP_CHANGE_NOTUPDATED  = -3
	DISP_CHANGE_BADFLAGS    = -4
	DISP_CHANGE_BADPARAM    = -5
	DISP_CHANGE_BADDUALVIEW = -6
)

ChangeDisplaySettings

View Source
const (
	ENUM_CURRENT_SETTINGS  = 0xFFFFFFFF
	ENUM_REGISTRY_SETTINGS = 0xFFFFFFFE
)
View Source
const (
	PFD_TYPE_RGBA       = 0
	PFD_TYPE_COLORINDEX = 1

	PFD_MAIN_PLANE     = 0
	PFD_OVERLAY_PLANE  = 1
	PFD_UNDERLAY_PLANE = -1

	PFD_DOUBLEBUFFER         = 0x00000001
	PFD_STEREO               = 0x00000002
	PFD_DRAW_TO_WINDOW       = 0x00000004
	PFD_DRAW_TO_BITMAP       = 0x00000008
	PFD_SUPPORT_GDI          = 0x00000010
	PFD_SUPPORT_OPENGL       = 0x00000020
	PFD_GENERIC_FORMAT       = 0x00000040
	PFD_NEED_PALETTE         = 0x00000080
	PFD_NEED_SYSTEM_PALETTE  = 0x00000100
	PFD_SWAP_EXCHANGE        = 0x00000200
	PFD_SWAP_COPY            = 0x00000400
	PFD_SWAP_LAYER_BUFFERS   = 0x00000800
	PFD_GENERIC_ACCELERATED  = 0x00001000
	PFD_SUPPORT_DIRECTDRAW   = 0x00002000
	PFD_DIRECT3D_ACCELERATED = 0x00004000
	PFD_SUPPORT_COMPOSITION  = 0x00008000

	PFD_DEPTH_DONTCARE        = 0x20000000
	PFD_DOUBLEBUFFER_DONTCARE = 0x40000000
	PFD_STEREO_DONTCARE       = 0x80000000
)

PIXELFORMATDESCRIPTOR

View Source
const (
	INPUT_MOUSE    = 0
	INPUT_KEYBOARD = 1
	INPUT_HARDWARE = 2
)
View Source
const (
	MOUSEEVENTF_ABSOLUTE        = 0x8000
	MOUSEEVENTF_HWHEEL          = 0x01000
	MOUSEEVENTF_MOVE            = 0x0001
	MOUSEEVENTF_MOVE_NOCOALESCE = 0x2000
	MOUSEEVENTF_LEFTDOWN        = 0x0002
	MOUSEEVENTF_LEFTUP          = 0x0004
	MOUSEEVENTF_RIGHTDOWN       = 0x0008
	MOUSEEVENTF_RIGHTUP         = 0x0010
	MOUSEEVENTF_MIDDLEDOWN      = 0x0020
	MOUSEEVENTF_MIDDLEUP        = 0x0040
	MOUSEEVENTF_VIRTUALDESK     = 0x4000
	MOUSEEVENTF_WHEEL           = 0x0800
	MOUSEEVENTF_XDOWN           = 0x0080
	MOUSEEVENTF_XUP             = 0x0100
)
View Source
const (
	WH_CALLWNDPROC     = 4
	WH_CALLWNDPROCRET  = 12
	WH_CBT             = 5
	WH_DEBUG           = 9
	WH_FOREGROUNDIDLE  = 11
	WH_GETMESSAGE      = 3
	WH_JOURNALPLAYBACK = 1
	WH_JOURNALRECORD   = 0
	WH_KEYBOARD        = 2
	WH_KEYBOARD_LL     = 13
	WH_MOUSE           = 7
	WH_MOUSE_LL        = 14
	WH_MSGFILTER       = -1
	WH_SHELL           = 10
	WH_SYSMSGFILTER    = 6
)

Windows Hooks (WH_*) http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990(v=vs.85).aspx

View Source
const (
	CB_OKAY     = 0
	CB_ERR      = ^uintptr(0) // -1
	CB_ERRSPACE = ^uintptr(1) // -2
)

ComboBox return values

View Source
const (
	CBN_ERRSPACE     = -1
	CBN_SELCHANGE    = 1
	CBN_DBLCLK       = 2
	CBN_SETFOCUS     = 3
	CBN_KILLFOCUS    = 4
	CBN_EDITCHANGE   = 5
	CBN_EDITUPDATE   = 6
	CBN_DROPDOWN     = 7
	CBN_CLOSEUP      = 8
	CBN_SELENDOK     = 9
	CBN_SELENDCANCEL = 10
)

ComboBox notifications

View Source
const (
	CBS_SIMPLE            = 0x0001
	CBS_DROPDOWN          = 0x0002
	CBS_DROPDOWNLIST      = 0x0003
	CBS_OWNERDRAWFIXED    = 0x0010
	CBS_OWNERDRAWVARIABLE = 0x0020
	CBS_AUTOHSCROLL       = 0x0040
	CBS_OEMCONVERT        = 0x0080
	CBS_SORT              = 0x0100
	CBS_HASSTRINGS        = 0x0200
	CBS_NOINTEGRALHEIGHT  = 0x0400
	CBS_DISABLENOSCROLL   = 0x0800
	CBS_UPPERCASE         = 0x2000
	CBS_LOWERCASE         = 0x4000
)

ComboBox styles

View Source
const (
	CB_GETEDITSEL            = 0x0140
	CB_LIMITTEXT             = 0x0141
	CB_SETEDITSEL            = 0x0142
	CB_ADDSTRING             = 0x0143
	CB_DELETESTRING          = 0x0144
	CB_DIR                   = 0x0145
	CB_GETCOUNT              = 0x0146
	CB_GETCURSEL             = 0x0147
	CB_GETLBTEXT             = 0x0148
	CB_GETLBTEXTLEN          = 0x0149
	CB_INSERTSTRING          = 0x014A
	CB_RESETCONTENT          = 0x014B
	CB_FINDSTRING            = 0x014C
	CB_SELECTSTRING          = 0x014D
	CB_SETCURSEL             = 0x014E
	CB_SHOWDROPDOWN          = 0x014F
	CB_GETITEMDATA           = 0x0150
	CB_SETITEMDATA           = 0x0151
	CB_GETDROPPEDCONTROLRECT = 0x0152
	CB_SETITEMHEIGHT         = 0x0153
	CB_GETITEMHEIGHT         = 0x0154
	CB_SETEXTENDEDUI         = 0x0155
	CB_GETEXTENDEDUI         = 0x0156
	CB_GETDROPPEDSTATE       = 0x0157
	CB_FINDSTRINGEXACT       = 0x0158
	CB_SETLOCALE             = 0x0159
	CB_GETLOCALE             = 0x015A
	CB_GETTOPINDEX           = 0x015b
	CB_SETTOPINDEX           = 0x015c
	CB_GETHORIZONTALEXTENT   = 0x015d
	CB_SETHORIZONTALEXTENT   = 0x015e
	CB_GETDROPPEDWIDTH       = 0x015f
	CB_SETDROPPEDWIDTH       = 0x0160
	CB_INITSTORAGE           = 0x0161
	CB_MULTIPLEADDSTRING     = 0x0163
	CB_GETCOMBOBOXINFO       = 0x0164
)

ComboBox messages

View Source
const (
	TVS_HASBUTTONS      = 0x0001
	TVS_HASLINES        = 0x0002
	TVS_LINESATROOT     = 0x0004
	TVS_EDITLABELS      = 0x0008
	TVS_DISABLEDRAGDROP = 0x0010
	TVS_SHOWSELALWAYS   = 0x0020
	TVS_RTLREADING      = 0x0040
	TVS_NOTOOLTIPS      = 0x0080
	TVS_CHECKBOXES      = 0x0100
	TVS_TRACKSELECT     = 0x0200
	TVS_SINGLEEXPAND    = 0x0400
	TVS_INFOTIP         = 0x0800
	TVS_FULLROWSELECT   = 0x1000
	TVS_NOSCROLL        = 0x2000
	TVS_NONEVENHEIGHT   = 0x4000
	TVS_NOHSCROLL       = 0x8000
)

TreeView styles

View Source
const (
	TVS_EX_NOSINGLECOLLAPSE    = 0x0001
	TVS_EX_MULTISELECT         = 0x0002
	TVS_EX_DOUBLEBUFFER        = 0x0004
	TVS_EX_NOINDENTSTATE       = 0x0008
	TVS_EX_RICHTOOLTIP         = 0x0010
	TVS_EX_AUTOHSCROLL         = 0x0020
	TVS_EX_FADEINOUTEXPANDOS   = 0x0040
	TVS_EX_PARTIALCHECKBOXES   = 0x0080
	TVS_EX_EXCLUSIONCHECKBOXES = 0x0100
	TVS_EX_DIMMEDCHECKBOXES    = 0x0200
	TVS_EX_DRAWIMAGEASYNC      = 0x0400
)
View Source
const (
	TVIF_TEXT          = 0x0001
	TVIF_IMAGE         = 0x0002
	TVIF_PARAM         = 0x0004
	TVIF_STATE         = 0x0008
	TVIF_HANDLE        = 0x0010
	TVIF_SELECTEDIMAGE = 0x0020
	TVIF_CHILDREN      = 0x0040
	TVIF_INTEGRAL      = 0x0080
	TVIF_STATEEX       = 0x0100
	TVIF_EXPANDEDIMAGE = 0x0200
)
View Source
const (
	TVIS_SELECTED       = 0x0002
	TVIS_CUT            = 0x0004
	TVIS_DROPHILITED    = 0x0008
	TVIS_BOLD           = 0x0010
	TVIS_EXPANDED       = 0x0020
	TVIS_EXPANDEDONCE   = 0x0040
	TVIS_EXPANDPARTIAL  = 0x0080
	TVIS_OVERLAYMASK    = 0x0F00
	TVIS_STATEIMAGEMASK = 0xF000
	TVIS_USERMASK       = 0xF000
)
View Source
const (
	TVIS_EX_FLAT     = 0x0001
	TVIS_EX_DISABLED = 0x0002
	TVIS_EX_ALL      = 0x0002
)
View Source
const (
	TVI_ROOT  = ^HTREEITEM(0xffff)
	TVI_FIRST = ^HTREEITEM(0xfffe)
	TVI_LAST  = ^HTREEITEM(0xfffd)
	TVI_SORT  = ^HTREEITEM(0xfffc)
)
View Source
const (
	TVE_COLLAPSE      = 0x0001
	TVE_EXPAND        = 0x0002
	TVE_TOGGLE        = 0x0003
	TVE_EXPANDPARTIAL = 0x4000
	TVE_COLLAPSERESET = 0x8000
)

TVM_EXPAND action flags

View Source
const (
	TV_FIRST = 0x1100

	TVM_INSERTITEM          = TV_FIRST + 50
	TVM_DELETEITEM          = TV_FIRST + 1
	TVM_EXPAND              = TV_FIRST + 2
	TVM_GETITEMRECT         = TV_FIRST + 4
	TVM_GETCOUNT            = TV_FIRST + 5
	TVM_GETINDENT           = TV_FIRST + 6
	TVM_SETINDENT           = TV_FIRST + 7
	TVM_GETIMAGELIST        = TV_FIRST + 8
	TVM_SETIMAGELIST        = TV_FIRST + 9
	TVM_GETNEXTITEM         = TV_FIRST + 10
	TVM_SELECTITEM          = TV_FIRST + 11
	TVM_GETITEM             = TV_FIRST + 62
	TVM_SETITEM             = TV_FIRST + 63
	TVM_EDITLABEL           = TV_FIRST + 65
	TVM_GETEDITCONTROL      = TV_FIRST + 15
	TVM_GETVISIBLECOUNT     = TV_FIRST + 16
	TVM_HITTEST             = TV_FIRST + 17
	TVM_CREATEDRAGIMAGE     = TV_FIRST + 18
	TVM_SORTCHILDREN        = TV_FIRST + 19
	TVM_ENSUREVISIBLE       = TV_FIRST + 20
	TVM_SORTCHILDRENCB      = TV_FIRST + 21
	TVM_ENDEDITLABELNOW     = TV_FIRST + 22
	TVM_GETISEARCHSTRING    = TV_FIRST + 64
	TVM_SETTOOLTIPS         = TV_FIRST + 24
	TVM_GETTOOLTIPS         = TV_FIRST + 25
	TVM_SETINSERTMARK       = TV_FIRST + 26
	TVM_SETUNICODEFORMAT    = CCM_SETUNICODEFORMAT
	TVM_GETUNICODEFORMAT    = CCM_GETUNICODEFORMAT
	TVM_SETITEMHEIGHT       = TV_FIRST + 27
	TVM_GETITEMHEIGHT       = TV_FIRST + 28
	TVM_SETBKCOLOR          = TV_FIRST + 29
	TVM_SETTEXTCOLOR        = TV_FIRST + 30
	TVM_GETBKCOLOR          = TV_FIRST + 31
	TVM_GETTEXTCOLOR        = TV_FIRST + 32
	TVM_SETSCROLLTIME       = TV_FIRST + 33
	TVM_GETSCROLLTIME       = TV_FIRST + 34
	TVM_SETINSERTMARKCOLOR  = TV_FIRST + 37
	TVM_GETINSERTMARKCOLOR  = TV_FIRST + 38
	TVM_GETITEMSTATE        = TV_FIRST + 39
	TVM_SETLINECOLOR        = TV_FIRST + 40
	TVM_GETLINECOLOR        = TV_FIRST + 41
	TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42
	TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43
	TVM_SETEXTENDEDSTYLE    = TV_FIRST + 44
	TVM_GETEXTENDEDSTYLE    = TV_FIRST + 45
	TVM_SETAUTOSCROLLINFO   = TV_FIRST + 59
)

TreeView messages

View Source
const (
	TVN_FIRST = ^uint32(399)

	TVN_SELCHANGING    = TVN_FIRST - 50
	TVN_SELCHANGED     = TVN_FIRST - 51
	TVN_GETDISPINFO    = TVN_FIRST - 52
	TVN_ITEMEXPANDING  = TVN_FIRST - 54
	TVN_ITEMEXPANDED   = TVN_FIRST - 55
	TVN_BEGINDRAG      = TVN_FIRST - 56
	TVN_BEGINRDRAG     = TVN_FIRST - 57
	TVN_DELETEITEM     = TVN_FIRST - 58
	TVN_BEGINLABELEDIT = TVN_FIRST - 59
	TVN_ENDLABELEDIT   = TVN_FIRST - 60
	TVN_KEYDOWN        = TVN_FIRST - 12
	TVN_GETINFOTIP     = TVN_FIRST - 14
	TVN_SINGLEEXPAND   = TVN_FIRST - 15
	TVN_ITEMCHANGING   = TVN_FIRST - 17
	TVN_ITEMCHANGED    = TVN_FIRST - 19
	TVN_ASYNCDRAW      = TVN_FIRST - 20
)

TreeView notifications

View Source
const (
	TVHT_NOWHERE         = 1
	TVHT_ONITEMICON      = 2
	TVHT_ONITEMLABEL     = 4
	TVHT_ONITEM          = TVHT_ONITEMICON | TVHT_ONITEMLABEL | TVHT_ONITEMSTATEICON
	TVHT_ONITEMINDENT    = 8
	TVHT_ONITEMBUTTON    = 16
	TVHT_ONITEMRIGHT     = 32
	TVHT_ONITEMSTATEICON = 64
	TVHT_ABOVE           = 256
	TVHT_BELOW           = 512
	TVHT_TORIGHT         = 1024
	TVHT_TOLEFT          = 2048
)

TreeView hit test constants

View Source
const (
	TCS_SCROLLOPPOSITE    = 0x0001
	TCS_BOTTOM            = 0x0002
	TCS_RIGHT             = 0x0002
	TCS_MULTISELECT       = 0x0004
	TCS_FLATBUTTONS       = 0x0008
	TCS_FORCEICONLEFT     = 0x0010
	TCS_FORCELABELLEFT    = 0x0020
	TCS_HOTTRACK          = 0x0040
	TCS_VERTICAL          = 0x0080
	TCS_TABS              = 0x0000
	TCS_BUTTONS           = 0x0100
	TCS_SINGLELINE        = 0x0000
	TCS_MULTILINE         = 0x0200
	TCS_RIGHTJUSTIFY      = 0x0000
	TCS_FIXEDWIDTH        = 0x0400
	TCS_RAGGEDRIGHT       = 0x0800
	TCS_FOCUSONBUTTONDOWN = 0x1000
	TCS_OWNERDRAWFIXED    = 0x2000
	TCS_TOOLTIPS          = 0x4000
	TCS_FOCUSNEVER        = 0x8000
)
View Source
const (
	TCS_EX_FLATSEPARATORS = 0x00000001
	TCS_EX_REGISTERDROP   = 0x00000002
)
View Source
const (
	TCM_GETIMAGELIST     = TCM_FIRST + 2
	TCM_SETIMAGELIST     = TCM_FIRST + 3
	TCM_GETITEMCOUNT     = TCM_FIRST + 4
	TCM_GETITEM          = TCM_FIRST + 60
	TCM_SETITEM          = TCM_FIRST + 61
	TCM_INSERTITEM       = TCM_FIRST + 62
	TCM_DELETEITEM       = TCM_FIRST + 8
	TCM_DELETEALLITEMS   = TCM_FIRST + 9
	TCM_GETITEMRECT      = TCM_FIRST + 10
	TCM_GETCURSEL        = TCM_FIRST + 11
	TCM_SETCURSEL        = TCM_FIRST + 12
	TCM_HITTEST          = TCM_FIRST + 13
	TCM_SETITEMEXTRA     = TCM_FIRST + 14
	TCM_ADJUSTRECT       = TCM_FIRST + 40
	TCM_SETITEMSIZE      = TCM_FIRST + 41
	TCM_REMOVEIMAGE      = TCM_FIRST + 42
	TCM_SETPADDING       = TCM_FIRST + 43
	TCM_GETROWCOUNT      = TCM_FIRST + 44
	TCM_GETTOOLTIPS      = TCM_FIRST + 45
	TCM_SETTOOLTIPS      = TCM_FIRST + 46
	TCM_GETCURFOCUS      = TCM_FIRST + 47
	TCM_SETCURFOCUS      = TCM_FIRST + 48
	TCM_SETMINTABWIDTH   = TCM_FIRST + 49
	TCM_DESELECTALL      = TCM_FIRST + 50
	TCM_HIGHLIGHTITEM    = TCM_FIRST + 51
	TCM_SETEXTENDEDSTYLE = TCM_FIRST + 52
	TCM_GETEXTENDEDSTYLE = TCM_FIRST + 53
	TCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
	TCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
)
View Source
const (
	TCIF_TEXT       = 0x0001
	TCIF_IMAGE      = 0x0002
	TCIF_RTLREADING = 0x0004
	TCIF_PARAM      = 0x0008
	TCIF_STATE      = 0x0010
)
View Source
const (
	TCIS_BUTTONPRESSED = 0x0001
	TCIS_HIGHLIGHTED   = 0x0002
)
View Source
const (
	TCHT_NOWHERE     = 0x0001
	TCHT_ONITEMICON  = 0x0002
	TCHT_ONITEMLABEL = 0x0004
	TCHT_ONITEM      = TCHT_ONITEMICON | TCHT_ONITEMLABEL
)
View Source
const (
	TCN_KEYDOWN     = TCN_FIRST - 0
	TCN_SELCHANGE   = TCN_FIRST - 1
	TCN_SELCHANGING = TCN_FIRST - 2
	TCN_GETOBJECT   = TCN_FIRST - 3
	TCN_FOCUSCHANGE = TCN_FIRST - 4
)
View Source
const (
	MIIM_STATE      = 1
	MIIM_ID         = 2
	MIIM_SUBMENU    = 4
	MIIM_CHECKMARKS = 8
	MIIM_TYPE       = 16
	MIIM_DATA       = 32
	MIIM_STRING     = 64
	MIIM_BITMAP     = 128
	MIIM_FTYPE      = 256
)

Constants for MENUITEMINFO.fMask

View Source
const (
	MFT_BITMAP       = 4
	MFT_MENUBARBREAK = 32
	MFT_MENUBREAK    = 64
	MFT_OWNERDRAW    = 256
	MFT_RADIOCHECK   = 512
	MFT_RIGHTJUSTIFY = 0x4000
	MFT_SEPARATOR    = 0x800
	MFT_RIGHTORDER   = 0x2000
	MFT_STRING       = 0
)

Constants for MENUITEMINFO.fType

View Source
const (
	MFS_CHECKED   = 8
	MFS_DEFAULT   = 4096
	MFS_DISABLED  = 3
	MFS_ENABLED   = 0
	MFS_GRAYED    = 3
	MFS_HILITE    = 128
	MFS_UNCHECKED = 0
	MFS_UNHILITE  = 0
)

Constants for MENUITEMINFO.fState

View Source
const (
	HBMMENU_CALLBACK        = -1
	HBMMENU_SYSTEM          = 1
	HBMMENU_MBAR_RESTORE    = 2
	HBMMENU_MBAR_MINIMIZE   = 3
	HBMMENU_MBAR_CLOSE      = 5
	HBMMENU_MBAR_CLOSE_D    = 6
	HBMMENU_MBAR_MINIMIZE_D = 7
	HBMMENU_POPUP_CLOSE     = 8
	HBMMENU_POPUP_RESTORE   = 9
	HBMMENU_POPUP_MAXIMIZE  = 10
	HBMMENU_POPUP_MINIMIZE  = 11
)

Constants for MENUITEMINFO.hbmp*

View Source
const (
	MIM_APPLYTOSUBMENUS = 0x80000000
	MIM_BACKGROUND      = 0x00000002
	MIM_HELPID          = 0x00000004
	MIM_MAXHEIGHT       = 0x00000001
	MIM_MENUDATA        = 0x00000008
	MIM_STYLE           = 0x00000010
)

MENUINFO mask constants

View Source
const (
	MNS_AUTODISMISS = 0x10000000
	MNS_CHECKORBMP  = 0x04000000
	MNS_DRAGDROP    = 0x20000000
	MNS_MODELESS    = 0x40000000
	MNS_NOCHECK     = 0x80000000
	MNS_NOTIFYBYPOS = 0x08000000
)

MENUINFO style constants

View Source
const (
	MF_BYCOMMAND    = 0x00000000
	MF_BYPOSITION   = 0x00000400
	MF_BITMAP       = 0x00000004
	MF_CHECKED      = 0x00000008
	MF_DISABLED     = 0x00000002
	MF_ENABLED      = 0x00000000
	MF_GRAYED       = 0x00000001
	MF_MENUBARBREAK = 0x00000020
	MF_MENUBREAK    = 0x00000040
	MF_OWNERDRAW    = 0x00000100
	MF_POPUP        = 0x00000010
	MF_SEPARATOR    = 0x00000800
	MF_STRING       = 0x00000000
	MF_UNCHECKED    = 0x00000000
)
View Source
const (
	UIS_SET        = 1
	UIS_CLEAR      = 2
	UIS_INITIALIZE = 3
)

UI state constants

View Source
const (
	UISF_HIDEFOCUS = 0x1
	UISF_HIDEACCEL = 0x2
	UISF_ACTIVE    = 0x4
)

UI state constants

View Source
const (
	VK_LBUTTON             = 1
	VK_RBUTTON             = 2
	VK_CANCEL              = 3
	VK_MBUTTON             = 4
	VK_XBUTTON1            = 5
	VK_XBUTTON2            = 6
	VK_BACK                = 8
	VK_TAB                 = 9
	VK_CLEAR               = 12
	VK_RETURN              = 13
	VK_SHIFT               = 16
	VK_CONTROL             = 17
	VK_MENU                = 18
	VK_PAUSE               = 19
	VK_CAPITAL             = 20
	VK_KANA                = 0x15
	VK_HANGEUL             = 0x15
	VK_HANGUL              = 0x15
	VK_JUNJA               = 0x17
	VK_FINAL               = 0x18
	VK_HANJA               = 0x19
	VK_KANJI               = 0x19
	VK_ESCAPE              = 0x1B
	VK_CONVERT             = 0x1C
	VK_NONCONVERT          = 0x1D
	VK_ACCEPT              = 0x1E
	VK_MODECHANGE          = 0x1F
	VK_SPACE               = 32
	VK_PRIOR               = 33
	VK_NEXT                = 34
	VK_END                 = 35
	VK_HOME                = 36
	VK_LEFT                = 37
	VK_UP                  = 38
	VK_RIGHT               = 39
	VK_DOWN                = 40
	VK_SELECT              = 41
	VK_PRINT               = 42
	VK_EXECUTE             = 43
	VK_SNAPSHOT            = 44
	VK_INSERT              = 45
	VK_DELETE              = 46
	VK_HELP                = 47
	VK_LWIN                = 0x5B
	VK_RWIN                = 0x5C
	VK_APPS                = 0x5D
	VK_SLEEP               = 0x5F
	VK_NUMPAD0             = 0x60
	VK_NUMPAD1             = 0x61
	VK_NUMPAD2             = 0x62
	VK_NUMPAD3             = 0x63
	VK_NUMPAD4             = 0x64
	VK_NUMPAD5             = 0x65
	VK_NUMPAD6             = 0x66
	VK_NUMPAD7             = 0x67
	VK_NUMPAD8             = 0x68
	VK_NUMPAD9             = 0x69
	VK_MULTIPLY            = 0x6A
	VK_ADD                 = 0x6B
	VK_SEPARATOR           = 0x6C
	VK_SUBTRACT            = 0x6D
	VK_DECIMAL             = 0x6E
	VK_DIVIDE              = 0x6F
	VK_F1                  = 0x70
	VK_F2                  = 0x71
	VK_F3                  = 0x72
	VK_F4                  = 0x73
	VK_F5                  = 0x74
	VK_F6                  = 0x75
	VK_F7                  = 0x76
	VK_F8                  = 0x77
	VK_F9                  = 0x78
	VK_F10                 = 0x79
	VK_F11                 = 0x7A
	VK_F12                 = 0x7B
	VK_F13                 = 0x7C
	VK_F14                 = 0x7D
	VK_F15                 = 0x7E
	VK_F16                 = 0x7F
	VK_F17                 = 0x80
	VK_F18                 = 0x81
	VK_F19                 = 0x82
	VK_F20                 = 0x83
	VK_F21                 = 0x84
	VK_F22                 = 0x85
	VK_F23                 = 0x86
	VK_F24                 = 0x87
	VK_NUMLOCK             = 0x90
	VK_SCROLL              = 0x91
	VK_LSHIFT              = 0xA0
	VK_RSHIFT              = 0xA1
	VK_LCONTROL            = 0xA2
	VK_RCONTROL            = 0xA3
	VK_LMENU               = 0xA4
	VK_RMENU               = 0xA5
	VK_BROWSER_BACK        = 0xA6
	VK_BROWSER_FORWARD     = 0xA7
	VK_BROWSER_REFRESH     = 0xA8
	VK_BROWSER_STOP        = 0xA9
	VK_BROWSER_SEARCH      = 0xAA
	VK_BROWSER_FAVORITES   = 0xAB
	VK_BROWSER_HOME        = 0xAC
	VK_VOLUME_MUTE         = 0xAD
	VK_VOLUME_DOWN         = 0xAE
	VK_VOLUME_UP           = 0xAF
	VK_MEDIA_NEXT_TRACK    = 0xB0
	VK_MEDIA_PREV_TRACK    = 0xB1
	VK_MEDIA_STOP          = 0xB2
	VK_MEDIA_PLAY_PAUSE    = 0xB3
	VK_LAUNCH_MAIL         = 0xB4
	VK_LAUNCH_MEDIA_SELECT = 0xB5
	VK_LAUNCH_APP1         = 0xB6
	VK_LAUNCH_APP2         = 0xB7
	VK_OEM_1               = 0xBA
	VK_OEM_PLUS            = 0xBB
	VK_OEM_COMMA           = 0xBC
	VK_OEM_MINUS           = 0xBD
	VK_OEM_PERIOD          = 0xBE
	VK_OEM_2               = 0xBF
	VK_OEM_3               = 0xC0
	VK_OEM_4               = 0xDB
	VK_OEM_5               = 0xDC
	VK_OEM_6               = 0xDD
	VK_OEM_7               = 0xDE
	VK_OEM_8               = 0xDF
	VK_OEM_102             = 0xE2
	VK_PROCESSKEY          = 0xE5
	VK_PACKET              = 0xE7
	VK_ATTN                = 0xF6
	VK_CRSEL               = 0xF7
	VK_EXSEL               = 0xF8
	VK_EREOF               = 0xF9
	VK_PLAY                = 0xFA
	VK_ZOOM                = 0xFB
	VK_NONAME              = 0xFC
	VK_PA1                 = 0xFD
	VK_OEM_CLEAR           = 0xFE
)

Virtual key codes

View Source
const (
	SB_HORZ = 0
	SB_VERT = 1
	SB_CTL  = 2
	SB_BOTH = 3
)

ScrollBar constants

View Source
const (
	SB_LINEUP        = 0
	SB_LINELEFT      = 0
	SB_LINEDOWN      = 1
	SB_LINERIGHT     = 1
	SB_PAGEUP        = 2
	SB_PAGELEFT      = 2
	SB_PAGEDOWN      = 3
	SB_PAGERIGHT     = 3
	SB_THUMBPOSITION = 4
	SB_THUMBTRACK    = 5
	SB_TOP           = 6
	SB_LEFT          = 6
	SB_BOTTOM        = 7
	SB_RIGHT         = 7
	SB_ENDSCROLL     = 8
)

ScrollBar commands

View Source
const (
	SIF_RANGE           = 1
	SIF_PAGE            = 2
	SIF_POS             = 4
	SIF_DISABLENOSCROLL = 8
	SIF_TRACKPOS        = 16
	SIF_ALL             = SIF_RANGE + SIF_PAGE + SIF_POS + SIF_TRACKPOS
)

[Get|Set]ScrollInfo mask constants

View Source
const (
	Ok                        = 0
	GenericError              = 1
	InvalidParameter          = 2
	OutOfMemory               = 3
	ObjectBusy                = 4
	InsufficientBuffer        = 5
	NotImplemented            = 6
	Win32Error                = 7
	WrongState                = 8
	Aborted                   = 9
	FileNotFound              = 10
	ValueOverflow             = 11
	AccessDenied              = 12
	UnknownImageFormat        = 13
	FontFamilyNotFound        = 14
	FontStyleNotFound         = 15
	NotTrueTypeFont           = 16
	UnsupportedGdiplusVersion = 17
	GdiplusNotInitialized     = 18
	PropertyNotFound          = 19
	PropertyNotSupported      = 20
	ProfileNotFound           = 21
)
View Source
const (
	DRAGDROP_E_ALREADYREGISTERED = 0x80040101
	DRAGDROP_E_INVALIDHWND       = 0x80040102
)
View Source
const (
	CSIDL_DESKTOP                 = 0x00
	CSIDL_INTERNET                = 0x01
	CSIDL_PROGRAMS                = 0x02
	CSIDL_CONTROLS                = 0x03
	CSIDL_PRINTERS                = 0x04
	CSIDL_PERSONAL                = 0x05
	CSIDL_FAVORITES               = 0x06
	CSIDL_STARTUP                 = 0x07
	CSIDL_RECENT                  = 0x08
	CSIDL_SENDTO                  = 0x09
	CSIDL_BITBUCKET               = 0x0A
	CSIDL_STARTMENU               = 0x0B
	CSIDL_MYDOCUMENTS             = 0x0C
	CSIDL_MYMUSIC                 = 0x0D
	CSIDL_MYVIDEO                 = 0x0E
	CSIDL_DESKTOPDIRECTORY        = 0x10
	CSIDL_DRIVES                  = 0x11
	CSIDL_NETWORK                 = 0x12
	CSIDL_NETHOOD                 = 0x13
	CSIDL_FONTS                   = 0x14
	CSIDL_TEMPLATES               = 0x15
	CSIDL_COMMON_STARTMENU        = 0x16
	CSIDL_COMMON_PROGRAMS         = 0x17
	CSIDL_COMMON_STARTUP          = 0x18
	CSIDL_COMMON_DESKTOPDIRECTORY = 0x19
	CSIDL_APPDATA                 = 0x1A
	CSIDL_PRINTHOOD               = 0x1B
	CSIDL_LOCAL_APPDATA           = 0x1C
	CSIDL_ALTSTARTUP              = 0x1D
	CSIDL_COMMON_ALTSTARTUP       = 0x1E
	CSIDL_COMMON_FAVORITES        = 0x1F
	CSIDL_INTERNET_CACHE          = 0x20
	CSIDL_COOKIES                 = 0x21
	CSIDL_HISTORY                 = 0x22
	CSIDL_COMMON_APPDATA          = 0x23
	CSIDL_WINDOWS                 = 0x24
	CSIDL_SYSTEM                  = 0x25
	CSIDL_PROGRAM_FILES           = 0x26
	CSIDL_MYPICTURES              = 0x27
	CSIDL_PROFILE                 = 0x28
	CSIDL_SYSTEMX86               = 0x29
	CSIDL_PROGRAM_FILESX86        = 0x2A
	CSIDL_PROGRAM_FILES_COMMON    = 0x2B
	CSIDL_PROGRAM_FILES_COMMONX86 = 0x2C
	CSIDL_COMMON_TEMPLATES        = 0x2D
	CSIDL_COMMON_DOCUMENTS        = 0x2E
	CSIDL_COMMON_ADMINTOOLS       = 0x2F
	CSIDL_ADMINTOOLS              = 0x30
	CSIDL_CONNECTIONS             = 0x31
	CSIDL_COMMON_MUSIC            = 0x35
	CSIDL_COMMON_PICTURES         = 0x36
	CSIDL_COMMON_VIDEO            = 0x37
	CSIDL_RESOURCES               = 0x38
	CSIDL_RESOURCES_LOCALIZED     = 0x39
	CSIDL_COMMON_OEM_LINKS        = 0x3A
	CSIDL_CDBURN_AREA             = 0x3B
	CSIDL_COMPUTERSNEARME         = 0x3D
	CSIDL_FLAG_CREATE             = 0x8000
	CSIDL_FLAG_DONT_VERIFY        = 0x4000
	CSIDL_FLAG_NO_ALIAS           = 0x1000
	CSIDL_FLAG_PER_USER_INIT      = 0x8000
	CSIDL_FLAG_MASK               = 0xFF00

	NOTIFYICON_VERSION = 4
)
View Source
const (
	TB_ENABLEBUTTON          = WM_USER + 1
	TB_CHECKBUTTON           = WM_USER + 2
	TB_PRESSBUTTON           = WM_USER + 3
	TB_HIDEBUTTON            = WM_USER + 4
	TB_INDETERMINATE         = WM_USER + 5
	TB_MARKBUTTON            = WM_USER + 6
	TB_ISBUTTONENABLED       = WM_USER + 9
	TB_ISBUTTONCHECKED       = WM_USER + 10
	TB_ISBUTTONPRESSED       = WM_USER + 11
	TB_ISBUTTONHIDDEN        = WM_USER + 12
	TB_ISBUTTONINDETERMINATE = WM_USER + 13
	TB_ISBUTTONHIGHLIGHTED   = WM_USER + 14
	TB_SETSTATE              = WM_USER + 17
	TB_GETSTATE              = WM_USER + 18
	TB_ADDBITMAP             = WM_USER + 19
	TB_DELETEBUTTON          = WM_USER + 22
	TB_GETBUTTON             = WM_USER + 23
	TB_BUTTONCOUNT           = WM_USER + 24
	TB_COMMANDTOINDEX        = WM_USER + 25
	TB_SAVERESTORE           = WM_USER + 76
	TB_CUSTOMIZE             = WM_USER + 27
	TB_ADDSTRING             = WM_USER + 77
	TB_GETITEMRECT           = WM_USER + 29
	TB_BUTTONSTRUCTSIZE      = WM_USER + 30
	TB_SETBUTTONSIZE         = WM_USER + 31
	TB_SETBITMAPSIZE         = WM_USER + 32
	TB_AUTOSIZE              = WM_USER + 33
	TB_GETTOOLTIPS           = WM_USER + 35
	TB_SETTOOLTIPS           = WM_USER + 36
	TB_SETPARENT             = WM_USER + 37
	TB_SETROWS               = WM_USER + 39
	TB_GETROWS               = WM_USER + 40
	TB_GETBITMAPFLAGS        = WM_USER + 41
	TB_SETCMDID              = WM_USER + 42
	TB_CHANGEBITMAP          = WM_USER + 43
	TB_GETBITMAP             = WM_USER + 44
	TB_GETBUTTONTEXT         = WM_USER + 75
	TB_REPLACEBITMAP         = WM_USER + 46
	TB_GETBUTTONSIZE         = WM_USER + 58
	TB_SETBUTTONWIDTH        = WM_USER + 59
	TB_SETINDENT             = WM_USER + 47
	TB_SETIMAGELIST          = WM_USER + 48
	TB_GETIMAGELIST          = WM_USER + 49
	TB_LOADIMAGES            = WM_USER + 50
	TB_GETRECT               = WM_USER + 51
	TB_SETHOTIMAGELIST       = WM_USER + 52
	TB_GETHOTIMAGELIST       = WM_USER + 53
	TB_SETDISABLEDIMAGELIST  = WM_USER + 54
	TB_GETDISABLEDIMAGELIST  = WM_USER + 55
	TB_SETSTYLE              = WM_USER + 56
	TB_GETSTYLE              = WM_USER + 57
	TB_SETMAXTEXTROWS        = WM_USER + 60
	TB_GETTEXTROWS           = WM_USER + 61
	TB_GETOBJECT             = WM_USER + 62
	TB_GETBUTTONINFO         = WM_USER + 63
	TB_SETBUTTONINFO         = WM_USER + 64
	TB_INSERTBUTTON          = WM_USER + 67
	TB_ADDBUTTONS            = WM_USER + 68
	TB_HITTEST               = WM_USER + 69
	TB_SETDRAWTEXTFLAGS      = WM_USER + 70
	TB_GETHOTITEM            = WM_USER + 71
	TB_SETHOTITEM            = WM_USER + 72
	TB_SETANCHORHIGHLIGHT    = WM_USER + 73
	TB_GETANCHORHIGHLIGHT    = WM_USER + 74
	TB_GETINSERTMARK         = WM_USER + 79
	TB_SETINSERTMARK         = WM_USER + 80
	TB_INSERTMARKHITTEST     = WM_USER + 81
	TB_MOVEBUTTON            = WM_USER + 82
	TB_GETMAXSIZE            = WM_USER + 83
	TB_SETEXTENDEDSTYLE      = WM_USER + 84
	TB_GETEXTENDEDSTYLE      = WM_USER + 85
	TB_GETPADDING            = WM_USER + 86
	TB_SETPADDING            = WM_USER + 87
	TB_SETINSERTMARKCOLOR    = WM_USER + 88
	TB_GETINSERTMARKCOLOR    = WM_USER + 89
	TB_MAPACCELERATOR        = WM_USER + 90
	TB_GETSTRING             = WM_USER + 91
	TB_SETCOLORSCHEME        = CCM_SETCOLORSCHEME
	TB_GETCOLORSCHEME        = CCM_GETCOLORSCHEME
	TB_SETUNICODEFORMAT      = CCM_SETUNICODEFORMAT
	TB_GETUNICODEFORMAT      = CCM_GETUNICODEFORMAT
)

ToolBar messages

View Source
const (
	TBN_FIRST    = -700
	TBN_DROPDOWN = TBN_FIRST - 10
)

ToolBar notifications

View Source
const (
	TBDDRET_DEFAULT      = 0
	TBDDRET_NODEFAULT    = 1
	TBDDRET_TREATPRESSED = 2
)

TBN_DROPDOWN return codes

View Source
const (
	TBSTATE_CHECKED       = 1
	TBSTATE_PRESSED       = 2
	TBSTATE_ENABLED       = 4
	TBSTATE_HIDDEN        = 8
	TBSTATE_INDETERMINATE = 16
	TBSTATE_WRAP          = 32
	TBSTATE_ELLIPSES      = 0x40
	TBSTATE_MARKED        = 0x0080
)

ToolBar state constants

View Source
const (
	TBSTYLE_BUTTON       = 0
	TBSTYLE_SEP          = 1
	TBSTYLE_CHECK        = 2
	TBSTYLE_GROUP        = 4
	TBSTYLE_CHECKGROUP   = TBSTYLE_GROUP | TBSTYLE_CHECK
	TBSTYLE_DROPDOWN     = 8
	TBSTYLE_AUTOSIZE     = 16
	TBSTYLE_NOPREFIX     = 32
	TBSTYLE_TOOLTIPS     = 256
	TBSTYLE_WRAPABLE     = 512
	TBSTYLE_ALTDRAG      = 1024
	TBSTYLE_FLAT         = 2048
	TBSTYLE_LIST         = 4096
	TBSTYLE_CUSTOMERASE  = 8192
	TBSTYLE_REGISTERDROP = 0x4000
	TBSTYLE_TRANSPARENT  = 0x8000
)

ToolBar style constants

View Source
const (
	TBSTYLE_EX_DRAWDDARROWS       = 0x00000001
	TBSTYLE_EX_MIXEDBUTTONS       = 8
	TBSTYLE_EX_HIDECLIPPEDBUTTONS = 16
	TBSTYLE_EX_DOUBLEBUFFER       = 0x80
)

ToolBar extended style constants

View Source
const (
	BTNS_BUTTON        = TBSTYLE_BUTTON
	BTNS_SEP           = TBSTYLE_SEP
	BTNS_CHECK         = TBSTYLE_CHECK
	BTNS_GROUP         = TBSTYLE_GROUP
	BTNS_CHECKGROUP    = TBSTYLE_CHECKGROUP
	BTNS_DROPDOWN      = TBSTYLE_DROPDOWN
	BTNS_AUTOSIZE      = TBSTYLE_AUTOSIZE
	BTNS_NOPREFIX      = TBSTYLE_NOPREFIX
	BTNS_WHOLEDROPDOWN = 0x0080
	BTNS_SHOWTEXT      = 0x0040
)

ToolBar button style constants

View Source
const (
	TBIF_IMAGE   = 0x00000001
	TBIF_TEXT    = 0x00000002
	TBIF_STATE   = 0x00000004
	TBIF_STYLE   = 0x00000008
	TBIF_LPARAM  = 0x00000010
	TBIF_COMMAND = 0x00000020
	TBIF_SIZE    = 0x00000040
	TBIF_BYINDEX = 0x80000000
)

TBBUTTONINFO mask flags

View Source
const (
	LVP_LISTITEM         = 1
	LVP_LISTGROUP        = 2
	LVP_LISTDETAIL       = 3
	LVP_LISTSORTEDDETAIL = 4
	LVP_EMPTYTEXT        = 5
	LVP_GROUPHEADER      = 6
	LVP_GROUPHEADERLINE  = 7
	LVP_EXPANDBUTTON     = 8
	LVP_COLLAPSEBUTTON   = 9
	LVP_COLUMNDETAIL     = 10
)

LISTVIEW parts

View Source
const (
	LISS_NORMAL           = 1
	LISS_HOT              = 2
	LISS_SELECTED         = 3
	LISS_DISABLED         = 4
	LISS_SELECTEDNOTFOCUS = 5
	LISS_HOTSELECTED      = 6
)

LVP_LISTITEM states

View Source
const (
	TVP_TREEITEM = 1
	TVP_GLYPH    = 2
	TVP_BRANCH   = 3
	TVP_HOTGLYPH = 4
)

TREEVIEW parts

View Source
const (
	TREIS_NORMAL           = 1
	TREIS_HOT              = 2
	TREIS_SELECTED         = 3
	TREIS_DISABLED         = 4
	TREIS_SELECTEDNOTFOCUS = 5
	TREIS_HOTSELECTED      = 6
)

TVP_TREEITEM states

View Source
const (
	SC_CLOSE    = 0xF060
	SC_MOVE     = 0xF010
	SC_MAXIMIZE = 0xF030
	SC_MINIMIZE = 0xF020
	SC_SIZE     = 0xF000
	SC_RESTORE  = 0xF120
)
View Source
const (
	GCLP_HBRBACKGROUND int32 = -10
	GCLP_HICON         int32 = -14
)
View Source
const ABE_BOTTOM = 3
View Source
const ABE_LEFT = 0
View Source
const ABE_RIGHT = 2
View Source
const ABE_TOP = 1
View Source
const ABM_GETAUTOHIDEBAR = 0x00000007
View Source
const ABM_GETSTATE = 0x00000004
View Source
const ABM_GETTASKBARPOS = 0x00000005

Taskbar constants

View Source
const ABM_SETAUTOHIDEBAR = 0x00000008
View Source
const ABM_SETPOS = 0x00000003
View Source
const ABM_SETSTATE = 0x0000000a
View Source
const ABM_WINDOWPOSCHANGED = 0x00000009
View Source
const AC_SRC_ALPHA = 1
View Source
const AC_SRC_OVER = 0
View Source
const CLR_INVALID = 0xFFFFFFFF
View Source
const (
	CW_USEDEFAULT = ^0x7fffffff
)
View Source
const HCF_HIGHCONTRASTON = 0x00000001
View Source
const LF_FACESIZE = 32
View Source
const LVFI_PARAM = 0x0001
View Source
const (
	OFN_EX_NOPLACESBAR = 0x00000001
)

GetOpenFileName and GetSaveFileName extended flags

View Source
const SPI_GETHIGHCONTRAST = 0x0042
View Source
const SPI_GETNOTIFYWINDOWRECT = 0x0040
View Source
const (
	STANDARD_RIGHTS_REQUIRED = 0x000F
)
View Source
const TCM_FIRST = 0x1300
View Source
const TCN_FIRST = -550
View Source
const (
	TVGN_CARET = 9
)
View Source
const ULW_ALPHA = 2
View Source
const ULW_COLORKEY = 1
View Source
const ULW_EX_NORESIZE = 8
View Source
const ULW_OPAQUE = 4

Variables

View Source
var (
	FOLDERID_AccountPictures        = NewGUID("{008CA0B1-55B4-4C56-B8A8-4DE4B299D3BE}")
	FOLDERID_AddNewPrograms         = NewGUID("{DE61D971-5EBC-4F02-A3A9-6C82895E5C04}")
	FOLDERID_AdminTools             = NewGUID("{724EF170-A42D-4FEF-9F26-B60E846FBA4F}")
	FOLDERID_ApplicationShortcuts   = NewGUID("{A3918781-E5F2-4890-B3D9-A7E54332328C}")
	FOLDERID_AppsFolder             = NewGUID("{1E87508D-89C2-42F0-8A7E-645A0F50CA58}")
	FOLDERID_AppUpdates             = NewGUID("{A305CE99-F527-492B-8B1A-7E76FA98D6E4}")
	FOLDERID_CDBurning              = NewGUID("{9E52AB10-F80D-49DF-ACB8-4330F5687855}")
	FOLDERID_ChangeRemovePrograms   = NewGUID("{DF7266AC-9274-4867-8D55-3BD661DE872D}")
	FOLDERID_CommonAdminTools       = NewGUID("{D0384E7D-BAC3-4797-8F14-CBA229B392B5}")
	FOLDERID_CommonOEMLinks         = NewGUID("{C1BAE2D0-10DF-4334-BEDD-7AA20B227A9D}")
	FOLDERID_CommonPrograms         = NewGUID("{0139D44E-6AFE-49F2-8690-3DAFCAE6FFB8}")
	FOLDERID_CommonStartMenu        = NewGUID("{A4115719-D62E-491D-AA7C-E74B8BE3B067}")
	FOLDERID_CommonStartup          = NewGUID("{82A5EA35-D9CD-47C5-9629-E15D2F714E6E}")
	FOLDERID_CommonTemplates        = NewGUID("{B94237E7-57AC-4347-9151-B08C6C32D1F7}")
	FOLDERID_ComputerFolder         = NewGUID("{0AC0837C-BBF8-452A-850D-79D08E667CA7}")
	FOLDERID_ConflictFolder         = NewGUID("{4BFEFB45-347D-4006-A5BE-AC0CB0567192}")
	FOLDERID_ConnectionsFolder      = NewGUID("{6F0CD92B-2E97-45D1-88FF-B0D186B8DEDD}")
	FOLDERID_Contacts               = NewGUID("{56784854-C6CB-462B-8169-88E350ACB882}")
	FOLDERID_ControlPanelFolder     = NewGUID("{82A74AEB-AEB4-465C-A014-D097EE346D63}")
	FOLDERID_Cookies                = NewGUID("{2B0F765D-C0E9-4171-908E-08A611B84FF6}")
	FOLDERID_Desktop                = NewGUID("{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}")
	FOLDERID_DeviceMetadataStore    = NewGUID("{5CE4A5E9-E4EB-479D-B89F-130C02886155}")
	FOLDERID_Documents              = NewGUID("{FDD39AD0-238F-46AF-ADB4-6C85480369C7}")
	FOLDERID_DocumentsLibrary       = NewGUID("{7B0DB17D-9CD2-4A93-9733-46CC89022E7C}")
	FOLDERID_Downloads              = NewGUID("{374DE290-123F-4565-9164-39C4925E467B}")
	FOLDERID_Favorites              = NewGUID("{1777F761-68AD-4D8A-87BD-30B759FA33DD}")
	FOLDERID_Fonts                  = NewGUID("{FD228CB7-AE11-4AE3-864C-16F3910AB8FE}")
	FOLDERID_Games                  = NewGUID("{CAC52C1A-B53D-4EDC-92D7-6B2E8AC19434}")
	FOLDERID_GameTasks              = NewGUID("{054FAE61-4DD8-4787-80B6-090220C4B700}")
	FOLDERID_History                = NewGUID("{D9DC8A3B-B784-432E-A781-5A1130A75963}")
	FOLDERID_HomeGroup              = NewGUID("{52528A6B-B9E3-4ADD-B60D-588C2DBA842D}")
	FOLDERID_HomeGroupCurrentUser   = NewGUID("{9B74B6A3-0DFD-4F11-9E78-5F7800F2E772}")
	FOLDERID_ImplicitAppShortcuts   = NewGUID("{BCB5256F-79F6-4CEE-B725-DC34E402FD46}")
	FOLDERID_InternetCache          = NewGUID("{352481E8-33BE-4251-BA85-6007CAEDCF9D}")
	FOLDERID_InternetFolder         = NewGUID("{4D9F7874-4E0C-4904-967B-40B0D20C3E4B}")
	FOLDERID_Libraries              = NewGUID("{1B3EA5DC-B587-4786-B4EF-BD1DC332AEAE}")
	FOLDERID_Links                  = NewGUID("{BFB9D5E0-C6A9-404C-B2B2-AE6DB6AF4968}")
	FOLDERID_LocalAppData           = NewGUID("{F1B32785-6FBA-4FCF-9D55-7B8E7F157091}")
	FOLDERID_LocalAppDataLow        = NewGUID("{A520A1A4-1780-4FF6-BD18-167343C5AF16}")
	FOLDERID_LocalizedResourcesDir  = NewGUID("{2A00375E-224C-49DE-B8D1-440DF7EF3DDC}")
	FOLDERID_Music                  = NewGUID("{4BD8D571-6D19-48D3-BE97-422220080E43}")
	FOLDERID_MusicLibrary           = NewGUID("{2112AB0A-C86A-4FFE-A368-0DE96E47012E}")
	FOLDERID_NetHood                = NewGUID("{C5ABBF53-E17F-4121-8900-86626FC2C973}")
	FOLDERID_NetworkFolder          = NewGUID("{D20BEEC4-5CA8-4905-AE3B-BF251EA09B53}")
	FOLDERID_OriginalImages         = NewGUID("{2C36C0AA-5812-4B87-BFD0-4CD0DFB19B39}")
	FOLDERID_PhotoAlbums            = NewGUID("{69D2CF90-FC33-4FB7-9A0C-EBB0F0FCB43C}")
	FOLDERID_Pictures               = NewGUID("{33E28130-4E1E-4676-835A-98395C3BC3BB}")
	FOLDERID_PicturesLibrary        = NewGUID("{A990AE9F-A03B-4E80-94BC-9912D7504104}")
	FOLDERID_Playlists              = NewGUID("{DE92C1C7-837F-4F69-A3BB-86E631204A23}")
	FOLDERID_PrintersFolder         = NewGUID("{76FC4E2D-D6AD-4519-A663-37BD56068185}")
	FOLDERID_PrintHood              = NewGUID("{9274BD8D-CFD1-41C3-B35E-B13F55A758F4}")
	FOLDERID_Profile                = NewGUID("{5E6C858F-0E22-4760-9AFE-EA3317B67173}")
	FOLDERID_ProgramData            = NewGUID("{62AB5D82-FDC1-4DC3-A9DD-070D1D495D97}")
	FOLDERID_ProgramFiles           = NewGUID("{905E63B6-C1BF-494E-B29C-65B732D3D21A}")
	FOLDERID_ProgramFilesCommon     = NewGUID("{F7F1ED05-9F6D-47A2-AAAE-29D317C6F066}")
	FOLDERID_ProgramFilesCommonX64  = NewGUID("{6365D5A7-0F0D-45E5-87F6-0DA56B6A4F7D}")
	FOLDERID_ProgramFilesCommonX86  = NewGUID("{DE974D24-D9C6-4D3E-BF91-F4455120B917}")
	FOLDERID_ProgramFilesX64        = NewGUID("{6D809377-6AF0-444B-8957-A3773F02200E}")
	FOLDERID_ProgramFilesX86        = NewGUID("{7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E}")
	FOLDERID_Programs               = NewGUID("{A77F5D77-2E2B-44C3-A6A2-ABA601054A51}")
	FOLDERID_Public                 = NewGUID("{DFDF76A2-C82A-4D63-906A-5644AC457385}")
	FOLDERID_PublicDesktop          = NewGUID("{C4AA340D-F20F-4863-AFEF-1F769F2BE730}")
	FOLDERID_PublicDocuments        = NewGUID("{ED4824AF-DCE4-45A8-81E2-FC7965083634}")
	FOLDERID_PublicDownloads        = NewGUID("{3D644C9B-1FB8-4F30-9B45-F670235F79C0}")
	FOLDERID_PublicGameTasks        = NewGUID("{DEBF2536-E1A8-4C59-B6A2-414586476AEA}")
	FOLDERID_PublicLibraries        = NewGUID("{48DAF80B-E6CF-4F4E-B800-0E69D84EE384}")
	FOLDERID_PublicMusic            = NewGUID("{3214FAB5-9757-4298-BB61-92A9DEAA44FF}")
	FOLDERID_PublicPictures         = NewGUID("{B6EBFB86-6907-413C-9AF7-4FC2ABF07CC5}")
	FOLDERID_PublicRingtones        = NewGUID("{E555AB60-153B-4D17-9F04-A5FE99FC15EC}")
	FOLDERID_PublicUserTiles        = NewGUID("{0482af6c-08f1-4c34-8c90-e17ec98b1e17}")
	FOLDERID_PublicVideos           = NewGUID("{2400183A-6185-49FB-A2D8-4A392A602BA3}")
	FOLDERID_QuickLaunch            = NewGUID("{52a4f021-7b75-48a9-9f6b-4b87a210bc8f}")
	FOLDERID_Recent                 = NewGUID("{AE50C081-EBD2-438A-8655-8A092E34987A}")
	FOLDERID_RecordedTVLibrary      = NewGUID("{1A6FDBA2-F42D-4358-A798-B74D745926C5}")
	FOLDERID_RecycleBinFolder       = NewGUID("{B7534046-3ECB-4C18-BE4E-64CD4CB7D6AC}")
	FOLDERID_ResourceDir            = NewGUID("{8AD10C31-2ADB-4296-A8F7-E4701232C972}")
	FOLDERID_Ringtones              = NewGUID("{C870044B-F49E-4126-A9C3-B52A1FF411E8}")
	FOLDERID_RoamingAppData         = NewGUID("{3EB685DB-65F9-4CF6-A03A-E3EF65729F3D}")
	FOLDERID_RoamingTiles           = NewGUID("{AAA8D5A5-F1D6-4259-BAA8-78E7EF60835E}")
	FOLDERID_SampleMusic            = NewGUID("{B250C668-F57D-4EE1-A63C-290EE7D1AA1F}")
	FOLDERID_SamplePictures         = NewGUID("{C4900540-2379-4C75-844B-64E6FAF8716B}")
	FOLDERID_SamplePlaylists        = NewGUID("{15CA69B3-30EE-49C1-ACE1-6B5EC372AFB5}")
	FOLDERID_SampleVideos           = NewGUID("{859EAD94-2E85-48AD-A71A-0969CB56A6CD}")
	FOLDERID_SavedGames             = NewGUID("{4C5C32FF-BB9D-43B0-B5B4-2D72E54EAAA4}")
	FOLDERID_SavedPictures          = NewGUID("{3B193882-D3AD-4EAB-965A-69829D1FB59F}")
	FOLDERID_SavedPicturesLibrary   = NewGUID("{E25B5812-BE88-4BD9-94B0-29233477B6C3}")
	FOLDERID_SavedSearches          = NewGUID("{7D1D3A04-DEBB-4115-95CF-2F29DA2920DA}")
	FOLDERID_SEARCH_CSC             = NewGUID("{ee32e446-31ca-4aba-814f-a5ebd2fd6d5e}")
	FOLDERID_SEARCH_MAPI            = NewGUID("{98ec0e18-2098-4d44-8644-66979315a281}")
	FOLDERID_SearchHome             = NewGUID("{190337d1-b8ca-4121-a639-6d472d16972a}")
	FOLDERID_SendTo                 = NewGUID("{8983036C-27C0-404B-8F08-102D10DCFD74}")
	FOLDERID_SidebarDefaultParts    = NewGUID("{7B396E54-9EC5-4300-BE0A-2482EBAE1A26}")
	FOLDERID_SidebarParts           = NewGUID("{A75D362E-50FC-4fb7-AC2C-A8BEAA314493}")
	FOLDERID_SkyDrive               = NewGUID("{A52BBA46-E9E1-435f-B3D9-28DAA648C0F6}")
	FOLDERID_SkyDriveCameraRoll     = NewGUID("{767E6811-49CB-4273-87C2-20F355E1085B}")
	FOLDERID_SkyDriveDocuments      = NewGUID("{24D89E24-2F19-4534-9DDE-6A6671FBB8FE}")
	FOLDERID_SkyDriveMusic          = NewGUID("{C3F2459E-80D6-45DC-BFEF-1F769F2BE730}")
	FOLDERID_SkyDrivePictures       = NewGUID("{339719B5-8C47-4894-94C2-D8F77ADD44A6}")
	FOLDERID_StartMenu              = NewGUID("{625B53C3-AB48-4EC1-BA1F-A1EF4146FC19}")
	FOLDERID_Startup                = NewGUID("{B97D20BB-F46A-4C97-BA10-5E3608430854}")
	FOLDERID_SyncManagerFolder      = NewGUID("{43668BF8-C14E-49B2-97C9-747784D784B7}")
	FOLDERID_SyncResultsFolder      = NewGUID("{289a9a43-be44-4057-a41b-587a76d7e7f9}")
	FOLDERID_SyncSetupFolder        = NewGUID("{0F214138-B1D3-4a90-BBA9-27CBC0C5389A}")
	FOLDERID_System                 = NewGUID("{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}")
	FOLDERID_SystemX86              = NewGUID("{D65231B0-B2F1-4857-A4CE-A8E7C6EA7D27}")
	FOLDERID_Templates              = NewGUID("{A63293E8-664E-48DB-A079-DF759E0509F7}")
	FOLDERID_UserPinned             = NewGUID("{9E3995AB-1F9C-4F13-B827-48B24B6C7174}")
	FOLDERID_UserProfiles           = NewGUID("{0762D272-C50A-4BB0-A382-697DCD729B80}")
	FOLDERID_UserProgramFiles       = NewGUID("{5CD7AEE2-2219-4A67-B85D-6C9CE15660CB}")
	FOLDERID_UserProgramFilesCommon = NewGUID("{BCBD3057-CA5C-4622-B42D-BC56DB0AE516}")
	FOLDERID_UsersFiles             = NewGUID("{F3CE0F7C-4901-4ACC-8648-D5D44B04EF8F}")
	FOLDERID_UsersLibraries         = NewGUID("{A302545D-DEFF-464b-ABE8-61C8648D939B}")
	FOLDERID_Videos                 = NewGUID("{18989B1D-99B5-455B-841C-AB7C74E4DDFC}")
	FOLDERID_VideosLibrary          = NewGUID("{491E922F-5643-4AF4-A7EB-4E7A138D8174}")
	FOLDERID_Windows                = NewGUID("{F38BF404-1D43-42F2-9305-67DE0B28FC23}")
)
View Source
var (
	IID_NULL                      = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}
	IID_IUnknown                  = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IDispatch                 = &GUID{0x00020400, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IConnectionPointContainer = &GUID{0xB196B284, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}}
	IID_IConnectionPoint          = &GUID{0xB196B286, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}}
)
View Source
var Fatal func(error)

Functions

func AbortDoc

func AbortDoc(hdc HDC) int

func AddClipboardFormatListener

func AddClipboardFormatListener(hwnd HWND) bool

func AdjustWindowRect

func AdjustWindowRect(rect *RECT, style uint, menu bool) bool

func AdjustWindowRectEx

func AdjustWindowRectEx(rect *RECT, style uint, menu bool, exStyle uint) bool

func AppendMenu

func AppendMenu(hMenu HMENU, uFlags uint32, uIDNewItem uintptr, lpNewItem *uint16) bool

func BitBlt

func BitBlt(hdcDest HDC, nXDest, nYDest, nWidth, nHeight int, hdcSrc HDC, nXSrc, nYSrc int, dwRop uint)

func BringWindowToTop

func BringWindowToTop(hwnd HWND) bool

func CallWindowProc

func CallWindowProc(preWndProc uintptr, hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func CenterWindow

func CenterWindow(hwnd HWND)

func ChangeDisplaySettingsEx

func ChangeDisplaySettingsEx(szDeviceName *uint16, devMode *DEVMODE, hwnd HWND, dwFlags uint32, lParam uintptr) int32

func CheckMenuItem

func CheckMenuItem(menu HMENU, id uintptr, flags uint) uint

func CheckRadio

func CheckRadio(m HMENU, startID int, endID int, selectedID int) bool

func ChoosePixelFormat

func ChoosePixelFormat(hdc HDC, pfd *PIXELFORMATDESCRIPTOR) int

func ClientToScreen

func ClientToScreen(hwnd HWND, x, y int) (int, int)

func CloseClipboard

func CloseClipboard() bool

func CloseHandle

func CloseHandle(object HANDLE) bool

func CoInitialize

func CoInitialize()

func CoUninitialize

func CoUninitialize()

func ComAddRef

func ComAddRef(unknown *IUnknown) int32

func ComGetIDsOfName

func ComGetIDsOfName(disp *IDispatch, names []string) []int32

func ComRelease

func ComRelease(unknown *IUnknown) int32

func CommDlgExtendedError

func CommDlgExtendedError() uint

func CopyRect

func CopyRect(dst, src *RECT) bool

func CreateIconFromResourceEx

func CreateIconFromResourceEx(presbits uintptr, dwResSize uint32, isIcon bool, version uint32, cxDesired int, cyDesired int, flags uint) (uintptr, error)

func DefDlgProc

func DefDlgProc(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func DefWindowProc

func DefWindowProc(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func DeleteDC

func DeleteDC(hdc HDC) bool

func DeleteEnhMetaFile

func DeleteEnhMetaFile(hemf HENHMETAFILE) bool

func DeleteObject

func DeleteObject(hObject HGDIOBJ) bool

func DescribePixelFormat

func DescribePixelFormat(hdc HDC, iPixelFormat int, nBytes uint, pfd *PIXELFORMATDESCRIPTOR) int

func DestroyIcon

func DestroyIcon(icon HICON) bool

func DestroyMenu

func DestroyMenu(hMenu HMENU) bool

func DestroyWindow

func DestroyWindow(hwnd HWND) bool

func DialogBox

func DialogBox(hInstance HINSTANCE, lpTemplateName *uint16, hWndParent HWND, lpDialogProc uintptr) int

func DisableCloseButton

func DisableCloseButton(hwnd HWND) error

func DispatchMessage

func DispatchMessage(msg *MSG) uintptr

func DragAcceptFiles

func DragAcceptFiles(hwnd HWND, accept bool)

func DragFinish

func DragFinish(hDrop HDROP)

func DragQueryFile

func DragQueryFile(hDrop HDROP, iFile uint) (fileName string, fileCount uint)

func DragQueryPoint

func DragQueryPoint(hDrop HDROP) (x, y int, isClientArea bool)

func DrawIcon

func DrawIcon(hDC HDC, x, y int, hIcon HICON) bool

func DrawMenuBar

func DrawMenuBar(hWnd HWND) bool

func DrawText

func DrawText(hDC HDC, text string, uCount int, lpRect *RECT, uFormat uint) int

func Ellipse

func Ellipse(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int32) bool

func EmptyClipboard

func EmptyClipboard() bool

func EnableCloseButton

func EnableCloseButton(hwnd HWND) error

func EnableTranslucency

func EnableTranslucency(hwnd uintptr, backdrop int32)

func EnableWindow

func EnableWindow(hwnd HWND, b bool) bool

func EndDialog

func EndDialog(hwnd HWND, nResult uintptr) bool

func EndDoc

func EndDoc(hdc HDC) int

func EndPage

func EndPage(hdc HDC) int

func EndPaint

func EndPaint(hwnd HWND, paint *PAINTSTRUCT)

func EnumClipboardFormats

func EnumClipboardFormats(format uint) uint

func EnumDisplayMonitors

func EnumDisplayMonitors(hdc HDC, clip *RECT, fnEnum uintptr, dwData unsafe.Pointer) bool

func EnumDisplaySettingsEx

func EnumDisplaySettingsEx(szDeviceName *uint16, iModeNum uint32, devMode *DEVMODE, dwFlags uint32) bool

func EnumWindows

func EnumWindows(enumFunc uintptr, lparam uintptr) bool

func EqualRect

func EqualRect(rect1, rect2 *RECT) bool

func ExtendFrameIntoClientArea

func ExtendFrameIntoClientArea(hwnd uintptr, extend bool) error

func FAILED

func FAILED(hr HRESULT) bool

func FillRect

func FillRect(hDC HDC, lprc *RECT, hbr HBRUSH) bool

func FlashWindow

func FlashWindow(hwnd HWND, enabled bool)

func GET_X_LPARAM

func GET_X_LPARAM(lp uintptr) int32

func GET_Y_LPARAM

func GET_Y_LPARAM(lp uintptr) int32

func GdipCreateBitmapFromFile

func GdipCreateBitmapFromFile(filename string) (*uintptr, error)

func GdipCreateBitmapFromResource

func GdipCreateBitmapFromResource(instance HINSTANCE, resId *uint16) (*uintptr, error)

func GdipCreateBitmapFromStream

func GdipCreateBitmapFromStream(stream *IStream) (*uintptr, error)

func GdipDisposeImage

func GdipDisposeImage(image *uintptr)

func GdiplusShutdown

func GdiplusShutdown()

func GdiplusStartup

func GdiplusStartup(input *GdiplusStartupInput, output *GdiplusStartupOutput)

func GetAsyncKeyState

func GetAsyncKeyState(vKey int) uint16

func GetBranding

func GetBranding() string

func GetClassName

func GetClassName(hwnd HWND) string

func GetClipboardFormatName

func GetClipboardFormatName(format uint) (string, bool)

func GetClipboardText

func GetClipboardText() (string, error)

func GetCursorPos

func GetCursorPos() (x, y int, ok bool)

func GetDPIForMonitor

func GetDPIForMonitor(hmonitor HMONITOR, dpiType MONITOR_DPI_TYPE, dpiX *UINT, dpiY *UINT) uintptr

func GetDeviceCaps

func GetDeviceCaps(hdc HDC, index int) int

func GetDiskFreeSpaceEx

func GetDiskFreeSpaceEx(dirName string) (r bool,
	freeBytesAvailable, totalNumberOfBytes, totalNumberOfFreeBytes uint64)

func GetEnhMetaFileHeader

func GetEnhMetaFileHeader(hemf HENHMETAFILE, cbBuffer uint, lpemh *ENHMETAHEADER) uint

func GetEnhMetaFilePixelFormat

func GetEnhMetaFilePixelFormat(hemf HENHMETAFILE, cbBuffer uint32, pfd *PIXELFORMATDESCRIPTOR) uint

func GetGpStatus

func GetGpStatus(s int32) string

func GetKeyState

func GetKeyState(nVirtKey int32) int16

func GetKeyboardState

func GetKeyboardState(keyState []byte) bool

func GetLastError

func GetLastError() uint32

func GetLogicalDriveStrings

func GetLogicalDriveStrings(nBufferLength uint32, lpBuffer *uint16) uint32

func GetLogicalDrives

func GetLogicalDrives() uint32

func GetMessage

func GetMessage(msg *MSG, hwnd HWND, msgFilterMin, msgFilterMax uint32) int

func GetMonitorInfo

func GetMonitorInfo(hMonitor HMONITOR, lmpi *MONITORINFO) bool

func GetMonitorInfoEx

func GetMonitorInfoEx(hMonitor HMONITOR, lmpi *MONITORINFOEX) bool

func GetObject

func GetObject(hgdiobj HGDIOBJ, cbBuffer uintptr, lpvObject unsafe.Pointer) int

func GetOpenFileName

func GetOpenFileName(ofn *OPENFILENAME) bool

func GetPixelFormat

func GetPixelFormat(hdc HDC) int

func GetProcessTimes

func GetProcessTimes(hProcess HANDLE, lpCreationTime, lpExitTime, lpKernelTime, lpUserTime *FILETIME) bool

func GetRotationForMonitor

func GetRotationForMonitor(displayName [32]uint16) (float32, error)

I'm not convinced this works properly

func GetSaveFileName

func GetSaveFileName(ofn *OPENFILENAME) bool

func GetScrollInfo

func GetScrollInfo(hwnd HWND, fnBar int32, lpsi *SCROLLINFO) bool

func GetSystemMetrics

func GetSystemMetrics(index int) int

func GetSystemTimes

func GetSystemTimes(lpIdleTime, lpKernelTime, lpUserTime *FILETIME) bool

func GetTextExtentExPoint

func GetTextExtentExPoint(hdc HDC, lpszStr *uint16, cchString, nMaxExtent int, lpnFit, alpDx *int, lpSize *SIZE) bool

func GetTextExtentPoint32

func GetTextExtentPoint32(hdc HDC, lpString *uint16, c int, lpSize *SIZE) bool

func GetTextMetrics

func GetTextMetrics(hdc HDC, lptm *TEXTMETRIC) bool

func GetUserDefaultLCID

func GetUserDefaultLCID() uint32

func GetWindowInfo

func GetWindowInfo(hwnd HWND, info *WINDOWINFO) int

func GetWindowLong

func GetWindowLong(hwnd HWND, index int) int32

func GetWindowLongPtr

func GetWindowLongPtr(hwnd HWND, index int) uintptr

func GetWindowPlacement

func GetWindowPlacement(hWnd HWND, lpwndpl *WINDOWPLACEMENT) bool

func GetWindowText

func GetWindowText(hwnd HWND) string

func GetWindowTextLength

func GetWindowTextLength(hwnd HWND) int

func GlobalFree

func GlobalFree(hMem HGLOBAL)

func GlobalLock

func GlobalLock(hMem HGLOBAL) unsafe.Pointer

func GlobalUnlock

func GlobalUnlock(hMem HGLOBAL) bool

func HIWORD

func HIWORD(dw uint32) uint16

func HasGetDPIForMonitorFunc

func HasGetDPIForMonitorFunc() bool

func HasGetDpiForWindowFunc

func HasGetDpiForWindowFunc() bool

func ImageList_Add

func ImageList_Add(himl HIMAGELIST, hbmImage, hbmMask HBITMAP) int

func ImageList_AddIcon

func ImageList_AddIcon(himl HIMAGELIST, hicon HICON) int

func ImageList_Destroy

func ImageList_Destroy(himl HIMAGELIST) bool

func ImageList_GetImageCount

func ImageList_GetImageCount(himl HIMAGELIST) int

func ImageList_Remove

func ImageList_Remove(himl HIMAGELIST, i int) bool

func ImageList_RemoveAll

func ImageList_RemoveAll(himl HIMAGELIST) bool

func ImageList_ReplaceIcon

func ImageList_ReplaceIcon(himl HIMAGELIST, i int, hicon HICON) int

func ImageList_SetImageCount

func ImageList_SetImageCount(himl HIMAGELIST, uNewCount uint) bool

func InflateRect

func InflateRect(rect *RECT, dx, dy int) bool

func InitCommonControlsEx

func InitCommonControlsEx(lpInitCtrls *INITCOMMONCONTROLSEX) bool

func InsertMenuItem

func InsertMenuItem(hMenu HMENU, uItem uint32, fByPosition bool, lpmii *MENUITEMINFO) bool

func IntersectRect

func IntersectRect(dst, src1, src2 *RECT) bool

func InvalidateRect

func InvalidateRect(hwnd HWND, rect *RECT, erase bool) bool

func IsClipboardFormatAvailable

func IsClipboardFormatAvailable(format uint) bool

func IsCurrentlyDarkMode

func IsCurrentlyDarkMode() bool

func IsCurrentlyHighContrastMode

func IsCurrentlyHighContrastMode() bool

func IsDialogMessage

func IsDialogMessage(hwnd HWND, msg *MSG) bool

func IsEqualGUID

func IsEqualGUID(guid1 *GUID, guid2 *GUID) bool

IsEqualGUID compares two GUID.

Not constant time comparison.

func IsRectEmpty

func IsRectEmpty(rect *RECT) bool

func IsVisible

func IsVisible(hwnd uintptr) bool

func IsWindow

func IsWindow(hwnd HWND) bool

func IsWindowEnabled

func IsWindowEnabled(hwnd HWND) bool

func IsWindowFullScreen

func IsWindowFullScreen(hwnd uintptr) bool

func IsWindowMaximised

func IsWindowMaximised(hwnd uintptr) bool

func IsWindowMinimised

func IsWindowMinimised(hwnd uintptr) bool

func IsWindowNormal

func IsWindowNormal(hwnd uintptr) bool

func IsWindowVisible

func IsWindowVisible(hwnd HWND) bool

func IsWindowsVersionAtLeast

func IsWindowsVersionAtLeast(major, minor, buildNumber int) bool

func LOWORD

func LOWORD(dw uint32) uint16

func LineTo

func LineTo(hdc HDC, nXEnd, nYEnd int32) bool

func LockResource

func LockResource(hResData HGLOBAL) unsafe.Pointer

func Lstrcpy

func Lstrcpy(buf []uint16, lpString *uint16)

func Lstrlen

func Lstrlen(lpString *uint16) int

func MAKELONG

func MAKELONG(lo, hi uint16) uint32

func MapVirtualKey

func MapVirtualKey(uCode uint, uMapType uint) uint

func MapVirtualKeyEx

func MapVirtualKeyEx(uCode, uMapType uint, dwhkl HKL) uint

func MessageBox

func MessageBox(hwnd HWND, title, caption string, flags uint) int

func MessageBoxIndirect

func MessageBoxIndirect(msgbox *MSGBOXPARAMS) int32

func MessageBoxWithIcon

func MessageBoxWithIcon(hwnd HWND, text *uint16, caption *uint16, iconID int, flags uint32) (int32, error)

func Module32First

func Module32First(snapshot HANDLE, me *MODULEENTRY32) bool

func Module32Next

func Module32Next(snapshot HANDLE, me *MODULEENTRY32) bool

func MoveMemory

func MoveMemory(destination, source unsafe.Pointer, length uint32)

func MoveToEx

func MoveToEx(hdc HDC, x, y int, lpPoint *POINT) bool

func MoveWindow

func MoveWindow(hwnd HWND, x, y, width, height int, repaint bool) bool

func MulDiv

func MulDiv(number, numerator, denominator int) int

func MustGetProcAddress

func MustGetProcAddress(lib uintptr, name string) uintptr

func MustLoadLibrary

func MustLoadLibrary(name string) uintptr

func MustStringToUTF16

func MustStringToUTF16(input string) []uint16

func MustStringToUTF16Ptr

func MustStringToUTF16Ptr(input string) *uint16

func MustStringToUTF16uintptr

func MustStringToUTF16uintptr(input string) uintptr

func OffsetRect

func OffsetRect(rect *RECT, dx, dy int) bool

func OleInitialise

func OleInitialise()

func OpenClipboard

func OpenClipboard(hWndNewOwner HWND) bool

func PatBlt

func PatBlt(hdc HDC, nXLeft, nYLeft, nWidth, nHeight int, dwRop uint)

func PeekMessage

func PeekMessage(lpMsg *MSG, hwnd HWND, wMsgFilterMin, wMsgFilterMax, wRemoveMsg uint32) bool

func PlayEnhMetaFile

func PlayEnhMetaFile(hdc HDC, hemf HENHMETAFILE, lpRect *RECT) bool

func PostMainThreadMessage

func PostMainThreadMessage(msg uint32, wp, lp uintptr) bool

func PostMessage

func PostMessage(hwnd HWND, msg uint32, wParam, lParam uintptr) bool

func PostQuitMessage

func PostQuitMessage(exitCode int)

func PostThreadMessage

func PostThreadMessage(threadID HANDLE, msg int, wp, lp uintptr)

func PtInRect

func PtInRect(rect *RECT, x, y int) bool

func RectInRect

func RectInRect(rect1, rect2 *RECT) bool

func Rectangle

func Rectangle(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int32) bool

func RegisterDragDrop

func RegisterDragDrop(hwnd HWND, dropTarget *DropTarget) error

func RegisterWindowMessage

func RegisterWindowMessage(name *uint16) uint32

func ReleaseCapture

func ReleaseCapture() bool

func ReleaseDC

func ReleaseDC(hwnd HWND, hDC HDC) bool

func RemoveClipboardFormatListener

func RemoveClipboardFormatListener(hwnd HWND) bool

func RemoveMenu

func RemoveMenu(m HMENU, pos, flags int) bool

func RestoreWindow

func RestoreWindow(hwnd uintptr)

func RevokeDragDrop

func RevokeDragDrop(hwnd HWND) error

func SHBrowseForFolder

func SHBrowseForFolder(bi *BROWSEINFO) uintptr

func SHCreateMemStream

func SHCreateMemStream(data []byte) (uintptr, error)

func SHGetKnownFolderPath

func SHGetKnownFolderPath(rfid *GUID, dwFlags uint32, hToken HANDLE) (string, error)

func SHGetPathFromIDList

func SHGetPathFromIDList(idl uintptr) string

func SHGetSpecialFolderPath

func SHGetSpecialFolderPath(hwndOwner HWND, lpszPath *uint16, csidl CSIDL, fCreate bool) bool

func SUCCEEDED

func SUCCEEDED(hr HRESULT) bool

func ScreenToClient

func ScreenToClient(hwnd HWND, x, y int) (X, Y int, ok bool)

func SendMessage

func SendMessage(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func SetApplicationIcon

func SetApplicationIcon(hwnd uintptr, icon HICON)

func SetBackgroundColour

func SetBackgroundColour(hwnd uintptr, r, g, b uint8)

func SetBkMode

func SetBkMode(hdc HDC, iBkMode int) int

func SetBorderColour

func SetBorderColour(hwnd uintptr, titleBorderColour int32)

func SetBrushOrgEx

func SetBrushOrgEx(hdc HDC, nXOrg, nYOrg int, lppt *POINT) bool

func SetClipboardText

func SetClipboardText(text string) error

func SetConsoleTextAttribute

func SetConsoleTextAttribute(hConsoleOutput HANDLE, wAttributes uint16) bool

func SetCursorPos

func SetCursorPos(x, y int) bool

func SetDIBitsToDevice

func SetDIBitsToDevice(hdc HDC, xDest, yDest, dwWidth, dwHeight, xSrc, ySrc int, uStartScan, cScanLines uint, lpvBits []byte, lpbmi *BITMAPINFO, fuColorUse uint) int

func SetMenu

func SetMenu(hWnd HWND, hMenu HMENU) bool

func SetMenuIcons

func SetMenuIcons(parentMenu HMENU, itemID int, unchecked []byte, checked []byte) error

func SetMenuItemBitmaps

func SetMenuItemBitmaps(hMenu HMENU, uPosition, uFlags uint32, hBitmapUnchecked HBITMAP, hBitmapChecked HBITMAP) error

func SetMenuItemInfo

func SetMenuItemInfo(hMenu HMENU, uItem uint32, fByPosition bool, lpmii *MENUITEMINFO) bool

func SetPixelFormat

func SetPixelFormat(hdc HDC, iPixelFormat int, pfd *PIXELFORMATDESCRIPTOR) bool

func SetProcessDPIAware

func SetProcessDPIAware() error

func SetRect

func SetRect(rect *RECT, left, top, right, bottom int) bool

func SetRectEmpty

func SetRectEmpty(rect *RECT) bool

func SetScrollInfo

func SetScrollInfo(hwnd HWND, fnBar int32, lpsi *SCROLLINFO, fRedraw bool) int32

func SetStretchBltMode

func SetStretchBltMode(hdc HDC, iStretchMode int) int

func SetSystemTime

func SetSystemTime(time *SYSTEMTIME) bool

func SetTheme

func SetTheme(hwnd uintptr, useDarkMode bool)

func SetTitleBarColour

func SetTitleBarColour(hwnd uintptr, titleBarColour int32)

func SetTitleTextColour

func SetTitleTextColour(hwnd uintptr, titleTextColour int32)

func SetWindowCompositionAttribute

func SetWindowCompositionAttribute(hwnd HWND, data *WINDOWCOMPOSITIONATTRIBDATA) bool

func SetWindowIcon

func SetWindowIcon(hwnd HWND, icon HICON)

func SetWindowLong

func SetWindowLong(hwnd HWND, index int, value uint32) uint32

func SetWindowLongPtr

func SetWindowLongPtr(hwnd HWND, index int, value uintptr) uintptr

func SetWindowPlacement

func SetWindowPlacement(hWnd HWND, lpwndpl *WINDOWPLACEMENT) bool

func SetWindowPos

func SetWindowPos(hwnd, hWndInsertAfter HWND, x, y, cx, cy int, uFlags uint) bool

func SetWindowText

func SetWindowText(hwnd HWND, text string)

func ShellExecute

func ShellExecute(hwnd HWND, lpOperation, lpFile, lpParameters, lpDirectory string, nShowCmd int) error

func ShellNotifyIcon

func ShellNotifyIcon(cmd uintptr, nid *NOTIFYICONDATA) bool

func ShowWindow

func ShowWindow(hwnd HWND, cmdshow int) bool

func ShowWindowAsync

func ShowWindowAsync(hwnd HWND, cmdshow int) bool

func ShowWindowMaximised

func ShowWindowMaximised(hwnd uintptr)

func ShowWindowMinimised

func ShowWindowMinimised(hwnd uintptr)

func SizeofResource

func SizeofResource(hModule HMODULE, hResInfo HRSRC) uint32

func StartDoc

func StartDoc(hdc HDC, lpdi *DOCINFO) int

func StartPage

func StartPage(hdc HDC) int

func StretchBlt

func StretchBlt(hdcDest HDC, nXOriginDest, nYOriginDest, nWidthDest, nHeightDest int, hdcSrc HDC, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc int, dwRop uint)

func SubtractRect

func SubtractRect(dst, src1, src2 *RECT) bool

func SupportsBackdropTypes

func SupportsBackdropTypes() bool

func SupportsCustomThemes

func SupportsCustomThemes() bool

func SupportsImmersiveDarkMode

func SupportsImmersiveDarkMode() bool

func SupportsThemes

func SupportsThemes() bool

func SwapBuffers

func SwapBuffers(hdc HDC) bool

func SwapMouseButton

func SwapMouseButton(fSwap bool) bool

func SysAllocString

func SysAllocString(v string) (ss *int16)

func SysFreeString

func SysFreeString(v *int16)

func SysStringLen

func SysStringLen(v *int16) uint

func TerminateProcess

func TerminateProcess(hProcess HANDLE, uExitCode uint) bool

func ToAscii

func ToAscii(uVirtKey, uScanCode uint, lpKeyState *byte, lpChar *uint16, uFlags uint) int

func TrackMouseEvent

func TrackMouseEvent(tme *TRACKMOUSEEVENT) bool

func TrackPopupMenuEx

func TrackPopupMenuEx(hMenu HMENU, fuFlags uint32, x, y int32, hWnd HWND, lptpm *TPMPARAMS) bool

func TranslateAccelerator

func TranslateAccelerator(hwnd HWND, hAccTable HACCEL, lpMsg *MSG) bool

func TranslateMessage

func TranslateMessage(msg *MSG) bool

func UTF16PtrToString

func UTF16PtrToString(cstr *uint16) string

func UnhookWindowsHookEx

func UnhookWindowsHookEx(hhk HHOOK) bool

func UnionRect

func UnionRect(dst, src1, src2 *RECT) bool

func UpdateLayeredWindow

func UpdateLayeredWindow(hwnd HWND, hdcDst HDC, pptDst *POINT, psize *SIZE,
	hdcSrc HDC, pptSrc *POINT, crKey COLORREF, pblend *BLENDFUNCTION, dwFlags DWORD) bool

func UpdateWindow

func UpdateWindow(hwnd HWND) bool

func VariantInit

func VariantInit(v *VARIANT)

func WMMessageToString

func WMMessageToString(msg uintptr) string

func WaitMessage

func WaitMessage() bool

Types

type ACCENT_POLICY

type ACCENT_POLICY struct {
	AccentState   ACCENT_STATE
	AccentFlags   DWORD
	GradientColor DWORD
	AnimationId   DWORD
}

type ACCENT_STATE

type ACCENT_STATE DWORD
const (
	ACCENT_DISABLED                   ACCENT_STATE = 0
	ACCENT_ENABLE_GRADIENT            ACCENT_STATE = 1
	ACCENT_ENABLE_TRANSPARENTGRADIENT ACCENT_STATE = 2
	ACCENT_ENABLE_BLURBEHIND          ACCENT_STATE = 3
	ACCENT_ENABLE_ACRYLICBLURBEHIND   ACCENT_STATE = 4 // RS4 1803
	ACCENT_ENABLE_HOSTBACKDROP        ACCENT_STATE = 5 // RS5 1809
	ACCENT_INVALID_STATE              ACCENT_STATE = 6
)

type APPBARDATA

type APPBARDATA struct {
	CbSize           uint32
	HWnd             HWND
	UCallbackMessage uint32
	UEdge            uint32
	Rc               RECT
	LParam           uintptr
}

func GetTaskbarPosition

func GetTaskbarPosition() *APPBARDATA

GetTaskbarPosition returns the location of the taskbar.

type ATOM

type ATOM = uint16

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func RegisterClassEx

func RegisterClassEx(wndClassEx *WNDCLASSEX) ATOM

type BITMAP

type BITMAP struct {
	BmType       int32
	BmWidth      int32
	BmHeight     int32
	BmWidthBytes int32
	BmPlanes     uint16
	BmBitsPixel  uint16
	BmBits       unsafe.Pointer
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183371.aspx

type BITMAPINFOHEADER

type BITMAPINFOHEADER struct {
	BiSize          uint32
	BiWidth         int32
	BiHeight        int32
	BiPlanes        uint16
	BiBitCount      uint16
	BiCompression   uint32
	BiSizeImage     uint32
	BiXPelsPerMeter int32
	BiYPelsPerMeter int32
	BiClrUsed       uint32
	BiClrImportant  uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183376.aspx

type BLENDFUNCTION

type BLENDFUNCTION struct {
	BlendOp             byte
	BlendFlags          byte
	SourceConstantAlpha byte
	AlphaFormat         byte
}

type BOOL

type BOOL = int32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func BoolToBOOL

func BoolToBOOL(value bool) BOOL

type BROWSEINFO

type BROWSEINFO struct {
	Owner        HWND
	Root         *uint16
	DisplayName  *uint16
	Title        *uint16
	Flags        uint32
	CallbackFunc uintptr
	LParam       uintptr
	Image        int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb773205.aspx

type COLORREF

type COLORREF = uint32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func SetBkColor

func SetBkColor(hdc HDC, crColor COLORREF) COLORREF

func SetTextColor

func SetTextColor(hdc HDC, crColor COLORREF) COLORREF

type CONSOLE_SCREEN_BUFFER_INFO

type CONSOLE_SCREEN_BUFFER_INFO struct {
	DwSize              COORD
	DwCursorPosition    COORD
	WAttributes         uint16
	SrWindow            SMALL_RECT
	DwMaximumWindowSize COORD
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682093.aspx

func GetConsoleScreenBufferInfo

func GetConsoleScreenBufferInfo(hConsoleOutput HANDLE) *CONSOLE_SCREEN_BUFFER_INFO

type CREATESTRUCT

type CREATESTRUCT struct {
	CreateParams uintptr
	Instance     HINSTANCE
	Menu         HMENU
	Parent       HWND
	Cy, Cx       int32
	Y, X         int32
	Style        int32
	Name         *uint16
	Class        *uint16
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms632603.aspx

type CSIDL

type CSIDL uint32

type ComProc

type ComProc uintptr

ComProc stores a COM procedure.

func NewComProc

func NewComProc(fn interface{}) ComProc

NewComProc creates a new COM proc from a Go function.

func (ComProc) Call

func (p ComProc) Call(a ...uintptr) (r1, r2 uintptr, lastErr error)

Call calls a COM procedure.

type DEVMODE

type DEVMODE struct {
	DmDeviceName       [CCHDEVICENAME]uint16
	DmSpecVersion      uint16
	DmDriverVersion    uint16
	DmSize             uint16
	DmDriverExtra      uint16
	DmFields           uint32
	DmOrientation      int16
	DmPaperSize        int16
	DmPaperLength      int16
	DmPaperWidth       int16
	DmScale            int16
	DmCopies           int16
	DmDefaultSource    int16
	DmPrintQuality     int16
	DmColor            int16
	DmDuplex           int16
	DmYResolution      int16
	DmTTOption         int16
	DmCollate          int16
	DmFormName         [CCHFORMNAME]uint16
	DmLogPixels        uint16
	DmBitsPerPel       uint32
	DmPelsWidth        uint32
	DmPelsHeight       uint32
	DmDisplayFlags     uint32
	DmDisplayFrequency uint32
	DmICMMethod        uint32
	DmICMIntent        uint32
	DmMediaType        uint32
	DmDitherType       uint32
	DmReserved1        uint32
	DmReserved2        uint32
	DmPanningWidth     uint32
	DmPanningHeight    uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183565.aspx

type DIBSECTION

type DIBSECTION struct {
	DsBm        BITMAP
	DsBmih      BITMAPINFOHEADER
	DsBitfields [3]uint32
	DshSection  HANDLE
	DsOffset    uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183567.aspx

type DISPLAY_DEVICE

type DISPLAY_DEVICE struct {
	DeviceName   [32]uint16
	DeviceString [128]uint16
	StateFlags   uint32
	DeviceID     [128]uint16
	DeviceKey    [128]uint16
	// contains filtered or unexported fields
}

type DISPPARAMS

type DISPPARAMS struct {
	Rgvarg            uintptr
	RgdispidNamedArgs uintptr
	CArgs             uint32
	CNamedArgs        uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221416.aspx

type DOCINFO

type DOCINFO struct {
	CbSize       int32
	LpszDocName  *uint16
	LpszOutput   *uint16
	LpszDatatype *uint16
	FwType       uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183574.aspx

type DVTargetDevice

type DVTargetDevice struct {
	TdSize             uint32
	TdDriverNameOffset uint16
	TdDeviceNameOffset uint16
	TdPortNameOffset   uint16
	TdExtDevmodeOffset uint16
	TdData             [1]byte
}

type DWMFLIP3DWINDOWPOLICY

type DWMFLIP3DWINDOWPOLICY int32

enum-lite implementation for the following constant structure

type DWMNCRENDERINGPOLICY

type DWMNCRENDERINGPOLICY int32

enum-lite implementation for the following constant structure

type DWMTRANSITION_OWNEDWINDOW_TARGET

type DWMTRANSITION_OWNEDWINDOW_TARGET int32

enum-lite implementation for the following constant structure

type DWMWINDOWATTRIBUTE

type DWMWINDOWATTRIBUTE int32
const DwmwaBorderColor DWMWINDOWATTRIBUTE = 34
const DwmwaCaptionColor DWMWINDOWATTRIBUTE = 35
const DwmwaSystemBackdropType DWMWINDOWATTRIBUTE = 38
const DwmwaTextColor DWMWINDOWATTRIBUTE = 36
const DwmwaUseImmersiveDarkMode DWMWINDOWATTRIBUTE = 20
const DwmwaUseImmersiveDarkModeBefore20h1 DWMWINDOWATTRIBUTE = 19

type DWM_BLURBEHIND

type DWM_BLURBEHIND struct {
	DwFlags uint32
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969500.aspx

type DWM_FRAME_COUNT

type DWM_FRAME_COUNT = uint64

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type DWM_PRESENT_PARAMETERS

type DWM_PRESENT_PARAMETERS struct {
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969501.aspx

type DWM_SHOWCONTACT

type DWM_SHOWCONTACT int32

enum-lite implementation for the following constant structure

type DWM_SOURCE_FRAME_SAMPLING

type DWM_SOURCE_FRAME_SAMPLING int32

enum-lite implementation for the following constant structure

type DWM_THUMBNAIL_PROPERTIES

type DWM_THUMBNAIL_PROPERTIES struct {
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969502.aspx

type DWM_TIMING_INFO

type DWM_TIMING_INFO struct {
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969503.aspx

type DWORD

type DWORD = uint32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

var (
	DROPEFFECT_NONE DWORD = 0
	DROPEFFECT_COPY DWORD = 1
	DROPEFFECT_MOVE DWORD = 2
	DROPEFFECT_LINK DWORD = 4
)

type DropTarget

type DropTarget struct {
	combridge.IUnknownImpl
	OnEnterEffect DWORD
	OnOverEffect  DWORD
	OnEnter       func()
	OnLeave       func()
	OnOver        func()
	OnDrop        func(filenames []string)
}

func NewDropTarget

func NewDropTarget() *DropTarget

func (*DropTarget) DragEnter

func (d *DropTarget) DragEnter(dataObject *IDataObject, grfKeyState DWORD, point POINT, pdfEffect *DWORD) uintptr

func (*DropTarget) DragLeave

func (d *DropTarget) DragLeave() uintptr

func (*DropTarget) DragOver

func (d *DropTarget) DragOver(grfKeyState DWORD, point POINT, pdfEffect *DWORD) uintptr

func (*DropTarget) Drop

func (d *DropTarget) Drop(dataObject *IDataObject, grfKeyState DWORD, point POINT, pdfEffect *DWORD) uintptr

type ENHMETAHEADER

type ENHMETAHEADER struct {
	IType          uint32
	NSize          uint32
	RclBounds      RECT
	RclFrame       RECT
	DSignature     uint32
	NVersion       uint32
	NBytes         uint32
	NRecords       uint32
	NHandles       uint16
	SReserved      uint16
	NDescription   uint32
	OffDescription uint32
	NPalEntries    uint32
	SzlDevice      SIZE
	SzlMillimeters SIZE
	CbPixelFormat  uint32
	OffPixelFormat uint32
	BOpenGL        uint32
	SzlMicrometers SIZE
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162607.aspx

type EVENTLOGRECORD

type EVENTLOGRECORD struct {
	Length              uint32
	Reserved            uint32
	RecordNumber        uint32
	TimeGenerated       uint32
	TimeWritten         uint32
	EventID             uint32
	EventType           uint16
	NumStrings          uint16
	EventCategory       uint16
	ReservedFlags       uint16
	ClosingRecordNumber uint32
	StringOffset        uint32
	UserSidLength       uint32
	UserSidOffset       uint32
	DataLength          uint32
	DataOffset          uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa363646.aspx

type EXCEPINFO

type EXCEPINFO struct {
	WCode             uint16
	WReserved         uint16
	BstrSource        *uint16
	BstrDescription   *uint16
	BstrHelpFile      *uint16
	DwHelpContext     uint32
	PvReserved        uintptr
	PfnDeferredFillIn uintptr
	Scode             int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221133.aspx

type EventRegistrationToken

type EventRegistrationToken struct {
	// contains filtered or unexported fields
}

type FILETIME

type FILETIME struct {
	DwLowDateTime  uint32
	DwHighDateTime uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724284.aspx

type FLASHWINFO

type FLASHWINFO struct {
	CbSize    uint32
	Hwnd      HWND
	DwFlags   DWORD
	UCount    uint32
	DwTimeout DWORD
}

type FORMATETC

type FORMATETC struct {
	CfFormat uint16
	Ptd      *DVTargetDevice
	DwAspect uint32
	Lindex   int32
	Tymed    Tymed
}

type GESTURE_TYPE

type GESTURE_TYPE int32

enum-lite implementation for the following constant structure

type GUID

type GUID struct {
	Data1 uint32
	Data2 uint16
	Data3 uint16
	Data4 [8]byte
}

GUID is Windows API specific GUID type.

This exists to match Windows GUID type for direct passing for COM. Format is in xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx.

func NewGUID

func NewGUID(guid string) *GUID

NewGUID converts the given string into a globally unique identifier that is compliant with the Windows API.

The supplied string may be in any of these formats:

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}

The conversion of the supplied string is not case-sensitive.

func (*GUID) String

func (guid *GUID) String() string

String converts the GUID to string form. It will adhere to this pattern:

{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}

If the GUID is nil, the string representation of an empty GUID is returned:

{00000000-0000-0000-0000-000000000000}

type GdiplusStartupInput

type GdiplusStartupInput struct {
	GdiplusVersion           uint32
	DebugEventCallback       uintptr
	SuppressBackgroundThread BOOL
	SuppressExternalCodecs   BOOL
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms534067.aspx

type GdiplusStartupOutput

type GdiplusStartupOutput struct {
	NotificationHook   uintptr
	NotificationUnhook uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms534068.aspx

type HACCEL

type HACCEL = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HANDLE

type HANDLE = uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateToolhelp32Snapshot

func CreateToolhelp32Snapshot(flags, processId uint32) HANDLE

func GetClipboardData

func GetClipboardData(uFormat uint) HANDLE

func GetCurrentThread

func GetCurrentThread() HANDLE

func GetCurrentThreadId

func GetCurrentThreadId() HANDLE

func GetWindowThreadProcessId

func GetWindowThreadProcessId(hwnd HWND) (HANDLE, int)

func OpenProcess

func OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) HANDLE

func SetClipboardData

func SetClipboardData(uFormat uint, hMem HANDLE) HANDLE

type HBITMAP

type HBITMAP = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateDIBSection

func CreateDIBSection(hdc HDC, pbmi *BITMAPINFO, iUsage uint, ppvBits *unsafe.Pointer, hSection HANDLE, dwOffset uint) HBITMAP

func CreateHBITMAPFromImage

func CreateHBITMAPFromImage(img *image.RGBA) (HBITMAP, error)

func GdipCreateHBITMAPFromBitmap

func GdipCreateHBITMAPFromBitmap(bitmap *uintptr, background uint32) (HBITMAP, error)

type HBRUSH

type HBRUSH = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateBrushIndirect

func CreateBrushIndirect(lplb *LOGBRUSH) HBRUSH

func GetSysColorBrush

func GetSysColorBrush(nIndex int) HBRUSH

type HCURSOR

type HCURSOR = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func LoadCursor

func LoadCursor(instance HINSTANCE, cursorName *uint16) HCURSOR

func LoadCursorWithResourceID

func LoadCursorWithResourceID(instance HINSTANCE, res uint16) HCURSOR

func SetCursor

func SetCursor(cursor HCURSOR) HCURSOR

type HDC

type HDC = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func BeginPaint

func BeginPaint(hwnd HWND, paint *PAINTSTRUCT) HDC

func CreateCompatibleDC

func CreateCompatibleDC(hdc HDC) HDC

func CreateDC

func CreateDC(lpszDriver, lpszDevice, lpszOutput *uint16, lpInitData *DEVMODE) HDC

func CreateEnhMetaFile

func CreateEnhMetaFile(hdcRef HDC, lpFilename *uint16, lpRect *RECT, lpDescription *uint16) HDC

func CreateIC

func CreateIC(lpszDriver, lpszDevice, lpszOutput *uint16, lpdvmInit *DEVMODE) HDC

func GetDC

func GetDC(hwnd HWND) HDC

func ResetDC

func ResetDC(hdc HDC, lpInitData *DEVMODE) HDC

type HDROP

type HDROP = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HDWP

type HDWP = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HENHMETAFILE

type HENHMETAFILE = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CloseEnhMetaFile

func CloseEnhMetaFile(hdc HDC) HENHMETAFILE

func CopyEnhMetaFile

func CopyEnhMetaFile(hemfSrc HENHMETAFILE, lpszFile *uint16) HENHMETAFILE

func GetEnhMetaFile

func GetEnhMetaFile(lpszMetaFile *uint16) HENHMETAFILE

type HFONT

type HFONT = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateFontIndirect

func CreateFontIndirect(logFont *LOGFONT) HFONT

type HGDIOBJ

type HGDIOBJ = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GetStockObject

func GetStockObject(fnObject int) HGDIOBJ

func SelectObject

func SelectObject(hdc HDC, hgdiobj HGDIOBJ) HGDIOBJ

type HGLOBAL

type HGLOBAL = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GlobalAlloc

func GlobalAlloc(uFlags uint, dwBytes uint32) HGLOBAL

func LoadResource

func LoadResource(hModule HMODULE, hResInfo HRSRC) HGLOBAL

type HGLRC

type HGLRC = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HHOOK

type HHOOK = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func SetWindowsHookEx

func SetWindowsHookEx(idHook int, lpfn HOOKPROC, hMod HINSTANCE, dwThreadId DWORD) HHOOK

type HICON

type HICON = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateIcon

func CreateIcon(instance HINSTANCE, nWidth, nHeight int, cPlanes, cBitsPerPixel byte, ANDbits, XORbits *byte) HICON

func CreateLargeHIconFromImage

func CreateLargeHIconFromImage(fileData []byte) (HICON, error)

CreateLargeHIconFromImage creates a HICON from a PNG or ICO file

func CreateSmallHIconFromImage

func CreateSmallHIconFromImage(fileData []byte) (HICON, error)

CreateSmallHIconFromImage creates a HICON from a PNG or ICO file

func ExtractIcon

func ExtractIcon(lpszExeFileName string, nIconIndex int) HICON

func LoadIcon

func LoadIcon(instance HINSTANCE, iconName *uint16) HICON

func LoadIconWithResourceID

func LoadIconWithResourceID(instance HINSTANCE, res uint16) HICON

type HIMAGELIST

type HIMAGELIST = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func ImageList_Create

func ImageList_Create(cx, cy int, flags uint, cInitial, cGrow int) HIMAGELIST

type HINSTANCE

type HINSTANCE = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GetApplicationHandle

func GetApplicationHandle() HINSTANCE

func GetModuleHandle

func GetModuleHandle(modulename string) HINSTANCE

func RegisterWindow

func RegisterWindow(name string, proc WindowProc) (HINSTANCE, error)

type HKEY

type HKEY = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

const (
	HKEY_CLASSES_ROOT     HKEY = 0x80000000
	HKEY_CURRENT_USER     HKEY = 0x80000001
	HKEY_LOCAL_MACHINE    HKEY = 0x80000002
	HKEY_USERS            HKEY = 0x80000003
	HKEY_PERFORMANCE_DATA HKEY = 0x80000004
	HKEY_CURRENT_CONFIG   HKEY = 0x80000005
	HKEY_DYN_DATA         HKEY = 0x80000006
)

Registry predefined keys

type HKL

type HKL = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HMENU

type HMENU = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateMenu

func CreateMenu() HMENU

func NewMenu

func NewMenu() HMENU

func NewPopupMenu

func NewPopupMenu() HMENU

type HMODULE

type HMODULE = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HMONITOR

type HMONITOR = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func MonitorFromPoint

func MonitorFromPoint(x, y int, dwFlags uint32) HMONITOR

func MonitorFromRect

func MonitorFromRect(rc *RECT, dwFlags uint32) HMONITOR

func MonitorFromWindow

func MonitorFromWindow(hwnd HWND, dwFlags uint32) HMONITOR

type HOOKPROC

type HOOKPROC func(int, WPARAM, LPARAM) LRESULT

type HPEN

type HPEN = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func ExtCreatePen

func ExtCreatePen(dwPenStyle, dwWidth uint, lplb *LOGBRUSH, dwStyleCount uint, lpStyle *uint) HPEN

type HRESULT

type HRESULT = int32

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CloseThemeData

func CloseThemeData(hTheme HTHEME) HRESULT

func CoInitializeEx

func CoInitializeEx(coInit uintptr) HRESULT

func DrawThemeBackground

func DrawThemeBackground(hTheme HTHEME, hdc HDC, iPartId, iStateId int32, pRect, pClipRect *RECT) HRESULT

func DrawThemeText

func DrawThemeText(hTheme HTHEME, hdc HDC, iPartId, iStateId int32, pszText *uint16, iCharCount int32, dwTextFlags, dwTextFlags2 uint32, pRect *RECT) HRESULT

func DwmGetWindowAttribute

func DwmGetWindowAttribute(hwnd HWND, dwAttribute DWMWINDOWATTRIBUTE, pvAttribute unsafe.Pointer, cbAttribute uintptr) HRESULT

func DwmSetWindowAttribute

func DwmSetWindowAttribute(hwnd HWND, dwAttribute DWMWINDOWATTRIBUTE, pvAttribute unsafe.Pointer, cbAttribute uintptr) HRESULT

func GetThemeTextExtent

func GetThemeTextExtent(hTheme HTHEME, hdc HDC, iPartId, iStateId int32, pszText *uint16, iCharCount int32, dwTextFlags uint32, pBoundingRect, pExtentRect *RECT) HRESULT

func SetWindowTheme

func SetWindowTheme(hwnd HWND, pszSubAppName, pszSubIdList *uint16) HRESULT

type HRGN

type HRGN = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HRSRC

type HRSRC = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func FindResource

func FindResource(hModule HMODULE, lpName, lpType *uint16) (HRSRC, error)

type HTHEME

type HTHEME HANDLE

func OpenThemeData

func OpenThemeData(hwnd HWND, pszClassList *uint16) HTHEME

type HTHUMBNAIL

type HTHUMBNAIL = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type HTREEITEM

type HTREEITEM HANDLE

type HWND

type HWND = HANDLE

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CreateDialog

func CreateDialog(hInstance HINSTANCE, lpTemplate *uint16, hWndParent HWND, lpDialogProc uintptr) HWND

func CreateWindowEx

func CreateWindowEx(exStyle uint, className, windowName *uint16,
	style uint, x, y, width, height int, parent HWND, menu HMENU,
	instance HINSTANCE, param unsafe.Pointer) HWND

func GetConsoleWindow

func GetConsoleWindow() HWND

func GetDesktopWindow

func GetDesktopWindow() HWND

func GetDlgItem

func GetDlgItem(hDlg HWND, nIDDlgItem int) HWND

func GetFocus

func GetFocus() HWND

func GetForegroundWindow

func GetForegroundWindow() HWND

func GetWindow

func GetWindow(hwnd HWND, cmd uint32) HWND

func SetActiveWindow

func SetActiveWindow(hwnd HWND) HWND

func SetCapture

func SetCapture(hwnd HWND) HWND

func SetFocus

func SetFocus(hwnd HWND) HWND

func SetForegroundWindow

func SetForegroundWindow(hwnd HWND) HWND

type HardwareInput

type HardwareInput struct {
	// contains filtered or unexported fields
}

type IAdviseSink

type IAdviseSink struct{}

type IDataObject

type IDataObject struct {
	Vtbl *IDataObjectVtbl
}

func (*IDataObject) AddRef

func (i *IDataObject) AddRef() uintptr

func (*IDataObject) DAdvise

func (i *IDataObject) DAdvise(formatEtc *FORMATETC, advf uint32, adviseSink *IAdviseSink, pdwConnection *uint32) error

func (*IDataObject) EnumFormatEtc

func (i *IDataObject) EnumFormatEtc(dwDirection uint32, enumFormatEtc **IEnumFORMATETC) error

func (*IDataObject) GetCanonicalFormatEtc

func (i *IDataObject) GetCanonicalFormatEtc(inputFormatEtc *FORMATETC, outputFormatEtc *FORMATETC) error

func (*IDataObject) GetData

func (i *IDataObject) GetData(formatEtc *FORMATETC, medium *STGMEDIUM) error

func (*IDataObject) GetDataHere

func (i *IDataObject) GetDataHere(formatEtc *FORMATETC, medium *STGMEDIUM) error

func (*IDataObject) QueryGetData

func (i *IDataObject) QueryGetData(formatEtc *FORMATETC) error

func (*IDataObject) SetData

func (i *IDataObject) SetData(formatEtc *FORMATETC, medium *STGMEDIUM, release bool) error

type IDataObjectVtbl

type IDataObjectVtbl struct {
	IUnknownVtbl
	GetData               ComProc
	GetDataHere           ComProc
	QueryGetData          ComProc
	GetCanonicalFormatEtc ComProc
	SetData               ComProc
	EnumFormatEtc         ComProc
	DAdvise               ComProc
}

type IDispatch

type IDispatch struct {
	// contains filtered or unexported fields
}

func ComQueryInterface

func ComQueryInterface(unknown *IUnknown, id *GUID) *IDispatch

func (*IDispatch) AddRef

func (this *IDispatch) AddRef() int32

func (*IDispatch) GetIDsOfName

func (this *IDispatch) GetIDsOfName(names []string) []int32

func (*IDispatch) Invoke

func (this *IDispatch) Invoke(dispid int32, dispatch int16, params ...interface{}) *VARIANT

func (*IDispatch) QueryInterface

func (this *IDispatch) QueryInterface(id *GUID) *IDispatch

func (*IDispatch) Release

func (this *IDispatch) Release() int32

type IEnumFORMATETC

type IEnumFORMATETC struct{}

type IEnumStatData

type IEnumStatData struct{}

type IStream

type IStream struct {
	// contains filtered or unexported fields
}

func CreateStreamOnHGlobal

func CreateStreamOnHGlobal(hGlobal HGLOBAL, fDeleteOnRelease bool) *IStream

func (*IStream) AddRef

func (this *IStream) AddRef() int32

func (*IStream) QueryInterface

func (this *IStream) QueryInterface(id *GUID) *IDispatch

func (*IStream) Release

func (this *IStream) Release() int32

type IUnknown

type IUnknown struct {
	Vtbl *IUnknownVtbl
}

IUnknown

type IUnknownImpl

type IUnknownImpl interface {
	QueryInterface(refiid, object uintptr) uintptr
	AddRef() uintptr
	Release() uintptr
}

type IUnknownVtbl

type IUnknownVtbl struct {
	QueryInterface ComProc
	AddRef         ComProc
	Release        ComProc
}

func (*IUnknownVtbl) CallRelease

func (i *IUnknownVtbl) CallRelease(this unsafe.Pointer) error

type KBDLLHOOKSTRUCT

type KBDLLHOOKSTRUCT struct {
	VkCode      DWORD
	ScanCode    DWORD
	Flags       DWORD
	Time        DWORD
	DwExtraInfo ULONG_PTR
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644967(v=vs.85).aspx

type KbdInput

type KbdInput struct {
	// contains filtered or unexported fields
}

type LOGFONT

type LOGFONT struct {
	Height         int32
	Width          int32
	Escapement     int32
	Orientation    int32
	Weight         int32
	Italic         byte
	Underline      byte
	StrikeOut      byte
	CharSet        byte
	OutPrecision   byte
	ClipPrecision  byte
	Quality        byte
	PitchAndFamily byte
	FaceName       [LF_FACESIZE]uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145037.aspx

type LPARAM

type LPARAM = uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type LPCVOID

type LPCVOID = unsafe.Pointer

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type LRESULT

type LRESULT = uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func CallNextHookEx

func CallNextHookEx(hhk HHOOK, nCode int, wParam WPARAM, lParam LPARAM) LRESULT

func EnumChildWindows

func EnumChildWindows(hwnd HWND, callback func(hwnd HWND, lparam LPARAM) LRESULT) LRESULT

type LVCOLUMN

type LVCOLUMN struct {
	Mask       uint32
	Fmt        int32
	Cx         int32
	PszText    *uint16
	CchTextMax int32
	ISubItem   int32
	IImage     int32
	IOrder     int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774743.aspx

type LVFINDINFO

type LVFINDINFO struct {
	Flags       uint32
	PszText     *uint16
	LParam      uintptr
	Pt          POINT
	VkDirection uint32
}

type LVHITTESTINFO

type LVHITTESTINFO struct {
	Pt       POINT
	Flags    uint32
	IItem    int32
	ISubItem int32
	IGroup   int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774754.aspx

type LVITEM

type LVITEM struct {
	Mask       uint32
	IItem      int32
	ISubItem   int32
	State      uint32
	StateMask  uint32
	PszText    *uint16
	CchTextMax int32
	IImage     int32
	LParam     uintptr
	IIndent    int32
	IGroupId   int32
	CColumns   uint32
	PuColumns  uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774760.aspx

type MARGINS

type MARGINS struct {
	CxLeftWidth, CxRightWidth, CyTopHeight, CyBottomHeight int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb773244.aspx

type MENUINFO struct {
	CbSize          uint32
	FMask           uint32
	DwStyle         uint32
	CyMax           uint32
	HbrBack         HBRUSH
	DwContextHelpID uint32
	DwMenuData      uintptr
}
type MENUITEMINFO struct {
	CbSize        uint32
	FMask         uint32
	FType         uint32
	FState        uint32
	WID           uint32
	HSubMenu      HMENU
	HbmpChecked   HBITMAP
	HbmpUnchecked HBITMAP
	DwItemData    uintptr
	DwTypeData    *uint16
	Cch           uint32
	HbmpItem      HBITMAP
}

type MINMAXINFO

type MINMAXINFO struct {
	PtReserved     POINT
	PtMaxSize      POINT
	PtMaxPosition  POINT
	PtMinTrackSize POINT
	PtMaxTrackSize POINT
}

https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-minmaxinfo

type MODULEENTRY32

type MODULEENTRY32 struct {
	Size         uint32
	ModuleID     uint32
	ProcessID    uint32
	GlblcntUsage uint32
	ProccntUsage uint32
	ModBaseAddr  *uint8
	ModBaseSize  uint32
	HModule      HMODULE
	SzModule     [MAX_MODULE_NAME32 + 1]uint16
	SzExePath    [MAX_PATH]uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms684225.aspx

type MONITORINFO

type MONITORINFO struct {
	CbSize    uint32
	RcMonitor RECT
	RcWork    RECT
	DwFlags   uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145065.aspx

func GetMonitorInfoForWindow

func GetMonitorInfoForWindow(hwnd HWND) *MONITORINFO

func (*MONITORINFO) Dump

func (m *MONITORINFO) Dump()

type MONITOR_DPI_TYPE

type MONITOR_DPI_TYPE int32
const (
	MDT_EFFECTIVE_DPI MONITOR_DPI_TYPE = 0
	MDT_ANGULAR_DPI   MONITOR_DPI_TYPE = 1
	MDT_RAW_DPI       MONITOR_DPI_TYPE = 2
	MDT_DEFAULT       MONITOR_DPI_TYPE = 0
)

type MSGBOXPARAMS

type MSGBOXPARAMS struct {
	// contains filtered or unexported fields
}
type Menu HMENU
func (m Menu) Append(flags uint32, id uintptr, text string) bool
func (m Menu) Check(id uintptr, check bool) bool
func (m Menu) CheckRadio(startID int, endID int, selectedID int) bool
func (m Menu) Destroy() bool

type MilMatrix3x2D

type MilMatrix3x2D struct {
	S_11, S_12, S_21, S_22 float64
	DX, DY                 float64
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd389402.aspx

type MouseInput

type MouseInput struct {
	// contains filtered or unexported fields
}

type NMITEMACTIVATE

type NMITEMACTIVATE struct {
	Hdr       NMHDR
	IItem     int32
	ISubItem  int32
	UNewState uint32
	UOldState uint32
	UChanged  uint32
	PtAction  POINT
	LParam    uintptr
	UKeyFlags uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774771.aspx

type NMLISTVIEW

type NMLISTVIEW struct {
	Hdr       NMHDR
	IItem     int32
	ISubItem  int32
	UNewState uint32
	UOldState uint32
	UChanged  uint32
	PtAction  POINT
	LParam    uintptr
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb774773.aspx

type NMLVKEYDOWN

type NMLVKEYDOWN struct {
	Hdr   NMHDR
	WVKey uint16
	Flags uint32
}

type NMMOUSE

type NMMOUSE struct {
	Hdr        NMHDR
	DwItemSpec uintptr
	DwItemData uintptr
	Pt         POINT
	DwHitInfo  uintptr
}

type NMTCKEYDOWN

type NMTCKEYDOWN struct {
	Hdr   NMHDR
	WVKey uint16
	Flags uint32
}

type NMTOOLBAR

type NMTOOLBAR struct {
	Hdr      NMHDR
	IItem    int32
	TbButton TBBUTTON
	CchText  int32
	PszText  *uint16
	RcButton RECT
}

type NMTREEVIEW

type NMTREEVIEW struct {
	Hdr     NMHDR
	Action  uint32
	ItemOld TVITEM
	ItemNew TVITEM
	PtDrag  POINT
}

type NMTVDISPINFO

type NMTVDISPINFO struct {
	Hdr  NMHDR
	Item TVITEM
}

type NMTVKEYDOWN

type NMTVKEYDOWN struct {
	Hdr   NMHDR
	WVKey uint16
	Flags uint32
}

type NOTIFYICONDATA

type NOTIFYICONDATA struct {
	CbSize           uint32
	HWnd             HWND
	UID              uint32
	UFlags           uint32
	UCallbackMessage uint32
	HIcon            HICON
	SzTip            [128]uint16
	DwState          uint32
	DwStateMask      uint32
	SzInfo           [256]uint16
	UVersion         uint32
	SzInfoTitle      [64]uint16
	DwInfoFlags      uint32
	GuidItem         windows.GUID
	HBalloonIcon     HICON
}

type NOTIFYICONIDENTIFIER

type NOTIFYICONIDENTIFIER struct {
	CbSize   uint32
	HWnd     HWND
	UId      uint32
	GuidItem windows.GUID
}

type OPENFILENAME

type OPENFILENAME struct {
	StructSize      uint32
	Owner           HWND
	Instance        HINSTANCE
	Filter          *uint16
	CustomFilter    *uint16
	MaxCustomFilter uint32
	FilterIndex     uint32
	File            *uint16
	MaxFile         uint32
	FileTitle       *uint16
	MaxFileTitle    uint32
	InitialDir      *uint16
	Title           *uint16
	Flags           uint32
	FileOffset      uint16
	FileExtension   uint16
	DefExt          *uint16
	CustData        uintptr
	FnHook          uintptr
	TemplateName    *uint16
	PvReserved      unsafe.Pointer
	DwReserved      uint32
	FlagsEx         uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms646839.aspx

type PAINTSTRUCT

type PAINTSTRUCT struct {
	Hdc         HDC
	FErase      BOOL
	RcPaint     RECT
	FRestore    BOOL
	FIncUpdate  BOOL
	RgbReserved [32]byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162768.aspx

type PIXELFORMATDESCRIPTOR

type PIXELFORMATDESCRIPTOR struct {
	Size                   uint16
	Version                uint16
	DwFlags                uint32
	IPixelType             byte
	ColorBits              byte
	RedBits, RedShift      byte
	GreenBits, GreenShift  byte
	BlueBits, BlueShift    byte
	AlphaBits, AlphaShift  byte
	AccumBits              byte
	AccumRedBits           byte
	AccumGreenBits         byte
	AccumBlueBits          byte
	AccumAlphaBits         byte
	DepthBits, StencilBits byte
	AuxBuffers             byte
	ILayerType             byte
	Reserved               byte
	DwLayerMask            uint32
	DwVisibleMask          uint32
	DwDamageMask           uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd368826.aspx

type PVOID

type PVOID = unsafe.Pointer

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type PopupMenu

type PopupMenu Menu

func CreatePopupMenu

func CreatePopupMenu() PopupMenu

func (PopupMenu) Append

func (p PopupMenu) Append(flags uint32, id uintptr, text string) bool

func (PopupMenu) Check

func (p PopupMenu) Check(id uintptr, checked bool) bool

func (PopupMenu) CheckRadio

func (p PopupMenu) CheckRadio(startID, endID, selectedID int) bool

func (PopupMenu) Destroy

func (p PopupMenu) Destroy() bool

func (PopupMenu) Track

func (p PopupMenu) Track(hwnd HWND, flags uint32, x, y int32) bool

type QPC_TIME

type QPC_TIME = uint64

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type RECT

type RECT struct {
	Left, Top, Right, Bottom int32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162897.aspx

func GetClientRect

func GetClientRect(hwnd HWND) *RECT

func GetNotificationFlyoutBounds

func GetNotificationFlyoutBounds() (*RECT, error)

func GetSystrayBounds

func GetSystrayBounds(hwnd HWND, uid uint32) (*RECT, error)

func GetWindowRect

func GetWindowRect(hwnd HWND) *RECT

func (*RECT) String

func (r *RECT) String() string

type RGBQUAD

type RGBQUAD struct {
	RgbBlue     byte
	RgbGreen    byte
	RgbRed      byte
	RgbReserved byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd162938.aspx

type SCROLLINFO

type SCROLLINFO struct {
	CbSize    uint32
	FMask     uint32
	NMin      int32
	NMax      int32
	NPage     uint32
	NPos      int32
	NTrackPos int32
}

type SERVICE_STATUS

type SERVICE_STATUS struct {
	DwServiceType             uint32
	DwCurrentState            uint32
	DwControlsAccepted        uint32
	DwWin32ExitCode           uint32
	DwServiceSpecificExitCode uint32
	DwCheckPoint              uint32
	DwWaitHint                uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms685996.aspx

type SIZE_T

type SIZE_T = ULONG_PTR

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type SMALL_RECT

type SMALL_RECT struct {
	Left, Top, Right, Bottom int16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms686311.aspx

type STGMEDIUM

type STGMEDIUM struct {
	Tymed          Tymed
	Union          uintptr
	PUnkForRelease IUnknownImpl
}

func (STGMEDIUM) FileName

func (s STGMEDIUM) FileName() string

func (STGMEDIUM) Release

func (s STGMEDIUM) Release()

type SYSTEMTIME

type SYSTEMTIME struct {
	Year         uint16
	Month        uint16
	DayOfWeek    uint16
	Day          uint16
	Hour         uint16
	Minute       uint16
	Second       uint16
	Milliseconds uint16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724950(v=vs.85).aspx

func GetSystemTime

func GetSystemTime() *SYSTEMTIME

type Screen

type Screen struct {
	MONITORINFOEX
	Name      string
	IsPrimary bool
	IsCurrent bool
	Scale     float32
	Rotation  float32
}

func GetAllScreens

func GetAllScreens() ([]*Screen, error)

type TBBUTTON

type TBBUTTON struct {
	IBitmap   int32
	IdCommand int32
	FsState   byte
	FsStyle   byte
	//#ifdef _WIN64
	//    BYTE bReserved[6]          // padding for alignment
	//#elif defined(_WIN32)
	BReserved [2]byte // padding for alignment
	//#endif
	DwData  uintptr
	IString uintptr
}

type TBBUTTONINFO

type TBBUTTONINFO struct {
	CbSize    uint32
	DwMask    uint32
	IdCommand int32
	IImage    int32
	FsState   byte
	FsStyle   byte
	Cx        uint16
	LParam    uintptr
	PszText   uintptr
	CchText   int32
}

type TCHITTESTINFO

type TCHITTESTINFO struct {
	Pt POINT
	// contains filtered or unexported fields
}

type TCITEM

type TCITEM struct {
	Mask        uint32
	DwState     uint32
	DwStateMask uint32
	PszText     *uint16
	CchTextMax  int32
	IImage      int32
	LParam      uintptr
}

type TCITEMHEADER

type TCITEMHEADER struct {
	Mask        uint32
	LpReserved1 uint32
	LpReserved2 uint32
	PszText     *uint16
	CchTextMax  int32
	IImage      int32
}

type TEXTMETRIC

type TEXTMETRIC struct {
	TmHeight           int32
	TmAscent           int32
	TmDescent          int32
	TmInternalLeading  int32
	TmExternalLeading  int32
	TmAveCharWidth     int32
	TmMaxCharWidth     int32
	TmWeight           int32
	TmOverhang         int32
	TmDigitizedAspectX int32
	TmDigitizedAspectY int32
	TmFirstChar        uint16
	TmLastChar         uint16
	TmDefaultChar      uint16
	TmBreakChar        uint16
	TmItalic           byte
	TmUnderlined       byte
	TmStruckOut        byte
	TmPitchAndFamily   byte
	TmCharSet          byte
}

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145132.aspx

type TOOLINFO

type TOOLINFO struct {
	CbSize     uint32
	UFlags     uint32
	Hwnd       HWND
	UId        uintptr
	Rect       RECT
	Hinst      HINSTANCE
	LpszText   *uint16
	LParam     uintptr
	LpReserved unsafe.Pointer
}

http://msdn.microsoft.com/en-us/library/windows/desktop/bb760256.aspx

type TPMPARAMS

type TPMPARAMS struct {
	CbSize    uint32
	RcExclude RECT
}

type TRACKMOUSEEVENT

type TRACKMOUSEEVENT struct {
	CbSize      uint32
	DwFlags     uint32
	HwndTrack   HWND
	DwHoverTime uint32
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms645604.aspx

type TVHITTESTINFO

type TVHITTESTINFO struct {
	Pt    POINT
	Flags uint32
	HItem HTREEITEM
}

type TVINSERTSTRUCT

type TVINSERTSTRUCT struct {
	HParent      HTREEITEM
	HInsertAfter HTREEITEM
	Item         TVITEM
}

type TVITEM

type TVITEM struct {
	Mask           uint32
	HItem          HTREEITEM
	State          uint32
	StateMask      uint32
	PszText        uintptr
	CchTextMax     int32
	IImage         int32
	ISelectedImage int32
	CChildren      int32
	LParam         uintptr
}

type Tymed

type Tymed uint32
const (
	TYMED_HGLOBAL  Tymed = 1
	TYMED_FILE     Tymed = 2
	TYMED_ISTREAM  Tymed = 4
	TYMED_ISTORAGE Tymed = 8
	TYMED_GDI      Tymed = 16
	TYMED_MFPICT   Tymed = 32
	TYMED_ENHMF    Tymed = 64
	TYMED_NULL     Tymed = 0
)

type UINT

type UINT = uint

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

func GetDpiForWindow

func GetDpiForWindow(hwnd HWND) UINT

type ULONG_PTR

type ULONG_PTR = uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type UNSIGNED_RATIO

type UNSIGNED_RATIO struct {
	// contains filtered or unexported fields
}

http://msdn.microsoft.com/en-us/library/windows/desktop/aa969505.aspx

type VARIANT

type VARIANT struct {
	VT         uint16 //  2
	WReserved1 uint16 //  4
	WReserved2 uint16 //  6
	WReserved3 uint16 //  8
	Val        int64  // 16
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms221627.aspx

func ComInvoke

func ComInvoke(disp *IDispatch, dispid int32, dispatch int16, params ...interface{}) (result *VARIANT)

type WINDOWCOMPOSITIONATTRIB

type WINDOWCOMPOSITIONATTRIB DWORD
const (
	WCA_UNDEFINED                     WINDOWCOMPOSITIONATTRIB = 0
	WCA_NCRENDERING_ENABLED           WINDOWCOMPOSITIONATTRIB = 1
	WCA_NCRENDERING_POLICY            WINDOWCOMPOSITIONATTRIB = 2
	WCA_TRANSITIONS_FORCEDISABLED     WINDOWCOMPOSITIONATTRIB = 3
	WCA_ALLOW_NCPAINT                 WINDOWCOMPOSITIONATTRIB = 4
	WCA_CAPTION_BUTTON_BOUNDS         WINDOWCOMPOSITIONATTRIB = 5
	WCA_NONCLIENT_RTL_LAYOUT          WINDOWCOMPOSITIONATTRIB = 6
	WCA_FORCE_ICONIC_REPRESENTATION   WINDOWCOMPOSITIONATTRIB = 7
	WCA_EXTENDED_FRAME_BOUNDS         WINDOWCOMPOSITIONATTRIB = 8
	WCA_HAS_ICONIC_BITMAP             WINDOWCOMPOSITIONATTRIB = 9
	WCA_THEME_ATTRIBUTES              WINDOWCOMPOSITIONATTRIB = 10
	WCA_NCRENDERING_EXILED            WINDOWCOMPOSITIONATTRIB = 11
	WCA_NCADORNMENTINFO               WINDOWCOMPOSITIONATTRIB = 12
	WCA_EXCLUDED_FROM_LIVEPREVIEW     WINDOWCOMPOSITIONATTRIB = 13
	WCA_VIDEO_OVERLAY_ACTIVE          WINDOWCOMPOSITIONATTRIB = 14
	WCA_FORCE_ACTIVEWINDOW_APPEARANCE WINDOWCOMPOSITIONATTRIB = 15
	WCA_DISALLOW_PEEK                 WINDOWCOMPOSITIONATTRIB = 16
	WCA_CLOAK                         WINDOWCOMPOSITIONATTRIB = 17
	WCA_CLOAKED                       WINDOWCOMPOSITIONATTRIB = 18
	WCA_ACCENT_POLICY                 WINDOWCOMPOSITIONATTRIB = 19
	WCA_FREEZE_REPRESENTATION         WINDOWCOMPOSITIONATTRIB = 20
	WCA_EVER_UNCLOAKED                WINDOWCOMPOSITIONATTRIB = 21
	WCA_VISUAL_OWNER                  WINDOWCOMPOSITIONATTRIB = 22
	WCA_HOLOGRAPHIC                   WINDOWCOMPOSITIONATTRIB = 23
	WCA_EXCLUDED_FROM_DDA             WINDOWCOMPOSITIONATTRIB = 24
	WCA_PASSIVEUPDATEMODE             WINDOWCOMPOSITIONATTRIB = 25
	WCA_USEDARKMODECOLORS             WINDOWCOMPOSITIONATTRIB = 26
	WCA_CORNER_STYLE                  WINDOWCOMPOSITIONATTRIB = 27
	WCA_PART_COLOR                    WINDOWCOMPOSITIONATTRIB = 28
	WCA_DISABLE_MOVESIZE_FEEDBACK     WINDOWCOMPOSITIONATTRIB = 29
	WCA_LAST                          WINDOWCOMPOSITIONATTRIB = 30
)

type WINDOWCOMPOSITIONATTRIBDATA

type WINDOWCOMPOSITIONATTRIBDATA struct {
	Attrib WINDOWCOMPOSITIONATTRIB
	PvData PVOID
	CbData SIZE_T
}

type WINDOWINFO

type WINDOWINFO struct {
	CbSize          DWORD
	RcWindow        RECT
	RcClient        RECT
	DwStyle         DWORD
	DwExStyle       DWORD
	DwWindowStatus  DWORD
	CxWindowBorders UINT
	CyWindowBorders UINT
	AtomWindowType  ATOM
	WCreatorVersion WORD
}

func (*WINDOWINFO) IsPopup

func (w *WINDOWINFO) IsPopup() bool

type WINDOWPLACEMENT

type WINDOWPLACEMENT struct {
	Length           uint32
	Flags            uint32
	ShowCmd          uint32
	PtMinPosition    POINT
	PtMaxPosition    POINT
	RcNormalPosition RECT
}

type WNDCLASSEX

type WNDCLASSEX struct {
	Size       uint32
	Style      uint32
	WndProc    uintptr
	ClsExtra   int32
	WndExtra   int32
	Instance   HINSTANCE
	Icon       HICON
	Cursor     HCURSOR
	Background HBRUSH
	MenuName   *uint16
	ClassName  *uint16
	IconSm     HICON
}

http://msdn.microsoft.com/en-us/library/windows/desktop/ms633577.aspx

type WORD

type WORD = uint16

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type WPARAM

type WPARAM = uintptr

From MSDN: Windows Data Types http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx ATOM WORD BOOL int32 BOOLEAN byte BYTE byte CCHAR int8 CHAR int8 COLORREF DWORD DWORD uint32 DWORDLONG ULONGLONG DWORD_PTR ULONG_PTR DWORD32 uint32 DWORD64 uint64 FLOAT float32 HACCEL HANDLE HALF_PTR struct{} // ??? HANDLE PVOID HBITMAP HANDLE HBRUSH HANDLE HCOLORSPACE HANDLE HCONV HANDLE HCONVLIST HANDLE HCURSOR HANDLE HDC HANDLE HDDEDATA HANDLE HDESK HANDLE HDROP HANDLE HDWP HANDLE HENHMETAFILE HANDLE HFILE HANDLE HFONT HANDLE HGDIOBJ HANDLE HGLOBAL HANDLE HHOOK HANDLE HICON HANDLE HINSTANCE HANDLE HKEY HANDLE HKL HANDLE HLOCAL HANDLE HMENU HANDLE HMETAFILE HANDLE HMODULE HANDLE HPALETTE HANDLE HPEN HANDLE HRESULT int32 HRGN HANDLE HSZ HANDLE HWINSTA HANDLE HWND HANDLE INT int32 INT_PTR uintptr INT8 int8 INT16 int16 INT32 int32 INT64 int64 LANGID WORD LCID DWORD LCTYPE DWORD LGRPID DWORD LONG int32 LONGLONG int64 LONG_PTR uintptr LONG32 int32 LONG64 int64 LPARAM LONG_PTR LPBOOL *BOOL LPBYTE *BYTE LPCOLORREF *COLORREF LPCSTR *int8 LPCTSTR LPCWSTR LPCVOID unsafe.Pointer LPCWSTR *WCHAR LPDWORD *DWORD LPHANDLE *HANDLE LPINT *INT LPLONG *LONG LPSTR *CHAR LPTSTR LPWSTR LPVOID unsafe.Pointer LPWORD *WORD LPWSTR *WCHAR LRESULT LONG_PTR PBOOL *BOOL PBOOLEAN *BOOLEAN PBYTE *BYTE PCHAR *CHAR PCSTR *CHAR PCTSTR PCWSTR PCWSTR *WCHAR PDWORD *DWORD PDWORDLONG *DWORDLONG PDWORD_PTR *DWORD_PTR PDWORD32 *DWORD32 PDWORD64 *DWORD64 PFLOAT *FLOAT PHALF_PTR *HALF_PTR PHANDLE *HANDLE PHKEY *HKEY PINT_PTR *INT_PTR PINT8 *INT8 PINT16 *INT16 PINT32 *INT32 PINT64 *INT64 PLCID *LCID PLONG *LONG PLONGLONG *LONGLONG PLONG_PTR *LONG_PTR PLONG32 *LONG32 PLONG64 *LONG64 POINTER_32 struct{} // ??? POINTER_64 struct{} // ??? POINTER_SIGNED uintptr POINTER_UNSIGNED uintptr PSHORT *SHORT PSIZE_T *SIZE_T PSSIZE_T *SSIZE_T PSTR *CHAR PTBYTE *TBYTE PTCHAR *TCHAR PTSTR PWSTR PUCHAR *UCHAR PUHALF_PTR *UHALF_PTR PUINT *UINT PUINT_PTR *UINT_PTR PUINT8 *UINT8 PUINT16 *UINT16 PUINT32 *UINT32 PUINT64 *UINT64 PULONG *ULONG PULONGLONG *ULONGLONG PULONG_PTR *ULONG_PTR PULONG32 *ULONG32 PULONG64 *ULONG64 PUSHORT *USHORT PVOID unsafe.Pointer PWCHAR *WCHAR PWORD *WORD PWSTR *WCHAR QWORD uint64 SC_HANDLE HANDLE SC_LOCK LPVOID SERVICE_STATUS_HANDLE HANDLE SHORT int16 SIZE_T ULONG_PTR SSIZE_T LONG_PTR TBYTE WCHAR TCHAR WCHAR UCHAR uint8 UHALF_PTR struct{} // ??? UINT uint32 UINT_PTR uintptr UINT8 uint8 UINT16 uint16 UINT32 uint32 UINT64 uint64 ULONG uint32 ULONGLONG uint64 ULONG_PTR uintptr ULONG32 uint32 ULONG64 uint64 USHORT uint16 USN LONGLONG WCHAR uint16 WORD uint16 WPARAM UINT_PTR

type WindowProc

type WindowProc func(hwnd HWND, msg uint32, wParam, lParam uintptr) uintptr

type WindowsVersionInfo

type WindowsVersionInfo struct {
	Major          int
	Minor          int
	Build          int
	DisplayVersion string
}

func GetWindowsVersionInfo

func GetWindowsVersionInfo() (*WindowsVersionInfo, error)

func (*WindowsVersionInfo) IsWindowsVersionAtLeast

func (w *WindowsVersionInfo) IsWindowsVersionAtLeast(major, minor, buildNumber int) bool

func (*WindowsVersionInfo) String

func (w *WindowsVersionInfo) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL