win

package module
v0.0.0-...-a377121 Latest Latest
Warning

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

Go to latest
Published: Feb 18, 2021 License: BSD-3-Clause Imports: 4 Imported by: 560

README

About win
=========

win is a Windows API wrapper package for Go.

Originally part of [walk](https://github.com/lxn/walk), it is now a separate
project.

Setup
=====

Make sure you have a working Go installation.
See [Getting Started](http://golang.org/doc/install.html)

Now run `go get github.com/lxn/win`

Documentation

Rendered for windows/amd64

Index

Constants

View Source
const (
	REG_NONE      uint64 = 0 // No value type
	REG_SZ               = 1 // Unicode nul terminated string
	REG_EXPAND_SZ        = 2 // Unicode nul terminated string
	// (with environment variable references)
	REG_BINARY                     = 3 // Free form binary
	REG_DWORD                      = 4 // 32-bit number
	REG_DWORD_LITTLE_ENDIAN        = 4 // 32-bit number (same as REG_DWORD)
	REG_DWORD_BIG_ENDIAN           = 5 // 32-bit number
	REG_LINK                       = 6 // Symbolic Link (unicode)
	REG_MULTI_SZ                   = 7 // Multiple Unicode strings
	REG_RESOURCE_LIST              = 8 // Resource list in the resource map
	REG_FULL_RESOURCE_DESCRIPTOR   = 9 // Resource list in the hardware description
	REG_RESOURCE_REQUIREMENTS_LIST = 10
	REG_QWORD                      = 11 // 64-bit number
	REG_QWORD_LITTLE_ENDIAN        = 11 // 64-bit number (same as REG_QWORD)

)
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 (
	BCM_FIRST            = 0x1600
	BCM_GETIDEALSIZE     = BCM_FIRST + 0x0001
	BCM_SETIMAGELIST     = BCM_FIRST + 0x0002
	BCM_GETIMAGELIST     = BCM_FIRST + 0x0003
	BCM_SETTEXTMARGIN    = BCM_FIRST + 0x0004
	BCM_GETTEXTMARGIN    = BCM_FIRST + 0x0005
	BCM_SETDROPDOWNSTATE = BCM_FIRST + 0x0006
	BCM_SETSPLITINFO     = BCM_FIRST + 0x0007
	BCM_GETSPLITINFO     = BCM_FIRST + 0x0008
	BCM_SETNOTE          = BCM_FIRST + 0x0009
	BCM_GETNOTE          = BCM_FIRST + 0x000A
	BCM_GETNOTELENGTH    = BCM_FIRST + 0x000B
	BCM_SETSHIELD        = BCM_FIRST + 0x000C
)

Button control 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 (
	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 (
	NM_FIRST              = 0
	NM_OUTOFMEMORY        = ^uint32(0)  // NM_FIRST - 1
	NM_CLICK              = ^uint32(1)  // NM_FIRST - 2
	NM_DBLCLK             = ^uint32(2)  // NM_FIRST - 3
	NM_RETURN             = ^uint32(3)  // NM_FIRST - 4
	NM_RCLICK             = ^uint32(4)  // NM_FIRST - 5
	NM_RDBLCLK            = ^uint32(5)  // NM_FIRST - 6
	NM_SETFOCUS           = ^uint32(6)  // NM_FIRST - 7
	NM_KILLFOCUS          = ^uint32(7)  // NM_FIRST - 8
	NM_CUSTOMDRAW         = ^uint32(11) // NM_FIRST - 12
	NM_HOVER              = ^uint32(12) // NM_FIRST - 13
	NM_NCHITTEST          = ^uint32(13) // NM_FIRST - 14
	NM_KEYDOWN            = ^uint32(14) // NM_FIRST - 15
	NM_RELEASEDCAPTURE    = ^uint32(15) // NM_FIRST - 16
	NM_SETCURSOR          = ^uint32(16) // NM_FIRST - 17
	NM_CHAR               = ^uint32(17) // NM_FIRST - 18
	NM_TOOLTIPSCREATED    = ^uint32(18) // NM_FIRST - 19
	NM_LAST               = ^uint32(98) // NM_FIRST - 99
	TRBN_THUMBPOSCHANGING = 0xfffffa22  // TRBN_FIRST - 1
)

WM_NOTITY messages

View Source
const (
	PBM_SETPOS      = WM_USER + 2
	PBM_DELTAPOS    = WM_USER + 3
	PBM_SETSTEP     = WM_USER + 4
	PBM_STEPIT      = WM_USER + 5
	PBM_SETMARQUEE  = WM_USER + 10
	PBM_SETRANGE32  = 1030
	PBM_GETRANGE    = 1031
	PBM_GETPOS      = 1032
	PBM_SETBARCOLOR = 1033
	PBM_SETBKCOLOR  = CCM_SETBKCOLOR
)

ProgressBar messages

View Source
const (
	PBS_SMOOTH   = 0x01
	PBS_VERTICAL = 0x04
	PBS_MARQUEE  = 0x08
)

ProgressBar styles

View Source
const (
	TBM_GETPOS      = WM_USER
	TBM_GETRANGEMIN = WM_USER + 1
	TBM_GETRANGEMAX = WM_USER + 2
	TBM_SETPOS      = WM_USER + 5
	TBM_SETRANGEMIN = WM_USER + 7
	TBM_SETRANGEMAX = WM_USER + 8
	TBM_SETPAGESIZE = WM_USER + 21
	TBM_GETPAGESIZE = WM_USER + 22
	TBM_SETLINESIZE = WM_USER + 23
	TBM_GETLINESIZE = WM_USER + 24
)

TrackBar (Slider) messages

View Source
const (
	TBS_VERT     = 0x002
	TBS_TOOLTIPS = 0x100
)

TrackBar (Slider) styles

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
)

ImageList creation flags

View Source
const (
	ILD_NORMAL      = 0x00000000
	ILD_TRANSPARENT = 0x00000001
	ILD_BLEND25     = 0x00000002
	ILD_BLEND50     = 0x00000004
	ILD_MASK        = 0x00000010
	ILD_IMAGE       = 0x00000020
	ILD_SELECTED    = ILD_BLEND50
	ILD_FOCUS       = ILD_BLEND25
	ILD_BLEND       = ILD_BLEND50
)

ImageList_Draw[Ex] flags

View Source
const (
	LIM_SMALL = 0
	LIM_LARGE = 1
)

LoadIconMetric flags

View Source
const (
	CDDS_PREPAINT      = 0x00000001
	CDDS_POSTPAINT     = 0x00000002
	CDDS_PREERASE      = 0x00000003
	CDDS_POSTERASE     = 0x00000004
	CDDS_ITEM          = 0x00010000
	CDDS_ITEMPREPAINT  = CDDS_ITEM | CDDS_PREPAINT
	CDDS_ITEMPOSTPAINT = CDDS_ITEM | CDDS_POSTPAINT
	CDDS_ITEMPREERASE  = CDDS_ITEM | CDDS_PREERASE
	CDDS_ITEMPOSTERASE = CDDS_ITEM | CDDS_POSTERASE
	CDDS_SUBITEM       = 0x00020000
)
View Source
const (
	CDIS_SELECTED         = 0x0001
	CDIS_GRAYED           = 0x0002
	CDIS_DISABLED         = 0x0004
	CDIS_CHECKED          = 0x0008
	CDIS_FOCUS            = 0x0010
	CDIS_DEFAULT          = 0x0020
	CDIS_HOT              = 0x0040
	CDIS_MARKED           = 0x0080
	CDIS_INDETERMINATE    = 0x0100
	CDIS_SHOWKEYBOARDCUES = 0x0200
	CDIS_NEARHOT          = 0x0400
	CDIS_OTHERSIDEHOT     = 0x0800
	CDIS_DROPHILITED      = 0x1000
)
View Source
const (
	CDRF_DODEFAULT         = 0x00000000
	CDRF_NEWFONT           = 0x00000002
	CDRF_SKIPDEFAULT       = 0x00000004
	CDRF_DOERASE           = 0x00000008
	CDRF_NOTIFYPOSTPAINT   = 0x00000010
	CDRF_NOTIFYITEMDRAW    = 0x00000020
	CDRF_NOTIFYSUBITEMDRAW = 0x00000020
	CDRF_NOTIFYPOSTERASE   = 0x00000040
	CDRF_SKIPPOSTPAINT     = 0x00000100
)
View Source
const (
	LVIR_BOUNDS       = 0
	LVIR_ICON         = 1
	LVIR_LABEL        = 2
	LVIR_SELECTBOUNDS = 3
)
View Source
const (
	LPSTR_TEXTCALLBACK = ^uintptr(0)
	I_CHILDRENCALLBACK = -1
	I_IMAGECALLBACK    = -1
	I_IMAGENONE        = -2
)
View Source
const (
	CDERR_DIALOGFAILURE   = 0xFFFF
	CDERR_FINDRESFAILURE  = 0x0006
	CDERR_INITIALIZATION  = 0x0002
	CDERR_LOADRESFAILURE  = 0x0007
	CDERR_LOADSTRFAILURE  = 0x0005
	CDERR_LOCKRESFAILURE  = 0x0008
	CDERR_MEMALLOCFAILURE = 0x0009
	CDERR_MEMLOCKFAILURE  = 0x000A
	CDERR_NOHINSTANCE     = 0x0004
	CDERR_NOHOOK          = 0x000B
	CDERR_NOTEMPLATE      = 0x0003
	CDERR_REGISTERMSGFAIL = 0x000C
	CDERR_STRUCTSIZE      = 0x0001
)

Common error codes

View Source
const (
	CC_ANYCOLOR             = 0x00000100
	CC_ENABLEHOOK           = 0x00000010
	CC_ENABLETEMPLATE       = 0x00000020
	CC_ENABLETEMPLATEHANDLE = 0x00000040
	CC_FULLOPEN             = 0x00000002
	CC_PREVENTFULLOPEN      = 0x00000004
	CC_RGBINIT              = 0x00000001
	CC_SHOWHELP             = 0x00000008
	CC_SOLIDCOLOR           = 0x00000080
)

CHOOSECOLOR flags

View Source
const (
	PDERR_CREATEICFAILURE  = 0x100A
	PDERR_DEFAULTDIFFERENT = 0x100C
	PDERR_DNDMMISMATCH     = 0x1009
	PDERR_GETDEVMODEFAIL   = 0x1005
	PDERR_INITFAILURE      = 0x1006
	PDERR_LOADDRVFAILURE   = 0x1004
	PDERR_NODEFAULTPRN     = 0x1008
	PDERR_NODEVICES        = 0x1007
	PDERR_PARSEFAILURE     = 0x1002
	PDERR_PRINTERNOTFOUND  = 0x100B
	PDERR_RETDEFFAILURE    = 0x1003
	PDERR_SETUPFAILURE     = 0x1001
)

PrintDlg specific error codes

View Source
const (
	CFERR_MAXLESSTHANMIN = 0x2002
	CFERR_NOFONTS        = 0x2001
)

ChooseFont specific error codes

View Source
const (
	FNERR_BUFFERTOOSMALL  = 0x3003
	FNERR_INVALIDFILENAME = 0x3002
	FNERR_SUBCLASSFAILURE = 0x3001
)

GetOpenFileName and GetSaveFileName specific error codes

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 (
	PD_RESULT_APPLY  = 2
	PD_RESULT_CANCEL = 0
	PD_RESULT_PRINT  = 1
)

PrintDlg[Ex] result actions

View Source
const (
	PD_ALLPAGES                   = 0x00000000
	PD_COLLATE                    = 0x00000010
	PD_CURRENTPAGE                = 0x00400000
	PD_DISABLEPRINTTOFILE         = 0x00080000
	PD_ENABLEPRINTTEMPLATE        = 0x00004000
	PD_ENABLEPRINTTEMPLATEHANDLE  = 0x00010000
	PD_EXCLUSIONFLAGS             = 0x01000000
	PD_HIDEPRINTTOFILE            = 0x00100000
	PD_NOCURRENTPAGE              = 0x00800000
	PD_NOPAGENUMS                 = 0x00000008
	PD_NOSELECTION                = 0x00000004
	PD_NOWARNING                  = 0x00000080
	PD_PAGENUMS                   = 0x00000002
	PD_PRINTTOFILE                = 0x00000020
	PD_RETURNDC                   = 0x00000100
	PD_RETURNDEFAULT              = 0x00000400
	PD_RETURNIC                   = 0x00000200
	PD_SELECTION                  = 0x00000001
	PD_USEDEVMODECOPIES           = 0x00040000
	PD_USEDEVMODECOPIESANDCOLLATE = 0x00040000
	PD_USELARGETEMPLATE           = 0x10000000
)

PrintDlg[Ex] flags

View Source
const (
	GDTR_MIN = 0x0001
	GDTR_MAX = 0x0002
)
View Source
const (
	GDT_ERROR = -1
	GDT_VALID = 0
	GDT_NONE  = 1
)
View Source
const (
	DTM_GETSYSTEMTIME = DTM_FIRST + 1
	DTM_SETSYSTEMTIME = DTM_FIRST + 2
	DTM_GETRANGE      = DTM_FIRST + 3
	DTM_SETRANGE      = DTM_FIRST + 4
	DTM_SETFORMAT     = DTM_FIRST + 50
	DTM_SETMCCOLOR    = DTM_FIRST + 6
	DTM_GETMCCOLOR    = DTM_FIRST + 7
	DTM_GETMONTHCAL   = DTM_FIRST + 8
	DTM_SETMCFONT     = DTM_FIRST + 9
	DTM_GETMCFONT     = DTM_FIRST + 10
)

Messages

View Source
const (
	DTS_UPDOWN                 = 0x0001
	DTS_SHOWNONE               = 0x0002
	DTS_SHORTDATEFORMAT        = 0x0000
	DTS_LONGDATEFORMAT         = 0x0004
	DTS_SHORTDATECENTURYFORMAT = 0x000C
	DTS_TIMEFORMAT             = 0x0009
	DTS_APPCANPARSE            = 0x0010
	DTS_RIGHTALIGN             = 0x0020
)

Styles

View Source
const (
	DTN_DATETIMECHANGE = DTN_FIRST2 - 6
	DTN_USERSTRING     = DTN_FIRST - 5
	DTN_WMKEYDOWN      = DTN_FIRST - 4
	DTN_FORMAT         = DTN_FIRST - 3
	DTN_FORMATQUERY    = DTN_FIRST - 2
	DTN_DROPDOWN       = DTN_FIRST2 - 1
	DTN_CLOSEUP        = DTN_FIRST2
)

Notifications

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
	EM_SETCARETINDEX       = 0x1511
	EM_GETCARETINDEX       = 0x1512
)

Edit messages

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 (
	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 (
	HS_HORIZONTAL = 0
	HS_VERTICAL   = 1
	HS_FDIAGONAL  = 2
	HS_BDIAGONAL  = 3
	HS_CROSS      = 4
	HS_DIAGCROSS  = 5
)

Hatch styles

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 (
	PRF_NONCLIENT  = 0x00000002
	PRF_CLIENT     = 0x00000004
	PRF_ERASEBKGND = 0x00000008
	PRF_CHILDREN   = 0x00000010
	PRF_OWNED      = 0x00000020
)

Print constants

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 (
	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 (
	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 (
	CCHDEVICENAME = 32
	CCHFORMNAME   = 32
)
View Source
const (
	DM_UPDATE      = 1
	DM_COPY        = 2
	DM_PROMPT      = 4
	DM_MODIFY      = 8
	DM_IN_BUFFER   = DM_MODIFY
	DM_IN_PROMPT   = DM_PROMPT
	DM_OUT_BUFFER  = DM_COPY
	DM_OUT_DEFAULT = DM_UPDATE
)
View Source
const (
	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 field selection bits

View Source
const (
	DMORIENT_PORTRAIT  = 1
	DMORIENT_LANDSCAPE = 2
)

Orientation constants

View Source
const (
	DMPAPER_FIRST                         = DMPAPER_LETTER
	DMPAPER_LETTER                        = 1   /* Letter 8 1/2 x 11 in               */
	DMPAPER_LETTERSMALL                   = 2   /* Letter Small 8 1/2 x 11 in         */
	DMPAPER_TABLOID                       = 3   /* Tabloid 11 x 17 in                 */
	DMPAPER_LEDGER                        = 4   /* Ledger 17 x 11 in                  */
	DMPAPER_LEGAL                         = 5   /* Legal 8 1/2 x 14 in                */
	DMPAPER_STATEMENT                     = 6   /* Statement 5 1/2 x 8 1/2 in         */
	DMPAPER_EXECUTIVE                     = 7   /* Executive 7 1/4 x 10 1/2 in        */
	DMPAPER_A3                            = 8   /* A3 297 x 420 mm                    */
	DMPAPER_A4                            = 9   /* A4 210 x 297 mm                    */
	DMPAPER_A4SMALL                       = 10  /* A4 Small 210 x 297 mm              */
	DMPAPER_A5                            = 11  /* A5 148 x 210 mm                    */
	DMPAPER_B4                            = 12  /* B4 (JIS) 250 x 354                 */
	DMPAPER_B5                            = 13  /* B5 (JIS) 182 x 257 mm              */
	DMPAPER_FOLIO                         = 14  /* Folio 8 1/2 x 13 in                */
	DMPAPER_QUARTO                        = 15  /* Quarto 215 x 275 mm                */
	DMPAPER_10X14                         = 16  /* 10x14 in                           */
	DMPAPER_11X17                         = 17  /* 11x17 in                           */
	DMPAPER_NOTE                          = 18  /* Note 8 1/2 x 11 in                 */
	DMPAPER_ENV_9                         = 19  /* Envelope #9 3 7/8 x 8 7/8          */
	DMPAPER_ENV_10                        = 20  /* Envelope #10 4 1/8 x 9 1/2         */
	DMPAPER_ENV_11                        = 21  /* Envelope #11 4 1/2 x 10 3/8        */
	DMPAPER_ENV_12                        = 22  /* Envelope #12 4 \276 x 11           */
	DMPAPER_ENV_14                        = 23  /* Envelope #14 5 x 11 1/2            */
	DMPAPER_CSHEET                        = 24  /* C size sheet                       */
	DMPAPER_DSHEET                        = 25  /* D size sheet                       */
	DMPAPER_ESHEET                        = 26  /* E size sheet                       */
	DMPAPER_ENV_DL                        = 27  /* Envelope DL 110 x 220mm            */
	DMPAPER_ENV_C5                        = 28  /* Envelope C5 162 x 229 mm           */
	DMPAPER_ENV_C3                        = 29  /* Envelope C3  324 x 458 mm          */
	DMPAPER_ENV_C4                        = 30  /* Envelope C4  229 x 324 mm          */
	DMPAPER_ENV_C6                        = 31  /* Envelope C6  114 x 162 mm          */
	DMPAPER_ENV_C65                       = 32  /* Envelope C65 114 x 229 mm          */
	DMPAPER_ENV_B4                        = 33  /* Envelope B4  250 x 353 mm          */
	DMPAPER_ENV_B5                        = 34  /* Envelope B5  176 x 250 mm          */
	DMPAPER_ENV_B6                        = 35  /* Envelope B6  176 x 125 mm          */
	DMPAPER_ENV_ITALY                     = 36  /* Envelope 110 x 230 mm              */
	DMPAPER_ENV_MONARCH                   = 37  /* Envelope Monarch 3.875 x 7.5 in    */
	DMPAPER_ENV_PERSONAL                  = 38  /* 6 3/4 Envelope 3 5/8 x 6 1/2 in    */
	DMPAPER_FANFOLD_US                    = 39  /* US Std Fanfold 14 7/8 x 11 in      */
	DMPAPER_FANFOLD_STD_GERMAN            = 40  /* German Std Fanfold 8 1/2 x 12 in   */
	DMPAPER_FANFOLD_LGL_GERMAN            = 41  /* German Legal Fanfold 8 1/2 x 13 in */
	DMPAPER_ISO_B4                        = 42  /* B4 (ISO) 250 x 353 mm              */
	DMPAPER_JAPANESE_POSTCARD             = 43  /* Japanese Postcard 100 x 148 mm     */
	DMPAPER_9X11                          = 44  /* 9 x 11 in                          */
	DMPAPER_10X11                         = 45  /* 10 x 11 in                         */
	DMPAPER_15X11                         = 46  /* 15 x 11 in                         */
	DMPAPER_ENV_INVITE                    = 47  /* Envelope Invite 220 x 220 mm       */
	DMPAPER_RESERVED_48                   = 48  /* RESERVED--DO NOT USE               */
	DMPAPER_RESERVED_49                   = 49  /* RESERVED--DO NOT USE               */
	DMPAPER_LETTER_EXTRA                  = 50  /* Letter Extra 9 \275 x 12 in        */
	DMPAPER_LEGAL_EXTRA                   = 51  /* Legal Extra 9 \275 x 15 in         */
	DMPAPER_TABLOID_EXTRA                 = 52  /* Tabloid Extra 11.69 x 18 in        */
	DMPAPER_A4_EXTRA                      = 53  /* A4 Extra 9.27 x 12.69 in           */
	DMPAPER_LETTER_TRANSVERSE             = 54  /* Letter Transverse 8 \275 x 11 in   */
	DMPAPER_A4_TRANSVERSE                 = 55  /* A4 Transverse 210 x 297 mm         */
	DMPAPER_LETTER_EXTRA_TRANSVERSE       = 56  /* Letter Extra Transverse 9\275 x 12 in */
	DMPAPER_A_PLUS                        = 57  /* SuperA/SuperA/A4 227 x 356 mm      */
	DMPAPER_B_PLUS                        = 58  /* SuperB/SuperB/A3 305 x 487 mm      */
	DMPAPER_LETTER_PLUS                   = 59  /* Letter Plus 8.5 x 12.69 in         */
	DMPAPER_A4_PLUS                       = 60  /* A4 Plus 210 x 330 mm               */
	DMPAPER_A5_TRANSVERSE                 = 61  /* A5 Transverse 148 x 210 mm         */
	DMPAPER_B5_TRANSVERSE                 = 62  /* B5 (JIS) Transverse 182 x 257 mm   */
	DMPAPER_A3_EXTRA                      = 63  /* A3 Extra 322 x 445 mm              */
	DMPAPER_A5_EXTRA                      = 64  /* A5 Extra 174 x 235 mm              */
	DMPAPER_B5_EXTRA                      = 65  /* B5 (ISO) Extra 201 x 276 mm        */
	DMPAPER_A2                            = 66  /* A2 420 x 594 mm                    */
	DMPAPER_A3_TRANSVERSE                 = 67  /* A3 Transverse 297 x 420 mm         */
	DMPAPER_A3_EXTRA_TRANSVERSE           = 68  /* A3 Extra Transverse 322 x 445 mm   */
	DMPAPER_DBL_JAPANESE_POSTCARD         = 69  /* Japanese Double Postcard 200 x 148 mm */
	DMPAPER_A6                            = 70  /* A6 105 x 148 mm                 */
	DMPAPER_JENV_KAKU2                    = 71  /* Japanese Envelope Kaku #2       */
	DMPAPER_JENV_KAKU3                    = 72  /* Japanese Envelope Kaku #3       */
	DMPAPER_JENV_CHOU3                    = 73  /* Japanese Envelope Chou #3       */
	DMPAPER_JENV_CHOU4                    = 74  /* Japanese Envelope Chou #4       */
	DMPAPER_LETTER_ROTATED                = 75  /* Letter Rotated 11 x 8 1/2 11 in */
	DMPAPER_A3_ROTATED                    = 76  /* A3 Rotated 420 x 297 mm         */
	DMPAPER_A4_ROTATED                    = 77  /* A4 Rotated 297 x 210 mm         */
	DMPAPER_A5_ROTATED                    = 78  /* A5 Rotated 210 x 148 mm         */
	DMPAPER_B4_JIS_ROTATED                = 79  /* B4 (JIS) Rotated 364 x 257 mm   */
	DMPAPER_B5_JIS_ROTATED                = 80  /* B5 (JIS) Rotated 257 x 182 mm   */
	DMPAPER_JAPANESE_POSTCARD_ROTATED     = 81  /* Japanese Postcard Rotated 148 x 100 mm */
	DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED = 82  /* Double Japanese Postcard Rotated 148 x 200 mm */
	DMPAPER_A6_ROTATED                    = 83  /* A6 Rotated 148 x 105 mm         */
	DMPAPER_JENV_KAKU2_ROTATED            = 84  /* Japanese Envelope Kaku #2 Rotated */
	DMPAPER_JENV_KAKU3_ROTATED            = 85  /* Japanese Envelope Kaku #3 Rotated */
	DMPAPER_JENV_CHOU3_ROTATED            = 86  /* Japanese Envelope Chou #3 Rotated */
	DMPAPER_JENV_CHOU4_ROTATED            = 87  /* Japanese Envelope Chou #4 Rotated */
	DMPAPER_B6_JIS                        = 88  /* B6 (JIS) 128 x 182 mm           */
	DMPAPER_B6_JIS_ROTATED                = 89  /* B6 (JIS) Rotated 182 x 128 mm   */
	DMPAPER_12X11                         = 90  /* 12 x 11 in                      */
	DMPAPER_JENV_YOU4                     = 91  /* Japanese Envelope You #4        */
	DMPAPER_JENV_YOU4_ROTATED             = 92  /* Japanese Envelope You #4 Rotated*/
	DMPAPER_P16K                          = 93  /* PRC 16K 146 x 215 mm            */
	DMPAPER_P32K                          = 94  /* PRC 32K 97 x 151 mm             */
	DMPAPER_P32KBIG                       = 95  /* PRC 32K(Big) 97 x 151 mm        */
	DMPAPER_PENV_1                        = 96  /* PRC Envelope #1 102 x 165 mm    */
	DMPAPER_PENV_2                        = 97  /* PRC Envelope #2 102 x 176 mm    */
	DMPAPER_PENV_3                        = 98  /* PRC Envelope #3 125 x 176 mm    */
	DMPAPER_PENV_4                        = 99  /* PRC Envelope #4 110 x 208 mm    */
	DMPAPER_PENV_5                        = 100 /* PRC Envelope #5 110 x 220 mm    */
	DMPAPER_PENV_6                        = 101 /* PRC Envelope #6 120 x 230 mm    */
	DMPAPER_PENV_7                        = 102 /* PRC Envelope #7 160 x 230 mm    */
	DMPAPER_PENV_8                        = 103 /* PRC Envelope #8 120 x 309 mm    */
	DMPAPER_PENV_9                        = 104 /* PRC Envelope #9 229 x 324 mm    */
	DMPAPER_PENV_10                       = 105 /* PRC Envelope #10 324 x 458 mm   */
	DMPAPER_P16K_ROTATED                  = 106 /* PRC 16K Rotated                 */
	DMPAPER_P32K_ROTATED                  = 107 /* PRC 32K Rotated                 */
	DMPAPER_P32KBIG_ROTATED               = 108 /* PRC 32K(Big) Rotated            */
	DMPAPER_PENV_1_ROTATED                = 109 /* PRC Envelope #1 Rotated 165 x 102 mm */
	DMPAPER_PENV_2_ROTATED                = 110 /* PRC Envelope #2 Rotated 176 x 102 mm */
	DMPAPER_PENV_3_ROTATED                = 111 /* PRC Envelope #3 Rotated 176 x 125 mm */
	DMPAPER_PENV_4_ROTATED                = 112 /* PRC Envelope #4 Rotated 208 x 110 mm */
	DMPAPER_PENV_5_ROTATED                = 113 /* PRC Envelope #5 Rotated 220 x 110 mm */
	DMPAPER_PENV_6_ROTATED                = 114 /* PRC Envelope #6 Rotated 230 x 120 mm */
	DMPAPER_PENV_7_ROTATED                = 115 /* PRC Envelope #7 Rotated 230 x 160 mm */
	DMPAPER_PENV_8_ROTATED                = 116 /* PRC Envelope #8 Rotated 309 x 120 mm */
	DMPAPER_PENV_9_ROTATED                = 117 /* PRC Envelope #9 Rotated 324 x 229 mm */
	DMPAPER_PENV_10_ROTATED               = 118 /* PRC Envelope #10 Rotated 458 x 324 mm */
	DMPAPER_LAST                          = DMPAPER_PENV_10_ROTATED
	DMPAPER_USER                          = 256
)

Paper sizes

View Source
const (
	DMBIN_FIRST         = DMBIN_UPPER
	DMBIN_UPPER         = 1
	DMBIN_ONLYONE       = 1
	DMBIN_LOWER         = 2
	DMBIN_MIDDLE        = 3
	DMBIN_MANUAL        = 4
	DMBIN_ENVELOPE      = 5
	DMBIN_ENVMANUAL     = 6
	DMBIN_AUTO          = 7
	DMBIN_TRACTOR       = 8
	DMBIN_SMALLFMT      = 9
	DMBIN_LARGEFMT      = 10
	DMBIN_LARGECAPACITY = 11
	DMBIN_CASSETTE      = 14
	DMBIN_FORMSOURCE    = 15
	DMBIN_LAST          = DMBIN_FORMSOURCE
	DMBIN_USER          = 256
)

Bin constants

View Source
const (
	DMRES_DRAFT  = -1
	DMRES_LOW    = -2
	DMRES_MEDIUM = -3
	DMRES_HIGH   = -4
)

Quality constants

View Source
const (
	DMCOLOR_MONOCHROME = 1
	DMCOLOR_COLOR      = 2
)

Color/monochrome constants

View Source
const (
	DMDUP_SIMPLEX    = 1
	DMDUP_VERTICAL   = 2
	DMDUP_HORIZONTAL = 3
)

Duplex constants

View Source
const (
	DMTT_BITMAP           = 1
	DMTT_DOWNLOAD         = 2
	DMTT_SUBDEV           = 3
	DMTT_DOWNLOAD_OUTLINE = 4
)

TrueType constants

View Source
const (
	DMCOLLATE_FALSE = 0
	DMCOLLATE_TRUE  = 1
)

Collation constants

View Source
const (
	TRANSPARENT = 1
	OPAQUE      = 2
)

Background modes

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 (
	BLACKONWHITE        = 1
	WHITEONBLACK        = 2
	COLORONCOLOR        = 3
	HALFTONE            = 4
	MAXSTRETCHBLTMODE   = 4
	STRETCH_ANDSCANS    = BLACKONWHITE
	STRETCH_ORSCANS     = WHITEONBLACK
	STRETCH_DELETESCANS = COLORONCOLOR
	STRETCH_HALFTONE    = HALFTONE
)

StretchBlt modes

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

Bitmap compression constants

View Source
const (
	DIB_RGB_COLORS = 0
	DIB_PAL_COLORS = 1
)

Bitmap color table usage

View Source
const (
	CLR_INVALID = 0xFFFFFFFF
	CLR_NONE    = CLR_INVALID
	CLR_DEFAULT = 0xFF000000
)
View Source
const (
	/* pixel types */
	PFD_TYPE_RGBA       = 0
	PFD_TYPE_COLORINDEX = 1

	/* layer types */
	PFD_MAIN_PLANE     = 0
	PFD_OVERLAY_PLANE  = 1
	PFD_UNDERLAY_PLANE = (-1)

	/* PIXELFORMATDESCRIPTOR flags */
	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

	/* PIXELFORMATDESCRIPTOR flags for use in ChoosePixelFormat only */
	PFD_DEPTH_DONTCARE        = 0x20000000
	PFD_DOUBLEBUFFER_DONTCARE = 0x40000000
	PFD_STEREO_DONTCARE       = 0x80000000
)
View Source
const (
	GRADIENT_FILL_RECT_H   = 0x00
	GRADIENT_FILL_RECT_V   = 0x01
	GRADIENT_FILL_TRIANGLE = 0x02
)

GradientFill constants

View Source
const (
	RGN_AND  = 1
	RGN_OR   = 2
	RGN_XOR  = 3
	RGN_DIFF = 4
	RGN_COPY = 5
)

Region Combine Modes

View Source
const (
	REGIONERROR   = 0
	NULLREGION    = 1
	SIMPLEREGION  = 2
	COMPLEXREGION = 3
)

Region Types

View Source
const (
	FR_PRIVATE  = 0x10
	FR_NOT_ENUM = 0x20
)

AddFontResourceEx flags

View Source
const (
	HDI_WIDTH      = 0x0001
	HDI_HEIGHT     = HDI_WIDTH
	HDI_TEXT       = 0x0002
	HDI_FORMAT     = 0x0004
	HDI_LPARAM     = 0x0008
	HDI_BITMAP     = 0x0010
	HDI_IMAGE      = 0x0020
	HDI_DI_SETITEM = 0x0040
	HDI_ORDER      = 0x0080
	HDI_FILTER     = 0x0100
	HDI_STATE      = 0x0200
)
View Source
const (
	HDF_LEFT            = 0x0000
	HDF_RIGHT           = 0x0001
	HDF_CENTER          = 0x0002
	HDF_JUSTIFYMASK     = 0x0003
	HDF_RTLREADING      = 0x0004
	HDF_CHECKBOX        = 0x0040
	HDF_CHECKED         = 0x0080
	HDF_FIXEDWIDTH      = 0x0100
	HDF_SORTDOWN        = 0x0200
	HDF_SORTUP          = 0x0400
	HDF_IMAGE           = 0x0800
	HDF_BITMAP_ON_RIGHT = 0x1000
	HDF_BITMAP          = 0x2000
	HDF_STRING          = 0x4000
	HDF_OWNERDRAW       = 0x8000
	HDF_SPLITBUTTON     = 0x1000000
)
View Source
const (
	HDM_FIRST                  = 0x1200
	HDM_GETITEMCOUNT           = HDM_FIRST + 0
	HDM_DELETEITEM             = HDM_FIRST + 2
	HDM_LAYOUT                 = HDM_FIRST + 5
	HDM_HITTEST                = HDM_FIRST + 6
	HDM_GETITEMRECT            = HDM_FIRST + 7
	HDM_SETIMAGELIST           = HDM_FIRST + 8
	HDM_GETIMAGELIST           = HDM_FIRST + 9
	HDM_INSERTITEM             = HDM_FIRST + 10
	HDM_GETITEM                = HDM_FIRST + 11
	HDM_SETITEM                = HDM_FIRST + 12
	HDM_ORDERTOINDEX           = HDM_FIRST + 15
	HDM_CREATEDRAGIMAGE        = HDM_FIRST + 16
	HDM_GETORDERARRAY          = HDM_FIRST + 17
	HDM_SETORDERARRAY          = HDM_FIRST + 18
	HDM_SETHOTDIVIDER          = HDM_FIRST + 19
	HDM_SETBITMAPMARGIN        = HDM_FIRST + 20
	HDM_GETBITMAPMARGIN        = HDM_FIRST + 21
	HDM_SETFILTERCHANGETIMEOUT = HDM_FIRST + 22
	HDM_EDITFILTER             = HDM_FIRST + 23
	HDM_CLEARFILTER            = HDM_FIRST + 24
	HDM_GETITEMDROPDOWNRECT    = HDM_FIRST + 25
	HDM_GETOVERFLOWRECT        = HDM_FIRST + 26
	HDM_GETFOCUSEDITEM         = HDM_FIRST + 27
	HDM_SETFOCUSEDITEM         = HDM_FIRST + 28
	HDM_SETUNICODEFORMAT       = CCM_SETUNICODEFORMAT
	HDM_GETUNICODEFORMAT       = CCM_GETUNICODEFORMAT
)
View Source
const (
	HHT_NOWHERE         = 0x0001
	HHT_ONHEADER        = 0x0002
	HHT_ONDIVIDER       = 0x0004
	HHT_ONDIVOPEN       = 0x0008
	HHT_ONFILTER        = 0x0010
	HHT_ONFILTERBUTTON  = 0x0020
	HHT_ABOVE           = 0x0100
	HHT_BELOW           = 0x0200
	HHT_TORIGHT         = 0x0400
	HHT_TOLEFT          = 0x0800
	HHT_ONITEMSTATEICON = 0x1000
	HHT_ONDROPDOWN      = 0x2000
	HHT_ONOVERFLOW      = 0x4000
)
View Source
const (
	HDN_FIRST              = ^uint32(300)
	HDN_BEGINDRAG          = HDN_FIRST - 10
	HDN_ENDDRAG            = HDN_FIRST - 11
	HDN_FILTERCHANGE       = HDN_FIRST - 12
	HDN_FILTERBTNCLICK     = HDN_FIRST - 13
	HDN_BEGINFILTEREDIT    = HDN_FIRST - 14
	HDN_ENDFILTEREDIT      = HDN_FIRST - 15
	HDN_ITEMSTATEICONCLICK = HDN_FIRST - 16
	HDN_ITEMKEYDOWN        = HDN_FIRST - 17
	HDN_DROPDOWN           = HDN_FIRST - 18
	HDN_OVERFLOWCLICK      = HDN_FIRST - 19
	HDN_ITEMCHANGING       = HDN_FIRST - 20
	HDN_ITEMCHANGED        = HDN_FIRST - 21
	HDN_ITEMCLICK          = HDN_FIRST - 22
	HDN_ITEMDBLCLICK       = HDN_FIRST - 23
	HDN_DIVIDERDBLCLICK    = HDN_FIRST - 25
	HDN_BEGINTRACK         = HDN_FIRST - 26
	HDN_ENDTRACK           = HDN_FIRST - 27
	HDN_TRACK              = HDN_FIRST - 28
	HDN_GETDISPINFO        = HDN_FIRST - 29
)
View Source
const (
	ERROR_SUCCESS             = 0
	ERROR_INVALID_FUNCTION    = 1
	ERROR_FILE_NOT_FOUND      = 2
	ERROR_INVALID_PARAMETER   = 87
	ERROR_INSUFFICIENT_BUFFER = 122
	ERROR_MORE_DATA           = 234
)

Error codes

View Source
const (
	GHND          = 0x0042
	GMEM_FIXED    = 0x0000
	GMEM_MOVEABLE = 0x0002
	GMEM_ZEROINIT = 0x0040
	GPTR          = GMEM_FIXED | GMEM_ZEROINIT
)

GlobalAlloc flags

View Source
const (
	LBS_NOTIFY            = 0x0001
	LBS_SORT              = 0x0002
	LBS_NOREDRAW          = 0x0004
	LBS_MULTIPLESEL       = 0x0008
	LBS_OWNERDRAWFIXED    = 0x0010
	LBS_OWNERDRAWVARIABLE = 0x0020
	LBS_HASSTRINGS        = 0x0040
	LBS_USETABSTOPS       = 0x0080
	LBS_NOINTEGRALHEIGHT  = 0x0100
	LBS_MULTICOLUMN       = 0x0200
	LBS_WANTKEYBOARDINPUT = 0x0400
	LBS_EXTENDEDSEL       = 0x0800
	LBS_DISABLENOSCROLL   = 0x1000
	LBS_NODATA            = 0x2000
	LBS_NOSEL             = 0x4000
	LBS_COMBOBOX          = 0x8000
	LBS_STANDARD          = LBS_NOTIFY | LBS_SORT | WS_BORDER | WS_VSCROLL
)

ListBox style

View Source
const (
	LB_ADDSTRING           = 0x0180
	LB_INSERTSTRING        = 0x0181
	LB_DELETESTRING        = 0x0182
	LB_SELITEMRANGEEX      = 0x0183
	LB_RESETCONTENT        = 0x0184
	LB_SETSEL              = 0x0185
	LB_SETCURSEL           = 0x0186
	LB_GETSEL              = 0x0187
	LB_GETCURSEL           = 0x0188
	LB_GETTEXT             = 0x0189
	LB_GETTEXTLEN          = 0x018A
	LB_GETCOUNT            = 0x018B
	LB_SELECTSTRING        = 0x018C
	LB_DIR                 = 0x018D
	LB_GETTOPINDEX         = 0x018E
	LB_FINDSTRING          = 0x018F
	LB_GETSELCOUNT         = 0x0190
	LB_GETSELITEMS         = 0x0191
	LB_SETTABSTOPS         = 0x0192
	LB_GETHORIZONTALEXTENT = 0x0193
	LB_SETHORIZONTALEXTENT = 0x0194
	LB_SETCOLUMNWIDTH      = 0x0195
	LB_ADDFILE             = 0x0196
	LB_SETTOPINDEX         = 0x0197
	LB_GETITEMRECT         = 0x0198
	LB_GETITEMDATA         = 0x0199
	LB_SETITEMDATA         = 0x019A
	LB_SELITEMRANGE        = 0x019B
	LB_SETANCHORINDEX      = 0x019C
	LB_GETANCHORINDEX      = 0x019D
	LB_SETCARETINDEX       = 0x019E
	LB_GETCARETINDEX       = 0x019F
	LB_SETITEMHEIGHT       = 0x01A0
	LB_GETITEMHEIGHT       = 0x01A1
	LB_FINDSTRINGEXACT     = 0x01A2
	LB_SETLOCALE           = 0x01A5
	LB_GETLOCALE           = 0x01A6
	LB_SETCOUNT            = 0x01A7
	LB_INITSTORAGE         = 0x01A8
	LB_ITEMFROMPOINT       = 0x01A9
	LB_MULTIPLEADDSTRING   = 0x01B1
)

ListBox messages

View Source
const (
	LBN_ERRSPACE  = -2
	LBN_SELCHANGE = 1
	LBN_DBLCLK    = 2
	LBN_SELCANCEL = 3
	LBN_SETFOCUS  = 4
	LBN_KILLFOCUS = 5
)

Listbox Notification Codes

View Source
const (
	LB_ERR      = -1
	LB_ERRSPACE = -2
)
View Source
const (
	LVSCW_AUTOSIZE           = ^uintptr(0)
	LVSCW_AUTOSIZE_USEHEADER = ^uintptr(1)
)
View Source
const (
	LVSICF_NOINVALIDATEALL = 0x0001
	LVSICF_NOSCROLL        = 0x0002
)

LVM_SETITEMCOUNT flags

View Source
const (
	LVM_FIRST                    = 0x1000
	LVM_SETBKCOLOR               = LVM_FIRST + 1
	LVM_SETIMAGELIST             = LVM_FIRST + 3
	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_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 = ^uint32(99) // -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_BEGINLABELEDIT    = LVN_FIRST - 75
	LVN_ENDLABELEDIT      = LVN_FIRST - 76
	LVN_COLUMNCLICK       = LVN_FIRST - 8
	LVN_BEGINDRAG         = LVN_FIRST - 9
	LVN_BEGINRDRAG        = LVN_FIRST - 11
	LVN_ODCACHEHINT       = LVN_FIRST - 13
	LVN_ODFINDITEM        = 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 (
	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 (
	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_STRING       = MF_STRING
	MFT_BITMAP       = MF_BITMAP
	MFT_MENUBARBREAK = MF_MENUBARBREAK
	MFT_MENUBREAK    = MF_MENUBREAK
	MFT_OWNERDRAW    = MF_OWNERDRAW
	MFT_RADIOCHECK   = 0x00000200
	MFT_SEPARATOR    = MF_SEPARATOR
	MFT_RIGHTORDER   = 0x00002000
	MFT_RIGHTJUSTIFY = MF_RIGHTJUSTIFY
)

Constants for MENUITEMINFO.fType

View Source
const (
	MFS_GRAYED    = 0x00000003
	MFS_DISABLED  = MFS_GRAYED
	MFS_CHECKED   = MF_CHECKED
	MFS_HILITE    = MF_HILITE
	MFS_ENABLED   = MF_ENABLED
	MFS_UNCHECKED = MF_UNCHECKED
	MFS_UNHILITE  = MF_UNHILITE
	MFS_DEFAULT   = MF_DEFAULT
)

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 (
	// Menu flags for Add/Check/EnableMenuItem()
	MF_INSERT = 0x00000000
	MF_CHANGE = 0x00000080
	MF_APPEND = 0x00000100
	MF_DELETE = 0x00000200
	MF_REMOVE = 0x00001000

	MF_BYCOMMAND  = 0x00000000
	MF_BYPOSITION = 0x00000400

	MF_SEPARATOR = 0x00000800

	MF_ENABLED  = 0x00000000
	MF_GRAYED   = 0x00000001
	MF_DISABLED = 0x00000002

	MF_UNCHECKED       = 0x00000000
	MF_CHECKED         = 0x00000008
	MF_USECHECKBITMAPS = 0x00000200

	MF_STRING    = 0x00000000
	MF_BITMAP    = 0x00000004
	MF_OWNERDRAW = 0x00000100

	MF_POPUP        = 0x00000010
	MF_MENUBARBREAK = 0x00000020
	MF_MENUBREAK    = 0x00000040

	MF_UNHILITE = 0x00000000
	MF_HILITE   = 0x00000080

	MF_DEFAULT      = 0x00001000
	MF_SYSMENU      = 0x00002000
	MF_HELP         = 0x00004000
	MF_RIGHTJUSTIFY = 0x00004000

	MF_MOUSESELECT = 0x00008000
)
View Source
const (
	CLSCTX_INPROC_SERVER          = 0x1
	CLSCTX_INPROC_HANDLER         = 0x2
	CLSCTX_LOCAL_SERVER           = 0x4
	CLSCTX_INPROC_SERVER16        = 0x8
	CLSCTX_REMOTE_SERVER          = 0x10
	CLSCTX_INPROC_HANDLER16       = 0x20
	CLSCTX_RESERVED1              = 0x40
	CLSCTX_RESERVED2              = 0x80
	CLSCTX_RESERVED3              = 0x100
	CLSCTX_RESERVED4              = 0x200
	CLSCTX_NO_CODE_DOWNLOAD       = 0x400
	CLSCTX_RESERVED5              = 0x800
	CLSCTX_NO_CUSTOM_MARSHAL      = 0x1000
	CLSCTX_ENABLE_CODE_DOWNLOAD   = 0x2000
	CLSCTX_NO_FAILURE_LOG         = 0x4000
	CLSCTX_DISABLE_AAA            = 0x8000
	CLSCTX_ENABLE_AAA             = 0x10000
	CLSCTX_FROM_DEFAULT_CONTEXT   = 0x20000
	CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000
	CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000
	CLSCTX_ENABLE_CLOAKING        = 0x100000
	CLSCTX_PS_DLL                 = 0x80000000
	CLSCTX_INPROC                 = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER
	CLSCTX_ALL                    = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER
	CLSCTX_SERVER                 = CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER
)
View Source
const (
	COINIT_APARTMENTTHREADED = 0x2 // Apartment model
	COINIT_MULTITHREADED     = 0x0 // OLE calls objects on any thread.
	COINIT_DISABLE_OLE1DDE   = 0x4 // Don't use DDE for Ole1 support.
	COINIT_SPEED_OVER_MEMORY = 0x8 // Trade memory for speed.
)
View Source
const (
	OLEIVERB_PRIMARY          = 0
	OLEIVERB_SHOW             = -1
	OLEIVERB_OPEN             = -2
	OLEIVERB_HIDE             = -3
	OLEIVERB_UIACTIVATE       = -4
	OLEIVERB_INPLACEACTIVATE  = -5
	OLEIVERB_DISCARDUNDOSTATE = -6
)

Verbs for IOleObject.DoVerb

View Source
const (
	OLECLOSE_SAVEIFDIRTY = 0
	OLECLOSE_NOSAVE      = 1
	OLECLOSE_PROMPTSAVE  = 2
)

OLECLOSE constants

View Source
const (
	ANNO_THIS      = AnnoScope(0)
	ANNO_CONTAINER = AnnoScope(1)
)
View Source
const (
	STATE_SYSTEM_NORMAL          = 0
	STATE_SYSTEM_UNAVAILABLE     = 0x1
	STATE_SYSTEM_SELECTED        = 0x2
	STATE_SYSTEM_FOCUSED         = 0x4
	STATE_SYSTEM_PRESSED         = 0x8
	STATE_SYSTEM_CHECKED         = 0x10
	STATE_SYSTEM_MIXED           = 0x20
	STATE_SYSTEM_INDETERMINATE   = STATE_SYSTEM_MIXED
	STATE_SYSTEM_READONLY        = 0x40
	STATE_SYSTEM_HOTTRACKED      = 0x80
	STATE_SYSTEM_DEFAULT         = 0x100
	STATE_SYSTEM_EXPANDED        = 0x200
	STATE_SYSTEM_COLLAPSED       = 0x400
	STATE_SYSTEM_BUSY            = 0x800
	STATE_SYSTEM_FLOATING        = 0x1000
	STATE_SYSTEM_MARQUEED        = 0x2000
	STATE_SYSTEM_ANIMATED        = 0x4000
	STATE_SYSTEM_INVISIBLE       = 0x8000
	STATE_SYSTEM_OFFSCREEN       = 0x10000
	STATE_SYSTEM_SIZEABLE        = 0x20000
	STATE_SYSTEM_MOVEABLE        = 0x40000
	STATE_SYSTEM_SELFVOICING     = 0x80000
	STATE_SYSTEM_FOCUSABLE       = 0x100000
	STATE_SYSTEM_SELECTABLE      = 0x200000
	STATE_SYSTEM_LINKED          = 0x400000
	STATE_SYSTEM_TRAVERSED       = 0x800000
	STATE_SYSTEM_MULTISELECTABLE = 0x1000000
	STATE_SYSTEM_EXTSELECTABLE   = 0x2000000
	STATE_SYSTEM_ALERT_LOW       = 0x4000000
	STATE_SYSTEM_ALERT_MEDIUM    = 0x8000000
	STATE_SYSTEM_ALERT_HIGH      = 0x10000000
	STATE_SYSTEM_PROTECTED       = 0x20000000
	STATE_SYSTEM_HASPOPUP        = 0x40000000
	STATE_SYSTEM_VALID           = 0x7fffffff
)
View Source
const (
	ROLE_SYSTEM_TITLEBAR           = 0x1
	ROLE_SYSTEM_MENUBAR            = 0x2
	ROLE_SYSTEM_SCROLLBAR          = 0x3
	ROLE_SYSTEM_GRIP               = 0x4
	ROLE_SYSTEM_SOUND              = 0x5
	ROLE_SYSTEM_CURSOR             = 0x6
	ROLE_SYSTEM_CARET              = 0x7
	ROLE_SYSTEM_ALERT              = 0x8
	ROLE_SYSTEM_WINDOW             = 0x9
	ROLE_SYSTEM_CLIENT             = 0xa
	ROLE_SYSTEM_MENUPOPUP          = 0xb
	ROLE_SYSTEM_MENUITEM           = 0xc
	ROLE_SYSTEM_TOOLTIP            = 0xd
	ROLE_SYSTEM_APPLICATION        = 0xe
	ROLE_SYSTEM_DOCUMENT           = 0xf
	ROLE_SYSTEM_PANE               = 0x10
	ROLE_SYSTEM_CHART              = 0x11
	ROLE_SYSTEM_DIALOG             = 0x12
	ROLE_SYSTEM_BORDER             = 0x13
	ROLE_SYSTEM_GROUPING           = 0x14
	ROLE_SYSTEM_SEPARATOR          = 0x15
	ROLE_SYSTEM_TOOLBAR            = 0x16
	ROLE_SYSTEM_STATUSBAR          = 0x17
	ROLE_SYSTEM_TABLE              = 0x18
	ROLE_SYSTEM_COLUMNHEADER       = 0x19
	ROLE_SYSTEM_ROWHEADER          = 0x1a
	ROLE_SYSTEM_COLUMN             = 0x1b
	ROLE_SYSTEM_ROW                = 0x1c
	ROLE_SYSTEM_CELL               = 0x1d
	ROLE_SYSTEM_LINK               = 0x1e
	ROLE_SYSTEM_HELPBALLOON        = 0x1f
	ROLE_SYSTEM_CHARACTER          = 0x20
	ROLE_SYSTEM_LIST               = 0x21
	ROLE_SYSTEM_LISTITEM           = 0x22
	ROLE_SYSTEM_OUTLINE            = 0x23
	ROLE_SYSTEM_OUTLINEITEM        = 0x24
	ROLE_SYSTEM_PAGETAB            = 0x25
	ROLE_SYSTEM_PROPERTYPAGE       = 0x26
	ROLE_SYSTEM_INDICATOR          = 0x27
	ROLE_SYSTEM_GRAPHIC            = 0x28
	ROLE_SYSTEM_STATICTEXT         = 0x29
	ROLE_SYSTEM_TEXT               = 0x2a
	ROLE_SYSTEM_PUSHBUTTON         = 0x2b
	ROLE_SYSTEM_CHECKBUTTON        = 0x2c
	ROLE_SYSTEM_RADIOBUTTON        = 0x2d
	ROLE_SYSTEM_COMBOBOX           = 0x2e
	ROLE_SYSTEM_DROPLIST           = 0x2f
	ROLE_SYSTEM_PROGRESSBAR        = 0x30
	ROLE_SYSTEM_DIAL               = 0x31
	ROLE_SYSTEM_HOTKEYFIELD        = 0x32
	ROLE_SYSTEM_SLIDER             = 0x33
	ROLE_SYSTEM_SPINBUTTON         = 0x34
	ROLE_SYSTEM_DIAGRAM            = 0x35
	ROLE_SYSTEM_ANIMATION          = 0x36
	ROLE_SYSTEM_EQUATION           = 0x37
	ROLE_SYSTEM_BUTTONDROPDOWN     = 0x38
	ROLE_SYSTEM_BUTTONMENU         = 0x39
	ROLE_SYSTEM_BUTTONDROPDOWNGRID = 0x3a
	ROLE_SYSTEM_WHITESPACE         = 0x3b
	ROLE_SYSTEM_PAGETABLIST        = 0x3c
	ROLE_SYSTEM_CLOCK              = 0x3d
	ROLE_SYSTEM_SPLITBUTTON        = 0x3e
	ROLE_SYSTEM_IPADDRESS          = 0x3f
	ROLE_SYSTEM_OUTLINEBUTTON      = 0x40
)
View Source
const (
	CSC_UPDATECOMMANDS  = ^0x0
	CSC_NAVIGATEFORWARD = 0x1
	CSC_NAVIGATEBACK    = 0x2
)
View Source
const (
	WGL_SWAP_MAIN_PLANE = (1 << 0)
	WGL_SWAP_OVERLAY1   = (1 << 1)
	WGL_SWAP_OVERLAY2   = (1 << 2)
	WGL_SWAP_OVERLAY3   = (1 << 3)
	WGL_SWAP_OVERLAY4   = (1 << 4)
	WGL_SWAP_OVERLAY5   = (1 << 5)
	WGL_SWAP_OVERLAY6   = (1 << 6)
	WGL_SWAP_OVERLAY7   = (1 << 7)
	WGL_SWAP_OVERLAY8   = (1 << 8)
	WGL_SWAP_OVERLAY9   = (1 << 9)
	WGL_SWAP_OVERLAY10  = (1 << 10)
	WGL_SWAP_OVERLAY11  = (1 << 11)
	WGL_SWAP_OVERLAY12  = (1 << 12)
	WGL_SWAP_OVERLAY13  = (1 << 13)
	WGL_SWAP_OVERLAY14  = (1 << 14)
	WGL_SWAP_OVERLAY15  = (1 << 15)
	WGL_SWAP_UNDERLAY1  = (1 << 16)
	WGL_SWAP_UNDERLAY2  = (1 << 17)
	WGL_SWAP_UNDERLAY3  = (1 << 18)
	WGL_SWAP_UNDERLAY4  = (1 << 19)
	WGL_SWAP_UNDERLAY5  = (1 << 20)
	WGL_SWAP_UNDERLAY6  = (1 << 21)
	WGL_SWAP_UNDERLAY7  = (1 << 22)
	WGL_SWAP_UNDERLAY8  = (1 << 23)
	WGL_SWAP_UNDERLAY9  = (1 << 24)
	WGL_SWAP_UNDERLAY10 = (1 << 25)
	WGL_SWAP_UNDERLAY11 = (1 << 26)
	WGL_SWAP_UNDERLAY12 = (1 << 27)
	WGL_SWAP_UNDERLAY13 = (1 << 28)
	WGL_SWAP_UNDERLAY14 = (1 << 29)
	WGL_SWAP_UNDERLAY15 = (1 << 30)
)

for second parameter of WglSwapLayerBuffers

View Source
const (
	PDH_CSTATUS_VALID_DATA                     = 0x00000000 // The returned data is valid.
	PDH_CSTATUS_NEW_DATA                       = 0x00000001 // The return data value is valid and different from the last sample.
	PDH_CSTATUS_NO_MACHINE                     = 0x800007D0 // Unable to connect to the specified computer, or the computer is offline.
	PDH_CSTATUS_NO_INSTANCE                    = 0x800007D1
	PDH_MORE_DATA                              = 0x800007D2 // The PdhGetFormattedCounterArray* function can return this if there's 'more data to be displayed'.
	PDH_CSTATUS_ITEM_NOT_VALIDATED             = 0x800007D3
	PDH_RETRY                                  = 0x800007D4
	PDH_NO_DATA                                = 0x800007D5 // The query does not currently contain any counters (for example, limited access)
	PDH_CALC_NEGATIVE_DENOMINATOR              = 0x800007D6
	PDH_CALC_NEGATIVE_TIMEBASE                 = 0x800007D7
	PDH_CALC_NEGATIVE_VALUE                    = 0x800007D8
	PDH_DIALOG_CANCELLED                       = 0x800007D9
	PDH_END_OF_LOG_FILE                        = 0x800007DA
	PDH_ASYNC_QUERY_TIMEOUT                    = 0x800007DB
	PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE = 0x800007DC
	PDH_CSTATUS_NO_OBJECT                      = 0xC0000BB8
	PDH_CSTATUS_NO_COUNTER                     = 0xC0000BB9 // The specified counter could not be found.
	PDH_CSTATUS_INVALID_DATA                   = 0xC0000BBA // The counter was successfully found, but the data returned is not valid.
	PDH_MEMORY_ALLOCATION_FAILURE              = 0xC0000BBB
	PDH_INVALID_HANDLE                         = 0xC0000BBC
	PDH_INVALID_ARGUMENT                       = 0xC0000BBD // Required argument is missing or incorrect.
	PDH_FUNCTION_NOT_FOUND                     = 0xC0000BBE
	PDH_CSTATUS_NO_COUNTERNAME                 = 0xC0000BBF
	PDH_CSTATUS_BAD_COUNTERNAME                = 0xC0000BC0 // Unable to parse the counter path. Check the format and syntax of the specified path.
	PDH_INVALID_BUFFER                         = 0xC0000BC1
	PDH_INSUFFICIENT_BUFFER                    = 0xC0000BC2
	PDH_CANNOT_CONNECT_MACHINE                 = 0xC0000BC3
	PDH_INVALID_PATH                           = 0xC0000BC4
	PDH_INVALID_INSTANCE                       = 0xC0000BC5
	PDH_INVALID_DATA                           = 0xC0000BC6 // specified counter does not contain valid data or a successful status code.
	PDH_NO_DIALOG_DATA                         = 0xC0000BC7
	PDH_CANNOT_READ_NAME_STRINGS               = 0xC0000BC8
	PDH_LOG_FILE_CREATE_ERROR                  = 0xC0000BC9
	PDH_LOG_FILE_OPEN_ERROR                    = 0xC0000BCA
	PDH_LOG_TYPE_NOT_FOUND                     = 0xC0000BCB
	PDH_NO_MORE_DATA                           = 0xC0000BCC
	PDH_ENTRY_NOT_IN_LOG_FILE                  = 0xC0000BCD
	PDH_DATA_SOURCE_IS_LOG_FILE                = 0xC0000BCE
	PDH_DATA_SOURCE_IS_REAL_TIME               = 0xC0000BCF
	PDH_UNABLE_READ_LOG_HEADER                 = 0xC0000BD0
	PDH_FILE_NOT_FOUND                         = 0xC0000BD1
	PDH_FILE_ALREADY_EXISTS                    = 0xC0000BD2
	PDH_NOT_IMPLEMENTED                        = 0xC0000BD3
	PDH_STRING_NOT_FOUND                       = 0xC0000BD4
	PDH_UNABLE_MAP_NAME_FILES                  = 0x80000BD5
	PDH_UNKNOWN_LOG_FORMAT                     = 0xC0000BD6
	PDH_UNKNOWN_LOGSVC_COMMAND                 = 0xC0000BD7
	PDH_LOGSVC_QUERY_NOT_FOUND                 = 0xC0000BD8
	PDH_LOGSVC_NOT_OPENED                      = 0xC0000BD9
	PDH_WBEM_ERROR                             = 0xC0000BDA
	PDH_ACCESS_DENIED                          = 0xC0000BDB
	PDH_LOG_FILE_TOO_SMALL                     = 0xC0000BDC
	PDH_INVALID_DATASOURCE                     = 0xC0000BDD
	PDH_INVALID_SQLDB                          = 0xC0000BDE
	PDH_NO_COUNTERS                            = 0xC0000BDF
	PDH_SQL_ALLOC_FAILED                       = 0xC0000BE0
	PDH_SQL_ALLOCCON_FAILED                    = 0xC0000BE1
	PDH_SQL_EXEC_DIRECT_FAILED                 = 0xC0000BE2
	PDH_SQL_FETCH_FAILED                       = 0xC0000BE3
	PDH_SQL_ROWCOUNT_FAILED                    = 0xC0000BE4
	PDH_SQL_MORE_RESULTS_FAILED                = 0xC0000BE5
	PDH_SQL_CONNECT_FAILED                     = 0xC0000BE6
	PDH_SQL_BIND_FAILED                        = 0xC0000BE7
	PDH_CANNOT_CONNECT_WMI_SERVER              = 0xC0000BE8
	PDH_PLA_COLLECTION_ALREADY_RUNNING         = 0xC0000BE9
	PDH_PLA_ERROR_SCHEDULE_OVERLAP             = 0xC0000BEA
	PDH_PLA_COLLECTION_NOT_FOUND               = 0xC0000BEB
	PDH_PLA_ERROR_SCHEDULE_ELAPSED             = 0xC0000BEC
	PDH_PLA_ERROR_NOSTART                      = 0xC0000BED
	PDH_PLA_ERROR_ALREADY_EXISTS               = 0xC0000BEE
	PDH_PLA_ERROR_TYPE_MISMATCH                = 0xC0000BEF
	PDH_PLA_ERROR_FILEPATH                     = 0xC0000BF0
	PDH_PLA_SERVICE_ERROR                      = 0xC0000BF1
	PDH_PLA_VALIDATION_ERROR                   = 0xC0000BF2
	PDH_PLA_VALIDATION_WARNING                 = 0x80000BF3
	PDH_PLA_ERROR_NAME_TOO_LONG                = 0xC0000BF4
	PDH_INVALID_SQL_LOG_FORMAT                 = 0xC0000BF5
	PDH_COUNTER_ALREADY_IN_QUERY               = 0xC0000BF6
	PDH_BINARY_LOG_CORRUPT                     = 0xC0000BF7
	PDH_LOG_SAMPLE_TOO_SMALL                   = 0xC0000BF8
	PDH_OS_LATER_VERSION                       = 0xC0000BF9
	PDH_OS_EARLIER_VERSION                     = 0xC0000BFA
	PDH_INCORRECT_APPEND_TIME                  = 0xC0000BFB
	PDH_UNMATCHED_APPEND_COUNTER               = 0xC0000BFC
	PDH_SQL_ALTER_DETAIL_FAILED                = 0xC0000BFD
	PDH_QUERY_PERF_DATA_TIMEOUT                = 0xC0000BFE
)

PDH error codes, which can be returned by all Pdh* functions. Taken from mingw-w64 pdhmsg.h

View Source
const (
	PDH_FMT_RAW          = 0x00000010
	PDH_FMT_ANSI         = 0x00000020
	PDH_FMT_UNICODE      = 0x00000040
	PDH_FMT_LONG         = 0x00000100 // Return data as a long int.
	PDH_FMT_DOUBLE       = 0x00000200 // Return data as a double precision floating point real.
	PDH_FMT_LARGE        = 0x00000400 // Return data as a 64 bit integer.
	PDH_FMT_NOSCALE      = 0x00001000 // can be OR-ed: Do not apply the counter's default scaling factor.
	PDH_FMT_1000         = 0x00002000 // can be OR-ed: multiply the actual value by 1,000.
	PDH_FMT_NODATA       = 0x00004000 // can be OR-ed: unknown what this is for, MSDN says nothing.
	PDH_FMT_NOCAP100     = 0x00008000 // can be OR-ed: do not cap values > 100.
	PERF_DETAIL_COSTLY   = 0x00010000
	PERF_DETAIL_STANDARD = 0x0000FFFF
)

Formatting options for GetFormattedCounterValue().

View Source
const (
	// NOTE:  MSFTEDIT.DLL only registers MSFTEDIT_CLASS.  If an application wants
	// to use the following RichEdit classes, it needs to load riched20.dll.
	// Otherwise, CreateWindow with RICHEDIT_CLASS will fail.
	// This also applies to any dialog that uses RICHEDIT_CLASS
	// RichEdit 2.0 Window Class
	MSFTEDIT_CLASS = "RICHEDIT50W"
	RICHEDIT_CLASS = "RichEdit20W"
)
View Source
const (
	EM_CANPASTE           = WM_USER + 50
	EM_DISPLAYBAND        = WM_USER + 51
	EM_EXGETSEL           = WM_USER + 52
	EM_EXLIMITTEXT        = WM_USER + 53
	EM_EXLINEFROMCHAR     = WM_USER + 54
	EM_EXSETSEL           = WM_USER + 55
	EM_FINDTEXT           = WM_USER + 56
	EM_FORMATRANGE        = WM_USER + 57
	EM_GETCHARFORMAT      = WM_USER + 58
	EM_GETEVENTMASK       = WM_USER + 59
	EM_GETOLEINTERFACE    = WM_USER + 60
	EM_GETPARAFORMAT      = WM_USER + 61
	EM_GETSELTEXT         = WM_USER + 62
	EM_HIDESELECTION      = WM_USER + 63
	EM_PASTESPECIAL       = WM_USER + 64
	EM_REQUESTRESIZE      = WM_USER + 65
	EM_SELECTIONTYPE      = WM_USER + 66
	EM_SETBKGNDCOLOR      = WM_USER + 67
	EM_SETCHARFORMAT      = WM_USER + 68
	EM_SETEVENTMASK       = WM_USER + 69
	EM_SETOLECALLBACK     = WM_USER + 70
	EM_SETPARAFORMAT      = WM_USER + 71
	EM_SETTARGETDEVICE    = WM_USER + 72
	EM_STREAMIN           = WM_USER + 73
	EM_STREAMOUT          = WM_USER + 74
	EM_GETTEXTRANGE       = WM_USER + 75
	EM_FINDWORDBREAK      = WM_USER + 76
	EM_SETOPTIONS         = WM_USER + 77
	EM_GETOPTIONS         = WM_USER + 78
	EM_FINDTEXTEX         = WM_USER + 79
	EM_GETWORDBREAKPROCEX = WM_USER + 80
	EM_SETWORDBREAKPROCEX = WM_USER + 81
)

RichEdit messages

View Source
const (
	EM_SETUNDOLIMIT    = WM_USER + 82
	EM_REDO            = WM_USER + 84
	EM_CANREDO         = WM_USER + 85
	EM_GETUNDONAME     = WM_USER + 86
	EM_GETREDONAME     = WM_USER + 87
	EM_STOPGROUPTYPING = WM_USER + 88

	EM_SETTEXTMODE = WM_USER + 89
	EM_GETTEXTMODE = WM_USER + 90
)

RichEdit 2.0 messages

View Source
const (
	TM_PLAINTEXT       TEXTMODE = 1
	TM_RICHTEXT                 = 2 // Default behavior
	TM_SINGLELEVELUNDO          = 4
	TM_MULTILEVELUNDO           = 8 // Default behavior
	TM_SINGLECODEPAGE           = 16
	TM_MULTICODEPAGE            = 32 // Default behavior
)
View Source
const (
	AURL_ENABLEURL          = 1
	AURL_ENABLEEMAILADDR    = 2
	AURL_ENABLETELNO        = 4
	AURL_ENABLEEAURLS       = 8
	AURL_ENABLEDRIVELETTERS = 16
	AURL_DISABLEMIXEDLGC    = 32 // Disable mixed Latin Greek Cyrillic IDNs
)

RichEdit 8.0 messages

View Source
const (
	EM_GETAUTOURLDETECT = WM_USER + 92
	EM_SETPALETTE       = WM_USER + 93
	EM_GETTEXTEX        = WM_USER + 94
	EM_GETTEXTLENGTHEX  = WM_USER + 95
	EM_SHOWSCROLLBAR    = WM_USER + 96
	EM_SETTEXTEX        = WM_USER + 97
)
View Source
const (
	EM_SETPUNCTUATION  = WM_USER + 100
	EM_GETPUNCTUATION  = WM_USER + 101
	EM_SETWORDWRAPMODE = WM_USER + 102
	EM_GETWORDWRAPMODE = WM_USER + 103
	EM_SETIMECOLOR     = WM_USER + 104
	EM_GETIMECOLOR     = WM_USER + 105
	EM_SETIMEOPTIONS   = WM_USER + 106
	EM_GETIMEOPTIONS   = WM_USER + 107
	EM_CONVPOSITION    = WM_USER + 108
)

East Asia specific messages

View Source
const (
	EM_SETLANGOPTIONS = WM_USER + 120
	EM_GETLANGOPTIONS = WM_USER + 121
	EM_GETIMECOMPMODE = WM_USER + 122

	EM_FINDTEXTW   = WM_USER + 123
	EM_FINDTEXTEXW = WM_USER + 124
)
View Source
const (
	EM_RECONVERSION   = WM_USER + 125
	EM_SETIMEMODEBIAS = WM_USER + 126
	EM_GETIMEMODEBIAS = WM_USER + 127
)

RE3.0 FE messages

View Source
const (
	EM_SETBIDIOPTIONS = WM_USER + 200
	EM_GETBIDIOPTIONS = WM_USER + 201

	EM_SETTYPOGRAPHYOPTIONS = WM_USER + 202
	EM_GETTYPOGRAPHYOPTIONS = WM_USER + 203
)

BiDi specific messages

View Source
const (
	EM_SETEDITSTYLE = WM_USER + 204
	EM_GETEDITSTYLE = WM_USER + 205
)

Extended edit style specific messages

View Source
const (
	SES_EMULATESYSEDIT    = 1
	SES_BEEPONMAXTEXT     = 2
	SES_EXTENDBACKCOLOR   = 4
	SES_MAPCPS            = 8 // Obsolete (never used)
	SES_HYPERLINKTOOLTIPS = 8
	SES_EMULATE10         = 16 // Obsolete (never used)
	SES_DEFAULTLATINLIGA  = 16
	SES_USECRLF           = 32 // Obsolete (never used)
	SES_NOFOCUSLINKNOTIFY = 32
	SES_USEAIMM           = 64
	SES_NOIME             = 128

	SES_ALLOWBEEPS         = 256
	SES_UPPERCASE          = 512
	SES_LOWERCASE          = 1024
	SES_NOINPUTSEQUENCECHK = 2048
	SES_BIDI               = 4096
	SES_SCROLLONKILLFOCUS  = 8192
	SES_XLTCRCRLFTOCR      = 16384
	SES_DRAFTMODE          = 32768

	SES_USECTF               = 0x00010000
	SES_HIDEGRIDLINES        = 0x00020000
	SES_USEATFONT            = 0x00040000
	SES_CUSTOMLOOK           = 0x00080000
	SES_LBSCROLLNOTIFY       = 0x00100000
	SES_CTFALLOWEMBED        = 0x00200000
	SES_CTFALLOWSMARTTAG     = 0x00400000
	SES_CTFALLOWPROOFING     = 0x00800000
	SES_LOGICALCARET         = 0x01000000
	SES_WORDDRAGDROP         = 0x02000000
	SES_SMARTDRAGDROP        = 0x04000000
	SES_MULTISELECT          = 0x08000000
	SES_CTFNOLOCK            = 0x10000000
	SES_NOEALINEHEIGHTADJUST = 0x20000000
	SES_MAX                  = 0x20000000
)

Extended edit style masks

View Source
const (
	IMF_AUTOKEYBOARD        = 0x0001
	IMF_AUTOFONT            = 0x0002
	IMF_IMECANCELCOMPLETE   = 0x0004 // High completes comp string when aborting, low cancels
	IMF_IMEALWAYSSENDNOTIFY = 0x0008
	IMF_AUTOFONTSIZEADJUST  = 0x0010
	IMF_UIFONTS             = 0x0020
	IMF_NOIMPLICITLANG      = 0x0040
	IMF_DUALFONT            = 0x0080
	IMF_NOKBDLIDFIXUP       = 0x0200
	IMF_NORTFFONTSUBSTITUTE = 0x0400
	IMF_SPELLCHECKING       = 0x0800
	IMF_TKBPREDICTION       = 0x1000
	IMF_IMEUIINTEGRATION    = 0x2000
)

Options for EM_SETLANGOPTIONS and EM_GETLANGOPTIONS

View Source
const (
	ICM_NOTOPEN    = 0x0000
	ICM_LEVEL3     = 0x0001
	ICM_LEVEL2     = 0x0002
	ICM_LEVEL2_5   = 0x0003
	ICM_LEVEL2_SUI = 0x0004
	ICM_CTF        = 0x0005
)

Values for EM_GETIMECOMPMODE

View Source
const (
	TO_ADVANCEDTYPOGRAPHY   = 0x0001
	TO_SIMPLELINEBREAK      = 0x0002
	TO_DISABLECUSTOMTEXTOUT = 0x0004
	TO_ADVANCEDLAYOUT       = 0x0008
)

Options for EM_SETTYPOGRAPHYOPTIONS

View Source
const (
	// Outline mode message
	EM_OUTLINE = WM_USER + 220

	// Message for getting and restoring scroll pos
	EM_GETSCROLLPOS = WM_USER + 221
	EM_SETSCROLLPOS = WM_USER + 222

	// Change fontsize in current selection by wParam
	EM_SETFONTSIZE = WM_USER + 223
	EM_GETZOOM     = WM_USER + 224
	EM_SETZOOM     = WM_USER + 225
	EM_GETVIEWKIND = WM_USER + 226
	EM_SETVIEWKIND = WM_USER + 227
)

Pegasus outline mode messages (RE 3.0)

View Source
const (
	EM_GETPAGE          = WM_USER + 228
	EM_SETPAGE          = WM_USER + 229
	EM_GETHYPHENATEINFO = WM_USER + 230
	EM_SETHYPHENATEINFO = WM_USER + 231

	EM_GETPAGEROTATE    = WM_USER + 235
	EM_SETPAGEROTATE    = WM_USER + 236
	EM_GETCTFMODEBIAS   = WM_USER + 237
	EM_SETCTFMODEBIAS   = WM_USER + 238
	EM_GETCTFOPENSTATUS = WM_USER + 240
	EM_SETCTFOPENSTATUS = WM_USER + 241
	EM_GETIMECOMPTEXT   = WM_USER + 242
	EM_ISIME            = WM_USER + 243
	EM_GETIMEPROPERTY   = WM_USER + 244
)

RichEdit 4.0 messages

View Source
const (
	EM_GETQUERYRTFOBJ = WM_USER + 269
	EM_SETQUERYRTFOBJ = WM_USER + 270
)

These messages control what rich edit does when it comes accross OLE objects during RTF stream in. Normally rich edit queries the client application only after OleLoad has been called. With these messages it is possible to set the rich edit control to a mode where it will query the client application before OleLoad is called

View Source
const (
	EPR_0   = 0 // Text flows left to right and top to bottom
	EPR_270 = 1 // Text flows top to bottom and right to left
	EPR_180 = 2 // Text flows right to left and bottom to top
	EPR_90  = 3 // Text flows bottom to top and left to right
	EPR_SE  = 5 // Text flows top to bottom and left to right (Mongolian text layout)
)

EM_SETPAGEROTATE wparam values

View Source
const (
	CTFMODEBIAS_DEFAULT               = 0x0000
	CTFMODEBIAS_FILENAME              = 0x0001
	CTFMODEBIAS_NAME                  = 0x0002
	CTFMODEBIAS_READING               = 0x0003
	CTFMODEBIAS_DATETIME              = 0x0004
	CTFMODEBIAS_CONVERSATION          = 0x0005
	CTFMODEBIAS_NUMERIC               = 0x0006
	CTFMODEBIAS_HIRAGANA              = 0x0007
	CTFMODEBIAS_KATAKANA              = 0x0008
	CTFMODEBIAS_HANGUL                = 0x0009
	CTFMODEBIAS_HALFWIDTHKATAKANA     = 0x000A
	CTFMODEBIAS_FULLWIDTHALPHANUMERIC = 0x000B
	CTFMODEBIAS_HALFWIDTHALPHANUMERIC = 0x000C
)

EM_SETCTFMODEBIAS wparam values

View Source
const (
	IMF_SMODE_PLAURALCLAUSE = 0x0001
	IMF_SMODE_NONE          = 0x0002
)

EM_SETIMEMODEBIAS lparam values

View Source
const (
	// Enter normal mode,  lparam ignored
	EMO_EXIT = 0

	// Enter outline mode, lparam ignored
	EMO_ENTER = 1

	// LOWORD(lparam) == 0 ==>
	//	promote  to body-text
	// LOWORD(lparam) != 0 ==>
	//	promote/demote current selection
	//	by indicated number of levels
	EMO_PROMOTE = 2

	// HIWORD(lparam) = EMO_EXPANDSELECTION
	//	-> expands selection to level
	//	indicated in LOWORD(lparam)
	//	LOWORD(lparam) = -1/+1 corresponds
	//	to collapse/expand button presses
	//	in winword (other values are
	//	equivalent to having pressed these
	//	buttons more than once)
	//	HIWORD(lparam) = EMO_EXPANDDOCUMENT
	//	-> expands whole document to
	//	indicated level
	EMO_EXPAND = 3

	// LOWORD(lparam) != 0 -> move current
	//	selection up/down by indicated amount
	EMO_MOVESELECTION = 4

	// Returns VM_NORMAL or VM_OUTLINE
	EMO_GETVIEWMODE = 5
)

Outline mode wparam values

View Source
const (
	EMO_EXPANDSELECTION = 0
	EMO_EXPANDDOCUMENT  = 1
)

EMO_EXPAND options

View Source
const (
	// Agrees with RTF \viewkindN
	VM_NORMAL = 4

	VM_OUTLINE = 2

	// Screen page view (not print layout)
	VM_PAGE = 9
)
View Source
const (
	EM_GETAUTOCORRECTPROC  = WM_USER + 233
	EM_SETAUTOCORRECTPROC  = WM_USER + 234
	EM_CALLAUTOCORRECTPROC = WM_USER + 255
)
View Source
const (
	ATP_NOCHANGE       = 0
	ATP_CHANGE         = 1
	ATP_NODELIMITER    = 2
	ATP_REPLACEALLTEXT = 4
)
View Source
const (
	EM_GETTABLEPARMS = WM_USER + 265

	EM_SETEDITSTYLEEX = WM_USER + 275
	EM_GETEDITSTYLEEX = WM_USER + 276
)
View Source
const (
	SES_EX_NOTABLE            = 0x00000004
	SES_EX_NOMATH             = 0x00000040
	SES_EX_HANDLEFRIENDLYURL  = 0x00000100
	SES_EX_NOTHEMING          = 0x00080000
	SES_EX_NOACETATESELECTION = 0x00100000
	SES_EX_USESINGLELINE      = 0x00200000
	SES_EX_MULTITOUCH         = 0x08000000 // Only works under Win8+
	SES_EX_HIDETEMPFORMAT     = 0x10000000
	SES_EX_USEMOUSEWPARAM     = 0x20000000 // Use wParam when handling WM_MOUSEMOVE message and do not call GetAsyncKeyState
)

wparam values for EM_SETEDITSTYLEEX/EM_GETEDITSTYLEEX All unused bits are reserved.

View Source
const (
	EM_GETSTORYTYPE = WM_USER + 290
	EM_SETSTORYTYPE = WM_USER + 291

	EM_GETELLIPSISMODE = WM_USER + 305
	EM_SETELLIPSISMODE = WM_USER + 306
)
View Source
const (
	ELLIPSIS_MASK = 0x00000003 // all meaningful bits
	ELLIPSIS_NONE = 0x00000000 // ellipsis disabled
	ELLIPSIS_END  = 0x00000001 // ellipsis at the end (forced break)
	ELLIPSIS_WORD = 0x00000003 // ellipsis at the end (word break)
)

uint32: *lparam for EM_GETELLIPSISMODE, lparam for EM_SETELLIPSISMODE

View Source
const (
	EM_SETTABLEPARMS = WM_USER + 307

	EM_GETTOUCHOPTIONS  = WM_USER + 310
	EM_SETTOUCHOPTIONS  = WM_USER + 311
	EM_INSERTIMAGE      = WM_USER + 314
	EM_SETUIANAME       = WM_USER + 320
	EM_GETELLIPSISSTATE = WM_USER + 322
)
View Source
const (
	RTO_SHOWHANDLES    = 1
	RTO_DISABLEHANDLES = 2
	RTO_READINGMODE    = 3
)

Values for EM_SETTOUCHOPTIONS/EM_GETTOUCHOPTIONS

View Source
const (
	EN_MSGFILTER         = 0x0700
	EN_REQUESTRESIZE     = 0x0701
	EN_SELCHANGE         = 0x0702
	EN_DROPFILES         = 0x0703
	EN_PROTECTED         = 0x0704
	EN_CORRECTTEXT       = 0x0705 // PenWin specific
	EN_STOPNOUNDO        = 0x0706
	EN_IMECHANGE         = 0x0707 // East Asia specific
	EN_SAVECLIPBOARD     = 0x0708
	EN_OLEOPFAILED       = 0x0709
	EN_OBJECTPOSITIONS   = 0x070a
	EN_LINK              = 0x070b
	EN_DRAGDROPDONE      = 0x070c
	EN_PARAGRAPHEXPANDED = 0x070d
	EN_PAGECHANGE        = 0x070e
	EN_LOWFIRTF          = 0x070f
	EN_ALIGNLTR          = 0x0710 // BiDi specific notification
	EN_ALIGNRTL          = 0x0711 // BiDi specific notification
	EN_CLIPFORMAT        = 0x0712
	EN_STARTCOMPOSITION  = 0x0713
	EN_ENDCOMPOSITION    = 0x0714
)

New notifications

View Source
const (
	ECN_ENDCOMPOSITION = 0x0001
	ECN_NEWTEXT        = 0x0002
)

Constants for ENDCOMPOSITIONNOTIFY dwCode

View Source
const (
	ENM_NONE              = 0x00000000
	ENM_CHANGE            = 0x00000001
	ENM_UPDATE            = 0x00000002
	ENM_SCROLL            = 0x00000004
	ENM_SCROLLEVENTS      = 0x00000008
	ENM_DRAGDROPDONE      = 0x00000010
	ENM_PARAGRAPHEXPANDED = 0x00000020
	ENM_PAGECHANGE        = 0x00000040
	ENM_CLIPFORMAT        = 0x00000080
	ENM_KEYEVENTS         = 0x00010000
	ENM_MOUSEEVENTS       = 0x00020000
	ENM_REQUESTRESIZE     = 0x00040000
	ENM_SELCHANGE         = 0x00080000
	ENM_DROPFILES         = 0x00100000
	ENM_PROTECTED         = 0x00200000
	ENM_CORRECTTEXT       = 0x00400000 // PenWin specific
	ENM_IMECHANGE         = 0x00800000 // Used by RE1.0 compatibility
	ENM_LANGCHANGE        = 0x01000000
	ENM_OBJECTPOSITIONS   = 0x02000000
	ENM_LINK              = 0x04000000
	ENM_LOWFIRTF          = 0x08000000
	ENM_STARTCOMPOSITION  = 0x10000000
	ENM_ENDCOMPOSITION    = 0x20000000
	ENM_GROUPTYPINGCHANGE = 0x40000000
	ENM_HIDELINKTOOLTIP   = 0x80000000
)

Event notification masks

View Source
const (
	ES_SAVESEL         = 0x00008000
	ES_SUNKEN          = 0x00004000
	ES_DISABLENOSCROLL = 0x00002000
	ES_SELECTIONBAR    = 0x01000000 // Same as WS_MAXIMIZE, but that doesn't make sense so we re-use the value
	ES_NOOLEDRAGDROP   = 0x00000008 // Same as ES_UPPERCASE, but re-used to completely disable OLE drag'n'drop
)

New edit control styles

View Source
const (
	ES_VERTICAL = 0x00400000 // Not supported in RE 2.0/3.0
	ES_NOIME    = 0x00080000
	ES_SELFIME  = 0x00040000
)

These flags are used in FE Windows

View Source
const (
	ECO_AUTOWORDSELECTION = 0x00000001
	ECO_AUTOVSCROLL       = 0x00000040
	ECO_AUTOHSCROLL       = 0x00000080
	ECO_NOHIDESEL         = 0x00000100
	ECO_READONLY          = 0x00000800
	ECO_WANTRETURN        = 0x00001000
	ECO_SAVESEL           = 0x00008000
	ECO_SELECTIONBAR      = 0x01000000
	ECO_VERTICAL          = 0x00400000 // FE specific
)

Edit control options

View Source
const (
	ECOOP_SET = 0x0001
	ECOOP_OR  = 0x0002
	ECOOP_AND = 0x0003
	ECOOP_XOR = 0x0004
)

ECO operations

View Source
const (
	WB_CLASSIFY      = 3
	WB_MOVEWORDLEFT  = 4
	WB_MOVEWORDRIGHT = 5
	WB_LEFTBREAK     = 6
	WB_RIGHTBREAK    = 7
)

New word break function actions

View Source
const (
	WB_MOVEWORDPREV = 4
	WB_MOVEWORDNEXT = 5
	WB_PREVBREAK    = 6
	WB_NEXTBREAK    = 7

	PC_FOLLOWING  = 1
	PC_LEADING    = 2
	PC_OVERFLOW   = 3
	PC_DELIMITER  = 4
	WBF_WORDWRAP  = 0x010
	WBF_WORDBREAK = 0x020
	WBF_OVERFLOW  = 0x040
	WBF_LEVEL1    = 0x080
	WBF_LEVEL2    = 0x100
	WBF_CUSTOM    = 0x200
)

East Asia specific flags

View Source
const (
	IMF_FORCENONE         = 0x0001
	IMF_FORCEENABLE       = 0x0002
	IMF_FORCEDISABLE      = 0x0004
	IMF_CLOSESTATUSWINDOW = 0x0008
	IMF_VERTICAL          = 0x0020
	IMF_FORCEACTIVE       = 0x0040
	IMF_FORCEINACTIVE     = 0x0080
	IMF_FORCEREMEMBER     = 0x0100
	IMF_MULTIPLEEDIT      = 0x0400
)

East Asia specific flags

View Source
const (
	WBF_CLASS      byte = 0x0F
	WBF_ISWHITE    byte = 0x10
	WBF_BREAKLINE  byte = 0x20
	WBF_BREAKAFTER byte = 0x40
)

Word break flags (used with WB_CLASSIFY)

View Source
const (
	CFM_BOLD      = 0x00000001
	CFM_ITALIC    = 0x00000002
	CFM_UNDERLINE = 0x00000004
	CFM_STRIKEOUT = 0x00000008
	CFM_PROTECTED = 0x00000010
	CFM_LINK      = 0x00000020 // Exchange hyperlink extension
	CFM_SIZE      = 0x80000000
	CFM_COLOR     = 0x40000000
	CFM_FACE      = 0x20000000
	CFM_OFFSET    = 0x10000000
	CFM_CHARSET   = 0x08000000
)

CHARFORMAT masks

View Source
const (
	CFE_BOLD      = 0x00000001
	CFE_ITALIC    = 0x00000002
	CFE_UNDERLINE = 0x00000004
	CFE_STRIKEOUT = 0x00000008
	CFE_PROTECTED = 0x00000010
	CFE_LINK      = 0x00000020
	CFE_AUTOCOLOR = 0x40000000 // NOTE: this corresponds to CFM_COLOR, which controls it

	// Masks and effects defined for CHARFORMAT2 -- an (*) indicates that the data is stored by RichEdit 2.0/3.0, but not displayed
	CFM_SMALLCAPS = 0x00000040 // (*)
	CFM_ALLCAPS   = 0x00000080 // Displayed by 3.0
	CFM_HIDDEN    = 0x00000100 // Hidden by 3.0
	CFM_OUTLINE   = 0x00000200 // (*)
	CFM_SHADOW    = 0x00000400 // (*)
	CFM_EMBOSS    = 0x00000800 // (*)
	CFM_IMPRINT   = 0x00001000 // (*)
	CFM_DISABLED  = 0x00002000
	CFM_REVISED   = 0x00004000

	CFM_REVAUTHOR     = 0x00008000
	CFE_SUBSCRIPT     = 0x00010000 // Superscript and subscript are
	CFE_SUPERSCRIPT   = 0x00020000 //	mutually exclusive
	CFM_ANIMATION     = 0x00040000 // (*)
	CFM_STYLE         = 0x00080000 // (*)
	CFM_KERNING       = 0x00100000
	CFM_SPACING       = 0x00200000 // Displayed by 3.0
	CFM_WEIGHT        = 0x00400000
	CFM_UNDERLINETYPE = 0x00800000 // Many displayed by 3.0
	CFM_COOKIE        = 0x01000000 // RE 6.0
	CFM_LCID          = 0x02000000
	CFM_BACKCOLOR     = 0x04000000 // Higher mask bits defined above

	CFM_SUBSCRIPT   = (CFE_SUBSCRIPT | CFE_SUPERSCRIPT)
	CFM_SUPERSCRIPT = CFM_SUBSCRIPT

	// CHARFORMAT "ALL" masks
	CFM_EFFECTS  = CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK
	CFM_ALL      = CFM_EFFECTS | CFM_SIZE | CFM_FACE | CFM_OFFSET | CFM_CHARSET
	CFM_EFFECTS2 = CFM_EFFECTS | CFM_DISABLED | CFM_SMALLCAPS | CFM_ALLCAPS | CFM_HIDDEN | CFM_OUTLINE | CFM_SHADOW | CFM_EMBOSS | CFM_IMPRINT | CFM_REVISED | CFM_SUBSCRIPT | CFM_SUPERSCRIPT | CFM_BACKCOLOR
	CFM_ALL2     = CFM_ALL | CFM_EFFECTS2 | CFM_BACKCOLOR | CFM_LCID | CFM_UNDERLINETYPE | CFM_WEIGHT | CFM_REVAUTHOR | CFM_SPACING | CFM_KERNING | CFM_STYLE | CFM_ANIMATION | CFM_COOKIE

	CFE_SMALLCAPS = CFM_SMALLCAPS
	CFE_ALLCAPS   = CFM_ALLCAPS
	CFE_HIDDEN    = CFM_HIDDEN
	CFE_OUTLINE   = CFM_OUTLINE
	CFE_SHADOW    = CFM_SHADOW
	CFE_EMBOSS    = CFM_EMBOSS
	CFE_IMPRINT   = CFM_IMPRINT
	CFE_DISABLED  = CFM_DISABLED
	CFE_REVISED   = CFM_REVISED

	// CFE_AUTOCOLOR and CFE_AUTOBACKCOLOR correspond to CFM_COLOR and
	// CFM_BACKCOLOR, respectively, which control them
	CFE_AUTOBACKCOLOR = CFM_BACKCOLOR

	CFM_FONTBOUND     = 0x00100000
	CFM_LINKPROTECTED = 0x00800000 // Word hyperlink field
	CFM_EXTENDED      = 0x02000000
	CFM_MATHNOBUILDUP = 0x08000000
	CFM_MATH          = 0x10000000
	CFM_MATHORDINARY  = 0x20000000

	CFM_ALLEFFECTS = (CFM_EFFECTS2 | CFM_FONTBOUND | CFM_EXTENDED | CFM_MATHNOBUILDUP | CFM_MATH | CFM_MATHORDINARY)

	CFE_FONTBOUND     = 0x00100000 // Font chosen by binder, not user
	CFE_LINKPROTECTED = 0x00800000
	CFE_EXTENDED      = 0x02000000
	CFE_MATHNOBUILDUP = 0x08000000
	CFE_MATH          = 0x10000000
	CFE_MATHORDINARY  = 0x20000000

	// Underline types. RE 1.0 displays only CFU_UNDERLINE
	CFU_CF1UNDERLINE             = 0xFF // Map charformat's bit underline to CF2
	CFU_INVERT                   = 0xFE // For IME composition fake a selection
	CFU_UNDERLINETHICKLONGDASH   = 18   // (*) display as dash
	CFU_UNDERLINETHICKDOTTED     = 17   // (*) display as dot
	CFU_UNDERLINETHICKDASHDOTDOT = 16   // (*) display as dash dot dot
	CFU_UNDERLINETHICKDASHDOT    = 15   // (*) display as dash dot
	CFU_UNDERLINETHICKDASH       = 14   // (*) display as dash
	CFU_UNDERLINELONGDASH        = 13   // (*) display as dash
	CFU_UNDERLINEHEAVYWAVE       = 12   // (*) display as wave
	CFU_UNDERLINEDOUBLEWAVE      = 11   // (*) display as wave
	CFU_UNDERLINEHAIRLINE        = 10   // (*) display as single
	CFU_UNDERLINETHICK           = 9
	CFU_UNDERLINEWAVE            = 8
	CFU_UNDERLINEDASHDOTDOT      = 7
	CFU_UNDERLINEDASHDOT         = 6
	CFU_UNDERLINEDASH            = 5
	CFU_UNDERLINEDOTTED          = 4
	CFU_UNDERLINEDOUBLE          = 3 // (*) display as single
	CFU_UNDERLINEWORD            = 2 // (*) display as single
	CFU_UNDERLINE                = 1
	CFU_UNDERLINENONE            = 0
)

CHARFORMAT effects

View Source
const (
	// EM_SETCHARFORMAT wParam masks
	SCF_SELECTION       = 0x0001
	SCF_WORD            = 0x0002
	SCF_DEFAULT         = 0x0000 // Set default charformat or paraformat
	SCF_ALL             = 0x0004 // Not valid with SCF_SELECTION or SCF_WORD
	SCF_USEUIRULES      = 0x0008 // Modifier for SCF_SELECTION; says that came from a toolbar, etc., and  UI formatting rules should be instead of literal formatting
	SCF_ASSOCIATEFONT   = 0x0010 // Associate fontname with bCharSet (one possible for each of Western, ME, FE, Thai)
	SCF_NOKBUPDATE      = 0x0020 // Do not update KB layout for this change even if autokeyboard is on
	SCF_ASSOCIATEFONT2  = 0x0040 // Associate plane-2 (surrogate) font
	SCF_SMARTFONT       = 0x0080 // Apply font only if it can handle script (5.0)
	SCF_CHARREPFROMLCID = 0x0100 // Get character repertoire from lcid (5.0)

	SPF_DONTSETDEFAULT = 0x0002 // Suppress setting default on empty control
	SPF_SETDEFAULT     = 0x0004 // Set the default paraformat
)
View Source
const (
	// Stream formats. Flags are all in low word, since high word gives possible codepage choice.
	SF_TEXT      = 0x0001
	SF_RTF       = 0x0002
	SF_RTFNOOBJS = 0x0003 // Write only
	SF_TEXTIZED  = 0x0004 // Write only

	SF_UNICODE        = 0x0010 // Unicode file (UCS2 little endian)
	SF_USECODEPAGE    = 0x0020 // CodePage given by high word
	SF_NCRFORNONASCII = 0x40   // Output \uN for nonASCII
	SFF_WRITEXTRAPAR  = 0x80   // Output \par at end

	// Flag telling stream operations to operate on selection only
	// EM_STREAMIN	replaces current selection
	// EM_STREAMOUT streams out current selection
	SFF_SELECTION = 0x8000

	// Flag telling stream operations to ignore some FE control words having to do with FE word breaking and horiz vs vertical text.
	// Not used in RichEdit 2.0 and later
	SFF_PLAINRTF = 0x4000

	// Flag telling file stream output (SFF_SELECTION flag not set) to persist // \viewscaleN control word.
	SFF_PERSISTVIEWSCALE = 0x2000

	// Flag telling file stream input with SFF_SELECTION flag not set not to // close the document
	SFF_KEEPDOCINFO = 0x1000

	// Flag telling stream operations to output in Pocket Word format
	SFF_PWD = 0x0800

	// 3-bit field specifying the value of N - 1 to use for \rtfN or \pwdN
	SF_RTFVAL = 0x0700
)
View Source
const (
	MAX_TAB_STOPS   = 32
	LDefaultTab     = 720
	MAX_TABLE_CELLS = 63
)

All paragraph measurements are in twips

View Source
const (
	// PARAFORMAT mask values
	PFM_STARTINDENT  = 0x00000001
	PFM_RIGHTINDENT  = 0x00000002
	PFM_OFFSET       = 0x00000004
	PFM_ALIGNMENT    = 0x00000008
	PFM_TABSTOPS     = 0x00000010
	PFM_NUMBERING    = 0x00000020
	PFM_OFFSETINDENT = 0x80000000

	// PARAFORMAT 2.0 masks and effects
	PFM_SPACEBEFORE    = 0x00000040
	PFM_SPACEAFTER     = 0x00000080
	PFM_LINESPACING    = 0x00000100
	PFM_STYLE          = 0x00000400
	PFM_BORDER         = 0x00000800 // (*)
	PFM_SHADING        = 0x00001000 // (*)
	PFM_NUMBERINGSTYLE = 0x00002000 // RE 3.0
	PFM_NUMBERINGTAB   = 0x00004000 // RE 3.0
	PFM_NUMBERINGSTART = 0x00008000 // RE 3.0

	PFM_RTLPARA         = 0x00010000
	PFM_KEEP            = 0x00020000 // (*)
	PFM_KEEPNEXT        = 0x00040000 // (*)
	PFM_PAGEBREAKBEFORE = 0x00080000 // (*)
	PFM_NOLINENUMBER    = 0x00100000 // (*)
	PFM_NOWIDOWCONTROL  = 0x00200000 // (*)
	PFM_DONOTHYPHEN     = 0x00400000 // (*)
	PFM_SIDEBYSIDE      = 0x00800000 // (*)

	// The following two paragraph-format properties are read only
	PFM_COLLAPSED         = 0x01000000 // RE 3.0
	PFM_OUTLINELEVEL      = 0x02000000 // RE 3.0
	PFM_BOX               = 0x04000000 // RE 3.0
	PFM_RESERVED2         = 0x08000000 // RE 4.0
	PFM_TABLEROWDELIMITER = 0x10000000 // RE 4.0
	PFM_TEXTWRAPPINGBREAK = 0x20000000 // RE 3.0
	PFM_TABLE             = 0x40000000 // RE 3.0

	// PARAFORMAT "ALL" masks
	PFM_ALL = PFM_STARTINDENT | PFM_RIGHTINDENT | PFM_OFFSET | PFM_ALIGNMENT | PFM_TABSTOPS | PFM_NUMBERING | PFM_OFFSETINDENT | PFM_RTLPARA

	// Note: PARAFORMAT has no effects (BiDi RichEdit 1.0 does have PFE_RTLPARA)
	PFM_EFFECTS = PFM_RTLPARA | PFM_KEEP | PFM_KEEPNEXT | PFM_TABLE | PFM_PAGEBREAKBEFORE | PFM_NOLINENUMBER | PFM_NOWIDOWCONTROL | PFM_DONOTHYPHEN | PFM_SIDEBYSIDE | PFM_TABLE | PFM_TABLEROWDELIMITER

	PFM_ALL2 = PFM_ALL | PFM_EFFECTS | PFM_SPACEBEFORE | PFM_SPACEAFTER | PFM_LINESPACING | PFM_STYLE | PFM_SHADING | PFM_BORDER | PFM_NUMBERINGTAB | PFM_NUMBERINGSTART | PFM_NUMBERINGSTYLE

	PFE_RTLPARA           = PFM_RTLPARA >> 16
	PFE_KEEP              = PFM_KEEP >> 16              // (*)
	PFE_KEEPNEXT          = PFM_KEEPNEXT >> 16          // (*)
	PFE_PAGEBREAKBEFORE   = PFM_PAGEBREAKBEFORE >> 16   // (*)
	PFE_NOLINENUMBER      = PFM_NOLINENUMBER >> 16      // (*)
	PFE_NOWIDOWCONTROL    = PFM_NOWIDOWCONTROL >> 16    // (*)
	PFE_DONOTHYPHEN       = PFM_DONOTHYPHEN >> 16       // (*)
	PFE_SIDEBYSIDE        = PFM_SIDEBYSIDE >> 16        // (*)
	PFE_TEXTWRAPPINGBREAK = PFM_TEXTWRAPPINGBREAK >> 16 // (*)

	// The following four effects are read only
	PFE_COLLAPSED         = PFM_COLLAPSED >> 16         // (+)
	PFE_BOX               = PFM_BOX >> 16               // (+)
	PFE_TABLE             = PFM_TABLE >> 16             // Inside table row. RE 3.0
	PFE_TABLEROWDELIMITER = PFM_TABLEROWDELIMITER >> 16 // Table row start. RE 4.0

	// PARAFORMAT numbering options
	PFN_BULLET = 1 // tomListBullet

	// PARAFORMAT2 wNumbering options
	PFN_ARABIC   = 2 // tomListNumberAsArabic:	0, 1, 2,	...
	PFN_LCLETTER = 3 // tomListNumberAsLCLetter: a, b, c,	...
	PFN_UCLETTER = 4 // tomListNumberAsUCLetter: A, B, C,	...
	PFN_LCROMAN  = 5 // tomListNumberAsLCRoman:	i, ii, iii, ...
	PFN_UCROMAN  = 6 // tomListNumberAsUCRoman:	I, II, III, ...

	// PARAFORMAT2 wNumberingStyle options
	PFNS_PAREN    = 0x000 // default, e.g.,				  1)
	PFNS_PARENS   = 0x100 // tomListParentheses/256, e.g., (1)
	PFNS_PERIOD   = 0x200 // tomListPeriod/256, e.g., 	  1.
	PFNS_PLAIN    = 0x300 // tomListPlain/256, e.g.,		  1
	PFNS_NONUMBER = 0x400 // Used for continuation w/o number

	PFNS_NEWNUMBER = 0x8000 // Start new number with wNumberingStart
	// (can be combined with other PFNS_xxx)
	// PARAFORMAT alignment options
	PFA_LEFT   = 1
	PFA_RIGHT  = 2
	PFA_CENTER = 3

	// PARAFORMAT2 alignment options
	PFA_JUSTIFY        = 4 // New paragraph-alignment option 2.0 (*)
	PFA_FULL_INTERWORD = 4 // These are supported in 3.0 with advanced
)
View Source
const (
	SEL_EMPTY       = 0x0000
	SEL_TEXT        = 0x0001
	SEL_OBJECT      = 0x0002
	SEL_MULTICHAR   = 0x0004
	SEL_MULTIOBJECT = 0x0008
)
View Source
const (
	// bits for GETCONTEXTMENUEX::dwFlags
	GCMF_GRIPPER   = 0x00000001
	GCMF_SPELLING  = 0x00000002 // pSpellingSuggestions is valid and points to the list of spelling suggestions
	GCMF_TOUCHMENU = 0x00004000
	GCMF_MOUSEMENU = 0x00002000
)
View Source
const (
	// Clipboard formats - use as parameter to RegisterClipboardFormat()
	CF_RTF       = "Rich Text Format"
	CF_RTFNOOBJS = "Rich Text Format Without Objects"
	CF_RETEXTOBJ = "RichEdit Text and Objects"
)
View Source
const (
	UID_UNKNOWN   UNDONAMEID = 0
	UID_TYPING               = 1
	UID_DELETE               = 2
	UID_DRAGDROP             = 3
	UID_CUT                  = 4
	UID_PASTE                = 5
	UID_AUTOTABLE            = 6
)
View Source
const (
	// Flags for the SETEXTEX data structure
	ST_DEFAULT   = 0
	ST_KEEPUNDO  = 1
	ST_SELECTION = 2
	ST_NEuint16S = 4
	ST_UNICODE   = 8
)
View Source
const (
	// Flags for the GETEXTEX data structure
	GT_DEFAULT      = 0
	GT_USECRLF      = 1
	GT_SELECTION    = 2
	GT_RAWTEXT      = 4
	GT_NOHIDDENTEXT = 8
)
View Source
const (
	// Flags for the GETTEXTLENGTHEX data structure
	GTL_DEFAULT  = 0  // Do default (return # of chars)
	GTL_USECRLF  = 1  // Compute answer using CRLFs for paragraphs
	GTL_PRECISE  = 2  // Compute a precise answer
	GTL_CLOSE    = 4  // Fast computation of a "close" answer
	GTL_NUMCHARS = 8  // Return number of characters
	GTL_NUMBYTES = 16 // Return number of _bytes_
)
View Source
const (
	// BIDIOPTIONS masks
	BOM_NEUTRALOVERRIDE  = 0x0004 // Override neutral layout (obsolete)
	BOM_CONTEXTREADING   = 0x0008 // Context reading order
	BOM_CONTEXTALIGNMENT = 0x0010 // Context alignment
	BOM_LEGACYBIDICLASS  = 0x0040 // Legacy Bidi classification (obsolete)
	BOM_UNICODEBIDI      = 0x0080 // Use Unicode BiDi algorithm

	// BIDIOPTIONS effects
	BOE_NEUTRALOVERRIDE  = 0x0004 // Override neutral layout (obsolete)
	BOE_CONTEXTREADING   = 0x0008 // Context reading order
	BOE_CONTEXTALIGNMENT = 0x0010 // Context alignment
	BOE_FORCERECALC      = 0x0020 // Force recalc and redraw
	BOE_LEGACYBIDICLASS  = 0x0040 // Legacy Bidi classification (obsolete)
	BOE_UNICODEBIDI      = 0x0080 // Use Unicode BiDi algorithm

	// Additional EM_FINDTEXT[EX] flags
	FR_MATCHDIAC      = 0x20000000
	FR_MATCHKASHIDA   = 0x40000000
	FR_MATCHALEFHAMZA = 0x80000000

	// UNICODE embedding character
	WCH_EMBEDDING uint16 = 0xFFFC
)
View Source
const (
	DOCHOSTUIDBLCLK_DEFAULT        = 0
	DOCHOSTUIDBLCLK_SHOWPROPERTIES = 1
	DOCHOSTUIDBLCLK_SHOWCODE       = 2
)
View Source
const (
	DOCHOSTUIFLAG_DIALOG                     = 0x1
	DOCHOSTUIFLAG_DISABLE_HELP_MENU          = 0x2
	DOCHOSTUIFLAG_NO3DBORDER                 = 0x4
	DOCHOSTUIFLAG_SCROLL_NO                  = 0x8
	DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE    = 0x10
	DOCHOSTUIFLAG_OPENNEWWIN                 = 0x20
	DOCHOSTUIFLAG_DISABLE_OFFSCREEN          = 0x40
	DOCHOSTUIFLAG_FLAT_SCROLLBAR             = 0x80
	DOCHOSTUIFLAG_DIV_BLOCKDEFAULT           = 0x100
	DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY    = 0x200
	DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY    = 0x400
	DOCHOSTUIFLAG_CODEPAGELINKEDFONTS        = 0x800
	DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8  = 0x1000
	DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8   = 0x2000
	DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE  = 0x4000
	DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION  = 0x10000
	DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION    = 0x20000
	DOCHOSTUIFLAG_THEME                      = 0x40000
	DOCHOSTUIFLAG_NOTHEME                    = 0x80000
	DOCHOSTUIFLAG_NOPICS                     = 0x100000
	DOCHOSTUIFLAG_NO3DOUTERBORDER            = 0x200000
	DOCHOSTUIFLAG_DISABLE_EDIT_NS_FIXUP      = 0x400000
	DOCHOSTUIFLAG_LOCAL_MACHINE_ACCESS_CHECK = 0x800000
	DOCHOSTUIFLAG_DISABLE_UNTRUSTEDPROTOCOL  = 0x1000000
)
View Source
const (
	NavOpenInNewWindow       = 0x1
	NavNoHistory             = 0x2
	NavNoReadFromCache       = 0x4
	NavNoWriteToCache        = 0x8
	NavAllowAutosearch       = 0x10
	NavBrowserBar            = 0x20
	NavHyperlink             = 0x40
	NavEnforceRestricted     = 0x80
	NavNewWindowsManaged     = 0x0100
	NavUntrustedForDownload  = 0x0200
	NavTrustedForActiveX     = 0x0400
	NavOpenInNewTab          = 0x0800
	NavOpenInBackgroundTab   = 0x1000
	NavKeepWordWheelText     = 0x2000
	NavVirtualTab            = 0x4000
	NavBlockRedirectsXDomain = 0x8000
	NavOpenNewForegroundTab  = 0x10000
)

BrowserNavConstants

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
)
View Source
const (
	NIF_MESSAGE  = 0x00000001
	NIF_ICON     = 0x00000002
	NIF_TIP      = 0x00000004
	NIF_STATE    = 0x00000008
	NIF_INFO     = 0x00000010
	NIF_GUID     = 0x00000020
	NIF_REALTIME = 0x00000040
	NIF_SHOWTIP  = 0x00000080
)

NotifyIcon flags

View Source
const (
	NIM_ADD        = 0x00000000
	NIM_MODIFY     = 0x00000001
	NIM_DELETE     = 0x00000002
	NIM_SETFOCUS   = 0x00000003
	NIM_SETVERSION = 0x00000004
)

NotifyIcon messages

View Source
const (
	NIS_HIDDEN     = 0x00000001
	NIS_SHAREDICON = 0x00000002
)

NotifyIcon states

View Source
const (
	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
)

NotifyIcon info flags

View Source
const (
	NIN_SELECT           = WM_USER + 0
	NIN_KEYSELECT        = WM_USER + 1
	NIN_BALLOONSHOW      = WM_USER + 2
	NIN_BALLOONHIDE      = WM_USER + 3
	NIN_BALLOONTIMEOUT   = WM_USER + 4
	NIN_BALLOONUSERCLICK = WM_USER + 5
	NIN_POPUPOPEN        = WM_USER + 6
	NIN_POPUPCLOSE       = WM_USER + 7
)

NotifyIcon notifications

View Source
const (
	NOTIFYICON_VERSION   = 3
	NOTIFYICON_VERSION_4 = 4
)

NotifyIcon versions

View Source
const (
	SHGFI_LARGEICON         = 0x000000000
	SHGFI_SMALLICON         = 0x000000001
	SHGFI_OPENICON          = 0x000000002
	SHGFI_SHELLICONSIZE     = 0x000000004
	SHGFI_PIDL              = 0x000000008
	SHGFI_USEFILEATTRIBUTES = 0x000000010
	SHGFI_ADDOVERLAYS       = 0x000000020
	SHGFI_OVERLAYINDEX      = 0x000000040
	SHGFI_ICON              = 0x000000100
	SHGFI_DISPLAYNAME       = 0x000000200
	SHGFI_TYPENAME          = 0x000000400
	SHGFI_ATTRIBUTES        = 0x000000800
	SHGFI_ICONLOCATION      = 0x000001000
	SHGFI_EXETYPE           = 0x000002000
	SHGFI_SYSICONINDEX      = 0x000004000
	SHGFI_LINKOVERLAY       = 0x000008000
	SHGFI_SELECTED          = 0x000010000
	SHGFI_ATTR_SPECIFIED    = 0x000020000
)

SHGetFileInfo flags

View Source
const (
	SHGSI_ICONLOCATION  = 0
	SHGSI_ICON          = 0x000000100
	SHGSI_SYSICONINDEX  = 0x000004000
	SHGSI_LINKOVERLAY   = 0x000008000
	SHGSI_SELECTED      = 0x000010000
	SHGSI_LARGEICON     = 0x000000000
	SHGSI_SMALLICON     = 0x000000001
	SHGSI_SHELLICONSIZE = 0x000000004
)

SHGetStockIconInfo flags

View Source
const (
	SIID_DOCNOASSOC        = 0
	SIID_DOCASSOC          = 1
	SIID_APPLICATION       = 2
	SIID_FOLDER            = 3
	SIID_FOLDEROPEN        = 4
	SIID_DRIVE525          = 5
	SIID_DRIVE35           = 6
	SIID_DRIVEREMOVE       = 7
	SIID_DRIVEFIXED        = 8
	SIID_DRIVENET          = 9
	SIID_DRIVENETDISABLED  = 10
	SIID_DRIVECD           = 11
	SIID_DRIVERAM          = 12
	SIID_WORLD             = 13
	SIID_SERVER            = 15
	SIID_PRINTER           = 16
	SIID_MYNETWORK         = 17
	SIID_FIND              = 22
	SIID_HELP              = 23
	SIID_SHARE             = 28
	SIID_LINK              = 29
	SIID_SLOWFILE          = 30
	SIID_RECYCLER          = 31
	SIID_RECYCLERFULL      = 32
	SIID_MEDIACDAUDIO      = 40
	SIID_LOCK              = 47
	SIID_AUTOLIST          = 49
	SIID_PRINTERNET        = 50
	SIID_SERVERSHARE       = 51
	SIID_PRINTERFAX        = 52
	SIID_PRINTERFAXNET     = 53
	SIID_PRINTERFILE       = 54
	SIID_STACK             = 55
	SIID_MEDIASVCD         = 56
	SIID_STUFFEDFOLDER     = 57
	SIID_DRIVEUNKNOWN      = 58
	SIID_DRIVEDVD          = 59
	SIID_MEDIADVD          = 60
	SIID_MEDIADVDRAM       = 61
	SIID_MEDIADVDRW        = 62
	SIID_MEDIADVDR         = 63
	SIID_MEDIADVDROM       = 64
	SIID_MEDIACDAUDIOPLUS  = 65
	SIID_MEDIACDRW         = 66
	SIID_MEDIACDR          = 67
	SIID_MEDIACDBURN       = 68
	SIID_MEDIABLANKCD      = 69
	SIID_MEDIACDROM        = 70
	SIID_AUDIOFILES        = 71
	SIID_IMAGEFILES        = 72
	SIID_VIDEOFILES        = 73
	SIID_MIXEDFILES        = 74
	SIID_FOLDERBACK        = 75
	SIID_FOLDERFRONT       = 76
	SIID_SHIELD            = 77
	SIID_WARNING           = 78
	SIID_INFO              = 79
	SIID_ERROR             = 80
	SIID_KEY               = 81
	SIID_SOFTWARE          = 82
	SIID_RENAME            = 83
	SIID_DELETE            = 84
	SIID_MEDIAAUDIODVD     = 85
	SIID_MEDIAMOVIEDVD     = 86
	SIID_MEDIAENHANCEDCD   = 87
	SIID_MEDIAENHANCEDDVD  = 88
	SIID_MEDIAHDDVD        = 89
	SIID_MEDIABLURAY       = 90
	SIID_MEDIAVCD          = 91
	SIID_MEDIADVDPLUSR     = 92
	SIID_MEDIADVDPLUSRW    = 93
	SIID_DESKTOPPC         = 94
	SIID_MOBILEPC          = 95
	SIID_USERS             = 96
	SIID_MEDIASMARTMEDIA   = 97
	SIID_MEDIACOMPACTFLASH = 98
	SIID_DEVICECELLPHONE   = 99
	SIID_DEVICECAMERA      = 100
	SIID_DEVICEVIDEOCAMERA = 101
	SIID_DEVICEAUDIOPLAYER = 102
	SIID_NETWORKCONNECT    = 103
	SIID_INTERNET          = 104
	SIID_ZIPFILE           = 105
	SIID_SETTINGS          = 106
	SIID_DRIVEHDDVD        = 132
	SIID_DRIVEBD           = 133
	SIID_MEDIAHDDVDROM     = 134
	SIID_MEDIAHDDVDR       = 135
	SIID_MEDIAHDDVDRAM     = 136
	SIID_MEDIABDROM        = 137
	SIID_MEDIABDR          = 138
	SIID_MEDIABDRE         = 139
	SIID_CLUSTEREDDRIVE    = 140
	SIID_MAX_ICONS         = 175
)

SHSTOCKICONID values

View Source
const (
	TBPF_NOPROGRESS    = 0
	TBPF_INDETERMINATE = 0x1
	TBPF_NORMAL        = 0x2
	TBPF_ERROR         = 0x4
	TBPF_PAUSED        = 0x8
)

TBPFLAG

View Source
const (
	SBARS_SIZEGRIP = 0x100
	SBARS_TOOLTIPS = 0x800
)

Styles

View Source
const (
	SB_SETPARTS         = WM_USER + 4
	SB_GETPARTS         = WM_USER + 6
	SB_GETBORDERS       = WM_USER + 7
	SB_SETMINHEIGHT     = WM_USER + 8
	SB_SIMPLE           = WM_USER + 9
	SB_GETRECT          = WM_USER + 10
	SB_SETTEXT          = WM_USER + 11
	SB_GETTEXTLENGTH    = WM_USER + 12
	SB_GETTEXT          = WM_USER + 13
	SB_ISSIMPLE         = WM_USER + 14
	SB_SETICON          = WM_USER + 15
	SB_SETTIPTEXT       = WM_USER + 17
	SB_GETTIPTEXT       = WM_USER + 19
	SB_GETICON          = WM_USER + 20
	SB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
	SB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
	SB_SETBKCOLOR       = CCM_SETBKCOLOR
)

Messages

View Source
const (
	SBT_NOBORDERS    = 0x100
	SBT_POPOUT       = 0x200
	SBT_RTLREADING   = 0x400
	SBT_NOTABPARSING = 0x800
	SBT_OWNERDRAW    = 0x1000
)

SB_SETTEXT options

View Source
const (
	SBN_FIRST            = -880
	SBN_SIMPLEMODECHANGE = SBN_FIRST - 0
)
View Source
const (
	INVALID_LINK_INDEX = -1
	MAX_LINKID_TEXT    = 48
	L_MAX_URL_LENGTH   = 2048 + 32 + len("://")
	WC_LINK            = "SysLink"
)
View Source
const (
	LWS_TRANSPARENT    = 0x0001
	LWS_IGNORERETURN   = 0x0002
	LWS_NOPREFIX       = 0x0004
	LWS_USEVISUALSTYLE = 0x0008
	LWS_USECUSTOMTEXT  = 0x0010
	LWS_RIGHT          = 0x0020
)
View Source
const (
	LIF_ITEMINDEX = 0x00000001
	LIF_STATE     = 0x00000002
	LIF_ITEMID    = 0x00000004
	LIF_URL       = 0x00000008
)
View Source
const (
	LIS_FOCUSED       = 0x00000001
	LIS_ENABLED       = 0x00000002
	LIS_VISITED       = 0x00000004
	LIS_HOTTRACK      = 0x00000008
	LIS_DEFAULTCOLORS = 0x00000010
)
View Source
const (
	LM_HITTEST        = WM_USER + 0x300
	LM_GETIDEALHEIGHT = WM_USER + 0x301
	LM_SETITEM        = WM_USER + 0x302
	LM_GETITEM        = WM_USER + 0x303
	LM_GETIDEALSIZE   = LM_GETIDEALHEIGHT
)
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 (
	TomFalse                           TomConstants = 0
	TomTrue                                         = -1
	TomUndefined                                    = -9999999
	TomToggle                                       = -9999998
	TomAutoColor                                    = -9999997
	TomDefault                                      = -9999996
	TomSuspend                                      = -9999995
	TomResume                                       = -9999994
	TomApplyNow                                     = 0
	TomApplyLater                                   = 1
	TomTrackParms                                   = 2
	TomCacheParms                                   = 3
	TomApplyTmp                                     = 4
	TomDisableSmartFont                             = 8
	TomEnableSmartFont                              = 9
	TomUsePoints                                    = 10
	TomUseTwips                                     = 11
	TomBackward                                     = 0xc0000001
	TomForward                                      = 0x3fffffff
	TomMove                                         = 0
	TomExtend                                       = 1
	TomNoSelection                                  = 0
	TomSelectionIP                                  = 1
	TomSelectionNormal                              = 2
	TomSelectionFrame                               = 3
	TomSelectionColumn                              = 4
	TomSelectionRow                                 = 5
	TomSelectionBlock                               = 6
	TomSelectionInlineShape                         = 7
	TomSelectionShape                               = 8
	TomSelStartActive                               = 1
	TomSelAtEOL                                     = 2
	TomSelOvertype                                  = 4
	TomSelActive                                    = 8
	TomSelReplace                                   = 16
	TomEnd                                          = 0
	TomStart                                        = 32
	TomCollapseEnd                                  = 0
	TomCollapseStart                                = 1
	TomClientCoord                                  = 256
	TomAllowOffClient                               = 512
	TomTransform                                    = 1024
	TomObjectArg                                    = 2048
	TomAtEnd                                        = 4096
	TomNone                                         = 0
	TomSingle                                       = 1
	TomWords                                        = 2
	TomDouble                                       = 3
	TomDotted                                       = 4
	TomDash                                         = 5
	TomDashDot                                      = 6
	TomDashDotDot                                   = 7
	TomWave                                         = 8
	TomThick                                        = 9
	TomHair                                         = 10
	TomDoubleWave                                   = 11
	TomHeavyWave                                    = 12
	TomLongDash                                     = 13
	TomThickDash                                    = 14
	TomThickDashDot                                 = 15
	TomThickDashDotDot                              = 16
	TomThickDotted                                  = 17
	TomThickLongDash                                = 18
	TomLineSpaceSingle                              = 0
	TomLineSpace1pt5                                = 1
	TomLineSpaceDouble                              = 2
	TomLineSpaceAtLeast                             = 3
	TomLineSpaceExactly                             = 4
	TomLineSpaceMultiple                            = 5
	TomLineSpacePercent                             = 6
	TomAlignLeft                                    = 0
	TomAlignCenter                                  = 1
	TomAlignRight                                   = 2
	TomAlignJustify                                 = 3
	TomAlignDecimal                                 = 3
	TomAlignBar                                     = 4
	TomDefaultTab                                   = 5
	TomAlignInterWord                               = 3
	TomAlignNewspaper                               = 4
	TomAlignInterLetter                             = 5
	TomAlignScaled                                  = 6
	TomSpaces                                       = 0
	TomDots                                         = 1
	TomDashes                                       = 2
	TomLines                                        = 3
	TomThickLines                                   = 4
	TomEquals                                       = 5
	TomTabBack                                      = -3
	TomTabNext                                      = -2
	TomTabHere                                      = -1
	TomListNone                                     = 0
	TomListBullet                                   = 1
	TomListNumberAsArabic                           = 2
	TomListNumberAsLCLetter                         = 3
	TomListNumberAsUCLetter                         = 4
	TomListNumberAsLCRoman                          = 5
	TomListNumberAsUCRoman                          = 6
	TomListNumberAsSequence                         = 7
	TomListNumberedCircle                           = 8
	TomListNumberedBlackCircleWingding              = 9
	TomListNumberedWhiteCircleWingding              = 10
	TomListNumberedArabicWide                       = 11
	TomListNumberedChS                              = 12
	TomListNumberedChT                              = 13
	TomListNumberedJpnChS                           = 14
	TomListNumberedJpnKor                           = 15
	TomListNumberedArabic1                          = 16
	TomListNumberedArabic2                          = 17
	TomListNumberedHebrew                           = 18
	TomListNumberedThaiAlpha                        = 19
	TomListNumberedThaiNum                          = 20
	TomListNumberedHindiAlpha                       = 21
	TomListNumberedHindiAlpha1                      = 22
	TomListNumberedHindiNum                         = 23
	TomListParentheses                              = 0x10000
	TomListPeriod                                   = 0x20000
	TomListPlain                                    = 0x30000
	TomListNoNumber                                 = 0x40000
	TomListMinus                                    = 0x80000
	TomIgnoreNumberStyle                            = 0x1000000
	TomParaStyleNormal                              = -1
	TomParaStyleHeading1                            = -2
	TomParaStyleHeading2                            = -3
	TomParaStyleHeading3                            = -4
	TomParaStyleHeading4                            = -5
	TomParaStyleHeading5                            = -6
	TomParaStyleHeading6                            = -7
	TomParaStyleHeading7                            = -8
	TomParaStyleHeading8                            = -9
	TomParaStyleHeading9                            = -10
	TomCharacter                                    = 1
	TomWord                                         = 2
	TomSentence                                     = 3
	TomParagraph                                    = 4
	TomLine                                         = 5
	TomStory                                        = 6
	TomScreen                                       = 7
	TomSection                                      = 8
	TomTableColumn                                  = 9
	TomColumn                                       = 9
	TomRow                                          = 10
	TomWindow                                       = 11
	TomCell                                         = 12
	TomCharFormat                                   = 13
	TomParaFormat                                   = 14
	TomTable                                        = 15
	TomObject                                       = 16
	TomPage                                         = 17
	TomHardParagraph                                = 18
	TomCluster                                      = 19
	TomInlineObject                                 = 20
	TomInlineObjectArg                              = 21
	TomLeafLine                                     = 22
	TomLayoutColumn                                 = 23
	TomProcessId                                    = 0x40000001
	TomMatchWord                                    = 2
	TomMatchCase                                    = 4
	TomMatchPattern                                 = 8
	TomUnknownStory                                 = 0
	TomMainTextStory                                = 1
	TomFootnotesStory                               = 2
	TomEndnotesStory                                = 3
	TomCommentsStory                                = 4
	TomTextFrameStory                               = 5
	TomEvenPagesHeaderStory                         = 6
	TomPrimaryHeaderStory                           = 7
	TomEvenPagesFooterStory                         = 8
	TomPrimaryFooterStory                           = 9
	TomFirstPageHeaderStory                         = 10
	TomFirstPageFooterStory                         = 11
	TomScratchStory                                 = 127
	TomFindStory                                    = 128
	TomReplaceStory                                 = 129
	TomStoryInactive                                = 0
	TomStoryActiveDisplay                           = 1
	TomStoryActiveUI                                = 2
	TomStoryActiveDisplayUI                         = 3
	TomNoAnimation                                  = 0
	TomLasVegasLights                               = 1
	TomBlinkingBackground                           = 2
	TomSparkleText                                  = 3
	TomMarchingBlackAnts                            = 4
	TomMarchingRedAnts                              = 5
	TomShimmer                                      = 6
	TomWipeDown                                     = 7
	TomWipeRight                                    = 8
	TomAnimationMax                                 = 8
	TomLowerCase                                    = 0
	TomUpperCase                                    = 1
	TomTitleCase                                    = 2
	TomSentenceCase                                 = 4
	TomToggleCase                                   = 5
	TomReadOnly                                     = 0x100
	TomShareDenyRead                                = 0x200
	TomShareDenyWrite                               = 0x400
	TomPasteFile                                    = 0x1000
	TomCreateNew                                    = 0x10
	TomCreateAlways                                 = 0x20
	TomOpenExisting                                 = 0x30
	TomOpenAlways                                   = 0x40
	TomTruncateExisting                             = 0x50
	TomRTF                                          = 0x1
	TomText                                         = 0x2
	TomHTML                                         = 0x3
	TomWordDocument                                 = 0x4
	TomBold                                         = 0x80000001
	TomItalic                                       = 0x80000002
	TomUnderline                                    = 0x80000004
	TomStrikeout                                    = 0x80000008
	TomProtected                                    = 0x80000010
	TomLink                                         = 0x80000020
	TomSmallCaps                                    = 0x80000040
	TomAllCaps                                      = 0x80000080
	TomHidden                                       = 0x80000100
	TomOutline                                      = 0x80000200
	TomShadow                                       = 0x80000400
	TomEmboss                                       = 0x80000800
	TomImprint                                      = 0x80001000
	TomDisabled                                     = 0x80002000
	TomRevised                                      = 0x80004000
	TomSubscriptCF                                  = 0x80010000
	TomSuperscriptCF                                = 0x80020000
	TomFontBound                                    = 0x80100000
	TomLinkProtected                                = 0x80800000
	TomInlineObjectStart                            = 0x81000000
	TomExtendedChar                                 = 0x82000000
	TomAutoBackColor                                = 0x84000000
	TomMathZoneNoBuildUp                            = 0x88000000
	TomMathZone                                     = 0x90000000
	TomMathZoneOrdinary                             = 0xa0000000
	TomAutoTextColor                                = 0xc0000000
	TomMathZoneDisplay                              = 0x40000
	TomParaEffectRTL                                = 0x1
	TomParaEffectKeep                               = 0x2
	TomParaEffectKeepNext                           = 0x4
	TomParaEffectPageBreakBefore                    = 0x8
	TomParaEffectNoLineNumber                       = 0x10
	TomParaEffectNoWidowControl                     = 0x20
	TomParaEffectDoNotHyphen                        = 0x40
	TomParaEffectSideBySide                         = 0x80
	TomParaEffectCollapsed                          = 0x100
	TomParaEffectOutlineLevel                       = 0x200
	TomParaEffectBox                                = 0x400
	TomParaEffectTableRowDelimiter                  = 0x1000
	TomParaEffectTable                              = 0x4000
	TomModWidthPairs                                = 0x1
	TomModWidthSpace                                = 0x2
	TomAutoSpaceAlpha                               = 0x4
	TomAutoSpaceNumeric                             = 0x8
	TomAutoSpaceParens                              = 0x10
	TomEmbeddedFont                                 = 0x20
	TomDoublestrike                                 = 0x40
	TomOverlapping                                  = 0x80
	TomNormalCaret                                  = 0
	TomKoreanBlockCaret                             = 0x1
	TomNullCaret                                    = 0x2
	TomIncludeInset                                 = 0x1
	TomUnicodeBiDi                                  = 0x1
	TomMathCFCheck                                  = 0x4
	TomUnlink                                       = 0x8
	TomUnhide                                       = 0x10
	TomCheckTextLimit                               = 0x20
	TomIgnoreCurrentFont                            = 0
	TomMatchCharRep                                 = 0x1
	TomMatchFontSignature                           = 0x2
	TomMatchAscii                                   = 0x4
	TomGetHeightOnly                                = 0x8
	TomMatchMathFont                                = 0x10
	TomCharset                                      = 0x80000000
	TomCharRepFromLcid                              = 0x40000000
	TomAnsi                                         = 0
	TomEastEurope                                   = 1
	TomCyrillic                                     = 2
	TomGreek                                        = 3
	TomTurkish                                      = 4
	TomHebrew                                       = 5
	TomArabic                                       = 6
	TomBaltic                                       = 7
	TomVietnamese                                   = 8
	TomDefaultCharRep                               = 9
	TomSymbol                                       = 10
	TomThai                                         = 11
	TomShiftJIS                                     = 12
	TomGB2312                                       = 13
	TomHangul                                       = 14
	TomBIG5                                         = 15
	TomPC437                                        = 16
	TomOEM                                          = 17
	TomMac                                          = 18
	TomArmenian                                     = 19
	TomSyriac                                       = 20
	TomThaana                                       = 21
	TomDevanagari                                   = 22
	TomBengali                                      = 23
	TomGurmukhi                                     = 24
	TomGujarati                                     = 25
	TomOriya                                        = 26
	TomTamil                                        = 27
	TomTelugu                                       = 28
	TomKannada                                      = 29
	TomMalayalam                                    = 30
	TomSinhala                                      = 31
	TomLao                                          = 32
	TomTibetan                                      = 33
	TomMyanmar                                      = 34
	TomGeorgian                                     = 35
	TomJamo                                         = 36
	TomEthiopic                                     = 37
	TomCherokee                                     = 38
	TomAboriginal                                   = 39
	TomOgham                                        = 40
	TomRunic                                        = 41
	TomKhmer                                        = 42
	TomMongolian                                    = 43
	TomBraille                                      = 44
	TomYi                                           = 45
	TomLimbu                                        = 46
	TomTaiLe                                        = 47
	TomNewTaiLue                                    = 48
	TomSylotiNagri                                  = 49
	TomKharoshthi                                   = 50
	TomKayahli                                      = 51
	TomUsymbol                                      = 52
	TomEmoji                                        = 53
	TomGlagolitic                                   = 54
	TomLisu                                         = 55
	TomVai                                          = 56
	TomNKo                                          = 57
	TomOsmanya                                      = 58
	TomPhagsPa                                      = 59
	TomGothic                                       = 60
	TomDeseret                                      = 61
	TomTifinagh                                     = 62
	TomCharRepMax                                   = 63
	TomRE10Mode                                     = 0x1
	TomUseAtFont                                    = 0x2
	TomTextFlowMask                                 = 0xc
	TomTextFlowES                                   = 0
	TomTextFlowSW                                   = 0x4
	TomTextFlowWN                                   = 0x8
	TomTextFlowNE                                   = 0xc
	TomNoIME                                        = 0x80000
	TomSelfIME                                      = 0x40000
	TomNoUpScroll                                   = 0x10000
	TomNoVpScroll                                   = 0x40000
	TomNoLink                                       = 0
	TomClientLink                                   = 1
	TomFriendlyLinkName                             = 2
	TomFriendlyLinkAddress                          = 3
	TomAutoLinkURL                                  = 4
	TomAutoLinkEmail                                = 5
	TomAutoLinkPhone                                = 6
	TomAutoLinkPath                                 = 7
	TomCompressNone                                 = 0
	TomCompressPunctuation                          = 1
	TomCompressPunctuationAndKana                   = 2
	TomCompressMax                                  = 2
	TomUnderlinePositionAuto                        = 0
	TomUnderlinePositionBelow                       = 1
	TomUnderlinePositionAbove                       = 2
	TomUnderlinePositionMax                         = 2
	TomFontAlignmentAuto                            = 0
	TomFontAlignmentTop                             = 1
	TomFontAlignmentBaseline                        = 2
	TomFontAlignmentBottom                          = 3
	TomFontAlignmentCenter                          = 4
	TomFontAlignmentMax                             = 4
	TomRubyBelow                                    = 0x80
	TomRubyAlignCenter                              = 0
	TomRubyAlign010                                 = 1
	TomRubyAlign121                                 = 2
	TomRubyAlignLeft                                = 3
	TomRubyAlignRight                               = 4
	TomLimitsDefault                                = 0
	TomLimitsUnderOver                              = 1
	TomLimitsSubSup                                 = 2
	TomUpperLimitAsSuperScript                      = 3
	TomLimitsOpposite                               = 4
	TomShowLLimPlaceHldr                            = 8
	TomShowULimPlaceHldr                            = 16
	TomDontGrowWithContent                          = 64
	TomGrowWithContent                              = 128
	TomSubSupAlign                                  = 1
	TomLimitAlignMask                               = 3
	TomLimitAlignCenter                             = 0
	TomLimitAlignLeft                               = 1
	TomLimitAlignRight                              = 2
	TomShowDegPlaceHldr                             = 8
	TomAlignDefault                                 = 0
	TomAlignMatchAscentDescent                      = 2
	TomMathVariant                                  = 0x20
	TomStyleDefault                                 = 0
	TomStyleScriptScriptCramped                     = 1
	TomStyleScriptScript                            = 2
	TomStyleScriptCramped                           = 3
	TomStyleScript                                  = 4
	TomStyleTextCramped                             = 5
	TomStyleText                                    = 6
	TomStyleDisplayCramped                          = 7
	TomStyleDisplay                                 = 8
	TomMathRelSize                                  = 0x40
	TomDecDecSize                                   = 0xfe
	TomDecSize                                      = 0xff
	TomIncSize                                      = (1 | TomMathRelSize)
	TomIncIncSize                                   = (2 | TomMathRelSize)
	TomGravityUI                                    = 0
	TomGravityBack                                  = 1
	TomGravityFore                                  = 2
	TomGravityIn                                    = 3
	TomGravityOut                                   = 4
	TomGravityBackward                              = 0x20000000
	TomGravityForward                               = 0x40000000
	TomAdjustCRLF                                   = 1
	TomUseCRLF                                      = 2
	TomTextize                                      = 4
	TomAllowFinalEOP                                = 8
	TomFoldMathAlpha                                = 16
	TomNoHidden                                     = 32
	TomIncludeNumbering                             = 64
	TomTranslateTableCell                           = 128
	TomNoMathZoneBrackets                           = 0x100
	TomConvertMathChar                              = 0x200
	TomNoUCGreekItalic                              = 0x400
	TomAllowMathBold                                = 0x800
	TomLanguageTag                                  = 0x1000
	TomConvertRTF                                   = 0x2000
	TomApplyRtfDocProps                             = 0x4000
	TomPhantomShow                                  = 1
	TomPhantomZeroWidth                             = 2
	TomPhantomZeroAscent                            = 4
	TomPhantomZeroDescent                           = 8
	TomPhantomTransparent                           = 16
	TomPhantomASmash                                = (TomPhantomShow | TomPhantomZeroAscent)
	TomPhantomDSmash                                = (TomPhantomShow | TomPhantomZeroDescent)
	TomPhantomHSmash                                = (TomPhantomShow | TomPhantomZeroWidth)
	TomPhantomSmash                                 = ((TomPhantomShow | TomPhantomZeroAscent) | TomPhantomZeroDescent)
	TomPhantomHorz                                  = (TomPhantomZeroAscent | TomPhantomZeroDescent)
	TomPhantomVert                                  = TomPhantomZeroWidth
	TomBoxHideTop                                   = 1
	TomBoxHideBottom                                = 2
	TomBoxHideLeft                                  = 4
	TomBoxHideRight                                 = 8
	TomBoxStrikeH                                   = 16
	TomBoxStrikeV                                   = 32
	TomBoxStrikeTLBR                                = 64
	TomBoxStrikeBLTR                                = 128
	TomBoxAlignCenter                               = 1
	TomSpaceMask                                    = 0x1c
	TomSpaceDefault                                 = 0
	TomSpaceUnary                                   = 4
	TomSpaceBinary                                  = 8
	TomSpaceRelational                              = 12
	TomSpaceSkip                                    = 16
	TomSpaceOrd                                     = 20
	TomSpaceDifferential                            = 24
	TomSizeText                                     = 32
	TomSizeScript                                   = 64
	TomSizeScriptScript                             = 96
	TomNoBreak                                      = 128
	TomTransparentForPositioning                    = 256
	TomTransparentForSpacing                        = 512
	TomStretchCharBelow                             = 0
	TomStretchCharAbove                             = 1
	TomStretchBaseBelow                             = 2
	TomStretchBaseAbove                             = 3
	TomMatrixAlignMask                              = 3
	TomMatrixAlignCenter                            = 0
	TomMatrixAlignTopRow                            = 1
	TomMatrixAlignBottomRow                         = 3
	TomShowMatPlaceHldr                             = 8
	TomEqArrayLayoutWidth                           = 1
	TomEqArrayAlignMask                             = 0xc
	TomEqArrayAlignCenter                           = 0
	TomEqArrayAlignTopRow                           = 4
	TomEqArrayAlignBottomRow                        = 0xc
	TomMathManualBreakMask                          = 0x7f
	TomMathBreakLeft                                = 0x7d
	TomMathBreakCenter                              = 0x7e
	TomMathBreakRight                               = 0x7f
	TomMathEqAlign                                  = 0x80
	TomMathArgShadingStart                          = 0x251
	TomMathArgShadingEnd                            = 0x252
	TomMathObjShadingStart                          = 0x253
	TomMathObjShadingEnd                            = 0x254
	TomFunctionTypeNone                             = 0
	TomFunctionTypeTakesArg                         = 1
	TomFunctionTypeTakesLim                         = 2
	TomFunctionTypeTakesLim2                        = 3
	TomFunctionTypeIsLim                            = 4
	TomMathParaAlignDefault                         = 0
	TomMathParaAlignCenterGroup                     = 1
	TomMathParaAlignCenter                          = 2
	TomMathParaAlignLeft                            = 3
	TomMathParaAlignRight                           = 4
	TomMathDispAlignMask                            = 3
	TomMathDispAlignCenterGroup                     = 0
	TomMathDispAlignCenter                          = 1
	TomMathDispAlignLeft                            = 2
	TomMathDispAlignRight                           = 3
	TomMathDispIntUnderOver                         = 4
	TomMathDispFracTeX                              = 8
	TomMathDispNaryGrow                             = 0x10
	TomMathDocEmptyArgMask                          = 0x60
	TomMathDocEmptyArgAuto                          = 0
	TomMathDocEmptyArgAlways                        = 0x20
	TomMathDocEmptyArgNever                         = 0x40
	TomMathDocSbSpOpUnchanged                       = 0x80
	TomMathDocDiffMask                              = 0x300
	TomMathDocDiffDefault                           = 0
	TomMathDocDiffUpright                           = 0x100
	TomMathDocDiffItalic                            = 0x200
	TomMathDocDiffOpenItalic                        = 0x300
	TomMathDispNarySubSup                           = 0x400
	TomMathDispDef                                  = 0x800
	TomMathEnableRtl                                = 0x1000
	TomMathBrkBinMask                               = 0x30000
	TomMathBrkBinBefore                             = 0
	TomMathBrkBinAfter                              = 0x10000
	TomMathBrkBinDup                                = 0x20000
	TomMathBrkBinSubMask                            = 0xc0000
	TomMathBrkBinSubMM                              = 0
	TomMathBrkBinSubPM                              = 0x40000
	TomMathBrkBinSubMP                              = 0x80000
	TomSelRange                                     = 0x255
	TomHstring                                      = 0x254
	TomFontPropTeXStyle                             = 0x33c
	TomFontPropAlign                                = 0x33d
	TomFontStretch                                  = 0x33e
	TomFontStyle                                    = 0x33f
	TomFontStyleUpright                             = 0
	TomFontStyleOblique                             = 1
	TomFontStyleItalic                              = 2
	TomFontStretchDefault                           = 0
	TomFontStretchUltraCondensed                    = 1
	TomFontStretchExtraCondensed                    = 2
	TomFontStretchCondensed                         = 3
	TomFontStretchSemiCondensed                     = 4
	TomFontStretchNormal                            = 5
	TomFontStretchSemiExpanded                      = 6
	TomFontStretchExpanded                          = 7
	TomFontStretchExtraExpanded                     = 8
	TomFontStretchUltraExpanded                     = 9
	TomFontWeightDefault                            = 0
	TomFontWeightThin                               = 100
	TomFontWeightExtraLight                         = 200
	TomFontWeightLight                              = 300
	TomFontWeightNormal                             = 400
	TomFontWeightRegular                            = 400
	TomFontWeightMedium                             = 500
	TomFontWeightSemiBold                           = 600
	TomFontWeightBold                               = 700
	TomFontWeightExtraBold                          = 800
	TomFontWeightBlack                              = 900
	TomFontWeightHeavy                              = 900
	TomFontWeightExtraBlack                         = 950
	TomParaPropMathAlign                            = 0x437
	TomDocMathBuild                                 = 0x80
	TomMathLMargin                                  = 0x81
	TomMathRMargin                                  = 0x82
	TomMathWrapIndent                               = 0x83
	TomMathWrapRight                                = 0x84
	TomMathPostSpace                                = 0x86
	TomMathPreSpace                                 = 0x85
	TomMathInterSpace                               = 0x87
	TomMathIntraSpace                               = 0x88
	TomCanCopy                                      = 0x89
	TomCanRedo                                      = 0x8a
	TomCanUndo                                      = 0x8b
	TomUndoLimit                                    = 0x8c
	TomDocAutoLink                                  = 0x8d
	TomEllipsisMode                                 = 0x8e
	TomEllipsisState                                = 0x8f
	TomEllipsisNone                                 = 0
	TomEllipsisEnd                                  = 1
	TomEllipsisWord                                 = 3
	TomEllipsisPresent                              = 1
	TomVTopCell                                     = 1
	TomVLowCell                                     = 2
	TomHStartCell                                   = 4
	TomHContCell                                    = 8
	TomRowUpdate                                    = 1
	TomRowApplyDefault                              = 0
	TomCellStructureChangeOnly                      = 1
	TomRowHeightActual                              = 0x80b
)
View Source
const (
	TomSimpleText       OBJECTTYPE = 0
	TomRuby                        = (TomSimpleText + 1)
	TomHorzVert                    = (TomRuby + 1)
	TomWarichu                     = (TomHorzVert + 1)
	TomEq                          = 9
	TomMath                        = 10
	TomAccent                      = TomMath
	TomBox                         = (TomAccent + 1)
	TomBoxedFormula                = (TomBox + 1)
	TomBrackets                    = (TomBoxedFormula + 1)
	TomBracketsWithSeps            = (TomBrackets + 1)
	TomEquationArray               = (TomBracketsWithSeps + 1)
	TomFraction                    = (TomEquationArray + 1)
	TomFunctionApply               = (TomFraction + 1)
	TomLeftSubSup                  = (TomFunctionApply + 1)
	TomLowerLimit                  = (TomLeftSubSup + 1)
	TomMatrix                      = (TomLowerLimit + 1)
	TomNary                        = (TomMatrix + 1)
	TomOpChar                      = (TomNary + 1)
	TomOverbar                     = (TomOpChar + 1)
	TomPhanTom                     = (TomOverbar + 1)
	TomRadical                     = (TomPhanTom + 1)
	TomSlashedFraction             = (TomRadical + 1)
	TomStack                       = (TomSlashedFraction + 1)
	TomStretchStack                = (TomStack + 1)
	TomSubscript                   = (TomStretchStack + 1)
	TomSubSup                      = (TomSubscript + 1)
	TomSuperscript                 = (TomSubSup + 1)
	TomUnderbar                    = (TomSuperscript + 1)
	TomUpperLimit                  = (TomUnderbar + 1)
	TomObjectMax                   = TomUpperLimit
)
View Source
const (
	TB_THUMBPOSITION         = 4
	TB_THUMBTRACK            = 5
	TB_ENDTRACK              = 8
	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_GETIDEALSIZE          = WM_USER + 99
	TB_GETMETRICS            = WM_USER + 101
	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 (
	TBMF_PAD           = 0x00000001
	TBMF_BARPAD        = 0x00000002
	TBMF_BUTTONSPACING = 0x00000004
)

TBMETRICS mask flags

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

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 (
	TTF_IDISHWND    = 0x0001
	TTF_CENTERTIP   = 0x0002
	TTF_RTLREADING  = 0x0004
	TTF_SUBCLASS    = 0x0010
	TTF_TRACK       = 0x0020
	TTF_ABSOLUTE    = 0x0080
	TTF_TRANSPARENT = 0x0100
	TTF_DI_SETITEM  = 0x8000
)

ToolTip flags

View Source
const (
	TTI_NONE    = 0
	TTI_INFO    = 1
	TTI_WARNING = 2
	TTI_ERROR   = 3
)

ToolTip icons

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 (
	UD_MAXVAL = 0x7fff
	UD_MINVAL = ^uintptr(UD_MAXVAL - 1)
)
View Source
const (
	UDS_WRAP        = 0x0001
	UDS_SETBUDDYINT = 0x0002
	UDS_ALIGNRIGHT  = 0x0004
	UDS_ALIGNLEFT   = 0x0008
	UDS_AUTOBUDDY   = 0x0010
	UDS_ARROWKEYS   = 0x0020
	UDS_HORZ        = 0x0040
	UDS_NOTHOUSANDS = 0x0080
	UDS_HOTTRACK    = 0x0100
)
View Source
const (
	UDM_SETRANGE         = WM_USER + 101
	UDM_GETRANGE         = WM_USER + 102
	UDM_SETPOS           = WM_USER + 103
	UDM_GETPOS           = WM_USER + 104
	UDM_SETBUDDY         = WM_USER + 105
	UDM_GETBUDDY         = WM_USER + 106
	UDM_SETACCEL         = WM_USER + 107
	UDM_GETACCEL         = WM_USER + 108
	UDM_SETBASE          = WM_USER + 109
	UDM_GETBASE          = WM_USER + 110
	UDM_SETRANGE32       = WM_USER + 111
	UDM_GETRANGE32       = WM_USER + 112
	UDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
	UDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
	UDM_SETPOS32         = WM_USER + 113
	UDM_GETPOS32         = WM_USER + 114
)
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
	MB_APPLMODAL            = 0x00000000
	MB_SYSTEMMODAL          = 0x00001000
	MB_TASKMODAL            = 0x00002000
	MB_HELP                 = 0x00004000
	MB_SETFOREGROUND        = 0x00010000
	MB_DEFAULT_DESKTOP_ONLY = 0x00020000
	MB_TOPMOST              = 0x00040000
	MB_RIGHT                = 0x00080000
	MB_RTLREADING           = 0x00100000
	MB_SERVICE_NOTIFICATION = 0x00200000
)

MessageBox constants

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
)

Dialog box command ids

View Source
const (
	SC_SIZE         = 0xF000
	SC_MOVE         = 0xF010
	SC_MINIMIZE     = 0xF020
	SC_MAXIMIZE     = 0xF030
	SC_NEXTWINDOW   = 0xF040
	SC_PREVWINDOW   = 0xF050
	SC_CLOSE        = 0xF060
	SC_VSCROLL      = 0xF070
	SC_HSCROLL      = 0xF080
	SC_MOUSEMENU    = 0xF090
	SC_KEYMENU      = 0xF100
	SC_ARRANGE      = 0xF110
	SC_RESTORE      = 0xF120
	SC_TASKLIST     = 0xF130
	SC_SCREENSAVE   = 0xF140
	SC_HOTKEY       = 0xF150
	SC_DEFAULT      = 0xF160
	SC_MONITORPOWER = 0xF170
	SC_CONTEXTHELP  = 0xF180
	SC_SEPARATOR    = 0xF00F
)

System commands

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 (
	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 (
	BCN_DROPDOWN     = 0xfffffb20
	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 (
	IMAGE_BITMAP      = 0
	IMAGE_ICON        = 1
	IMAGE_CURSOR      = 2
	IMAGE_ENHMETAFILE = 3
)
View Source
const (
	LR_DEFAULTCOLOR     = 0
	LR_MONOCHROME       = 1
	LR_COLOR            = 2
	LR_COPYRETURNORG    = 4
	LR_COPYDELETEORG    = 8
	LR_LOADFROMFILE     = 16
	LR_LOADTRANSPARENT  = 32
	LR_LOADREALSIZE     = 128
	LR_DEFAULTSIZE      = 0x0040
	LR_VGACOLOR         = 0x0080
	LR_LOADMAP3DCOLORS  = 4096
	LR_CREATEDIBSECTION = 8192
	LR_COPYFROMRESOURCE = 0x4000
	LR_SHARED           = 32768
)
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_SPLITBUTTON     = 0x0000000c
	BS_TEXT            = 0
	BS_TOP             = 0X400
	BS_USERBUTTON      = 8
	BS_VCENTER         = 0XC00
	BS_FLAT            = 0X8000
)

Button style constants

View Source
const (
	PM_NOREMOVE = 0x0000
	PM_REMOVE   = 0x0001
	PM_NOYIELD  = 0x0002
)
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 (
	GA_PARENT    = 1
	GA_ROOT      = 2
	GA_ROOTOWNER = 3
)

GetAncestor 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 (
	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 (
	IDI_APPLICATION = 32512
	IDI_HAND        = 32513
	IDI_QUESTION    = 32514
	IDI_EXCLAMATION = 32515
	IDI_ASTERISK    = 32516
	IDI_SHIELD      = 32518
	IDI_WARNING     = IDI_EXCLAMATION
	IDI_ERROR       = IDI_HAND
	IDI_INFORMATION = IDI_ASTERISK
)

Predefined icon constants

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 (
	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 (
	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 (
	SWP_DRAWFRAME      = 0x0020
	SWP_FRAMECHANGED   = 0x0020
	SWP_HIDEWINDOW     = 0x0080
	SWP_NOACTIVATE     = 0x0010
	SWP_NOCOPYBITS     = 0x0100
	SWP_NOMOVE         = 0x0002
	SWP_NOSIZE         = 0x0001
	SWP_NOREDRAW       = 0x0008
	SWP_NOZORDER       = 0x0004
	SWP_SHOWWINDOW     = 0x0040
	SWP_NOOWNERZORDER  = 0x0200
	SWP_NOREPOSITION   = SWP_NOOWNERZORDER
	SWP_NOSENDCHANGING = 0x0400
	SWP_DEFERERASE     = 0x2000
	SWP_ASYNCWINDOWPOS = 0x4000
)

SetWindowPos flags

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 (
	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_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_LAYOUTRTL        = 0X00400000
	WS_EX_COMPOSITED       = 0X02000000
	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_DPICHANGED             = 0x02E0
	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_MOUSEFIRST             = 512
	WM_XBUTTONDOWN            = 523
	WM_XBUTTONUP              = 524
	WM_XBUTTONDBLCLK          = 525
	WM_MOUSELAST              = 525
	WM_MOUSEHOVER             = 0X2A1
	WM_MOUSELEAVE             = 0X2A3
	WM_CLIPBOARDUPDATE        = 0x031D
	WM_UNICHAR                = 0x0109
)

Window message constants

View Source
const (
	CHILDID_SELF      = 0
	INDEXID_OBJECT    = 0
	INDEXID_CONTAINER = 0

	OBJID_WINDOW            = int32(0x00000000)
	OBJID_SYSMENU           = int32(-((0xFFFFFFFF ^ 0xFFFFFFFF) + 1))
	OBJID_TITLEBAR          = int32(-((0xFFFFFFFE ^ 0xFFFFFFFF) + 1))
	OBJID_MENU              = int32(-((0xFFFFFFFD ^ 0xFFFFFFFF) + 1))
	OBJID_CLIENT            = int32(-((0xFFFFFFFC ^ 0xFFFFFFFF) + 1))
	OBJID_VSCROLL           = int32(-((0xFFFFFFFB ^ 0xFFFFFFFF) + 1))
	OBJID_HSCROLL           = int32(-((0xFFFFFFFA ^ 0xFFFFFFFF) + 1))
	OBJID_SIZEGRIP          = int32(-((0xFFFFFFF9 ^ 0xFFFFFFFF) + 1))
	OBJID_CARET             = int32(-((0xFFFFFFF8 ^ 0xFFFFFFFF) + 1))
	OBJID_CURSOR            = int32(-((0xFFFFFFF7 ^ 0xFFFFFFFF) + 1))
	OBJID_ALERT             = int32(-((0xFFFFFFF6 ^ 0xFFFFFFFF) + 1))
	OBJID_SOUND             = int32(-((0xFFFFFFF5 ^ 0xFFFFFFFF) + 1))
	OBJID_QUERYCLASSNAMEIDX = int32(-((0xFFFFFFF4 ^ 0xFFFFFFFF) + 1))
	OBJID_NATIVEOM          = int32(-((0xFFFFFFF0 ^ 0xFFFFFFFF) + 1))
)
View Source
const (
	EVENT_MIN = 0x00000001
	EVENT_MAX = 0x7FFFFFFF

	EVENT_SYSTEM_SOUND                  = 0x0001
	EVENT_SYSTEM_ALERT                  = 0x0002
	EVENT_SYSTEM_FOREGROUND             = 0x0003
	EVENT_SYSTEM_MENUSTART              = 0x0004
	EVENT_SYSTEM_MENUEND                = 0x0005
	EVENT_SYSTEM_MENUPOPUPSTART         = 0x0006
	EVENT_SYSTEM_MENUPOPUPEND           = 0x0007
	EVENT_SYSTEM_CAPTURESTART           = 0x0008
	EVENT_SYSTEM_CAPTUREEND             = 0x0009
	EVENT_SYSTEM_MOVESIZESTART          = 0x000A
	EVENT_SYSTEM_MOVESIZEEND            = 0x000B
	EVENT_SYSTEM_CONTEXTHELPSTART       = 0x000C
	EVENT_SYSTEM_CONTEXTHELPEND         = 0x000D
	EVENT_SYSTEM_DRAGDROPSTART          = 0x000E
	EVENT_SYSTEM_DRAGDROPEND            = 0x000F
	EVENT_SYSTEM_DIALOGSTART            = 0x0010
	EVENT_SYSTEM_DIALOGEND              = 0x0011
	EVENT_SYSTEM_SCROLLINGSTART         = 0x0012
	EVENT_SYSTEM_SCROLLINGEND           = 0x0013
	EVENT_SYSTEM_SWITCHSTART            = 0x0014
	EVENT_SYSTEM_SWITCHEND              = 0x0015
	EVENT_SYSTEM_MINIMIZESTART          = 0x0016
	EVENT_SYSTEM_MINIMIZEEND            = 0x0017
	EVENT_SYSTEM_DESKTOPSWITCH          = 0x0020
	EVENT_SYSTEM_SWITCHER_APPGRABBED    = 0x0024
	EVENT_SYSTEM_SWITCHER_APPOVERTARGET = 0x0025
	EVENT_SYSTEM_SWITCHER_APPDROPPED    = 0x0026
	EVENT_SYSTEM_SWITCHER_CANCELLED     = 0x0027
	EVENT_SYSTEM_IME_KEY_NOTIFICATION   = 0x0029
	EVENT_SYSTEM_END                    = 0x00FF

	EVENT_OEM_DEFINED_START = 0x0101
	EVENT_OEM_DEFINED_END   = 0x01FF

	EVENT_CONSOLE_CARET             = 0x4001
	EVENT_CONSOLE_UPDATE_REGION     = 0x4002
	EVENT_CONSOLE_UPDATE_SIMPLE     = 0x4003
	EVENT_CONSOLE_UPDATE_SCROLL     = 0x4004
	EVENT_CONSOLE_LAYOUT            = 0x4005
	EVENT_CONSOLE_START_APPLICATION = 0x4006
	EVENT_CONSOLE_END_APPLICATION   = 0x4007
	EVENT_CONSOLE_END               = 0x40FF

	EVENT_UIA_EVENTID_START = 0x4E00
	EVENT_UIA_EVENTID_END   = 0x4EFF

	EVENT_UIA_PROPID_START = 0x7500
	EVENT_UIA_PROPID_END   = 0x75FF

	EVENT_OBJECT_CREATE                           = 0x8000
	EVENT_OBJECT_DESTROY                          = 0x8001
	EVENT_OBJECT_SHOW                             = 0x8002
	EVENT_OBJECT_HIDE                             = 0x8003
	EVENT_OBJECT_REORDER                          = 0x8004
	EVENT_OBJECT_FOCUS                            = 0x8005
	EVENT_OBJECT_SELECTION                        = 0x8006
	EVENT_OBJECT_SELECTIONADD                     = 0x8007
	EVENT_OBJECT_SELECTIONREMOVE                  = 0x8008
	EVENT_OBJECT_SELECTIONWITHIN                  = 0x8009
	EVENT_OBJECT_STATECHANGE                      = 0x800A
	EVENT_OBJECT_LOCATIONCHANGE                   = 0x800B
	EVENT_OBJECT_NAMECHANGE                       = 0x800C
	EVENT_OBJECT_DESCRIPTIONCHANGE                = 0x800D
	EVENT_OBJECT_VALUECHANGE                      = 0x800E
	EVENT_OBJECT_PARENTCHANGE                     = 0x800F
	EVENT_OBJECT_HELPCHANGE                       = 0x8010
	EVENT_OBJECT_DEFACTIONCHANGE                  = 0x8011
	EVENT_OBJECT_ACCELERATORCHANGE                = 0x8012
	EVENT_OBJECT_INVOKED                          = 0x8013
	EVENT_OBJECT_TEXTSELECTIONCHANGED             = 0x8014
	EVENT_OBJECT_CONTENTSCROLLED                  = 0x8015
	EVENT_SYSTEM_ARRANGMENTPREVIEW                = 0x8016
	EVENT_OBJECT_CLOAKED                          = 0x8017
	EVENT_OBJECT_UNCLOAKED                        = 0x8018
	EVENT_OBJECT_LIVEREGIONCHANGED                = 0x8019
	EVENT_OBJECT_HOSTEDOBJECTSINVALIDATED         = 0x8020
	EVENT_OBJECT_DRAGSTART                        = 0x8021
	EVENT_OBJECT_DRAGCANCEL                       = 0x8022
	EVENT_OBJECT_DRAGCOMPLETE                     = 0x8023
	EVENT_OBJECT_DRAGENTER                        = 0x8024
	EVENT_OBJECT_DRAGLEAVE                        = 0x8025
	EVENT_OBJECT_DRAGDROPPED                      = 0x8026
	EVENT_OBJECT_IME_SHOW                         = 0x8027
	EVENT_OBJECT_IME_HIDE                         = 0x8028
	EVENT_OBJECT_IME_CHANGE                       = 0x8029
	EVENT_OBJECT_TEXTEDIT_CONVERSIONTARGETCHANGED = 0x8030
	EVENT_OBJECT_END                              = 0x80FF

	EVENT_AIA_START = 0xa000
	EVENT_AIA_END   = 0xafff

	WINEVENT_OUTOFCONTEXT   = 0x0000
	WINEVENT_SKIPOWNTHREAD  = 0x0001
	WINEVENT_SKIPOWNPROCESS = 0x0002
	WINEVENT_INCONTEXT      = 0x0004
)

event constants

View Source
const (
	MK_CONTROL  = 0x0008
	MK_LBUTTON  = 0x0001
	MK_MBUTTON  = 0x0010
	MK_RBUTTON  = 0x0002
	MK_SHIFT    = 0x0004
	MK_XBUTTON1 = 0x0020
	MK_XBUTTON2 = 0x0040
)

mouse button constants

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 (
	WPF_ASYNCWINDOWPLACEMENT = 0x0004
	WPF_RESTORETOMAXIMIZED   = 0x0002
	WPF_SETMINPOSITION       = 0x0001
)

WINDOWPLACEMENT flags

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 (
	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 (
	SPI_GETNONCLIENTMETRICS = 0x0029
	SPI_GETHIGHCONTRAST     = 0x0042
)

SystemParametersInfo actions

View Source
const (
	DS_ABSALIGN      = 0x0001
	DS_SYSMODAL      = 0x0002
	DS_3DLOOK        = 0x0004
	DS_FIXEDSYS      = 0x0008
	DS_NOFAILCREATE  = 0x0010
	DS_LOCALEDIT     = 0x0020
	DS_SETFONT       = 0x0040
	DS_MODALFRAME    = 0x0080
	DS_NOIDLEMSG     = 0x0100
	DS_SETFOREGROUND = 0x0200
	DS_CONTROL       = 0x0400
	DS_CENTER        = 0x0800
	DS_CENTERMOUSE   = 0x1000
	DS_CONTEXTHELP   = 0x2000
	DS_USEPIXELS     = 0x8000
	DS_SHELLFONT     = (DS_SETFONT | DS_FIXEDSYS)
)

Dialog styles

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

WM_GETDLGCODE return values

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

WM_ACTIVATE codes

View Source
const (
	ODA_DRAWENTIRE = 0x0001
	ODA_FOCUS      = 0x0002
	ODA_SELECT     = 0x0004
)

Owner drawing actions

View Source
const (
	ODS_CHECKED      = 0x0001
	ODS_COMBOBOXEDIT = 0x0002
	ODS_DEFAULT      = 0x0004
	ODS_DISABLED     = 0x0008
	ODS_FOCUS        = 0x0010
	ODS_GRAYED       = 0x0020
	ODS_SELECTED     = 0x0040
)

Owner drawing states

View Source
const (
	RIDEV_APPKEYS      = 0x00000400
	RIDEV_CAPTUREMOUSE = 0x00000200
	RIDEV_DEVNOTIFY    = 0x00002000
	RIDEV_EXCLUDE      = 0x00000010
	RIDEV_EXINPUTSINK  = 0x00001000
	RIDEV_INPUTSINK    = 0x00000100
	RIDEV_NOHOTKEYS    = 0x00000200
	RIDEV_NOLEGACY     = 0x00000030
	RIDEV_PAGEONLY     = 0x00000020
	RIDEV_REMOVE       = 0x00000001
)

Raw input device flags

View Source
const (
	RID_HEADER = 0x10000005
	RID_INPUT  = 0x10000003
)

Raw input device command flags

View Source
const (
	RIM_TYPEHID      = 2
	RIM_TYPEKEYBOARD = 1
	RIM_TYPEMOUSE    = 0
)

Raw input type

View Source
const (
	RI_KEY_MAKE  = 0
	RI_KEY_BREAK = 1
	RI_KEY_E0    = 2
	RI_KEY_E1    = 4
)

Raw input scan code information

View Source
const (
	MOUSE_MOVE_RELATIVE      = 0x00
	MOUSE_MOVE_ABSOLUTE      = 0x01
	MOUSE_VIRTUAL_DESKTOP    = 0x02
	MOUSE_ATTRIBUTES_CHANGED = 0x04
)

Raw input mouse state

View Source
const (
	RI_MOUSE_LEFT_BUTTON_DOWN   = 0x0001
	RI_MOUSE_LEFT_BUTTON_UP     = 0x0002
	RI_MOUSE_MIDDLE_BUTTON_DOWN = 0x0010
	RI_MOUSE_MIDDLE_BUTTON_UP   = 0x0020
	RI_MOUSE_RIGHT_BUTTON_DOWN  = 0x0004
	RI_MOUSE_RIGHT_BUTTON_UP    = 0x0008
	RI_MOUSE_BUTTON_1_DOWN      = 0x0001
	RI_MOUSE_BUTTON_1_UP        = 0x0002
	RI_MOUSE_BUTTON_2_DOWN      = 0x0004
	RI_MOUSE_BUTTON_2_UP        = 0x0008
	RI_MOUSE_BUTTON_3_DOWN      = 0x0010
	RI_MOUSE_BUTTON_3_UP        = 0x0020
	RI_MOUSE_BUTTON_4_DOWN      = 0x0040
	RI_MOUSE_BUTTON_4_UP        = 0x0080
	RI_MOUSE_BUTTON_5_DOWN      = 0x0100
	RI_MOUSE_BUTTON_5_UP        = 0x0200
	RI_MOUSE_WHEEL              = 0x0400
)

Raw input transistion state of mouse buttons

View Source
const (
	MONITOR_DEFAULTTONULL    = 0x0
	MONITOR_DEFAULTTOPRIMARY = 0x1
	MONITOR_DEFAULTTONEAREST = 0x2
)

Multi monitor constants

View Source
const (
	INPUT_MOUSE    = 0
	INPUT_KEYBOARD = 1
	INPUT_HARDWARE = 2
)

INPUT Type

View Source
const (
	XBUTTON1 = 0x0001
	XBUTTON2 = 0x0002
)

MOUSEINPUT MouseData

View Source
const (
	MOUSEEVENTF_ABSOLUTE        = 0x8000
	MOUSEEVENTF_HWHEEL          = 0x1000
	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
)

MOUSEINPUT DwFlags

View Source
const (
	KEYEVENTF_EXTENDEDKEY = 0x0001
	KEYEVENTF_KEYUP       = 0x0002
	KEYEVENTF_SCANCODE    = 0x0008
	KEYEVENTF_UNICODE     = 0x0004
)

KEYBDINPUT DwFlags

View Source
const (
	GW_CHILD        = 5
	GW_ENABLEDPOPUP = 6
	GW_HWNDFIRST    = 0
	GW_HWNDLAST     = 1
	GW_HWNDNEXT     = 2
	GW_HWNDPREV     = 3
	GW_OWNER        = 4
)

GetWindow uCmd constants

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

Standard clipboard formats

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 (
	DI_COMPAT      = 0x0004
	DI_DEFAULTSIZE = 0x0008
	DI_IMAGE       = 0x0002
	DI_MASK        = 0x0001
	DI_NOMIRROR    = 0x0010
	DI_NORMAL      = DI_IMAGE | DI_MASK
)

DrawIconEx flags

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

WM_NCHITTEST constants

View Source
const (
	AW_ACTIVATE     = 0x00020000
	AW_BLEND        = 0x00080000
	AW_CENTER       = 0x00000010
	AW_HIDE         = 0x00010000
	AW_HOR_POSITIVE = 0x00000001
	AW_HOR_NEGATIVE = 0x00000002
	AW_SLIDE        = 0x00040000
	AW_VER_POSITIVE = 0x00000004
	AW_VER_NEGATIVE = 0x00000008
)

AnimateWindow flags

View Source
const (
	ENDSESSION_CLOSEAPP = 0x00000001
	ENDSESSION_CRITICAL = 0x40000000
	ENDSESSION_LOGOFF   = 0x80000000
)

Session ending constants

View Source
const (
	MSGFLT_RESET    = 0
	MSGFLT_ALLOW    = 1
	MSGFLT_DISALLOW = 2

	MSGFLTINFO_NONE                     = 0
	MSGFLTINFO_ALREADYALLOWED_FORWND    = 1
	MSGFLTINFO_ALREADYDISALLOWED_FORWND = 2
	MSGFLTINFO_ALLOWED_HIGHER           = 3
)

ChangeWindowMessageFilterEx constants

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

TRACKMOUSEEVENT flags

View Source
const (
	HCF_HIGHCONTRASTON  = 0x00000001
	HCF_AVAILABLE       = 0x00000002
	HCF_HOTKEYACTIVE    = 0x00000004
	HCF_CONFIRMHOTKEY   = 0x00000008
	HCF_HOTKEYSOUND     = 0x00000010
	HCF_INDICATOR       = 0x00000020
	HCF_HOTKEYAVAILABLE = 0x00000040
)

HIGHCONTRAST flags

View Source
const (
	WB_LEFT        = 0
	WB_RIGHT       = 1
	WB_ISDELIMITER = 2
)

EDITWORDBREAKPROC codes

View Source
const (
	// RedrawWindow() flags
	RDW_INVALIDATE    = 0x0001
	RDW_INTERNALPAINT = 0x0002
	RDW_ERASE         = 0x0004

	RDW_VALIDATE        = 0x0008
	RDW_NOINTERNALPAINT = 0x0010
	RDW_NOERASE         = 0x0020

	RDW_NOCHILDREN  = 0x0040
	RDW_ALLCHILDREN = 0x0080

	RDW_UPDATENOW = 0x0100
	RDW_ERASENOW  = 0x0200

	RDW_FRAME   = 0x0400
	RDW_NOFRAME = 0x0800
)
View Source
const (
	TMT_RESERVEDLOW  = 0
	TMT_RESERVEDHIGH = 7999

	TMT_DIBDATA                 = 2
	TMT_GLYPHDIBDATA            = 8
	TMT_ENUM                    = 200
	TMT_STRING                  = 201
	TMT_INT                     = 202
	TMT_BOOL                    = 203
	TMT_COLOR                   = 204
	TMT_MARGINS                 = 205
	TMT_FILENAME                = 206
	TMT_SIZE                    = 207
	TMT_POSITION                = 208
	TMT_RECT                    = 209
	TMT_FONT                    = 210
	TMT_INTLIST                 = 211
	TMT_HBITMAP                 = 212
	TMT_DISKSTREAM              = 213
	TMT_STREAM                  = 214
	TMT_BITMAPREF               = 215
	TMT_FLOAT                   = 216
	TMT_FLOATLIST               = 217
	TMT_COLORSCHEMES            = 401
	TMT_SIZES                   = 402
	TMT_CHARSET                 = 403
	TMT_NAME                    = 600
	TMT_DISPLAYNAME             = 601
	TMT_TOOLTIP                 = 602
	TMT_COMPANY                 = 603
	TMT_AUTHOR                  = 604
	TMT_COPYRIGHT               = 605
	TMT_URL                     = 606
	TMT_VERSION                 = 607
	TMT_DESCRIPTION             = 608
	TMT_FIRST_RCSTRING_NAME     = TMT_DISPLAYNAME
	TMT_LAST_RCSTRING_NAME      = TMT_DESCRIPTION
	TMT_CAPTIONFONT             = 801
	TMT_SMALLCAPTIONFONT        = 802
	TMT_MENUFONT                = 803
	TMT_STATUSFONT              = 804
	TMT_MSGBOXFONT              = 805
	TMT_ICONTITLEFONT           = 806
	TMT_HEADING1FONT            = 807
	TMT_HEADING2FONT            = 808
	TMT_BODYFONT                = 809
	TMT_FIRSTFONT               = TMT_CAPTIONFONT
	TMT_LASTFONT                = TMT_BODYFONT
	TMT_FLATMENUS               = 1001
	TMT_FIRSTBOOL               = TMT_FLATMENUS
	TMT_LASTBOOL                = TMT_FLATMENUS
	TMT_SIZINGBORDERWIDTH       = 1201
	TMT_SCROLLBARWIDTH          = 1202
	TMT_SCROLLBARHEIGHT         = 1203
	TMT_CAPTIONBARWIDTH         = 1204
	TMT_CAPTIONBARHEIGHT        = 1205
	TMT_SMCAPTIONBARWIDTH       = 1206
	TMT_SMCAPTIONBARHEIGHT      = 1207
	TMT_MENUBARWIDTH            = 1208
	TMT_MENUBARHEIGHT           = 1209
	TMT_PADDEDBORDERWIDTH       = 1210
	TMT_FIRSTSIZE               = TMT_SIZINGBORDERWIDTH
	TMT_LASTSIZE                = TMT_PADDEDBORDERWIDTH
	TMT_MINCOLORDEPTH           = 1301
	TMT_FIRSTINT                = TMT_MINCOLORDEPTH
	TMT_LASTINT                 = TMT_MINCOLORDEPTH
	TMT_CSSNAME                 = 1401
	TMT_XMLNAME                 = 1402
	TMT_LASTUPDATED             = 1403
	TMT_ALIAS                   = 1404
	TMT_FIRSTSTRING             = TMT_CSSNAME
	TMT_LASTSTRING              = TMT_ALIAS
	TMT_SCROLLBAR               = 1601
	TMT_BACKGROUND              = 1602
	TMT_ACTIVECAPTION           = 1603
	TMT_INACTIVECAPTION         = 1604
	TMT_MENU                    = 1605
	TMT_WINDOW                  = 1606
	TMT_WINDOWFRAME             = 1607
	TMT_MENUTEXT                = 1608
	TMT_WINDOWTEXT              = 1609
	TMT_CAPTIONTEXT             = 1610
	TMT_ACTIVEBORDER            = 1611
	TMT_INACTIVEBORDER          = 1612
	TMT_APPWORKSPACE            = 1613
	TMT_HIGHLIGHT               = 1614
	TMT_HIGHLIGHTTEXT           = 1615
	TMT_BTNFACE                 = 1616
	TMT_BTNSHADOW               = 1617
	TMT_GRAYTEXT                = 1618
	TMT_BTNTEXT                 = 1619
	TMT_INACTIVECAPTIONTEXT     = 1620
	TMT_BTNHIGHLIGHT            = 1621
	TMT_DKSHADOW3D              = 1622
	TMT_LIGHT3D                 = 1623
	TMT_INFOTEXT                = 1624
	TMT_INFOBK                  = 1625
	TMT_BUTTONALTERNATEFACE     = 1626
	TMT_HOTTRACKING             = 1627
	TMT_GRADIENTACTIVECAPTION   = 1628
	TMT_GRADIENTINACTIVECAPTION = 1629
	TMT_MENUHILIGHT             = 1630
	TMT_MENUBAR                 = 1631
	TMT_FIRSTCOLOR              = TMT_SCROLLBAR
	TMT_LASTCOLOR               = TMT_MENUBAR
	TMT_FROMHUE1                = 1801
	TMT_FROMHUE2                = 1802
	TMT_FROMHUE3                = 1803
	TMT_FROMHUE4                = 1804
	TMT_FROMHUE5                = 1805
	TMT_TOHUE1                  = 1806
	TMT_TOHUE2                  = 1807
	TMT_TOHUE3                  = 1808
	TMT_TOHUE4                  = 1809
	TMT_TOHUE5                  = 1810
	TMT_FROMCOLOR1              = 2001
	TMT_FROMCOLOR2              = 2002
	TMT_FROMCOLOR3              = 2003
	TMT_FROMCOLOR4              = 2004
	TMT_FROMCOLOR5              = 2005
	TMT_TOCOLOR1                = 2006
	TMT_TOCOLOR2                = 2007
	TMT_TOCOLOR3                = 2008
	TMT_TOCOLOR4                = 2009
	TMT_TOCOLOR5                = 2010
	TMT_TRANSPARENT             = 2201
	TMT_AUTOSIZE                = 2202
	TMT_BORDERONLY              = 2203
	TMT_COMPOSITED              = 2204
	TMT_BGFILL                  = 2205
	TMT_GLYPHTRANSPARENT        = 2206
	TMT_GLYPHONLY               = 2207
	TMT_ALWAYSSHOWSIZINGBAR     = 2208
	TMT_MIRRORIMAGE             = 2209
	TMT_UNIFORMSIZING           = 2210
	TMT_INTEGRALSIZING          = 2211
	TMT_SOURCEGROW              = 2212
	TMT_SOURCESHRINK            = 2213
	TMT_DRAWBORDERS             = 2214
	TMT_NOETCHEDEFFECT          = 2215
	TMT_TEXTAPPLYOVERLAY        = 2216
	TMT_TEXTGLOW                = 2217
	TMT_TEXTITALIC              = 2218
	TMT_COMPOSITEDOPAQUE        = 2219
	TMT_LOCALIZEDMIRRORIMAGE    = 2220
	TMT_IMAGECOUNT              = 2401
	TMT_ALPHALEVEL              = 2402
	TMT_BORDERSIZE              = 2403
	TMT_ROUNDCORNERWIDTH        = 2404
	TMT_ROUNDCORNERHEIGHT       = 2405
	TMT_GRADIENTRATIO1          = 2406
	TMT_GRADIENTRATIO2          = 2407
	TMT_GRADIENTRATIO3          = 2408
	TMT_GRADIENTRATIO4          = 2409
	TMT_GRADIENTRATIO5          = 2410
	TMT_PROGRESSCHUNKSIZE       = 2411
	TMT_PROGRESSSPACESIZE       = 2412
	TMT_SATURATION              = 2413
	TMT_TEXTBORDERSIZE          = 2414
	TMT_ALPHATHRESHOLD          = 2415
	TMT_WIDTH                   = 2416
	TMT_HEIGHT                  = 2417
	TMT_GLYPHINDEX              = 2418
	TMT_TRUESIZESTRETCHMARK     = 2419
	TMT_MINDPI1                 = 2420
	TMT_MINDPI2                 = 2421
	TMT_MINDPI3                 = 2422
	TMT_MINDPI4                 = 2423
	TMT_MINDPI5                 = 2424
	TMT_TEXTGLOWSIZE            = 2425
	TMT_FRAMESPERSECOND         = 2426
	TMT_PIXELSPERFRAME          = 2427
	TMT_ANIMATIONDELAY          = 2428
	TMT_GLOWINTENSITY           = 2429
	TMT_OPACITY                 = 2430
	TMT_COLORIZATIONCOLOR       = 2431
	TMT_COLORIZATIONOPACITY     = 2432
	TMT_MINDPI6                 = 2433
	TMT_MINDPI7                 = 2434
	TMT_GLYPHFONT               = 2601
	TMT_IMAGEFILE               = 3001
	TMT_IMAGEFILE1              = 3002
	TMT_IMAGEFILE2              = 3003
	TMT_IMAGEFILE3              = 3004
	TMT_IMAGEFILE4              = 3005
	TMT_IMAGEFILE5              = 3006
	TMT_GLYPHIMAGEFILE          = 3008
	TMT_IMAGEFILE6              = 3009
	TMT_IMAGEFILE7              = 3010
	TMT_TEXT                    = 3201
	TMT_CLASSICVALUE            = 3202
	TMT_OFFSET                  = 3401
	TMT_TEXTSHADOWOFFSET        = 3402
	TMT_MINSIZE                 = 3403
	TMT_MINSIZE1                = 3404
	TMT_MINSIZE2                = 3405
	TMT_MINSIZE3                = 3406
	TMT_MINSIZE4                = 3407
	TMT_MINSIZE5                = 3408
	TMT_NORMALSIZE              = 3409
	TMT_MINSIZE6                = 3410
	TMT_MINSIZE7                = 3411
	TMT_SIZINGMARGINS           = 3601
	TMT_CONTENTMARGINS          = 3602
	TMT_CAPTIONMARGINS          = 3603
	TMT_BORDERCOLOR             = 3801
	TMT_FILLCOLOR               = 3802
	TMT_TEXTCOLOR               = 3803
	TMT_EDGELIGHTCOLOR          = 3804
	TMT_EDGEHIGHLIGHTCOLOR      = 3805
	TMT_EDGESHADOWCOLOR         = 3806
	TMT_EDGEDKSHADOWCOLOR       = 3807
	TMT_EDGEFILLCOLOR           = 3808
	TMT_TRANSPARENTCOLOR        = 3809
	TMT_GRADIENTCOLOR1          = 3810
	TMT_GRADIENTCOLOR2          = 3811
	TMT_GRADIENTCOLOR3          = 3812
	TMT_GRADIENTCOLOR4          = 3813
	TMT_GRADIENTCOLOR5          = 3814
	TMT_SHADOWCOLOR             = 3815
	TMT_GLOWCOLOR               = 3816
	TMT_TEXTBORDERCOLOR         = 3817
	TMT_TEXTSHADOWCOLOR         = 3818
	TMT_GLYPHTEXTCOLOR          = 3819
	TMT_GLYPHTRANSPARENTCOLOR   = 3820
	TMT_FILLCOLORHINT           = 3821
	TMT_BORDERCOLORHINT         = 3822
	TMT_ACCENTCOLORHINT         = 3823
	TMT_TEXTCOLORHINT           = 3824
	TMT_HEADING1TEXTCOLOR       = 3825
	TMT_HEADING2TEXTCOLOR       = 3826
	TMT_BODYTEXTCOLOR           = 3827
	TMT_BGTYPE                  = 4001
	TMT_BORDERTYPE              = 4002
	TMT_FILLTYPE                = 4003
	TMT_SIZINGTYPE              = 4004
	TMT_HALIGN                  = 4005
	TMT_CONTENTALIGNMENT        = 4006
	TMT_VALIGN                  = 4007
	TMT_OFFSETTYPE              = 4008
	TMT_ICONEFFECT              = 4009
	TMT_TEXTSHADOWTYPE          = 4010
	TMT_IMAGELAYOUT             = 4011
	TMT_GLYPHTYPE               = 4012
	TMT_IMAGESELECTTYPE         = 4013
	TMT_GLYPHFONTSIZINGTYPE     = 4014
	TMT_TRUESIZESCALINGTYPE     = 4015
	TMT_USERPICTURE             = 5001
	TMT_DEFAULTPANESIZE         = 5002
	TMT_BLENDCOLOR              = 5003
	TMT_CUSTOMSPLITRECT         = 5004
	TMT_ANIMATIONBUTTONRECT     = 5005
	TMT_ANIMATIONDURATION       = 5006
	TMT_TRANSITIONDURATIONS     = 6000
	TMT_SCALEDBACKGROUND        = 7001
	TMT_ATLASIMAGE              = 8000
	TMT_ATLASINPUTIMAGE         = 8001
	TMT_ATLASRECT               = 8002
)

TMT property ids

View Source
const (
	BP_PUSHBUTTON       = 1
	BP_RADIOBUTTON      = 2
	BP_CHECKBOX         = 3
	BP_GROUPBOX         = 4
	BP_USERBUTTON       = 5
	BP_COMMANDLINK      = 6
	BP_COMMANDLINKGLYPH = 7
)

Button parts

View Source
const (
	PBS_NORMAL              = 1
	PBS_HOT                 = 2
	PBS_PRESSED             = 3
	PBS_DISABLED            = 4
	PBS_DEFAULTED           = 5
	PBS_DEFAULTED_ANIMATING = 6
)

Push-button states

View Source
const (
	CBS_UNCHECKEDNORMAL   = 1
	CBS_UNCHECKEDHOT      = 2
	CBS_UNCHECKEDPRESSED  = 3
	CBS_UNCHECKEDDISABLED = 4
	CBS_CHECKEDNORMAL     = 5
	CBS_CHECKEDHOT        = 6
	CBS_CHECKEDPRESSED    = 7
	CBS_CHECKEDDISABLED   = 8
	CBS_MIXEDNORMAL       = 9
	CBS_MIXEDHOT          = 10
	CBS_MIXEDPRESSED      = 11
	CBS_MIXEDDISABLED     = 12
	CBS_IMPLICITNORMAL    = 13
	CBS_IMPLICITHOT       = 14
	CBS_IMPLICITPRESSED   = 15
	CBS_IMPLICITDISABLED  = 16
	CBS_EXCLUDEDNORMAL    = 17
	CBS_EXCLUDEDHOT       = 18
	CBS_EXCLUDEDPRESSED   = 19
	CBS_EXCLUDEDDISABLED  = 20
)

CheckBox states

View Source
const (
	LBPSI_HOT              = 1
	LBPSI_HOTSELECTED      = 2
	LBPSI_SELECTED         = 3
	LBPSI_SELECTEDNOTFOCUS = 4
)

LBCP_ITEM states

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 (
	PP_BAR                = 1
	PP_BARVERT            = 2
	PP_CHUNK              = 3
	PP_CHUNKVERT          = 4
	PP_FILL               = 5
	PP_FILLVERT           = 6
	PP_PULSEOVERLAY       = 7
	PP_MOVEOVERLAY        = 8
	PP_PULSEOVERLAYVERT   = 9
	PP_MOVEOVERLAYVERT    = 10
	PP_TRANSPARENTBAR     = 11
	PP_TRANSPARENTBARVERT = 12
)

PROGRESS parts

View Source
const (
	PBFS_NORMAL  = 1
	PBFS_ERROR   = 2
	PBFS_PAUSED  = 3
	PBFS_PARTIAL = 4
)

PP_FILL states

View Source
const (
	PBFVS_NORMAL  = 1
	PBFVS_ERROR   = 2
	PBFVS_PAUSED  = 3
	PBFVS_PARTIAL = 4
)

PP_FILLVERT states

View Source
const (
	TIS_NORMAL   = 1
	TIS_HOT      = 2
	TIS_SELECTED = 3
	TIS_DISABLED = 4
	TIS_FOCUSED  = 5
)

TABP_TABITEM 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 (
	DTT_TEXTCOLOR    = 1 << 0
	DTT_BORDERCOLOR  = 1 << 1
	DTT_SHADOWCOLOR  = 1 << 2
	DTT_SHADOWTYPE   = 1 << 3
	DTT_SHADOWOFFSET = 1 << 4
	DTT_BORDERSIZE   = 1 << 5
	DTT_FONTPROP     = 1 << 6
	DTT_COLORPROP    = 1 << 7
	DTT_STATEID      = 1 << 8
	DTT_CALCRECT     = 1 << 9
	DTT_APPLYOVERLAY = 1 << 10
	DTT_GLOWSIZE     = 1 << 11
	DTT_CALLBACK     = 1 << 12
	DTT_COMPOSITED   = 1 << 13
	DTT_VALIDBITS    = DTT_TEXTCOLOR |
		DTT_BORDERCOLOR |
		DTT_SHADOWCOLOR |
		DTT_SHADOWTYPE |
		DTT_SHADOWOFFSET |
		DTT_BORDERSIZE |
		DTT_FONTPROP |
		DTT_COLORPROP |
		DTT_STATEID |
		DTT_CALCRECT |
		DTT_APPLYOVERLAY |
		DTT_GLOWSIZE |
		DTT_COMPOSITED
)

DTTOPTS flags

View Source
const (
	S_OK           = 0x00000000
	S_FALSE        = 0x00000001
	E_UNEXPECTED   = 0x8000FFFF
	E_NOTIMPL      = 0x80004001
	E_OUTOFMEMORY  = 0x8007000E
	E_INVALIDARG   = 0x80070057
	E_NOINTERFACE  = 0x80004002
	E_POINTER      = 0x80004003
	E_HANDLE       = 0x80070006
	E_ABORT        = 0x80004004
	E_FAIL         = 0x80004005
	E_ACCESSDENIED = 0x80070005
	E_PENDING      = 0x8000000A
)
View Source
const (
	FALSE = 0
	TRUE  = 1
)
View Source
const (
	//  Code Page Default Values.
	//  Please Use Unicode, either UTF-16 (as in WCHAR) or UTF-8 (code page CP_ACP)
	CP_ACP        = 0  // default to ANSI code page
	CP_OEMCP      = 1  // default to OEM  code page
	CP_MACCP      = 2  // default to MAC  code page
	CP_THREAD_ACP = 3  // current thread's ANSI code page
	CP_SYMBOL     = 42 // SYMBOL translations

	CP_UTF7 = 65000 // UTF-7 translation
	CP_UTF8 = 65001 // UTF-8 translation
)
View Source
const (
	PRINTER_ENUM_DEFAULT     = 0x00000001
	PRINTER_ENUM_LOCAL       = 0x00000002
	PRINTER_ENUM_CONNECTIONS = 0x00000004
	PRINTER_ENUM_FAVORITE    = 0x00000004
	PRINTER_ENUM_NAME        = 0x00000008
	PRINTER_ENUM_REMOTE      = 0x00000010
	PRINTER_ENUM_SHARED      = 0x00000020
	PRINTER_ENUM_NETWORK     = 0x00000040
)

EnumPrinters flags

View Source
const (
	AC_SRC_ALPHA = 0x1
)

AlphaBlend operations

View Source
const CBM_INIT = 4
View Source
const CW_USEDEFAULT = ^0x7fffffff
View Source
const (
	DISP_E_MEMBERNOTFOUND = 0x80020003
)
View Source
const DTM_FIRST = 0x1000
View Source
const DTN_FIRST = ^uint32(739) // -740
View Source
const DTN_FIRST2 = ^uint32(752) // -753
View Source
const (
	EM_AUTOURLDETECT = WM_USER + 91
)
View Source
const (
	EM_INSERTTABLE = WM_USER + 232
)

New messages as of Win8

View Source
const (
	ERROR_NO_MORE_ITEMS = 259
)
View Source
const (
	ES_EX_NOCALLOLEINIT = 0x00000000 // Not supported in RE 2.0/3.0
)

Obsolete Edit Style

View Source
const (
	FRERR_BUFFERLENGTHZERO = 0x4001
)

FindText and ReplaceText specific error codes

View Source
const (
	// Used with IRichEditOleCallback::GetContextMenu, this flag will be passed as a "selection type".  It indicates that a context menu for a right-mouse drag drop should be generated.  The IOleObject parameter will really be the IDataObject for the drop
	GCM_RIGHTMOUSEDROP = 0x8000
)
View Source
const (
	HDIS_FOCUSED = 0x00000001
)
View Source
const (
	HDS_NOSIZING = 0x0800
)
View Source
const ICT_RESULTREADSTR = 1
View Source
const (
	LBCP_ITEM = 5
)

ListBox parts

View Source
const LF_FACESIZE = 32
View Source
const MAX_PATH = 260
View Source
const (
	MONITORINFOF_PRIMARY = 0x1
)

MONITORINFO flags

View Source
const (
	OFN_EX_NOPLACESBAR = 0x00000001
)

GetOpenFileName and GetSaveFileName extended flags

View Source
const OLEOP_DOVERB = 1
View Source
const (
	PD_EXCL_COPIESANDCOLLATE = DM_COPIES | DM_COLLATE
)

PrintDlgEx exclusion flags

View Source
const (
	// Additional class for Richedit 6.0
	RICHEDIT60_CLASS = "RICHEDIT60W"
)
View Source
const SB_SIMPLEID = 0xff
View Source
const START_PAGE_GENERAL = 0xffffffff
View Source
const (
	TABP_TABITEM = 1
)

TAB parts

View Source
const TCM_FIRST = 0x1300
View Source
const TCN_FIRST = -550
View Source
const (
	TVGN_CARET = 9
)
View Source
const UDN_DELTAPOS = UDN_FIRST - 1
View Source
const UDN_FIRST = ^uint32(720)
View Source
const YHeightCharPtsMost = 1638

Variables

View Source
var (
	IID_IClassFactory             = IID{0x00000001, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IConnectionPointContainer = IID{0xB196B284, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}}
	IID_IOleClientSite            = IID{0x00000118, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IOleInPlaceObject         = IID{0x00000113, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IOleInPlaceSite           = IID{0x00000119, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IOleObject                = IID{0x00000112, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
	IID_IUnknown                  = IID{0x00000000, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
)
View Source
var (
	PROPID_ACC_NAME             = MSAAPROPID{0x608d3df8, 0x8128, 0x4aa7, [8]byte{0xa4, 0x28, 0xf5, 0x5e, 0x49, 0x26, 0x72, 0x91}}
	PROPID_ACC_VALUE            = MSAAPROPID{0x123fe443, 0x211a, 0x4615, [8]byte{0x95, 0x27, 0xc4, 0x5a, 0x7e, 0x93, 0x71, 0x7a}}
	PROPID_ACC_DESCRIPTION      = MSAAPROPID{0x4d48dfe4, 0xbd3f, 0x491f, [8]byte{0xa6, 0x48, 0x49, 0x2d, 0x6f, 0x20, 0xc5, 0x88}}
	PROPID_ACC_ROLE             = MSAAPROPID{0xcb905ff2, 0x7bd1, 0x4c05, [8]byte{0xb3, 0xc8, 0xe6, 0xc2, 0x41, 0x36, 0x4d, 0x70}}
	PROPID_ACC_STATE            = MSAAPROPID{0xa8d4d5b0, 0x0a21, 0x42d0, [8]byte{0xa5, 0xc0, 0x51, 0x4e, 0x98, 0x4f, 0x45, 0x7b}}
	PROPID_ACC_HELP             = MSAAPROPID{0xc831e11f, 0x44db, 0x4a99, [8]byte{0x97, 0x68, 0xcb, 0x8f, 0x97, 0x8b, 0x72, 0x31}}
	PROPID_ACC_KEYBOARDSHORTCUT = MSAAPROPID{0x7d9bceee, 0x7d1e, 0x4979, [8]byte{0x93, 0x82, 0x51, 0x80, 0xf4, 0x17, 0x2c, 0x34}}
	PROPID_ACC_DEFAULTACTION    = MSAAPROPID{0x180c072b, 0xc27f, 0x43c7, [8]byte{0x99, 0x22, 0xf6, 0x35, 0x62, 0xa4, 0x63, 0x2b}}
	PROPID_ACC_HELPTOPIC        = MSAAPROPID{0x787d1379, 0x8ede, 0x440b, [8]byte{0x8a, 0xec, 0x11, 0xf7, 0xbf, 0x90, 0x30, 0xb3}}
	PROPID_ACC_FOCUS            = MSAAPROPID{0x6eb335df, 0x1c29, 0x4127, [8]byte{0xb1, 0x2c, 0xde, 0xe9, 0xfd, 0x15, 0x7f, 0x2b}}
	PROPID_ACC_SELECTION        = MSAAPROPID{0xb99d073c, 0xd731, 0x405b, [8]byte{0x90, 0x61, 0xd9, 0x5e, 0x8f, 0x84, 0x29, 0x84}}
	PROPID_ACC_PARENT           = MSAAPROPID{0x474c22b6, 0xffc2, 0x467a, [8]byte{0xb1, 0xb5, 0xe9, 0x58, 0xb4, 0x65, 0x73, 0x30}}
	PROPID_ACC_NAV_UP           = MSAAPROPID{0x016e1a2b, 0x1a4e, 0x4767, [8]byte{0x86, 0x12, 0x33, 0x86, 0xf6, 0x69, 0x35, 0xec}}
	PROPID_ACC_NAV_DOWN         = MSAAPROPID{0x031670ed, 0x3cdf, 0x48d2, [8]byte{0x96, 0x13, 0x13, 0x8f, 0x2d, 0xd8, 0xa6, 0x68}}
	PROPID_ACC_NAV_LEFT         = MSAAPROPID{0x228086cb, 0x82f1, 0x4a39, [8]byte{0x87, 0x05, 0xdc, 0xdc, 0x0f, 0xff, 0x92, 0xf5}}
	PROPID_ACC_NAV_RIGHT        = MSAAPROPID{0xcd211d9f, 0xe1cb, 0x4fe5, [8]byte{0xa7, 0x7c, 0x92, 0x0b, 0x88, 0x4d, 0x09, 0x5b}}
	PROPID_ACC_NAV_PREV         = MSAAPROPID{0x776d3891, 0xc73b, 0x4480, [8]byte{0xb3, 0xf6, 0x07, 0x6a, 0x16, 0xa1, 0x5a, 0xf6}}
	PROPID_ACC_NAV_NEXT         = MSAAPROPID{0x1cdc5455, 0x8cd9, 0x4c92, [8]byte{0xa3, 0x71, 0x39, 0x39, 0xa2, 0xfe, 0x3e, 0xee}}
	PROPID_ACC_NAV_FIRSTCHILD   = MSAAPROPID{0xcfd02558, 0x557b, 0x4c67, [8]byte{0x84, 0xf9, 0x2a, 0x09, 0xfc, 0xe4, 0x07, 0x49}}
	PROPID_ACC_NAV_LASTCHILD    = MSAAPROPID{0x302ecaa5, 0x48d5, 0x4f8d, [8]byte{0xb6, 0x71, 0x1a, 0x8d, 0x20, 0xa7, 0x78, 0x32}}
	PROPID_ACC_ROLEMAP          = MSAAPROPID{0xf79acda2, 0x140d, 0x4fe6, [8]byte{0x89, 0x14, 0x20, 0x84, 0x76, 0x32, 0x82, 0x69}}
	PROPID_ACC_VALUEMAP         = MSAAPROPID{0xda1c3d79, 0xfc5c, 0x420e, [8]byte{0xb3, 0x99, 0x9d, 0x15, 0x33, 0x54, 0x9e, 0x75}}
	PROPID_ACC_STATEMAP         = MSAAPROPID{0x43946c5e, 0x0ac0, 0x4042, [8]byte{0xb5, 0x25, 0x07, 0xbb, 0xdb, 0xe1, 0x7f, 0xa7}}
	PROPID_ACC_DESCRIPTIONMAP   = MSAAPROPID{0x1ff1435f, 0x8a14, 0x477b, [8]byte{0xb2, 0x26, 0xa0, 0xab, 0xe2, 0x79, 0x97, 0x5d}}
	PROPID_ACC_DODEFAULTACTION  = MSAAPROPID{0x1ba09523, 0x2e3b, 0x49a6, [8]byte{0xa0, 0x59, 0x59, 0x68, 0x2a, 0x3c, 0x48, 0xfd}}
)
View Source
var (
	IID_IAccPropServer    = IID{0x76c0dbbb, 0x15e0, 0x4e7b, [8]byte{0xb6, 0x1b, 0x20, 0xee, 0xea, 0x20, 0x01, 0xe0}}
	IID_IAccPropServices  = IID{0x6e26e776, 0x04f0, 0x495d, [8]byte{0x80, 0xe4, 0x33, 0x30, 0x35, 0x2e, 0x31, 0x69}}
	CLSID_AccPropServices = CLSID{0xb5f8350b, 0x0548, 0x48b1, [8]byte{0xa6, 0xee, 0x88, 0xbd, 0x00, 0xb4, 0xa5, 0xe7}}
)
View Source
var (
	CLSID_WebBrowser            = CLSID{0x8856F961, 0x340A, 0x11D0, [8]byte{0xA9, 0x6B, 0x00, 0xC0, 0x4F, 0xD7, 0x05, 0xA2}}
	DIID_DWebBrowserEvents2     = IID{0x34A715A0, 0x6587, 0x11D0, [8]byte{0x92, 0x4A, 0x00, 0x20, 0xAF, 0xC7, 0xAC, 0x4D}}
	IID_IWebBrowser2            = IID{0xD30C1661, 0xCDAF, 0x11D0, [8]byte{0x8A, 0x3E, 0x00, 0xC0, 0x4F, 0xC9, 0xE2, 0x6E}}
	IID_IDocHostUIHandler       = IID{0xBD3F23C0, 0xD43E, 0x11CF, [8]byte{0x89, 0x3B, 0x00, 0xAA, 0x00, 0xBD, 0xCE, 0x1A}}
	IID_IOleInPlaceActiveObject = IID{0x00000117, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
)
View Source
var (
	CLSID_TaskbarList = CLSID{0x56FDF344, 0xFD6D, 0x11d0, [8]byte{0x95, 0x8A, 0x00, 0x60, 0x97, 0xC9, 0xA0, 0x90}}
	IID_ITaskbarList3 = IID{0xea1afb91, 0x9e28, 0x4b86, [8]byte{0x90, 0xe9, 0x9e, 0x9f, 0x8a, 0x5e, 0xef, 0xaf}}
)
View Source
var (
	IID_IDispatch = IID{0x00020400, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
)
View Source
var (
	IID_ITextDocument = IID{0x8CC497C0, 0xA1DF, 0x11CE, [8]byte{0x80, 0x98, 0x00, 0xAA, 0x00, 0x47, 0xBE, 0x5D}}
)
View Source
var (
	IID_ITypeInfo = IID{0x00020401, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}
)

Functions

func AbortDoc

func AbortDoc(hdc HDC) int32

func ActivateActCtx

func ActivateActCtx(ctx HANDLE) (uintptr, bool)

func AddClipboardFormatListener

func AddClipboardFormatListener(hwnd HWND) bool

func AddFontResourceEx

func AddFontResourceEx(lpszFilename *uint16, fl uint32, pdv unsafe.Pointer) int32

func AdjustWindowRect

func AdjustWindowRect(lpRect *RECT, dwStyle uint32, bMenu bool) bool

func AlphaBlend

func AlphaBlend(hdcDest HDC, nXOriginDest, nYOriginDest, nWidthDest, nHeightDest int32, hdcSrc HDC, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc int32, ftn BLENDFUNCTION) bool

func AnimateWindow

func AnimateWindow(hwnd HWND, dwTime, dwFlags uint32) bool

func AttachThreadInput

func AttachThreadInput(idAttach int32, idAttachTo int32, fAttach bool) bool

func BSTRToString

func BSTRToString(value *uint16) string

func BitBlt

func BitBlt(hdcDest HDC, nXDest, nYDest, nWidth, nHeight int32, hdcSrc HDC, nXSrc, nYSrc int32, dwRop uint32) bool

func BringWindowToTop

func BringWindowToTop(hwnd HWND) bool

func CallWindowProc

func CallWindowProc(lpPrevWndFunc uintptr, hWnd HWND, Msg uint32, wParam, lParam uintptr) uintptr

func ChangeWindowMessageFilterEx

func ChangeWindowMessageFilterEx(hwnd HWND, msg uint32, action uint32, changeFilterStruct *CHANGEFILTERSTRUCT) bool

func CheckMenuRadioItem

func CheckMenuRadioItem(hmenu HMENU, first, last, check, flags uint32) bool

func ChooseColor

func ChooseColor(lpcc *CHOOSECOLOR) bool

func ChoosePixelFormat

func ChoosePixelFormat(hdc HDC, ppfd *PIXELFORMATDESCRIPTOR) int32

func ClientToScreen

func ClientToScreen(hwnd HWND, lpPoint *POINT) bool

func CloseClipboard

func CloseClipboard() bool

func CloseHandle

func CloseHandle(hObject HANDLE) bool

func CoTaskMemFree

func CoTaskMemFree(pv uintptr)

func CoUninitialize

func CoUninitialize()

func CombineRgn

func CombineRgn(hrgnDest, hrgnSrc1, hrgnSrc2 HRGN, fnCombineMode int32) int32

func CommDlgExtendedError

func CommDlgExtendedError() uint32

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 DeleteMenu

func DeleteMenu(hMenu HMENU, uPosition uint32, uFlags uint32) bool

func DeleteObject

func DeleteObject(hObject HGDIOBJ) bool

func DestroyIcon

func DestroyIcon(hIcon HICON) bool

func DestroyMenu

func DestroyMenu(hMenu HMENU) bool

func DestroyWindow

func DestroyWindow(hWnd HWND) bool

func DeviceCapabilities

func DeviceCapabilities(pDevice, pPort *uint16, fwCapability uint16, pOutput *uint16, pDevMode *DEVMODE) uint32

func DialogBoxParam

func DialogBoxParam(instRes HINSTANCE, name *uint16, parent HWND, proc, param uintptr) int

func DispatchMessage

func DispatchMessage(msg *MSG) uintptr

func DocumentProperties

func DocumentProperties(hWnd HWND, hPrinter HANDLE, pDeviceName *uint16, pDevModeOutput, pDevModeInput *DEVMODE, fMode uint32) int32

func DragAcceptFiles

func DragAcceptFiles(hWnd HWND, fAccept bool) bool

func DragFinish

func DragFinish(hDrop HDROP)

func DragQueryFile

func DragQueryFile(hDrop HDROP, iFile uint, lpszFile *uint16, cch uint) uint

func DrawFocusRect

func DrawFocusRect(hDC HDC, lprc *RECT) bool

func DrawIconEx

func DrawIconEx(hdc HDC, xLeft, yTop int32, hIcon HICON, cxWidth, cyWidth int32, istepIfAniCur uint32, hbrFlickerFreeDraw HBRUSH, diFlags uint32) bool

func DrawMenuBar

func DrawMenuBar(hWnd HWND) bool

func DrawTextEx

func DrawTextEx(hdc HDC, lpchText *uint16, cchText int32, lprc *RECT, dwDTFormat uint32, lpDTParams *DRAWTEXTPARAMS) int32

func Ellipse

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

func EmptyClipboard

func EmptyClipboard() bool

func EnableMenuItem

func EnableMenuItem(hMenu HMENU, uIDEnableItem uint32, uEnable uint32) bool

func EnableWindow

func EnableWindow(hWnd HWND, bEnable bool) bool

func EndDeferWindowPos

func EndDeferWindowPos(hWinPosInfo HDWP) bool

func EndDialog

func EndDialog(hwnd HWND, result int) bool

func EndDoc

func EndDoc(hdc HDC) int32

func EndPage

func EndPage(hdc HDC) int32

func EndPaint

func EndPaint(hwnd HWND, lpPaint *PAINTSTRUCT) bool

func EnumChildWindows

func EnumChildWindows(hWndParent HWND, lpEnumFunc, lParam uintptr) bool

func EnumPrinters

func EnumPrinters(Flags uint32, Name *uint16, Level uint32, pPrinterEnum *byte, cbBuf uint32, pcbNeeded, pcReturned *uint32) bool

func EqualREFIID

func EqualREFIID(a, b REFIID) bool

func ExcludeClipRect

func ExcludeClipRect(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int32) int32

func FAILED

func FAILED(hr HRESULT) bool

func FileTimeToSystemTime

func FileTimeToSystemTime(lpFileTime *FILETIME, lpSystemTime *SYSTEMTIME) bool

func FillRgn

func FillRgn(hdc HDC, hrgn HRGN, hbr HBRUSH) bool

func GET_X_LPARAM

func GET_X_LPARAM(lp uintptr) int32

func GET_Y_LPARAM

func GET_Y_LPARAM(lp uintptr) int32

func GdiFlush

func GdiFlush() bool

func GdiplusShutdown

func GdiplusShutdown()

func GetCaretPos

func GetCaretPos(lpPoint *POINT) bool

func GetClassName

func GetClassName(hWnd HWND, className *uint16, maxCount int) (int, error)

func GetClientRect

func GetClientRect(hWnd HWND, rect *RECT) bool

func GetConsoleTitle

func GetConsoleTitle(lpConsoleTitle *uint16, nSize uint32) uint32

func GetCurrentThreadId

func GetCurrentThreadId() uint32

func GetCursorPos

func GetCursorPos(lpPoint *POINT) bool

func GetDIBits

func GetDIBits(hdc HDC, hbmp HBITMAP, uStartScan uint32, cScanLines uint32, lpvBits *byte, lpbi *BITMAPINFO, uUsage uint32) int32

func GetDefaultPrinter

func GetDefaultPrinter(pszBuffer *uint16, pcchBuffer *uint32) bool

func GetDeviceCaps

func GetDeviceCaps(hdc HDC, nIndex int32) int32

func GetDpiForWindow

func GetDpiForWindow(hwnd HWND) uint32

func GetEnhMetaFileHeader

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

func GetIconInfo

func GetIconInfo(hicon HICON, piconinfo *ICONINFO) bool

func GetKeyState

func GetKeyState(nVirtKey int32) int16

func GetLastError

func GetLastError() uint32

func GetLocaleInfo

func GetLocaleInfo(Locale LCID, LCType LCTYPE, lpLCData *uint16, cchData int32) int32

func GetLogicalDriveStrings

func GetLogicalDriveStrings(nBufferLength uint32, lpBuffer *uint16) uint32

func GetMenuCheckMarkDimensions

func GetMenuCheckMarkDimensions() int32

func GetMenuInfo

func GetMenuInfo(hmenu HMENU, lpcmi *MENUINFO) bool

func GetMenuItemCount

func GetMenuItemCount(hMenu HMENU) int32

func GetMenuItemID

func GetMenuItemID(hMenu HMENU, nPos int32) uint32

func GetMenuItemInfo

func GetMenuItemInfo(hmenu HMENU, item uint32, fByPosition BOOL, lpmii *MENUITEMINFO) bool

func GetMonitorInfo

func GetMonitorInfo(hMonitor HMONITOR, lpmi *MONITORINFO) bool

func GetNumberFormat

func GetNumberFormat(Locale LCID, dwFlags uint32, lpValue *uint16, lpFormat *NUMBERFMT, lpNumberStr *uint16, cchNumber int32) int32

func GetObject

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

func GetOpenFileName

func GetOpenFileName(lpofn *OPENFILENAME) bool

func GetPhysicallyInstalledSystemMemory

func GetPhysicallyInstalledSystemMemory(totalMemoryInKilobytes *uint64) bool

func GetProfileString

func GetProfileString(lpAppName, lpKeyName, lpDefault *uint16, lpReturnedString uintptr, nSize uint32) bool

func GetRawInputData

func GetRawInputData(hRawInput HRAWINPUT, uiCommand uint32, pData unsafe.Pointer, pcbSize *uint32, cBSizeHeader uint32) uint32

func GetRgnBox

func GetRgnBox(hrgn HRGN, lprc *RECT) int32

func GetSaveFileName

func GetSaveFileName(lpofn *OPENFILENAME) bool

func GetScrollInfo

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

func GetSysColor

func GetSysColor(nIndex int) uint32

func GetSystemMetrics

func GetSystemMetrics(nIndex int32) int32

func GetSystemMetricsForDpi

func GetSystemMetricsForDpi(nIndex int32, dpi uint32) int32

func GetTextExtentExPoint

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

func GetTextExtentPoint32

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

func GetTextMetrics

func GetTextMetrics(hdc HDC, lptm *TEXTMETRIC) bool

func GetVersion

func GetVersion() uint32

func GetViewportOrgEx

func GetViewportOrgEx(hdc HDC, lpPoint *POINT) bool

func GetWindowLong

func GetWindowLong(hWnd HWND, index int32) int32

func GetWindowLongPtr

func GetWindowLongPtr(hWnd HWND, index int32) uintptr

func GetWindowPlacement

func GetWindowPlacement(hWnd HWND, lpwndpl *WINDOWPLACEMENT) bool

func GetWindowRect

func GetWindowRect(hWnd HWND, rect *RECT) bool

func GetWindowThreadProcessId

func GetWindowThreadProcessId(hwnd HWND, processId *uint32) uint32

func GlobalLock

func GlobalLock(hMem HGLOBAL) unsafe.Pointer

func GlobalUnlock

func GlobalUnlock(hMem HGLOBAL) bool

func GradientFill

func GradientFill(hdc HDC, pVertex *TRIVERTEX, nVertex uint32, pMesh unsafe.Pointer, nMesh, ulMode uint32) bool

func HIBYTE

func HIBYTE(w uint16) byte

func HIWORD

func HIWORD(dw uint32) uint16

func ImageList_Add

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

func ImageList_AddMasked

func ImageList_AddMasked(himl HIMAGELIST, hbmImage HBITMAP, crMask COLORREF) int32

func ImageList_Destroy

func ImageList_Destroy(hIml HIMAGELIST) bool

func ImageList_DrawEx

func ImageList_DrawEx(himl HIMAGELIST, i int32, hdcDst HDC, x, y, dx, dy int32, rgbBk COLORREF, rgbFg COLORREF, fStyle uint32) bool

func ImageList_ReplaceIcon

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

func InitCommonControlsEx

func InitCommonControlsEx(lpInitCtrls *INITCOMMONCONTROLSEX) bool

func InsertMenuItem

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

func IntersectClipRect

func IntersectClipRect(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect int32) int32

func InvalidateRect

func InvalidateRect(hWnd HWND, lpRect *RECT, bErase bool) bool

func IsAppThemed

func IsAppThemed() bool

func IsChild

func IsChild(hWndParent, hWnd HWND) bool

func IsClipboardFormatAvailable

func IsClipboardFormatAvailable(format uint32) bool

func IsDialogMessage

func IsDialogMessage(hWnd HWND, msg *MSG) bool

func IsIconic

func IsIconic(hWnd HWND) bool

func IsWindowEnabled

func IsWindowEnabled(hWnd HWND) bool

func IsWindowVisible

func IsWindowVisible(hWnd HWND) bool

func IsZoomed

func IsZoomed(hWnd HWND) bool

func KillTimer

func KillTimer(hWnd HWND, uIDEvent uintptr) bool

func LOBYTE

func LOBYTE(w uint16) byte

func LOWORD

func LOWORD(dw uint32) uint16

func LineTo

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

func LoadString

func LoadString(instRes HINSTANCE, id uint32, buf *uint16, length int32) int32

func LockResource

func LockResource(hResData HGLOBAL) uintptr

func MAKEINTRESOURCE

func MAKEINTRESOURCE(id uintptr) *uint16

func MAKELONG

func MAKELONG(lo, hi uint16) uint32

func MAKEWORD

func MAKEWORD(lo, hi byte) uint16

func MessageBeep

func MessageBeep(uType uint32) bool

Plays a waveform sound. uType is the sound to be played. The sounds are set by the user through the Sound control panel application. The following values can be used as a sound:

MB_ICONASTERISK (see MB_ICONINFORMATION)
MB_ICONEXCLAMATION (see MB_ICONWARNING)
MB_ICONERROR (The sound specified as the Windows Critical Stop sound)
MB_ICONHAND (See MB_ICONERROR)
MB_ICONINFORMATION (The sounds specified as the Windows Asterisk sound)
MB_ICONQUESTION (The sound specified as the Windows Question sound)
MB_ICONSTOP (See MB_ICONERROR)
MB_ICONWARNING (The sounds specified as the Windows Exclamation sound)
MB_OK (The sound specified as the Windows Default Beep sound)

The function will return true if the function succeeds, false if otherwise.

func MessageBox

func MessageBox(hWnd HWND, lpText, lpCaption *uint16, uType uint32) int32

func MoveMemory

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

func MoveToEx

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

func MoveWindow

func MoveWindow(hWnd HWND, x, y, width, height int32, repaint bool) bool

func MulDiv

func MulDiv(nNumber, nNumerator, nDenominator int32) int32

func NotifyWinEvent

func NotifyWinEvent(event uint32, hwnd HWND, idObject, idChild int32)

func OleUninitialize

func OleUninitialize()

func OpenClipboard

func OpenClipboard(hWndNewOwner HWND) bool

func PdhAddCounter

func PdhAddCounter(hQuery PDH_HQUERY, szFullCounterPath string, dwUserData uintptr, phCounter *PDH_HCOUNTER) uint32

Adds the specified counter to the query. This is the internationalized version. Preferably, use the function PdhAddEnglishCounter instead. hQuery is the query handle, which has been fetched by PdhOpenQuery. szFullCounterPath is a full, internationalized counter path (this will differ per Windows language version). dwUserData is a 'user-defined value', which becomes part of the counter information. To retrieve this value later, call PdhGetCounterInfo() and access dwQueryUserData of the PDH_COUNTER_INFO structure.

Examples of szFullCounterPath (in an English version of Windows):

\\Processor(_Total)\\% Idle Time
\\Processor(_Total)\\% Processor Time
\\LogicalDisk(C:)\% Free Space

To view all (internationalized...) counters on a system, there are three non-programmatic ways: perfmon utility, the typeperf command, and the the registry editor. perfmon.exe is perhaps the easiest way, because it's basically a full implemention of the pdh.dll API, except with a GUI and all that. The registry setting also provides an interface to the available counters, and can be found at the following key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\CurrentLanguage

This registry key contains several values as follows:

1
1847
2
System
4
Memory
6
% Processor Time
... many, many more

Somehow, these numeric values can be used as szFullCounterPath too:

\2\6 will correspond to \\System\% Processor Time

The typeperf command may also be pretty easy. To find all performance counters, simply execute:

typeperf -qx

func PdhAddEnglishCounter

func PdhAddEnglishCounter(hQuery PDH_HQUERY, szFullCounterPath string, dwUserData uintptr, phCounter *PDH_HCOUNTER) uint32

Adds the specified language-neutral counter to the query. See the PdhAddCounter function. This function only exists on Windows versions higher than Vista.

func PdhCloseQuery

func PdhCloseQuery(hQuery PDH_HQUERY) uint32

Closes all counters contained in the specified query, closes all handles related to the query, and frees all memory associated with the query.

func PdhCollectQueryData

func PdhCollectQueryData(hQuery PDH_HQUERY) uint32

Collects the current raw data value for all counters in the specified query and updates the status code of each counter. With some counters, this function needs to be repeatedly called before the value of the counter can be extracted with PdhGetFormattedCounterValue(). For example, the following code requires at least two calls:

var handle win.PDH_HQUERY
var counterHandle win.PDH_HCOUNTER
ret := win.PdhOpenQuery(0, 0, &handle)
ret = win.PdhAddEnglishCounter(handle, "\\Processor(_Total)\\% Idle Time", 0, &counterHandle)
var derp win.PDH_FMT_COUNTERVALUE_DOUBLE

ret = win.PdhCollectQueryData(handle)
fmt.Printf("Collect return code is %x\n", ret) // return code will be PDH_CSTATUS_INVALID_DATA
ret = win.PdhGetFormattedCounterValueDouble(counterHandle, 0, &derp)

ret = win.PdhCollectQueryData(handle)
fmt.Printf("Collect return code is %x\n", ret) // return code will be ERROR_SUCCESS
ret = win.PdhGetFormattedCounterValueDouble(counterHandle, 0, &derp)

The PdhCollectQueryData will return an error in the first call because it needs two values for displaying the correct data for the processor idle time. The second call will have a 0 return code.

func PdhGetFormattedCounterArrayDouble

func PdhGetFormattedCounterArrayDouble(hCounter PDH_HCOUNTER, lpdwBufferSize *uint32, lpdwBufferCount *uint32, itemBuffer *PDH_FMT_COUNTERVALUE_ITEM_DOUBLE) uint32

Returns an array of formatted counter values. Use this function when you want to format the counter values of a counter that contains a wildcard character for the instance name. The itemBuffer must a slice of type PDH_FMT_COUNTERVALUE_ITEM_DOUBLE. An example of how this function can be used:

okPath := "\\Process(*)\\% Processor Time" // notice the wildcard * character

// ommitted all necessary stuff ...

var bufSize uint32
var bufCount uint32
var size uint32 = uint32(unsafe.Sizeof(win.PDH_FMT_COUNTERVALUE_ITEM_DOUBLE{}))
var emptyBuf [1]win.PDH_FMT_COUNTERVALUE_ITEM_DOUBLE // need at least 1 addressable null ptr.

for {
	// collect
	ret := win.PdhCollectQueryData(queryHandle)
	if ret == win.ERROR_SUCCESS {
		ret = win.PdhGetFormattedCounterArrayDouble(counterHandle, &bufSize, &bufCount, &emptyBuf[0]) // uses null ptr here according to MSDN.
		if ret == win.PDH_MORE_DATA {
			filledBuf := make([]win.PDH_FMT_COUNTERVALUE_ITEM_DOUBLE, bufCount*size)
			ret = win.PdhGetFormattedCounterArrayDouble(counterHandle, &bufSize, &bufCount, &filledBuf[0])
			for i := 0; i < int(bufCount); i++ {
				c := filledBuf[i]
				var s string = win.UTF16PtrToString(c.SzName)
				fmt.Printf("Index %d -> %s, value %v\n", i, s, c.FmtValue.DoubleValue)
			}

			filledBuf = nil
			// Need to at least set bufSize to zero, because if not, the function will not
			// return PDH_MORE_DATA and will not set the bufSize.
			bufCount = 0
			bufSize = 0
		}

		time.Sleep(2000 * time.Millisecond)
	}
}

func PdhGetFormattedCounterArrayLarge

func PdhGetFormattedCounterArrayLarge(hCounter PDH_HCOUNTER, lpdwBufferSize *uint32, lpdwBufferCount *uint32, itemBuffer *PDH_FMT_COUNTERVALUE_ITEM_LARGE) uint32

Returns an array of formatted counter values. Use this function when you want to format the counter values of a counter that contains a wildcard character for the instance name. The itemBuffer must a slice of type PDH_FMT_COUNTERVALUE_ITEM_LARGE. For an example usage, see PdhGetFormattedCounterArrayDouble.

func PdhGetFormattedCounterArrayLong

func PdhGetFormattedCounterArrayLong(hCounter PDH_HCOUNTER, lpdwBufferSize *uint32, lpdwBufferCount *uint32, itemBuffer *PDH_FMT_COUNTERVALUE_ITEM_LONG) uint32

Returns an array of formatted counter values. Use this function when you want to format the counter values of a counter that contains a wildcard character for the instance name. The itemBuffer must a slice of type PDH_FMT_COUNTERVALUE_ITEM_LONG. For an example usage, see PdhGetFormattedCounterArrayDouble.

BUG(krpors): See description of PdhGetFormattedCounterValueLong().

func PdhGetFormattedCounterValueDouble

func PdhGetFormattedCounterValueDouble(hCounter PDH_HCOUNTER, lpdwType *uint32, pValue *PDH_FMT_COUNTERVALUE_DOUBLE) uint32

Formats the given hCounter using a 'double'. The result is set into the specialized union struct pValue. This function does not directly translate to a Windows counterpart due to union specialization tricks.

func PdhGetFormattedCounterValueLarge

func PdhGetFormattedCounterValueLarge(hCounter PDH_HCOUNTER, lpdwType *uint32, pValue *PDH_FMT_COUNTERVALUE_LARGE) uint32

Formats the given hCounter using a large int (int64). The result is set into the specialized union struct pValue. This function does not directly translate to a Windows counterpart due to union specialization tricks.

func PdhGetFormattedCounterValueLong

func PdhGetFormattedCounterValueLong(hCounter PDH_HCOUNTER, lpdwType *uint32, pValue *PDH_FMT_COUNTERVALUE_LONG) uint32

Formats the given hCounter using a 'long'. The result is set into the specialized union struct pValue. This function does not directly translate to a Windows counterpart due to union specialization tricks.

BUG(krpors): Testing this function on multiple systems yielded inconsistent results. For instance, the pValue.LongValue kept the value '192' on test system A, but on B this was '0', while the padding bytes of the struct got the correct value. Until someone can figure out this behaviour, prefer to use the Double or Large counterparts instead. These functions provide actually the same data, except in a different, working format.

func PdhOpenQuery

func PdhOpenQuery(szDataSource uintptr, dwUserData uintptr, phQuery *PDH_HQUERY) uint32

Creates a new query that is used to manage the collection of performance data. szDataSource is a null terminated string that specifies the name of the log file from which to retrieve the performance data. If 0, performance data is collected from a real-time data source. dwUserData is a user-defined value to associate with this query. To retrieve the user data later, call PdhGetCounterInfo and access dwQueryUserData of the PDH_COUNTER_INFO structure. phQuery is the handle to the query, and must be used in subsequent calls. This function returns a PDH_ constant error code, or ERROR_SUCCESS if the call succeeded.

func PdhValidatePath

func PdhValidatePath(path string) uint32

Validates a path. Will return ERROR_SUCCESS when ok, or PDH_CSTATUS_BAD_COUNTERNAME when the path is erroneous.

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 Polyline

func Polyline(hdc HDC, lppt unsafe.Pointer, cPoints int32) bool

func PostMessage

func PostMessage(hWnd HWND, msg uint32, wParam, lParam uintptr) uintptr

func PostQuitMessage

func PostQuitMessage(exitCode int32)

func Rectangle_

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

func RedrawWindow

func RedrawWindow(hWnd HWND, lprcUpdate *RECT, hrgnUpdate HRGN, flags uint32) bool

func RegCloseKey

func RegCloseKey(hKey HKEY) int32

func RegEnumValue

func RegEnumValue(hKey HKEY, index uint32, lpValueName *uint16, lpcchValueName *uint32, lpReserved, lpType *uint32, lpData *byte, lpcbData *uint32) int32

func RegOpenKeyEx

func RegOpenKeyEx(hKey HKEY, lpSubKey *uint16, ulOptions uint32, samDesired REGSAM, phkResult *HKEY) int32

func RegQueryValueEx

func RegQueryValueEx(hKey HKEY, lpValueName *uint16, lpReserved, lpType *uint32, lpData *byte, lpcbData *uint32) int32

func RegSetValueEx

func RegSetValueEx(hKey HKEY, lpValueName *uint16, lpReserved, lpDataType uint64, lpData *byte, cbData uint32) int32

func RegisterRawInputDevices

func RegisterRawInputDevices(pRawInputDevices *RAWINPUTDEVICE, uiNumDevices uint32, cbSize uint32) bool

func RegisterWindowMessage

func RegisterWindowMessage(lpString *uint16) uint32

func ReleaseCapture

func ReleaseCapture() bool

func ReleaseDC

func ReleaseDC(hWnd HWND, hDC HDC) bool

func RemoveFontMemResourceEx

func RemoveFontMemResourceEx(h HANDLE) bool

func RemoveFontResourceEx

func RemoveFontResourceEx(lpszFilename *uint16, fl uint32, pdv unsafe.Pointer) bool

func RemoveMenu

func RemoveMenu(hMenu HMENU, uPosition, uFlags uint32) bool

func RestoreDC

func RestoreDC(hdc HDC, nSaveDC int32) bool

func RoundRect

func RoundRect(hdc HDC, nLeftRect, nTopRect, nRightRect, nBottomRect, nWidth, nHeight int32) bool

func SHBrowseForFolder

func SHBrowseForFolder(lpbi *BROWSEINFO) uintptr

func SHGetFileInfo

func SHGetFileInfo(pszPath *uint16, dwFileAttributes uint32, psfi *SHFILEINFO, cbFileInfo, uFlags uint32) uintptr

func SHGetPathFromIDList

func SHGetPathFromIDList(pidl uintptr, pszPath *uint16) bool

func SHGetSpecialFolderPath

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

func SUCCEEDED

func SUCCEEDED(hr HRESULT) bool

func SaveDC

func SaveDC(hdc HDC) int32

func ScreenToClient

func ScreenToClient(hWnd HWND, point *POINT) bool

func SendDlgItemMessage

func SendDlgItemMessage(hWnd HWND, id int32, msg uint32, wParam, lParam uintptr) uintptr

func SendInput

func SendInput(nInputs uint32, pInputs unsafe.Pointer, cbSize int32) uint32

pInputs expects a unsafe.Pointer to a slice of MOUSE_INPUT or KEYBD_INPUT or HARDWARE_INPUT structs.

func SendMessage

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

func SetBkMode

func SetBkMode(hdc HDC, iBkMode int32) int32

func SetBrushOrgEx

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

func SetCursorPos

func SetCursorPos(X, Y int32) bool

func SetDIBits

func SetDIBits(hdc HDC, hbmp HBITMAP, uStartScan, cScanLines uint32, lpvBits *byte, lpbmi *BITMAPINFO, fuColorUse uint32) int32

func SetForegroundWindow

func SetForegroundWindow(hWnd HWND) bool

func SetLastError

func SetLastError(dwErrorCode uint32)

func SetMenu

func SetMenu(hWnd HWND, hMenu HMENU) bool

func SetMenuDefaultItem

func SetMenuDefaultItem(hMenu HMENU, uItem uint32, fByPosition bool) bool

func SetMenuInfo

func SetMenuInfo(hmenu HMENU, lpcmi *MENUINFO) bool

func SetMenuItemBitmaps

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

func SetMenuItemInfo

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

func SetPixelFormat

func SetPixelFormat(hdc HDC, iPixelFormat int32, ppfd *PIXELFORMATDESCRIPTOR) bool

func SetScrollInfo

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

func SetStretchBltMode

func SetStretchBltMode(hdc HDC, iStretchMode int32) int32

func SetTimer

func SetTimer(hWnd HWND, nIDEvent uintptr, uElapse uint32, lpTimerFunc uintptr) uintptr

func SetWindowLong

func SetWindowLong(hWnd HWND, index, value int32) int32

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, width, height int32, flags uint32) bool

func ShellExecute

func ShellExecute(hWnd HWND, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int) bool

func Shell_NotifyIcon

func Shell_NotifyIcon(dwMessage uint32, lpdata *NOTIFYICONDATA) bool

func ShowWindow

func ShowWindow(hWnd HWND, nCmdShow int32) bool

func SizeofResource

func SizeofResource(hModule HMODULE, hResInfo HRSRC) uint32

func StartDoc

func StartDoc(hdc HDC, lpdi *DOCINFO) int32

func StartPage

func StartPage(hdc HDC) int32

func StretchBlt

func StretchBlt(hdcDest HDC, nXOriginDest, nYOriginDest, nWidthDest, nHeightDest int32, hdcSrc HDC, nXOriginSrc, nYOriginSrc, nWidthSrc, nHeightSrc int32, dwRop uint32) bool

func StringToBSTR

func StringToBSTR(value string) *uint16

func SwapBuffers

func SwapBuffers(hdc HDC) bool

func SysAllocString

func SysAllocString(s string) *uint16

func SysFreeString

func SysFreeString(bstr *uint16)

func SysStringLen

func SysStringLen(bstr *uint16) uint32

func SystemParametersInfo

func SystemParametersInfo(uiAction, uiParam uint32, pvParam unsafe.Pointer, fWinIni uint32) bool

func SystemTimeToFileTime

func SystemTimeToFileTime(lpSystemTime *SYSTEMTIME, lpFileTime *FILETIME) bool

func TextOut

func TextOut(hdc HDC, nXStart, nYStart int32, lpString *uint16, cchString int32) bool

func TrackMouseEvent

func TrackMouseEvent(lpEventTrack *TRACKMOUSEEVENT) bool

func TrackPopupMenu

func TrackPopupMenu(hMenu HMENU, uFlags uint32, x, y int32, nReserved int32, hWnd HWND, prcRect *RECT) uint32

func TranslateMessage

func TranslateMessage(msg *MSG) bool

func TransparentBlt

func TransparentBlt(hdcDest HDC, xoriginDest, yoriginDest, wDest, hDest int32, hdcSrc HDC, xoriginSrc, yoriginSrc, wSrc, hSrc int32, crTransparent uint32) bool

func UTF16PtrToString

func UTF16PtrToString(s *uint16) string

func UnhookWinEvent

func UnhookWinEvent(hWinHookEvent HWINEVENTHOOK) bool

func UnregisterClass

func UnregisterClass(name *uint16) bool

func UpdateWindow

func UpdateWindow(hwnd HWND) bool

func VariantBSTRToString

func VariantBSTRToString(value *VAR_BSTR) string

func VariantBoolToBool

func VariantBoolToBool(value *VAR_BOOL) bool

func VariantI4ToInt

func VariantI4ToInt(value *VAR_I4) int32

func WglCopyContext

func WglCopyContext(hglrcSrc, hglrcDst HGLRC, mask uint) bool

func WglDeleteContext

func WglDeleteContext(hglrc HGLRC) bool

func WglDescribeLayerPlane

func WglDescribeLayerPlane(hdc HDC, iPixelFormat, iLayerPlane int, nBytes uint8, plpd *LAYERPLANEDESCRIPTOR) bool

func WglGetLayerPaletteEntries

func WglGetLayerPaletteEntries(hdc HDC, iLayerPlane, iStart, cEntries int, pcr *COLORREF) int

func WglGetProcAddress

func WglGetProcAddress(lpszProc *byte) uintptr

func WglMakeCurrent

func WglMakeCurrent(hdc HDC, hglrc HGLRC) bool

func WglRealizeLayerPalette

func WglRealizeLayerPalette(hdc HDC, iLayerPlane int, bRealize bool) bool

func WglSetLayerPaletteEntries

func WglSetLayerPaletteEntries(hdc HDC, iLayerPlane, iStart, cEntries int, pcr *COLORREF) int

func WglShareLists

func WglShareLists(hglrc1, hglrc2 HGLRC) bool

func WglSwapLayerBuffers

func WglSwapLayerBuffers(hdc HDC, fuPlanes uint) bool

func WglUseFontBitmaps

func WglUseFontBitmaps(hdc HDC, first, count, listbase uint32) bool

func WglUseFontOutlines

func WglUseFontOutlines(hdc HDC, first, count, listbase uint32, deviation, extrusion float32, format int, pgmf *GLYPHMETRICSFLOAT) bool

Types

type ACCESS_MASK

type ACCESS_MASK uint32

type ACTCTX

type ACTCTX struct {
	Flags                 uint32
	Source                *uint16 // UTF-16 string
	ProcessorArchitecture uint16
	LangID                uint16
	AssemblyDirectory     *uint16 // UTF-16 string
	ResourceName          *uint16 // UTF-16 string
	ApplicationName       *uint16 // UTF-16 string
	Module                HMODULE
	// contains filtered or unexported fields
}

type ARGB

type ARGB uint32

type ATOM

type ATOM uint16

func RegisterClassEx

func RegisterClassEx(windowClass *WNDCLASSEX) ATOM

type AnnoScope

type AnnoScope int

type AutoCorrectProc

type AutoCorrectProc func(langid LANGID, pszBefore *uint16, pszAfter *uint16, cchAfter int32, pcchReplaced *int32) int

AutoCorrect callback

type BIDIOPTIONS

type BIDIOPTIONS struct {
	CbSize   uint32
	WMask    uint16
	WEffects uint16
}

BiDi specific features

type BITMAP

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

type BITMAPINFO

type BITMAPINFO struct {
	BmiHeader BITMAPINFOHEADER
	BmiColors *RGBQUAD
}

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
}

type BITMAPV4HEADER

type BITMAPV4HEADER struct {
	BITMAPINFOHEADER
	BV4RedMask    uint32
	BV4GreenMask  uint32
	BV4BlueMask   uint32
	BV4AlphaMask  uint32
	BV4CSType     uint32
	BV4Endpoints  CIEXYZTRIPLE
	BV4GammaRed   uint32
	BV4GammaGreen uint32
	BV4GammaBlue  uint32
}

type BITMAPV5HEADER

type BITMAPV5HEADER struct {
	BITMAPV4HEADER
	BV5Intent      uint32
	BV5ProfileData uint32
	BV5ProfileSize uint32
	BV5Reserved    uint32
}

type BLENDFUNCTION

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

type BOOL

type BOOL int32

func BoolToBOOL

func BoolToBOOL(value bool) BOOL

func GetMessage

func GetMessage(msg *MSG, hWnd HWND, msgFilterMin, msgFilterMax uint32) BOOL

func SetRect

func SetRect(lprc *RECT, xLeft, yTop, xRight, yBottom uint32) BOOL

func TrackPopupMenuEx

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

type BROWSEINFO

type BROWSEINFO struct {
	HwndOwner      HWND
	PidlRoot       uintptr
	PszDisplayName *uint16
	LpszTitle      *uint16
	UlFlags        uint32
	Lpfn           uintptr
	LParam         uintptr
	IImage         int32
}

type CHANGEFILTERSTRUCT

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

type CHARFORMAT

type CHARFORMAT struct {
	CbSize          uint32
	DwMask          uint32
	DwEffects       uint32
	YHeight         int32
	YOffset         int32
	CrTextColor     COLORREF
	BCharSet        byte
	BPitchAndFamily byte
	SzFaceName      [LF_FACESIZE]uint16
}

type CHARFORMAT2

type CHARFORMAT2 struct {
	CHARFORMAT
	WWeight         uint16   // Font weight (LOGFONT value)
	SSpacing        int16    // Amount to space between letters
	CrBackColor     COLORREF // Background color
	Lcid            LCID     // Locale ID
	DwCookie        uint32   // Client cookie opaque to RichEdit
	SStyle          int16    // Style handle
	WKerning        uint16   // Twip size above which to kern char pair
	BUnderlineType  byte     // Underline type
	BAnimation      byte     // Animated text like marching ants
	BRevAuthor      byte     // Revision author index
	BUnderlineColor byte     // Underline color
}

type CHARRANGE

type CHARRANGE struct {
	CpMin int32
	CpMax int32
}

type CHOOSECOLOR

type CHOOSECOLOR struct {
	LStructSize    uint32
	HwndOwner      HWND
	HInstance      HWND
	RgbResult      COLORREF
	LpCustColors   *[16]COLORREF
	Flags          uint32
	LCustData      uintptr
	LpfnHook       uintptr
	LpTemplateName *uint16
}

type CIEXYZ

type CIEXYZ struct {
	CiexyzX, CiexyzY, CiexyzZ int32 // FXPT2DOT30
}

type CIEXYZTRIPLE

type CIEXYZTRIPLE struct {
	CiexyzRed, CiexyzGreen, CiexyzBlue CIEXYZ
}

type CLIPBOARDFORMAT

type CLIPBOARDFORMAT struct {
	Nmhdr NMHDR
	Cf    CLIPFORMAT
}

type CLIPFORMAT

type CLIPFORMAT uint16

type CLSID

type CLSID syscall.GUID

type COAUTHIDENTITY

type COAUTHIDENTITY struct {
	User           *uint16
	UserLength     uint32
	Domain         *uint16
	DomainLength   uint32
	Password       *uint16
	PasswordLength uint32
	Flags          uint32
}

type COAUTHINFO

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

type COLORREF

type COLORREF uint32

func GetBkColor

func GetBkColor(hdc HDC) COLORREF

func GetPixel

func GetPixel(hdc HDC, nXPos, nYPos int32) COLORREF

func GetTextColor

func GetTextColor(hdc HDC) COLORREF

func RGB

func RGB(r, g, b byte) COLORREF

func SetBkColor

func SetBkColor(hdc HDC, crColor COLORREF) COLORREF

func SetPixel

func SetPixel(hdc HDC, X, Y int32, crColor COLORREF) COLORREF

func SetTextColor

func SetTextColor(hdc HDC, crColor COLORREF) COLORREF

func SetViewportOrgEx

func SetViewportOrgEx(hdc HDC, x, y int32, lpPoint *POINT) COLORREF

type COMPCOLOR

type COMPCOLOR struct {
	CrText       COLORREF
	CrBackground COLORREF
	DwEffects    uint32
}

East Asia specific

type COSERVERINFO

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

type CREATESTRUCT

type CREATESTRUCT struct {
	CreateParams    uintptr
	Instance        HINSTANCE
	Menu            HMENU
	Parent          HWND
	Cy              int32
	Cx              int32
	Y               int32
	X               int32
	Style           int32
	Name, ClassName uintptr
	ExStyle         uint32
}

type CSIDL

type CSIDL uint32

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
}

type DEVNAMES

type DEVNAMES struct {
	WDriverOffset uint16
	WDeviceOffset uint16
	WOutputOffset uint16
	WDefault      uint16
}

type DIBSECTION

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

type DISPID

type DISPID int32
const (
	DISPID_BEFORENAVIGATE             DISPID = 100
	DISPID_NAVIGATECOMPLETE           DISPID = 101
	DISPID_STATUSTEXTCHANGE           DISPID = 102
	DISPID_QUIT                       DISPID = 103
	DISPID_DOWNLOADCOMPLETE           DISPID = 104
	DISPID_COMMANDSTATECHANGE         DISPID = 105
	DISPID_DOWNLOADBEGIN              DISPID = 106
	DISPID_NEWWINDOW                  DISPID = 107
	DISPID_PROGRESSCHANGE             DISPID = 108
	DISPID_WINDOWMOVE                 DISPID = 109
	DISPID_WINDOWRESIZE               DISPID = 110
	DISPID_WINDOWACTIVATE             DISPID = 111
	DISPID_PROPERTYCHANGE             DISPID = 112
	DISPID_TITLECHANGE                DISPID = 113
	DISPID_TITLEICONCHANGE            DISPID = 114
	DISPID_FRAMEBEFORENAVIGATE        DISPID = 200
	DISPID_FRAMENAVIGATECOMPLETE      DISPID = 201
	DISPID_FRAMENEWWINDOW             DISPID = 204
	DISPID_BEFORENAVIGATE2            DISPID = 250
	DISPID_NEWWINDOW2                 DISPID = 251
	DISPID_NAVIGATECOMPLETE2          DISPID = 252
	DISPID_ONQUIT                     DISPID = 253
	DISPID_ONVISIBLE                  DISPID = 254
	DISPID_ONTOOLBAR                  DISPID = 255
	DISPID_ONMENUBAR                  DISPID = 256
	DISPID_ONSTATUSBAR                DISPID = 257
	DISPID_ONFULLSCREEN               DISPID = 258
	DISPID_DOCUMENTCOMPLETE           DISPID = 259
	DISPID_ONTHEATERMODE              DISPID = 260
	DISPID_ONADDRESSBAR               DISPID = 261
	DISPID_WINDOWSETRESIZABLE         DISPID = 262
	DISPID_WINDOWCLOSING              DISPID = 263
	DISPID_WINDOWSETLEFT              DISPID = 264
	DISPID_WINDOWSETTOP               DISPID = 265
	DISPID_WINDOWSETWIDTH             DISPID = 266
	DISPID_WINDOWSETHEIGHT            DISPID = 267
	DISPID_CLIENTTOHOSTWINDOW         DISPID = 268
	DISPID_SETSECURELOCKICON          DISPID = 269
	DISPID_FILEDOWNLOAD               DISPID = 270
	DISPID_NAVIGATEERROR              DISPID = 271
	DISPID_PRIVACYIMPACTEDSTATECHANGE DISPID = 272
	DISPID_NEWWINDOW3                 DISPID = 273
)

type DISPPARAMS

type DISPPARAMS struct {
	Rgvarg            *VARIANTARG
	RgdispidNamedArgs *DISPID
	CArgs             int32
	CNamedArgs        int32
}

type DOCHOSTUIINFO

type DOCHOSTUIINFO struct {
	CbSize        uint32
	DwFlags       uint32
	DwDoubleClick uint32
	PchHostCss    *uint16
	PchHostNS     *uint16
}

type DOCINFO

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

type DRAWITEMSTRUCT

type DRAWITEMSTRUCT struct {
	CtlType    uint32
	CtlID      uint32
	ItemID     int32
	ItemAction uint32
	ItemState  uint32
	HwndItem   HWND
	HDC        HDC
	RcItem     RECT
	ItemData   uintptr
}

type DRAWTEXTPARAMS

type DRAWTEXTPARAMS struct {
	CbSize        uint32
	ITabLength    int32
	ILeftMargin   int32
	IRightMargin  int32
	UiLengthDrawn uint32
}

type DTTOPTS

type DTTOPTS struct {
	DwSize              uint32
	DwFlags             uint32
	CrText              COLORREF
	CrBorder            COLORREF
	CrShadow            COLORREF
	ITextShadowType     int32
	PtShadowOffset      POINT
	IBorderSize         int32
	IFontPropId         int32
	IColorPropId        int32
	IStateId            int32
	FApplyOverlay       BOOL
	IGlowSize           int32
	PfnDrawTextCallback uintptr
	LParam              uintptr
}

type DWebBrowserEvents2

type DWebBrowserEvents2 struct {
	LpVtbl *DWebBrowserEvents2Vtbl
}

type DWebBrowserEvents2Vtbl

type DWebBrowserEvents2Vtbl struct {
	QueryInterface   uintptr
	AddRef           uintptr
	Release          uintptr
	GetTypeInfoCount uintptr
	GetTypeInfo      uintptr
	GetIDsOfNames    uintptr
	Invoke           uintptr
}

type EDITSTREAM

type EDITSTREAM struct {
	DwCookie    uintptr // User value passed to callback as first parameter
	DwError     uint32  // Last error
	PfnCallback uintptr
}

type ENCORRECTTEXT

type ENCORRECTTEXT struct {
	Nmhdr  NMHDR
	Chrg   CHARRANGE
	Seltyp uint16
}

PenWin specific

type ENDCOMPOSITIONNOTIFY

type ENDCOMPOSITIONNOTIFY struct {
	Nmhdr  NMHDR
	DwCode uint32
}

Notification structure for EN_ENDCOMPOSITION

type ENDROPFILES

type ENDROPFILES struct {
	Nmhdr      NMHDR
	HDrop      HANDLE
	Cp         int32
	FProtected BOOL
}

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
}
type ENLINK struct {
	Nmhdr  NMHDR
	Msg    uint32
	WParam uintptr
	LParam uintptr
	Chrg   CHARRANGE
}

type ENLOWFIRTF

type ENLOWFIRTF struct {
	Nmhdr     NMHDR
	SzControl *byte
}

type ENOLEOPFAILED

type ENOLEOPFAILED struct {
	Nmhdr NMHDR
	Iob   int32
	LOper int32
	Hr    HRESULT
}

type ENPROTECTED

type ENPROTECTED struct {
	Nmhdr  NMHDR
	Msg    uint32
	WParam uintptr
	LParam uintptr
	Chrg   CHARRANGE
}

type ENSAVECLIPBOARD

type ENSAVECLIPBOARD struct {
	Nmhdr        NMHDR
	CObjectCount int32
	Cch          int32
}

type EXCEPINFO

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

type FILETIME

type FILETIME struct {
	DwLowDateTime  uint32
	DwHighDateTime uint32
}

type FINDTEXT

type FINDTEXT struct {
	Chrg      CHARRANGE
	LpstrText *uint16
}

type FINDTEXTEX

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

type FORMATRANGE

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

type GETCONTEXTMENUEX

type GETCONTEXTMENUEX struct {
	Chrg       CHARRANGE
	DwFlags    uint32
	Pt         POINT
	PvReserved uintptr
}

type GETTEXTEX

type GETTEXTEX struct {
	Cb            uint32 // Count of bytes in the string
	Flags         uint32 // Flags (see the GT_XXX defines
	Codepage      uint32 // Code page for translation (CP_ACP for sys default, 1200 for Unicode, -1 for control default)
	LpDefaultChar *byte  // Replacement for unmappable chars
	LpUsedDefChar *BOOL  // Pointer to flag set when def char used
}

EM_GETTEXTEX info; this struct is passed in the wparam of the message

type GETTEXTLENGTHEX

type GETTEXTLENGTHEX struct {
	Flags    uint32 // Flags (see GTL_XXX defines)
	Codepage uint32 // Code page for translation (CP_ACP for default, 1200 for Unicode)
}

EM_GETTEXTLENGTHEX info; this struct is passed in the wparam of the msg

type GLYPHMETRICSFLOAT

type GLYPHMETRICSFLOAT struct {
	GmfBlackBoxX     float32
	GmfBlackBoxY     float32
	GmfptGlyphOrigin POINTFLOAT
	GmfCellIncX      float32
	GmfCellIncY      float32
}

type GRADIENT_RECT

type GRADIENT_RECT struct {
	UpperLeft  uint32
	LowerRight uint32
}

type GRADIENT_TRIANGLE

type GRADIENT_TRIANGLE struct {
	Vertex1 uint32
	Vertex2 uint32
	Vertex3 uint32
}

type GROUPTYPINGCHANGE

type GROUPTYPINGCHANGE struct {
	Nmhdr        NMHDR
	FGroupTyping BOOL
}

type GdiplusStartupInput

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

type GdiplusStartupOutput

type GdiplusStartupOutput struct {
	NotificationHook   uintptr
	NotificationUnhook uintptr
}

type GpBitmap

type GpBitmap GpImage

type GpImage

type GpImage struct{}

type GpStatus

type GpStatus int32
const (
	Ok                        GpStatus = 0
	GenericError              GpStatus = 1
	InvalidParameter          GpStatus = 2
	OutOfMemory               GpStatus = 3
	ObjectBusy                GpStatus = 4
	InsufficientBuffer        GpStatus = 5
	NotImplemented            GpStatus = 6
	Win32Error                GpStatus = 7
	WrongState                GpStatus = 8
	Aborted                   GpStatus = 9
	FileNotFound              GpStatus = 10
	ValueOverflow             GpStatus = 11
	AccessDenied              GpStatus = 12
	UnknownImageFormat        GpStatus = 13
	FontFamilyNotFound        GpStatus = 14
	FontStyleNotFound         GpStatus = 15
	NotTrueTypeFont           GpStatus = 16
	UnsupportedGdiplusVersion GpStatus = 17
	GdiplusNotInitialized     GpStatus = 18
	PropertyNotFound          GpStatus = 19
	PropertyNotSupported      GpStatus = 20
	ProfileNotFound           GpStatus = 21
)

func GdipCreateBitmapFromFile

func GdipCreateBitmapFromFile(filename *uint16, bitmap **GpBitmap) GpStatus

func GdipCreateBitmapFromHBITMAP

func GdipCreateBitmapFromHBITMAP(hbm HBITMAP, hpal HPALETTE, bitmap **GpBitmap) GpStatus

func GdipCreateHBITMAPFromBitmap

func GdipCreateHBITMAPFromBitmap(bitmap *GpBitmap, hbmReturn *HBITMAP, background ARGB) GpStatus

func GdipDisposeImage

func GdipDisposeImage(image *GpImage) GpStatus

func GdiplusStartup

func GdiplusStartup(input *GdiplusStartupInput, output *GdiplusStartupOutput) GpStatus

func (GpStatus) String

func (s GpStatus) String() string

type HACCEL

type HACCEL HANDLE

type HANDLE

type HANDLE uintptr

func AddFontMemResourceEx

func AddFontMemResourceEx(pFileView uintptr, cjSize uint32, pvReserved unsafe.Pointer, pNumFonts *uint32) HANDLE

func CreateActCtx

func CreateActCtx(ctx *ACTCTX) HANDLE

func GetClipboardData

func GetClipboardData(uFormat uint32) HANDLE

func LoadImage

func LoadImage(hinst HINSTANCE, lpszName *uint16, uType uint32, cxDesired, cyDesired int32, fuLoad uint32) HANDLE

func SetClipboardData

func SetClipboardData(uFormat uint32, hMem HANDLE) HANDLE

type HARDWAREINPUT

type HARDWAREINPUT struct {
	UMsg    uint32
	WParamL uint16
	WParamH uint16
	Unused  [16]byte
}

type HARDWARE_INPUT

type HARDWARE_INPUT struct {
	Type uint32
	Hi   HARDWAREINPUT
}

type HBITMAP

type HBITMAP HGDIOBJ

func CreateBitmap

func CreateBitmap(nWidth, nHeight int32, cPlanes, cBitsPerPel uint32, lpvBits unsafe.Pointer) HBITMAP

func CreateCompatibleBitmap

func CreateCompatibleBitmap(hdc HDC, nWidth, nHeight int32) HBITMAP

func CreateDIBSection

func CreateDIBSection(hdc HDC, pbmih *BITMAPINFOHEADER, iUsage uint32, ppvBits *unsafe.Pointer, hSection HANDLE, dwOffset uint32) HBITMAP

type HBRUSH

type HBRUSH HGDIOBJ

func CreateBrushIndirect

func CreateBrushIndirect(lplb *LOGBRUSH) HBRUSH

func CreatePatternBrush

func CreatePatternBrush(hbmp HBITMAP) HBRUSH

func GetSysColorBrush

func GetSysColorBrush(nIndex int) HBRUSH

type HCURSOR

type HCURSOR HANDLE

func LoadCursor

func LoadCursor(hInstance HINSTANCE, lpCursorName *uint16) HCURSOR

func SetCursor

func SetCursor(hCursor HCURSOR) HCURSOR

type HDC

type HDC HANDLE

func BeginPaint

func BeginPaint(hwnd HWND, lpPaint *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

func WglGetCurrentDC

func WglGetCurrentDC() HDC

type HDHITTESTINFO

type HDHITTESTINFO struct {
	Pt    POINT
	Flags uint32
	IItem int32
}

type HDITEM

type HDITEM struct {
	Mask       uint32
	Cxy        int32
	PszText    *uint16
	Hbm        HBITMAP
	CchTextMax int32
	Fmt        int32
	LParam     uintptr
	IImage     int32
	IOrder     int32
	Type       uint32
	PvFilter   uintptr
}

type HDLAYOUT

type HDLAYOUT struct {
	Prc   *RECT
	Pwpos *WINDOWPOS
}

type HDROP

type HDROP HANDLE

type HDWP

type HDWP HANDLE

func BeginDeferWindowPos

func BeginDeferWindowPos(nNumWindows int32) HDWP

func DeferWindowPos

func DeferWindowPos(hWinPosInfo HDWP, hWnd, hWndInsertAfter HWND, x, y, cx, cy int32, uFlags uint32) HDWP

type HENHMETAFILE

type HENHMETAFILE HANDLE

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 HGDIOBJ

func CreateFontIndirect

func CreateFontIndirect(lplf *LOGFONT) HFONT

type HGDIOBJ

type HGDIOBJ HANDLE

func GetStockObject

func GetStockObject(fnObject int32) HGDIOBJ

func SelectObject

func SelectObject(hdc HDC, hgdiobj HGDIOBJ) HGDIOBJ

type HGLOBAL

type HGLOBAL HANDLE

func GlobalAlloc

func GlobalAlloc(uFlags uint32, dwBytes uintptr) HGLOBAL

func GlobalFree

func GlobalFree(hMem HGLOBAL) HGLOBAL

func LoadResource

func LoadResource(hModule HMODULE, hResInfo HRSRC) HGLOBAL

type HGLRC

type HGLRC HANDLE

func WglCreateContext

func WglCreateContext(hdc HDC) HGLRC

func WglCreateLayerContext

func WglCreateLayerContext(hdc HDC, iLayerPlane int) HGLRC

func WglGetCurrentContext

func WglGetCurrentContext() HGLRC

type HICON

type HICON HANDLE

func CreateIconIndirect

func CreateIconIndirect(lpiconinfo *ICONINFO) HICON

func ExtractIcon

func ExtractIcon(hInst HINSTANCE, exeFileName *uint16, iconIndex int32) HICON

func LoadIcon

func LoadIcon(hInstance HINSTANCE, lpIconName *uint16) HICON

type HIGHCONTRAST

type HIGHCONTRAST struct {
	CbSize            uint32
	DwFlags           uint32
	LpszDefaultScheme *uint16
}

type HIMAGELIST

type HIMAGELIST HANDLE

func ImageList_Create

func ImageList_Create(cx, cy int32, flags uint32, cInitial, cGrow int32) HIMAGELIST

type HINSTANCE

type HINSTANCE HANDLE

func GetModuleHandle

func GetModuleHandle(lpModuleName *uint16) HINSTANCE

type HKEY

type HKEY HANDLE
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
)

type HMENU

type HMENU HANDLE

func CreateMenu

func CreateMenu() HMENU

func CreatePopupMenu

func CreatePopupMenu() HMENU

func GetSubMenu

func GetSubMenu(hMenu HMENU, nPos int32) HMENU

func GetSystemMenu

func GetSystemMenu(hWnd HWND, revert bool) HMENU

func LoadMenu

func LoadMenu(hinst HINSTANCE, name *uint16) HMENU

type HMODULE

type HMODULE uintptr

type HMONITOR

type HMONITOR HANDLE

func MonitorFromWindow

func MonitorFromWindow(hwnd HWND, dwFlags uint32) HMONITOR

type HPALETTE

type HPALETTE HGDIOBJ

type HPEN

type HPEN HGDIOBJ

func ExtCreatePen

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

type HPROPSHEETPAGE

type HPROPSHEETPAGE HANDLE

type HRAWINPUT

type HRAWINPUT HANDLE

type HRESULT

type HRESULT int32

func CloseThemeData

func CloseThemeData(hTheme HTHEME) HRESULT

func CoCreateInstance

func CoCreateInstance(rclsid REFCLSID, pUnkOuter *IUnknown, dwClsContext uint32, riid REFIID, ppv *unsafe.Pointer) HRESULT

func CoGetClassObject

func CoGetClassObject(rclsid REFCLSID, dwClsContext uint32, pServerInfo *COSERVERINFO, riid REFIID, ppv *unsafe.Pointer) HRESULT

func CoInitializeEx

func CoInitializeEx(reserved unsafe.Pointer, coInit uint32) HRESULT

func DrawThemeBackground

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

func DrawThemeTextEx

func DrawThemeTextEx(hTheme HTHEME, hdc HDC, iPartId, iStateId int32, pszText *uint16, iCharCount int32, dwFlags uint32, pRect *RECT, pOptions *DTTOPTS) HRESULT

func GetThemeColor

func GetThemeColor(hTheme HTHEME, iPartId, iStateId, iPropId int32, pColor *COLORREF) HRESULT

func GetThemePartSize

func GetThemePartSize(hTheme HTHEME, hdc HDC, iPartId, iStateId int32, prc *RECT, eSize THEMESIZE, psz *SIZE) HRESULT

func GetThemeTextExtent

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

func LoadIconMetric

func LoadIconMetric(hInstance HINSTANCE, lpIconName *uint16, lims int32, hicon *HICON) HRESULT

func LoadIconWithScaleDown

func LoadIconWithScaleDown(hInstance HINSTANCE, lpIconName *uint16, w int32, h int32, hicon *HICON) HRESULT

func OleInitialize

func OleInitialize() HRESULT

func OleSetContainedObject

func OleSetContainedObject(pUnknown *IUnknown, fContained bool) HRESULT

func PrintDlgEx

func PrintDlgEx(lppd *PRINTDLGEX) HRESULT

func SHDefExtractIcon

func SHDefExtractIcon(pszIconFile *uint16, iIndex int32, uFlags uint32, phiconLarge, phiconSmall *HICON, nIconSize uint32) HRESULT

func SHGetStockIconInfo

func SHGetStockIconInfo(stockIconId int32, uFlags uint32, stockIcon *SHSTOCKICONINFO) HRESULT

func SHParseDisplayName

func SHParseDisplayName(pszName *uint16, pbc uintptr, ppidl *uintptr, sfgaoIn uint32, psfgaoOut *uint32) HRESULT

func SetWindowTheme

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

type HRGN

type HRGN HGDIOBJ

func CreateRectRgn

func CreateRectRgn(nLeftRect, nTopRect, nRightRect, nBottomRect int32) HRGN

type HRSRC

type HRSRC uintptr

func FindResource

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

type HTHEME

type HTHEME HANDLE

func OpenThemeData

func OpenThemeData(hwnd HWND, pszClassList *uint16) HTHEME

type HTREEITEM

type HTREEITEM HANDLE

type HWINEVENTHOOK

type HWINEVENTHOOK HANDLE

func SetWinEventHook

func SetWinEventHook(eventMin uint32, eventMax uint32, hmodWinEventProc HMODULE, callbackFunction WINEVENTPROC, idProcess uint32, idThread uint32, dwFlags uint32) (HWINEVENTHOOK, error)

type HWND

type HWND HANDLE

func CreateDialogParam

func CreateDialogParam(instRes HINSTANCE, name *uint16, parent HWND,
	proc, param uintptr) HWND

func CreateWindowEx

func CreateWindowEx(dwExStyle uint32, lpClassName, lpWindowName *uint16, dwStyle uint32, x, y, nWidth, nHeight int32, hWndParent HWND, hMenu HMENU, hInstance HINSTANCE, lpParam unsafe.Pointer) HWND

func FindWindow

func FindWindow(lpClassName, lpWindowName *uint16) HWND

func GetActiveWindow

func GetActiveWindow() HWND

func GetAncestor

func GetAncestor(hWnd HWND, gaFlags uint32) HWND

func GetConsoleWindow

func GetConsoleWindow() HWND

func GetDesktopWindow

func GetDesktopWindow() HWND

func GetDlgItem

func GetDlgItem(hDlg HWND, nIDDlgItem int32) HWND

func GetFocus

func GetFocus() HWND

func GetForegroundWindow

func GetForegroundWindow() HWND

func GetParent

func GetParent(hWnd HWND) HWND

func GetWindow

func GetWindow(hWnd HWND, uCmd uint32) HWND

func SetActiveWindow

func SetActiveWindow(hWnd HWND) HWND

func SetCapture

func SetCapture(hWnd HWND) HWND

func SetFocus

func SetFocus(hWnd HWND) HWND

func SetParent

func SetParent(hWnd HWND, parentHWnd HWND) HWND

func WindowFromDC

func WindowFromDC(hDC HDC) HWND

func WindowFromPoint

func WindowFromPoint(Point POINT) HWND

type HYPHENATEINFO

type HYPHENATEINFO struct {
	CbSize          int16 // Size of HYPHENATEINFO structure
	DxHyphenateZone int16 // If a space character is closer to the margin than this value, don't hyphenate (in TWIPs)
	PfnHyphenate    uintptr
}

type HYPHRESULT

type HYPHRESULT struct {
	Khyph   KHYPH  // Kind of hyphenation
	IchHyph int32  // Character which was hyphenated
	ChHyph  uint16 // Depending on hyphenation type, character added, changed, etc.
}

type IAccPropServer

type IAccPropServer struct {
	LpVtbl *IAccPropServerVtbl
}

type IAccPropServerVtbl

type IAccPropServerVtbl struct {
	QueryInterface uintptr
	AddRef         uintptr
	Release        uintptr
	GetPropValue   uintptr
}

type IAccPropServices

type IAccPropServices struct {
	LpVtbl *IAccPropServicesVtbl
}

func (*IAccPropServices) AddRef

func (obj *IAccPropServices) AddRef() uint32

func (*IAccPropServices) ClearHmenuProps

func (obj *IAccPropServices) ClearHmenuProps(hmenu HMENU, idChild uint32, idProps []MSAAPROPID) HRESULT

ClearHmenuProps wraps ClearProps, and provides a convenient entry point for callers who are annotating HMENU-based accessible elements.

func (*IAccPropServices) ClearHwndProps

func (obj *IAccPropServices) ClearHwndProps(hwnd HWND, idObject int32, idChild uint32, idProps []MSAAPROPID) HRESULT

ClearHwndProps wraps SetPropValue, SetPropServer, and ClearProps, and provides a convenient entry point for callers who are annotating HWND-based accessible elements.

func (*IAccPropServices) ClearProps

func (obj *IAccPropServices) ClearProps(idString []byte, idProps []MSAAPROPID) HRESULT

ClearProps restores default values to properties of accessible elements that they had previously annotated. If servers know the HWND of the object they want to clear, they can use ClearHwndProps.

func (*IAccPropServices) ComposeHmenuIdentityString

func (obj *IAccPropServices) ComposeHmenuIdentityString(hmenu HMENU, idChild uint32) (hr HRESULT, idString []byte)

ComposeHmenuIdentityString retrieves an identity string for an HMENU-based accessible element.

func (*IAccPropServices) ComposeHwndIdentityString

func (obj *IAccPropServices) ComposeHwndIdentityString(hwnd HWND, idObject int32, idChild uint32) (hr HRESULT, idString []byte)

ComposeHwndIdentityString retrievs an identity string.

func (*IAccPropServices) DecomposeHmenuIdentityString

func (obj *IAccPropServices) DecomposeHmenuIdentityString(idString []byte) (hr HRESULT, hmenu HMENU, idChild uint32)

DecomposeHmenuIdentityString determines the HMENU, object ID, and child ID for the accessible element identified by the identity string.

func (*IAccPropServices) DecomposeHwndIdentityString

func (obj *IAccPropServices) DecomposeHwndIdentityString(idString []byte) (hr HRESULT, hwnd HWND, idObject int32, idChild uint32)

DecomposeHwndIdentityString determines the HWND, object ID, and child ID for the accessible element identified by the identity string.

func (*IAccPropServices) QueryInterface

func (obj *IAccPropServices) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*IAccPropServices) Release

func (obj *IAccPropServices) Release() uint32

func (*IAccPropServices) SetHmenuProp

func (obj *IAccPropServices) SetHmenuProp(hmenu HMENU, idChild uint32, idProp *MSAAPROPID, v *VARIANT) HRESULT

SetHmenuProp wraps SetPropValue, providing a convenient entry point for callers who are annotating HMENU-based accessible elements. If the new value is a string, you can use IAccPropServices::SetHmenuPropStr instead.

func (*IAccPropServices) SetHmenuPropServer

func (obj *IAccPropServices) SetHmenuPropServer(hmenu HMENU, idChild uint32, idProps []MSAAPROPID, server *IAccPropServer, annoScope AnnoScope) HRESULT

SetHmenuPropServer wraps SetPropServer, providing a convenient entry point for callers who are annotating HMENU-based accessible elements.

func (*IAccPropServices) SetHmenuPropStr

func (obj *IAccPropServices) SetHmenuPropStr(hmenu HMENU, idChild uint32, idProp *MSAAPROPID, str string) HRESULT

SetHmenuPropStr wraps SetPropValue, providing a more convenient entry point for callers who are annotating HMENU-based accessible elements.

func (*IAccPropServices) SetHwndProp

func (obj *IAccPropServices) SetHwndProp(hwnd HWND, idObject int32, idChild uint32, idProp *MSAAPROPID, v *VARIANT) HRESULT

SetHwndProp wraps SetPropValue, providing a convenient entry point for callers who are annotating HWND-based accessible elements. If the new value is a string, you can use SetHwndPropStr instead.

func (*IAccPropServices) SetHwndPropServer

func (obj *IAccPropServices) SetHwndPropServer(hwnd HWND, idObject int32, idChild uint32, idProps []MSAAPROPID, server *IAccPropServer, annoScope AnnoScope) HRESULT

SetHwndPropServer wraps SetPropServer, providing a convenient entry point for callers who are annotating HWND-based accessible elements.

func (*IAccPropServices) SetHwndPropStr

func (obj *IAccPropServices) SetHwndPropStr(hwnd HWND, idObject int32, idChild uint32, idProp *MSAAPROPID, str string) HRESULT

SetHwndPropStr wraps SetPropValue, providing a more convenient entry point for callers who are annotating HWND-based accessible elements.

func (*IAccPropServices) SetPropServer

func (obj *IAccPropServices) SetPropServer(idString []byte, idProps []MSAAPROPID, server *IAccPropServer, annoScope AnnoScope) HRESULT

SetPropServer specifies a callback object to be used to annotate an array of properties for the accessible element. You can also specify whether the annotation is to be applied to this accessible element or to the element and its children. This method is used for server annotation. If server developers know the HWND of the accessible element they want to annotate, they can use SetHwndPropServer.

func (*IAccPropServices) SetPropValue

func (obj *IAccPropServices) SetPropValue(idString []byte, idProp *MSAAPROPID, v *VARIANT) HRESULT

SetPropValue identifies the accessible element to be annotated, specify the property to be annotated, and provide a new value for that property. If server developers know the HWND of the accessible element they want to annotate, they can use one of the following methods: SetHwndPropStr, SetHwndProp, or SetHwndPropServer

type IAccPropServicesVtbl

type IAccPropServicesVtbl struct {
	QueryInterface               uintptr
	AddRef                       uintptr
	Release                      uintptr
	SetPropValue                 uintptr
	SetPropServer                uintptr
	ClearProps                   uintptr
	SetHwndProp                  uintptr
	SetHwndPropStr               uintptr
	SetHwndPropServer            uintptr
	ClearHwndProps               uintptr
	ComposeHwndIdentityString    uintptr
	DecomposeHwndIdentityString  uintptr
	SetHmenuProp                 uintptr
	SetHmenuPropStr              uintptr
	SetHmenuPropServer           uintptr
	ClearHmenuProps              uintptr
	ComposeHmenuIdentityString   uintptr
	DecomposeHmenuIdentityString uintptr
}

type ICONINFO

type ICONINFO struct {
	FIcon    BOOL
	XHotspot uint32
	YHotspot uint32
	HbmMask  HBITMAP
	HbmColor HBITMAP
}

type IClassFactory

type IClassFactory struct {
	LpVtbl *IClassFactoryVtbl
}

func (*IClassFactory) CreateInstance

func (cf *IClassFactory) CreateInstance(pUnkOuter *IUnknown, riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*IClassFactory) Release

func (cf *IClassFactory) Release() uint32

type IClassFactoryVtbl

type IClassFactoryVtbl struct {
	QueryInterface uintptr
	AddRef         uintptr
	Release        uintptr
	CreateInstance uintptr
	LockServer     uintptr
}

type IConnectionPoint

type IConnectionPoint struct {
	LpVtbl *IConnectionPointVtbl
}

func (*IConnectionPoint) Advise

func (cp *IConnectionPoint) Advise(pUnkSink unsafe.Pointer, pdwCookie *uint32) HRESULT

func (*IConnectionPoint) Release

func (cp *IConnectionPoint) Release() uint32

type IConnectionPointContainer

type IConnectionPointContainer struct {
	LpVtbl *IConnectionPointContainerVtbl
}

func (*IConnectionPointContainer) FindConnectionPoint

func (cpc *IConnectionPointContainer) FindConnectionPoint(riid REFIID, ppCP **IConnectionPoint) HRESULT

func (*IConnectionPointContainer) Release

func (cpc *IConnectionPointContainer) Release() uint32

type IConnectionPointContainerVtbl

type IConnectionPointContainerVtbl struct {
	QueryInterface       uintptr
	AddRef               uintptr
	Release              uintptr
	EnumConnectionPoints uintptr
	FindConnectionPoint  uintptr
}

type IConnectionPointVtbl

type IConnectionPointVtbl struct {
	QueryInterface              uintptr
	AddRef                      uintptr
	Release                     uintptr
	GetConnectionInterface      uintptr
	GetConnectionPointContainer uintptr
	Advise                      uintptr
	Unadvise                    uintptr
	EnumConnections             uintptr
}

type IDataObject

type IDataObject struct {
	LpVtbl *IDataObjectVtbl
}

type IDataObjectVtbl

type IDataObjectVtbl struct {
	IUnknownVtbl
	GetData               uintptr
	GetDataHere           uintptr
	QueryGetData          uintptr
	GetCanonicalFormatEtc uintptr
	SetData               uintptr
	EnumFormatEtc         uintptr
	DAdvise               uintptr
	DUnadvise             uintptr
	EnumDAdvise           uintptr
}

type IDispatch

type IDispatch struct {
	LpVtbl *IDispatchVtbl
}

type IDispatchVtbl

type IDispatchVtbl struct {
	QueryInterface   uintptr
	AddRef           uintptr
	Release          uintptr
	GetTypeInfoCount uintptr
	GetTypeInfo      uintptr
	GetIDsOfNames    uintptr
	Invoke           uintptr
}

type IDocHostUIHandler

type IDocHostUIHandler struct {
	LpVtbl *IDocHostUIHandlerVtbl
}

type IDocHostUIHandlerVtbl

type IDocHostUIHandlerVtbl struct {
	QueryInterface        uintptr
	AddRef                uintptr
	Release               uintptr
	ShowContextMenu       uintptr
	GetHostInfo           uintptr
	ShowUI                uintptr
	HideUI                uintptr
	UpdateUI              uintptr
	EnableModeless        uintptr
	OnDocWindowActivate   uintptr
	OnFrameWindowActivate uintptr
	ResizeBorder          uintptr
	TranslateAccelerator  uintptr
	GetOptionKeyPath      uintptr
	GetDropTarget         uintptr
	GetExternal           uintptr
	TranslateUrl          uintptr
	FilterDataObject      uintptr
}

type IID

type IID syscall.GUID

type IMECOMPTEXT

type IMECOMPTEXT struct {
	// count of bytes in the output buffer.
	Cb int32

	// value specifying the composition string type.
	//	Currently only support ICT_RESULTREADSTR
	Flags uint32
}

EM_GETIMECOMPTEXT wparam structure

type INITCOMMONCONTROLSEX

type INITCOMMONCONTROLSEX struct {
	DwSize, DwICC uint32
}

type IOleClientSite

type IOleClientSite struct {
	LpVtbl *IOleClientSiteVtbl
}

type IOleClientSiteVtbl

type IOleClientSiteVtbl struct {
	QueryInterface         uintptr
	AddRef                 uintptr
	Release                uintptr
	SaveObject             uintptr
	GetMoniker             uintptr
	GetContainer           uintptr
	ShowObject             uintptr
	OnShowWindow           uintptr
	RequestNewObjectLayout uintptr
}

type IOleInPlaceActiveObject

type IOleInPlaceActiveObject struct {
	LpVtbl *IOleInPlaceActiveObjectVtbl
}

func (*IOleInPlaceActiveObject) GetWindow

func (activeObj *IOleInPlaceActiveObject) GetWindow(hWndPtr *HWND) HRESULT

func (*IOleInPlaceActiveObject) Release

func (activeObj *IOleInPlaceActiveObject) Release() HRESULT

func (*IOleInPlaceActiveObject) TranslateAccelerator

func (activeObj *IOleInPlaceActiveObject) TranslateAccelerator(msg *MSG) HRESULT

type IOleInPlaceActiveObjectVtbl

type IOleInPlaceActiveObjectVtbl struct {
	QueryInterface        uintptr
	AddRef                uintptr
	Release               uintptr
	GetWindow             uintptr
	ContextSensitiveHelp  uintptr
	TranslateAccelerator  uintptr
	OnFrameWindowActivate uintptr
	OnDocWindowActivate   uintptr
	ResizeBorder          uintptr
	EnableModeless        uintptr
}

type IOleInPlaceFrame

type IOleInPlaceFrame struct {
	LpVtbl *IOleInPlaceFrameVtbl
}

type IOleInPlaceFrameVtbl

type IOleInPlaceFrameVtbl struct {
	QueryInterface       uintptr
	AddRef               uintptr
	Release              uintptr
	GetWindow            uintptr
	ContextSensitiveHelp uintptr
	GetBorder            uintptr
	RequestBorderSpace   uintptr
	SetBorderSpace       uintptr
	SetActiveObject      uintptr
	InsertMenus          uintptr
	SetMenu              uintptr
	RemoveMenus          uintptr
	SetStatusText        uintptr
	EnableModeless       uintptr
	TranslateAccelerator uintptr
}

type IOleInPlaceObject

type IOleInPlaceObject struct {
	LpVtbl *IOleInPlaceObjectVtbl
}

func (*IOleInPlaceObject) Release

func (obj *IOleInPlaceObject) Release() uint32

func (*IOleInPlaceObject) SetObjectRects

func (obj *IOleInPlaceObject) SetObjectRects(lprcPosRect, lprcClipRect *RECT) HRESULT

type IOleInPlaceObjectVtbl

type IOleInPlaceObjectVtbl struct {
	QueryInterface       uintptr
	AddRef               uintptr
	Release              uintptr
	GetWindow            uintptr
	ContextSensitiveHelp uintptr
	InPlaceDeactivate    uintptr
	UIDeactivate         uintptr
	SetObjectRects       uintptr
	ReactivateAndUndo    uintptr
}

type IOleInPlaceSite

type IOleInPlaceSite struct {
	LpVtbl *IOleInPlaceSiteVtbl
}

type IOleInPlaceSiteVtbl

type IOleInPlaceSiteVtbl struct {
	QueryInterface       uintptr
	AddRef               uintptr
	Release              uintptr
	GetWindow            uintptr
	ContextSensitiveHelp uintptr
	CanInPlaceActivate   uintptr
	OnInPlaceActivate    uintptr
	OnUIActivate         uintptr
	GetWindowContext     uintptr
	Scroll               uintptr
	OnUIDeactivate       uintptr
	OnInPlaceDeactivate  uintptr
	DiscardUndoState     uintptr
	DeactivateAndUndo    uintptr
	OnPosRectChange      uintptr
}

type IOleObject

type IOleObject struct {
	LpVtbl *IOleObjectVtbl
}

func (*IOleObject) Close

func (obj *IOleObject) Close(dwSaveOption uint32) HRESULT

func (*IOleObject) DoVerb

func (obj *IOleObject) DoVerb(iVerb int32, lpmsg *MSG, pActiveSite *IOleClientSite, lindex int32, hwndParent HWND, lprcPosRect *RECT) HRESULT

func (*IOleObject) QueryInterface

func (obj *IOleObject) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*IOleObject) Release

func (obj *IOleObject) Release() uint32

func (*IOleObject) SetClientSite

func (obj *IOleObject) SetClientSite(pClientSite *IOleClientSite) HRESULT

func (*IOleObject) SetHostNames

func (obj *IOleObject) SetHostNames(szContainerApp, szContainerObj *uint16) HRESULT

type IOleObjectVtbl

type IOleObjectVtbl struct {
	QueryInterface   uintptr
	AddRef           uintptr
	Release          uintptr
	SetClientSite    uintptr
	GetClientSite    uintptr
	SetHostNames     uintptr
	Close            uintptr
	SetMoniker       uintptr
	GetMoniker       uintptr
	InitFromData     uintptr
	GetClipboardData uintptr
	DoVerb           uintptr
	EnumVerbs        uintptr
	Update           uintptr
	IsUpToDate       uintptr
	GetUserClassID   uintptr
	GetUserType      uintptr
	SetExtent        uintptr
	GetExtent        uintptr
	Advise           uintptr
	Unadvise         uintptr
	EnumAdvise       uintptr
	GetMiscStatus    uintptr
	SetColorScheme   uintptr
}

type IRichEditOle

type IRichEditOle struct {
	LpVtbl *IRichEditOleVtbl
}

func (*IRichEditOle) ActivateAs

func (obj *IRichEditOle) ActivateAs(rclsid REFCLSID, rclsidAs REFCLSID) HRESULT

func (*IRichEditOle) AddRef

func (obj *IRichEditOle) AddRef() uint32

func (*IRichEditOle) ContextSensitiveHelp

func (obj *IRichEditOle) ContextSensitiveHelp(fEnterMode BOOL) HRESULT

func (*IRichEditOle) ConvertObject

func (obj *IRichEditOle) ConvertObject(iob int32, rclsidNew REFCLSID, lpstrUserTypeNew *byte) HRESULT

func (*IRichEditOle) GetClientSite

func (obj *IRichEditOle) GetClientSite(lplpolesite **IOleClientSite) HRESULT

func (*IRichEditOle) GetClipboardData

func (obj *IRichEditOle) GetClipboardData(lpchrg *CHARRANGE, reco uint32, lplpdataobj **IDataObject) HRESULT

func (*IRichEditOle) GetLinkCount

func (obj *IRichEditOle) GetLinkCount() int32

func (*IRichEditOle) GetObject

func (obj *IRichEditOle) GetObject(iob int32, lpreobject *REOBJECT, dwFlags uint32) HRESULT

func (*IRichEditOle) GetObjectCount

func (obj *IRichEditOle) GetObjectCount() int32

func (*IRichEditOle) HandsOffStorage

func (obj *IRichEditOle) HandsOffStorage(iob int32) HRESULT

func (*IRichEditOle) ImportDataObject

func (obj *IRichEditOle) ImportDataObject(lpdataobj *IDataObject, cf CLIPFORMAT, hMetaPict HGLOBAL) HRESULT

func (*IRichEditOle) InPlaceDeactivate

func (obj *IRichEditOle) InPlaceDeactivate() HRESULT

func (*IRichEditOle) InsertObject

func (obj *IRichEditOle) InsertObject(lpreobject *REOBJECT) HRESULT

func (*IRichEditOle) QueryInterface

func (obj *IRichEditOle) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*IRichEditOle) Release

func (obj *IRichEditOle) Release() uint32

func (*IRichEditOle) SaveCompleted

func (obj *IRichEditOle) SaveCompleted(iob int32, lpstg *IStorage) HRESULT

func (*IRichEditOle) SetDvaspect

func (obj *IRichEditOle) SetDvaspect(iob int32, dvaspect uint32) HRESULT

func (*IRichEditOle) SetHostNames

func (obj *IRichEditOle) SetHostNames(lpstrContainerApp *byte, lpstrContainerObj *byte) HRESULT

func (*IRichEditOle) SetLinkAvailable

func (obj *IRichEditOle) SetLinkAvailable(iob int32, fAvailable BOOL) HRESULT

type IRichEditOleVtbl

type IRichEditOleVtbl struct {
	IUnknownVtbl
	GetClientSite        uintptr
	GetObjectCount       uintptr
	GetLinkCount         uintptr
	GetObject            uintptr
	InsertObject         uintptr
	ConvertObject        uintptr
	ActivateAs           uintptr
	SetHostNames         uintptr
	SetLinkAvailable     uintptr
	SetDvaspect          uintptr
	HandsOffStorage      uintptr
	SaveCompleted        uintptr
	InPlaceDeactivate    uintptr
	ContextSensitiveHelp uintptr
	GetClipboardData     uintptr
	ImportDataObject     uintptr
}

type IStorage

type IStorage struct {
	LpVtbl *IStorageVtbl
}

type IStorageVtbl

type IStorageVtbl struct {
	IUnknownVtbl
	CreateStream    uintptr
	OpenStream      uintptr
	CreateStorage   uintptr
	OpenStorage     uintptr
	CopyTo          uintptr
	MoveElementTo   uintptr
	Commit          uintptr
	Revert          uintptr
	EnumElements    uintptr
	DestroyElement  uintptr
	RenameElement   uintptr
	SetElementTimes uintptr
	SetClass        uintptr
	SetStateBits    uintptr
	Stat            uintptr
}

type ITaskbarList3

type ITaskbarList3 struct {
	LpVtbl *ITaskbarList3Vtbl
}

func (*ITaskbarList3) SetOverlayIcon

func (obj *ITaskbarList3) SetOverlayIcon(hwnd HWND, icon HICON, description *uint16) HRESULT

func (*ITaskbarList3) SetProgressState

func (obj *ITaskbarList3) SetProgressState(hwnd HWND, state int) HRESULT

func (*ITaskbarList3) SetProgressValue

func (obj *ITaskbarList3) SetProgressValue(hwnd HWND, current uint32, length uint32) HRESULT

type ITaskbarList3Vtbl

type ITaskbarList3Vtbl struct {
	QueryInterface        uintptr
	AddRef                uintptr
	Release               uintptr
	HrInit                uintptr
	AddTab                uintptr
	DeleteTab             uintptr
	ActivateTab           uintptr
	SetActiveAlt          uintptr
	MarkFullscreenWindow  uintptr
	SetProgressValue      uintptr
	SetProgressState      uintptr
	RegisterTab           uintptr
	UnregisterTab         uintptr
	SetTabOrder           uintptr
	SetTabActive          uintptr
	ThumbBarAddButtons    uintptr
	ThumbBarUpdateButtons uintptr
	ThumbBarSetImageList  uintptr
	SetOverlayIcon        uintptr
	SetThumbnailTooltip   uintptr
	SetThumbnailClip      uintptr
}

type ITextDocument

type ITextDocument struct {
	LpVtbl *ITextDocumentVtbl
}

func (*ITextDocument) AddRef

func (obj *ITextDocument) AddRef() uint32

func (*ITextDocument) BeginEditCollection

func (obj *ITextDocument) BeginEditCollection() HRESULT

func (*ITextDocument) EndEditCollection

func (obj *ITextDocument) EndEditCollection() HRESULT

func (*ITextDocument) Freeze

func (obj *ITextDocument) Freeze(pCount *int32) HRESULT

func (*ITextDocument) GetDefaultTabStop

func (obj *ITextDocument) GetDefaultTabStop(pValue *float32) HRESULT

func (*ITextDocument) GetIDsOfNames

func (obj *ITextDocument) GetIDsOfNames(riid REFIID, rgszNames **uint16, cNames uint32, lcid LCID, rgDispId *DISPID) HRESULT

func (*ITextDocument) GetName

func (obj *ITextDocument) GetName(pName **uint16) HRESULT

func (*ITextDocument) GetSaved

func (obj *ITextDocument) GetSaved(pValue *int32) HRESULT

func (*ITextDocument) GetSelection

func (obj *ITextDocument) GetSelection(ppSel **ITextSelection) HRESULT

func (*ITextDocument) GetStoryCount

func (obj *ITextDocument) GetStoryCount(pCount *int32) HRESULT

func (*ITextDocument) GetStoryRanges

func (obj *ITextDocument) GetStoryRanges(ppStories **ITextStoryRanges) HRESULT

func (*ITextDocument) GetTypeInfo

func (obj *ITextDocument) GetTypeInfo(iTInfo uint32, lcid LCID, ppTInfo **ITypeInfo) HRESULT

func (*ITextDocument) GetTypeInfoCount

func (obj *ITextDocument) GetTypeInfoCount(pctinfo *uint32) HRESULT

func (*ITextDocument) Invoke

func (obj *ITextDocument) Invoke(dispIdMember DISPID, riid REFIID, lcid LCID, wFlags uint16, pDispParams *DISPPARAMS, pVarResult *VARIANT, pExcepInfo *EXCEPINFO, puArgErr *uint32) HRESULT

func (*ITextDocument) New

func (obj *ITextDocument) New() HRESULT

func (*ITextDocument) Open

func (obj *ITextDocument) Open(pVar *VARIANT, Flags int32, CodePage int32) HRESULT

func (*ITextDocument) QueryInterface

func (obj *ITextDocument) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*ITextDocument) Range

func (obj *ITextDocument) Range(cpActive int32, cpAnchor int32, ppRange **ITextRange) HRESULT

func (*ITextDocument) RangeFromPoint

func (obj *ITextDocument) RangeFromPoint(x int32, y int32, ppRange **ITextRange) HRESULT

func (*ITextDocument) Redo

func (obj *ITextDocument) Redo(Count int32, pCount *int32) HRESULT

func (*ITextDocument) Release

func (obj *ITextDocument) Release() uint32

func (*ITextDocument) Save

func (obj *ITextDocument) Save(pVar *VARIANT, Flags int32, CodePage int32) HRESULT

func (*ITextDocument) SetDefaultTabStop

func (obj *ITextDocument) SetDefaultTabStop(Value float32) HRESULT

func (*ITextDocument) SetSaved

func (obj *ITextDocument) SetSaved(Value int32) HRESULT

func (*ITextDocument) Undo

func (obj *ITextDocument) Undo(Count int32, pCount *int32) HRESULT

func (*ITextDocument) Unfreeze

func (obj *ITextDocument) Unfreeze(pCount *int32) HRESULT

type ITextDocumentVtbl

type ITextDocumentVtbl struct {
	IDispatchVtbl
	GetName             uintptr
	GetSelection        uintptr
	GetStoryCount       uintptr
	GetStoryRanges      uintptr
	GetSaved            uintptr
	SetSaved            uintptr
	GetDefaultTabStop   uintptr
	SetDefaultTabStop   uintptr
	New                 uintptr
	Open                uintptr
	Save                uintptr
	Freeze              uintptr
	Unfreeze            uintptr
	BeginEditCollection uintptr
	EndEditCollection   uintptr
	Undo                uintptr
	Redo                uintptr
	Range               uintptr
	RangeFromPoint      uintptr
}

type ITextRange

type ITextRange struct {
	LpVtbl *ITextRangeVtbl
}

type ITextRangeVtbl

type ITextRangeVtbl struct {
	IDispatchVtbl
	GetText           uintptr
	SetText           uintptr
	GetChar           uintptr
	SetChar           uintptr
	GetDuplicate      uintptr
	GetFormattedText  uintptr
	SetFormattedText  uintptr
	GetStart          uintptr
	SetStart          uintptr
	GetEnd            uintptr
	SetEnd            uintptr
	GetFont           uintptr
	SetFont           uintptr
	GetPara           uintptr
	SetPara           uintptr
	GetStoryLength    uintptr
	GetStoryType      uintptr
	Collapse          uintptr
	Expand            uintptr
	GetIndex          uintptr
	SetIndex          uintptr
	SetRange          uintptr
	InRange           uintptr
	InStory           uintptr
	IsEqual           uintptr
	Select            uintptr
	StartOf           uintptr
	EndOf             uintptr
	Move              uintptr
	MoveStart         uintptr
	MoveEnd           uintptr
	MoveWhile         uintptr
	MoveStartWhile    uintptr
	MoveEndWhile      uintptr
	MoveUntil         uintptr
	MoveStartUntil    uintptr
	MoveEndUntil      uintptr
	FindText          uintptr
	FindTextStart     uintptr
	FindTextEnd       uintptr
	Delete            uintptr
	Cut               uintptr
	Copy              uintptr
	Paste             uintptr
	CanPaste          uintptr
	CanEdit           uintptr
	ChangeCase        uintptr
	GetPoint          uintptr
	SetPoint          uintptr
	ScrollIntoView    uintptr
	GetEmbeddedObject uintptr
}

type ITextSelection

type ITextSelection struct {
	LpVtbl *ITextSelectionVtbl
}

type ITextSelectionVtbl

type ITextSelectionVtbl struct {
	ITextRangeVtbl
	GetFlags  uintptr
	SetFlags  uintptr
	GetType   uintptr
	MoveLeft  uintptr
	MoveRight uintptr
	MoveUp    uintptr
	MoveDown  uintptr
	HomeKey   uintptr
	EndKey    uintptr
	TypeText  uintptr
}

type ITextStoryRanges

type ITextStoryRanges struct {
	LpVtbl *ITextStoryRangesVtbl
}

type ITextStoryRangesVtbl

type ITextStoryRangesVtbl struct {
	IDispatchVtbl
	NewEnum  uintptr
	Item     uintptr
	GetCount uintptr
}

type ITypeInfo

type ITypeInfo struct {
	LpVtbl *ITypeInfoVtbl
}

func (*ITypeInfo) AddRef

func (obj *ITypeInfo) AddRef() uint32

func (*ITypeInfo) QueryInterface

func (obj *ITypeInfo) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*ITypeInfo) Release

func (obj *ITypeInfo) Release() uint32

type ITypeInfoVtbl

type ITypeInfoVtbl struct {
	IUnknownVtbl
	GetTypeAttr          uintptr
	GetTypeComp          uintptr
	GetFuncDesc          uintptr
	GetVarDesc           uintptr
	GetNames             uintptr
	GetRefTypeOfImplType uintptr
	GetImplTypeFlags     uintptr
	GetIDsOfNames        uintptr
	Invoke               uintptr
	GetDocumentation     uintptr
	GetDllEntry          uintptr
	GetRefTypeInfo       uintptr
	AddressOfMember      uintptr
	CreateInstance       uintptr
	GetMops              uintptr
	GetContainingTypeLib uintptr
	ReleaseTypeAttr      uintptr
	ReleaseFuncDesc      uintptr
	ReleaseVarDesc       uintptr
}

type IUnknown

type IUnknown struct {
	LpVtbl *IUnknownVtbl
}

type IUnknownVtbl

type IUnknownVtbl struct {
	QueryInterface uintptr
	AddRef         uintptr
	Release        uintptr
}

type IWebBrowser2

type IWebBrowser2 struct {
	LpVtbl *IWebBrowser2Vtbl
}

func (*IWebBrowser2) Get_LocationURL

func (wb2 *IWebBrowser2) Get_LocationURL(pbstrLocationURL **uint16) HRESULT

func (*IWebBrowser2) Navigate2

func (wb2 *IWebBrowser2) Navigate2(URL *VAR_BSTR, Flags *VAR_I4, TargetFrameName *VAR_BSTR, PostData unsafe.Pointer, Headers *VAR_BSTR) HRESULT

func (*IWebBrowser2) Put_Height

func (wb2 *IWebBrowser2) Put_Height(Height int32) HRESULT

func (*IWebBrowser2) Put_Left

func (wb2 *IWebBrowser2) Put_Left(Left int32) HRESULT

func (*IWebBrowser2) Put_Top

func (wb2 *IWebBrowser2) Put_Top(Top int32) HRESULT

func (*IWebBrowser2) Put_Width

func (wb2 *IWebBrowser2) Put_Width(Width int32) HRESULT

func (*IWebBrowser2) QueryInterface

func (wb2 *IWebBrowser2) QueryInterface(riid REFIID, ppvObject *unsafe.Pointer) HRESULT

func (*IWebBrowser2) Refresh

func (wb2 *IWebBrowser2) Refresh() HRESULT

func (*IWebBrowser2) Release

func (wb2 *IWebBrowser2) Release() HRESULT

type IWebBrowser2Vtbl

type IWebBrowser2Vtbl struct {
	QueryInterface           uintptr
	AddRef                   uintptr
	Release                  uintptr
	GetTypeInfoCount         uintptr
	GetTypeInfo              uintptr
	GetIDsOfNames            uintptr
	Invoke                   uintptr
	GoBack                   uintptr
	GoForward                uintptr
	GoHome                   uintptr
	GoSearch                 uintptr
	Navigate                 uintptr
	Refresh                  uintptr
	Refresh2                 uintptr
	Stop                     uintptr
	Get_Application          uintptr
	Get_Parent               uintptr
	Get_Container            uintptr
	Get_Document             uintptr
	Get_TopLevelContainer    uintptr
	Get_Type                 uintptr
	Get_Left                 uintptr
	Put_Left                 uintptr
	Get_Top                  uintptr
	Put_Top                  uintptr
	Get_Width                uintptr
	Put_Width                uintptr
	Get_Height               uintptr
	Put_Height               uintptr
	Get_LocationName         uintptr
	Get_LocationURL          uintptr
	Get_Busy                 uintptr
	Quit                     uintptr
	ClientToWindow           uintptr
	PutProperty              uintptr
	GetProperty              uintptr
	Get_Name                 uintptr
	Get_HWND                 uintptr
	Get_FullName             uintptr
	Get_Path                 uintptr
	Get_Visible              uintptr
	Put_Visible              uintptr
	Get_StatusBar            uintptr
	Put_StatusBar            uintptr
	Get_StatusText           uintptr
	Put_StatusText           uintptr
	Get_ToolBar              uintptr
	Put_ToolBar              uintptr
	Get_MenuBar              uintptr
	Put_MenuBar              uintptr
	Get_FullScreen           uintptr
	Put_FullScreen           uintptr
	Navigate2                uintptr
	QueryStatusWB            uintptr
	ExecWB                   uintptr
	ShowBrowserBar           uintptr
	Get_ReadyState           uintptr
	Get_Offline              uintptr
	Put_Offline              uintptr
	Get_Silent               uintptr
	Put_Silent               uintptr
	Get_RegisterAsBrowser    uintptr
	Put_RegisterAsBrowser    uintptr
	Get_RegisterAsDropTarget uintptr
	Put_RegisterAsDropTarget uintptr
	Get_TheaterMode          uintptr
	Put_TheaterMode          uintptr
	Get_AddressBar           uintptr
	Put_AddressBar           uintptr
	Get_Resizable            uintptr
	Put_Resizable            uintptr
}

type KEYBDINPUT

type KEYBDINPUT struct {
	WVk         uint16
	WScan       uint16
	DwFlags     uint32
	Time        uint32
	DwExtraInfo uintptr
	Unused      [8]byte
}

type KEYBD_INPUT

type KEYBD_INPUT struct {
	Type uint32
	Ki   KEYBDINPUT
}

type KHYPH

type KHYPH int32

khyph - Kind of hyphenation

const (
	KhyphNil          KHYPH = iota // No Hyphenation
	KhyphNormal                    // Normal Hyphenation
	KhyphAddBefore                 // Add letter before hyphen
	KhyphChangeBefore              // Change letter before hyphen
	KhyphDeleteBefore              // Delete letter before hyphen
	KhyphChangeAfter               // Change letter after hyphen
	KhyphDelAndChange              // Delete letter before hyphen and change letter preceding hyphen
)

type LANGID

type LANGID uint16

func GetThreadUILanguage

func GetThreadUILanguage() LANGID

type LAYERPLANEDESCRIPTOR

type LAYERPLANEDESCRIPTOR struct {
	NSize           uint16
	NVersion        uint16
	DwFlags         uint32
	IPixelType      uint8
	CColorBits      uint8
	CRedBits        uint8
	CRedShift       uint8
	CGreenBits      uint8
	CGreenShift     uint8
	CBlueBits       uint8
	CBlueShift      uint8
	CAlphaBits      uint8
	CAlphaShift     uint8
	CAccumBits      uint8
	CAccumRedBits   uint8
	CAccumGreenBits uint8
	CAccumBlueBits  uint8
	CAccumAlphaBits uint8
	CDepthBits      uint8
	CStencilBits    uint8
	CAuxBuffers     uint8
	ILayerType      uint8
	BReserved       uint8
	CrTransparent   COLORREF
}

type LCID

type LCID uint32
const (
	LOCALE_CUSTOM_DEFAULT     LCID = 0x0c00
	LOCALE_CUSTOM_UI_DEFAULT  LCID = 0x1400
	LOCALE_CUSTOM_UNSPECIFIED LCID = 0x1000
	LOCALE_INVARIANT          LCID = 0x007f
	LOCALE_USER_DEFAULT       LCID = 0x0400
	LOCALE_SYSTEM_DEFAULT     LCID = 0x0800
)

Predefined locale ids

func GetThreadLocale

func GetThreadLocale() LCID

type LCTYPE

type LCTYPE uint32
const (
	LOCALE_SDECIMAL          LCTYPE = 14
	LOCALE_STHOUSAND         LCTYPE = 15
	LOCALE_SISO3166CTRYNAME  LCTYPE = 0x5a
	LOCALE_SISO3166CTRYNAME2 LCTYPE = 0x68
	LOCALE_SISO639LANGNAME   LCTYPE = 0x59
	LOCALE_SISO639LANGNAME2  LCTYPE = 0x67
)

LCTYPE constants

type LHITTESTINFO

type LHITTESTINFO struct {
	Pt   POINT
	Item LITEM
}

type LITEM

type LITEM struct {
	Mask      uint32
	ILink     int32
	State     uint32
	StateMask uint32
	SzID      [MAX_LINKID_TEXT]uint16
	SzUrl     [L_MAX_URL_LENGTH]uint16
}

type LOGBRUSH

type LOGBRUSH struct {
	LbStyle uint32
	LbColor COLORREF
	LbHatch uintptr
}

type LOGFONT

type LOGFONT struct {
	LfHeight         int32
	LfWidth          int32
	LfEscapement     int32
	LfOrientation    int32
	LfWeight         int32
	LfItalic         byte
	LfUnderline      byte
	LfStrikeOut      byte
	LfCharSet        byte
	LfOutPrecision   byte
	LfClipPrecision  byte
	LfQuality        byte
	LfPitchAndFamily byte
	LfFaceName       [LF_FACESIZE]uint16
}

type LPOFNHOOKPROC

type LPOFNHOOKPROC uintptr

type LPUNKNOWN

type LPUNKNOWN uintptr

type LVCOLUMN

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

type LVHITTESTINFO

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

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
}

type MEASUREITEMSTRUCT

type MEASUREITEMSTRUCT struct {
	CtlType    uint32
	CtlID      uint32
	ItemID     int32
	ItemWidth  uint32
	ItemHeight uint32
	ItemData   uintptr
}
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
}

type MONITORINFO

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

type MOUSEINPUT

type MOUSEINPUT struct {
	Dx          int32
	Dy          int32
	MouseData   uint32
	DwFlags     uint32
	Time        uint32
	DwExtraInfo uintptr
}

type MOUSE_INPUT

type MOUSE_INPUT struct {
	Type uint32
	Mi   MOUSEINPUT
}

type MSAAPROPID

type MSAAPROPID syscall.GUID

type MSG

type MSG struct {
	HWnd    HWND
	Message uint32
	WParam  uintptr
	LParam  uintptr
	Time    uint32
	Pt      POINT
}

type MSGFILTER

type MSGFILTER struct {
	Nmhdr  NMHDR
	Msg    uint32
	WParam uintptr
	LParam uintptr
}

type NMBCDROPDOWN

type NMBCDROPDOWN struct {
	Hdr      NMHDR
	RcButton RECT
}

type NMCUSTOMDRAW

type NMCUSTOMDRAW struct {
	Hdr         NMHDR
	DwDrawStage uint32
	Hdc         HDC
	Rc          RECT
	DwItemSpec  uintptr
	UItemState  uint32
	LItemlParam uintptr
}

type NMDATETIMECHANGE

type NMDATETIMECHANGE struct {
	Nmhdr   NMHDR
	DwFlags uint32
	St      SYSTEMTIME
}

Structs

type NMDATETIMEFORMAT

type NMDATETIMEFORMAT struct {
	Nmhdr      NMHDR
	PszFormat  *uint16
	St         SYSTEMTIME
	PszDisplay *uint16
	SzDisplay  [64]uint16
}

Structs

type NMDATETIMEFORMATQUERY

type NMDATETIMEFORMATQUERY struct {
	Nmhdr     NMHDR
	PszFormat *uint16
	SzMax     SIZE
}

Structs

type NMDATETIMESTRING

type NMDATETIMESTRING struct {
	Nmhdr         NMHDR
	PszUserString *uint16
	St            SYSTEMTIME
	DwFlags       uint32
}

Structs

type NMDATETIMEWMKEYDOWN

type NMDATETIMEWMKEYDOWN struct {
	Nmhdr     NMHDR
	NVirtKey  int
	PszFormat *uint16
	St        SYSTEMTIME
}

Structs

type NMHDR

type NMHDR struct {
	HwndFrom HWND
	IdFrom   uintptr
	Code     uint32
}

type NMITEMACTIVATE

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

type NMLISTVIEW

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

type NMLVCUSTOMDRAW

type NMLVCUSTOMDRAW struct {
	Nmcd        NMCUSTOMDRAW
	ClrText     COLORREF
	ClrTextBk   COLORREF
	ISubItem    int32
	DwItemType  uint32
	ClrFace     COLORREF
	IIconEffect int32
	IIconPhase  int32
	IPartId     int32
	IStateId    int32
	RcText      RECT
	UAlign      uint32
}

type NMLVDISPINFO

type NMLVDISPINFO struct {
	Hdr  NMHDR
	Item LVITEM
}

type NMLVSCROLL

type NMLVSCROLL struct {
	Hdr NMHDR
	Dx  int32
	Dy  int32
}

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 NMUPDOWN

type NMUPDOWN struct {
	Hdr    NMHDR
	IPos   int32
	IDelta int32
}

type NONCLIENTMETRICS

type NONCLIENTMETRICS struct {
	CbSize           uint32
	IBorderWidth     int32
	IScrollWidth     int32
	IScrollHeight    int32
	ICaptionWidth    int32
	ICaptionHeight   int32
	LfCaptionFont    LOGFONT
	ISmCaptionWidth  int32
	ISmCaptionHeight int32
	LfSmCaptionFont  LOGFONT
	IMenuWidth       int32
	IMenuHeight      int32
	LfMenuFont       LOGFONT
	LfStatusFont     LOGFONT
	LfMessageFont    LOGFONT
}

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         syscall.GUID
	HBalloonIcon     HICON
}

type NUMBERFMT

type NUMBERFMT struct {
	NumDigits     uint32
	LeadingZero   uint32
	Grouping      uint32
	LpDecimalSep  *uint16
	LpThousandSep *uint16
	NegativeOrder uint32
}

type OBJECTPOSITIONS

type OBJECTPOSITIONS struct {
	Nmhdr        NMHDR
	CObjectCount int32
	PcpPositions *int32
}

type OBJECTTYPE

type OBJECTTYPE int32

type OLEINPLACEFRAMEINFO

type OLEINPLACEFRAMEINFO struct {
	Cb            uint32
	FMDIApp       BOOL
	HwndFrame     HWND
	Haccel        HACCEL
	CAccelEntries uint32
}

type OPENFILENAME

type OPENFILENAME struct {
	LStructSize       uint32
	HwndOwner         HWND
	HInstance         HINSTANCE
	LpstrFilter       *uint16
	LpstrCustomFilter *uint16
	NMaxCustFilter    uint32
	NFilterIndex      uint32
	LpstrFile         *uint16
	NMaxFile          uint32
	LpstrFileTitle    *uint16
	NMaxFileTitle     uint32
	LpstrInitialDir   *uint16
	LpstrTitle        *uint16
	Flags             uint32
	NFileOffset       uint16
	NFileExtension    uint16
	LpstrDefExt       *uint16
	LCustData         uintptr
	LpfnHook          LPOFNHOOKPROC
	LpTemplateName    *uint16
	PvReserved        unsafe.Pointer
	DwReserved        uint32
	FlagsEx           uint32
}

type PAINTSTRUCT

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

type PARAFORMAT

type PARAFORMAT struct {
	CbSize        uint32
	DwMask        uint32
	WNumbering    uint16
	WEffects      uint16
	DxStartIndent int32
	DxRightIndent int32
	DxOffset      int32
	WAlignment    uint16
	CTabCount     int16
	RgxTabs       [MAX_TAB_STOPS]int32
}

type PARAFORMAT2

type PARAFORMAT2 struct {
	PARAFORMAT
	DySpaceBefore    int32  // Vertical spacing before para
	DySpaceAfter     int32  // Vertical spacing after para
	DyLineSpacing    int32  // Line spacing depending on Rule
	SStyle           int16  // Style handle
	BLineSpacingRule byte   // Rule for line spacing (see tom.doc)
	BOutlineLevel    byte   // Outline level
	WShadingWeight   uint16 // Shading in hundredths of a per cent
	WShadingStyle    uint16 // Nibble 0: style, 1: cfpat, 2: cbpat
	WNumberingStart  uint16 // Starting value for numbering
	WNumberingStyle  uint16 // Alignment, roman/arabic, (), ), ., etc.
	WNumberingTab    uint16 // Space bet FirstIndent & 1st-line text
	WBorderSpace     uint16 // Border-text spaces (nbl/bdr in pts)
	WBorderWidth     uint16 // Pen widths (nbl/bdr in half pts)
	WBorders         uint16 // Border styles (nibble/border)
}

type PDH_FMT_COUNTERVALUE_DOUBLE

type PDH_FMT_COUNTERVALUE_DOUBLE struct {
	CStatus     uint32
	DoubleValue float64
}

Union specialization for double values

type PDH_FMT_COUNTERVALUE_ITEM_DOUBLE

type PDH_FMT_COUNTERVALUE_ITEM_DOUBLE struct {
	SzName   *uint16 // pointer to a string
	FmtValue PDH_FMT_COUNTERVALUE_DOUBLE
}

Union specialization for double values, used by PdhGetFormattedCounterArrayDouble()

type PDH_FMT_COUNTERVALUE_ITEM_LARGE

type PDH_FMT_COUNTERVALUE_ITEM_LARGE struct {
	SzName   *uint16 // pointer to a string
	FmtValue PDH_FMT_COUNTERVALUE_LARGE
}

Union specialization for 'large' values, used by PdhGetFormattedCounterArrayLarge()

type PDH_FMT_COUNTERVALUE_ITEM_LONG

type PDH_FMT_COUNTERVALUE_ITEM_LONG struct {
	SzName   *uint16 // pointer to a string
	FmtValue PDH_FMT_COUNTERVALUE_LONG
}

Union specialization for long values, used by PdhGetFormattedCounterArrayLong()

type PDH_FMT_COUNTERVALUE_LARGE

type PDH_FMT_COUNTERVALUE_LARGE struct {
	CStatus    uint32
	LargeValue int64
}

Union specialization for 64 bit integer values

type PDH_FMT_COUNTERVALUE_LONG

type PDH_FMT_COUNTERVALUE_LONG struct {
	CStatus   uint32
	LongValue int32
	// contains filtered or unexported fields
}

Union specialization for long values

type PDH_HCOUNTER

type PDH_HCOUNTER HANDLE // counter handle

type PDH_HQUERY

type PDH_HQUERY HANDLE // query handle

type PIXELFORMATDESCRIPTOR

type PIXELFORMATDESCRIPTOR struct {
	NSize           uint16
	NVersion        uint16
	DwFlags         uint32
	IPixelType      byte
	CColorBits      byte
	CRedBits        byte
	CRedShift       byte
	CGreenBits      byte
	CGreenShift     byte
	CBlueBits       byte
	CBlueShift      byte
	CAlphaBits      byte
	CAlphaShift     byte
	CAccumBits      byte
	CAccumRedBits   byte
	CAccumGreenBits byte
	CAccumBlueBits  byte
	CAccumAlphaBits byte
	CDepthBits      byte
	CStencilBits    byte
	CAuxBuffers     byte
	ILayerType      byte
	BReserved       byte
	DwLayerMask     uint32
	DwVisibleMask   uint32
	DwDamageMask    uint32
}

type POINT

type POINT struct {
	X, Y int32
}

type POINTFLOAT

type POINTFLOAT struct {
	X, Y float32
}

type PRINTDLGEX

type PRINTDLGEX struct {
	LStructSize         uint32
	HwndOwner           HWND
	HDevMode            HGLOBAL
	HDevNames           HGLOBAL
	HDC                 HDC
	Flags               uint32
	Flags2              uint32
	ExclusionFlags      uint32
	NPageRanges         uint32
	NMaxPageRanges      uint32
	LpPageRanges        *PRINTPAGERANGE
	NMinPage            uint32
	NMaxPage            uint32
	NCopies             uint32
	HInstance           HINSTANCE
	LpPrintTemplateName *uint16
	LpCallback          LPUNKNOWN
	NPropertyPages      uint32
	LphPropertyPages    *HPROPSHEETPAGE
	NStartPage          uint32
	DwResultAction      uint32
}

type PRINTER_INFO_4

type PRINTER_INFO_4 struct {
	PPrinterName *uint16
	PServerName  *uint16
	Attributes   uint32
}

type PRINTPAGERANGE

type PRINTPAGERANGE struct {
	NFromPage uint32
	NToPage   uint32
}

type PUNCTUATION

type PUNCTUATION struct {
	ISize         uint32
	SzPunctuation *byte
}

East Asia specific

type RAWHID

type RAWHID struct {
	DwSizeHid uint32
	DwCount   uint32
	BRawData  [1]byte
}

type RAWINPUTDEVICE

type RAWINPUTDEVICE struct {
	UsUsagePage uint16
	UsUsage     uint16
	DwFlags     uint32
	HwndTarget  HWND
}

type RAWINPUTHEADER

type RAWINPUTHEADER struct {
	DwType  uint32
	DwSize  uint32
	HDevice HANDLE
	WParam  uintptr
}

type RAWINPUTHID

type RAWINPUTHID struct {
	Header RAWINPUTHEADER
	Data   RAWHID
}

type RAWINPUTKEYBOARD

type RAWINPUTKEYBOARD struct {
	Header RAWINPUTHEADER
	Data   RAWKEYBOARD
}

type RAWINPUTMOUSE

type RAWINPUTMOUSE struct {
	Header RAWINPUTHEADER
	Data   RAWMOUSE
}

type RAWKEYBOARD

type RAWKEYBOARD struct {
	MakeCode         uint16
	Flags            uint16
	Reserved         int16
	VKey             uint16
	Message          uint32
	ExtraInformation uint32
}

type RAWMOUSE

type RAWMOUSE struct {
	UsFlags            uint16
	UsButtonFlags      uint16
	UsButtonData       uint16
	Pad_cgo_0          [2]byte
	UlRawButtons       uint32
	LLastX             int32
	LLastY             int32
	UlExtraInformation uint32
}

type RECT

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

type REFCLSID

type REFCLSID *CLSID

type REFIID

type REFIID *IID

type REGSAM

type REGSAM ACCESS_MASK
const KEY_READ REGSAM = 0x20019
const KEY_WRITE REGSAM = 0x20006

type REOBJECT

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

type REPASTESPECIAL

type REPASTESPECIAL struct {
	DwAspect uint32
	DwParam  uintptr
}

Paste Special

type REQRESIZE

type REQRESIZE struct {
	Nmhdr NMHDR
	Rc    RECT
}

type RGBQUAD

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

type RICHEDIT_IMAGE_PARAMETERS

type RICHEDIT_IMAGE_PARAMETERS struct {
	XWidth            int32 // Units are HIMETRIC
	YHeight           int32 // Units are HIMETRIC
	Ascent            int32 // Units are HIMETRIC
	Type              int32 // Valid values are TA_TOP, TA_BOTTOM and TA_BASELINE
	PwszAlternateText *uint16
	PIStream          uintptr
}

lparam for EM_INSERTIMAGE

type SAFEARRAY

type SAFEARRAY struct {
	CDims      uint16
	FFeatures  uint16
	CbElements uint32
	CLocks     uint32
	PvData     uintptr
	Rgsabound  [1]SAFEARRAYBOUND
}

type SAFEARRAYBOUND

type SAFEARRAYBOUND struct {
	CElements uint32
	LLbound   int32
}

type SCODE

type SCODE int32

type SCROLLINFO

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

type SELCHANGE

type SELCHANGE struct {
	Nmhdr  NMHDR
	Chrg   CHARRANGE
	Seltyp uint16
}

type SETTEXTEX

type SETTEXTEX struct {
	Flags    uint32 // Flags (see the ST_XXX defines)
	Codepage uint32 // Code page for translation (CP_ACP for sys default, 1200 for Unicode, -1 for control default)
}

EM_SETTEXTEX info; this struct is passed in the wparam of the message

type SHFILEINFO

type SHFILEINFO struct {
	HIcon         HICON
	IIcon         int32
	DwAttributes  uint32
	SzDisplayName [MAX_PATH]uint16
	SzTypeName    [80]uint16
}

type SHSTOCKICONINFO

type SHSTOCKICONINFO struct {
	CbSize         uint32
	HIcon          HICON
	ISysImageIndex int32
	IIcon          int32
	SzPath         [MAX_PATH]uint16
}

type SIZE

type SIZE struct {
	CX, CY int32
}

type SYSTEMTIME

type SYSTEMTIME struct {
	WYear         uint16
	WMonth        uint16
	WDayOfWeek    uint16
	WDay          uint16
	WHour         uint16
	WMinute       uint16
	WSecond       uint16
	WMilliseconds uint16
}

type TABLECELLPARMS

type TABLECELLPARMS struct {
	DxWidth int32 // Cell width (\cellx)

	// nVertAlign:2   Vertical alignment (0/1/2 = top/center/bottom \clvertalt (def), \clvertalc, \clvertalb)
	// fMergeTop:1    Top cell for vertical merge (\clvmgf)
	// fMergePrev:1   Merge with cell above (\clvmrg)
	// fVertical:1    Display text top to bottom, right to left (\cltxtbrlv)
	// fMergeStart:1  Start set of horizontally merged cells (\clmgf)
	// fMergeCont:1   Merge with previous cell (\clmrg)
	Flags uint32

	WShading uint32 // Shading in .01%		(\clshdng) e.g., 10000 flips fore/back

	DxBrdrLeft   int32 // Left border width	(\clbrdrl\brdrwN) (in twips)
	DyBrdrTop    int32 // Top border width 	(\clbrdrt\brdrwN)
	DxBrdrRight  int32 // Right border width	(\clbrdrr\brdrwN)
	DyBrdrBottom int32 // Bottom border width	(\clbrdrb\brdrwN)

	CrBrdrLeft   COLORREF // Left border color	(\clbrdrl\brdrcf)
	CrBrdrTop    COLORREF // Top border color 	(\clbrdrt\brdrcf)
	CrBrdrRight  COLORREF // Right border color	(\clbrdrr\brdrcf)
	CrBrdrBottom COLORREF // Bottom border color	(\clbrdrb\brdrcf)
	CrBackPat    COLORREF // Background color 	(\clcbpat)
	CrForePat    COLORREF // Foreground color 	(\clcfpat)
}

Data type defining table cells for EM_INSERTTABLE Note: The Richedit.h is completely #pragma pack(4)-ed

type TABLEROWPARMS

type TABLEROWPARMS struct {
	CbRow        uint32 // Count of bytes in this structure
	CbCell       uint32 // Count of bytes in TABLECELLPARMS
	CCell        uint32 // Count of cells
	CRow         uint32 // Count of rows
	DxCellMargin int32  // Cell left/right margin (\trgaph)
	DxIndent     int32  // Row left (right if fRTL indent (similar to \trleft)
	DyHeight     int32  // Row height (\trrh)

	// nAlignment:3   Row alignment (like PARAFORMAT::bAlignment, \trql, trqr, \trqc)
	// fRTL:1         Display cells in RTL order (\rtlrow)
	// fKeep:1        Keep row together (\trkeep}
	// fKeepFollow:1  Keep row on same page as following row (\trkeepfollow)
	// fWrap:1        Wrap text to right/left (depending on bAlignment) (see \tdfrmtxtLeftN, \tdfrmtxtRightN)
	// fIdentCells:1  lparam points at single struct valid for all cells
	Flags uint32

	CpStartRow  int32  // cp where to insert table (-1 for selection cp) (can be used for either TRD by EM_GETTABLEPARMS)
	BTableLevel uint32 // Table nesting level (EM_GETTABLEPARMS only)
	ICell       uint32 // Index of cell to insert/delete (EM_SETTABLEPARMS only)
}

Data type defining table rows for EM_INSERTTABLE Note: The Richedit.h is completely #pragma pack(4)-ed

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 TBMETRICS

type TBMETRICS struct {
	CbSize          uint32
	DwMask          uint32
	CxPad           int32
	CyPad           int32
	CxBarPad        int32
	CyBarPad        int32
	CxButtonSpacing int32
	CyButtonSpacing 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
}

type TEXTMODE

type TEXTMODE int32

type TEXTRANGE

type TEXTRANGE struct {
	Chrg      CHARRANGE
	LpstrText *uint16 // Allocated by caller, zero terminated by RichEdit
}

type THEMESIZE

type THEMESIZE int
const (
	TS_MIN THEMESIZE = iota
	TS_TRUE
	TS_DRAW
)

type TOOLINFO

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

type TPMPARAMS

type TPMPARAMS struct {
	CbSize    uint32
	RcExclude RECT
}

type TRACKMOUSEEVENT

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

type TRIVERTEX

type TRIVERTEX struct {
	X     int32
	Y     int32
	Red   uint16
	Green uint16
	Blue  uint16
	Alpha uint16
}

type TTGETTITLE

type TTGETTITLE struct {
	DwSize       uint32
	UTitleBitmap uint32
	Cch          uint32
	PszTitle     *uint16
}

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 TomConstants

type TomConstants uint32

type UDACCEL

type UDACCEL struct {
	NSec uint32
	NInc uint32
}

type UNDONAMEID

type UNDONAMEID int32

UndoName info

type VARIANT

type VARIANT struct {
	Vt VARTYPE
	// contains filtered or unexported fields
}

func (*VARIANT) BSTR

func (v *VARIANT) BSTR() (*uint16, error)

func (*VARIANT) Bool

func (v *VARIANT) Bool() (VARIANT_BOOL, error)

func (*VARIANT) Long

func (v *VARIANT) Long() (int32, error)

func (*VARIANT) MustBSTR

func (v *VARIANT) MustBSTR() *uint16

func (*VARIANT) MustBool

func (v *VARIANT) MustBool() VARIANT_BOOL

func (*VARIANT) MustLong

func (v *VARIANT) MustLong() int32

func (*VARIANT) MustPBool

func (v *VARIANT) MustPBool() *VARIANT_BOOL

func (*VARIANT) MustPDispatch

func (v *VARIANT) MustPDispatch() *IDispatch

func (*VARIANT) MustPPDispatch

func (v *VARIANT) MustPPDispatch() **IDispatch

func (*VARIANT) MustPSafeArray

func (v *VARIANT) MustPSafeArray() *SAFEARRAY

func (*VARIANT) MustPVariant

func (v *VARIANT) MustPVariant() *VARIANT

func (*VARIANT) MustULong

func (v *VARIANT) MustULong() uint32

func (*VARIANT) PBool

func (v *VARIANT) PBool() (*VARIANT_BOOL, error)

func (*VARIANT) PDispatch

func (v *VARIANT) PDispatch() (*IDispatch, error)

func (*VARIANT) PPDispatch

func (v *VARIANT) PPDispatch() (**IDispatch, error)

func (*VARIANT) PSafeArray

func (v *VARIANT) PSafeArray() (*SAFEARRAY, error)

func (*VARIANT) PVariant

func (v *VARIANT) PVariant() (*VARIANT, error)

func (*VARIANT) SetBSTR

func (v *VARIANT) SetBSTR(value *uint16)

func (*VARIANT) SetBool

func (v *VARIANT) SetBool(value VARIANT_BOOL)

func (*VARIANT) SetLong

func (v *VARIANT) SetLong(value int32)

func (*VARIANT) SetPBool

func (v *VARIANT) SetPBool(value *VARIANT_BOOL)

func (*VARIANT) SetPDispatch

func (v *VARIANT) SetPDispatch(value *IDispatch)

func (*VARIANT) SetPPDispatch

func (v *VARIANT) SetPPDispatch(value **IDispatch)

func (*VARIANT) SetPSafeArray

func (v *VARIANT) SetPSafeArray(value *SAFEARRAY, elementVt VARTYPE)

func (*VARIANT) SetPVariant

func (v *VARIANT) SetPVariant(value *VARIANT)

func (*VARIANT) SetULong

func (v *VARIANT) SetULong(value uint32)

func (*VARIANT) ULong

func (v *VARIANT) ULong() (uint32, error)

type VARIANTARG

type VARIANTARG struct {
	VARIANT
}

type VARIANT_BOOL

type VARIANT_BOOL int16
const (
	VARIANT_TRUE  VARIANT_BOOL = -1
	VARIANT_FALSE VARIANT_BOOL = 0
)

type VARTYPE

type VARTYPE uint16
const (
	VT_EMPTY            VARTYPE = 0
	VT_NULL             VARTYPE = 1
	VT_I2               VARTYPE = 2
	VT_I4               VARTYPE = 3
	VT_R4               VARTYPE = 4
	VT_R8               VARTYPE = 5
	VT_CY               VARTYPE = 6
	VT_DATE             VARTYPE = 7
	VT_BSTR             VARTYPE = 8
	VT_DISPATCH         VARTYPE = 9
	VT_ERROR            VARTYPE = 10
	VT_BOOL             VARTYPE = 11
	VT_VARIANT          VARTYPE = 12
	VT_UNKNOWN          VARTYPE = 13
	VT_DECIMAL          VARTYPE = 14
	VT_I1               VARTYPE = 16
	VT_UI1              VARTYPE = 17
	VT_UI2              VARTYPE = 18
	VT_UI4              VARTYPE = 19
	VT_I8               VARTYPE = 20
	VT_UI8              VARTYPE = 21
	VT_INT              VARTYPE = 22
	VT_UINT             VARTYPE = 23
	VT_VOID             VARTYPE = 24
	VT_HRESULT          VARTYPE = 25
	VT_PTR              VARTYPE = 26
	VT_SAFEARRAY        VARTYPE = 27
	VT_CARRAY           VARTYPE = 28
	VT_USERDEFINED      VARTYPE = 29
	VT_LPSTR            VARTYPE = 30
	VT_LPWSTR           VARTYPE = 31
	VT_RECORD           VARTYPE = 36
	VT_INT_PTR          VARTYPE = 37
	VT_UINT_PTR         VARTYPE = 38
	VT_FILETIME         VARTYPE = 64
	VT_BLOB             VARTYPE = 65
	VT_STREAM           VARTYPE = 66
	VT_STORAGE          VARTYPE = 67
	VT_STREAMED_OBJECT  VARTYPE = 68
	VT_STORED_OBJECT    VARTYPE = 69
	VT_BLOB_OBJECT      VARTYPE = 70
	VT_CF               VARTYPE = 71
	VT_CLSID            VARTYPE = 72
	VT_VERSIONED_STREAM VARTYPE = 73
	VT_BSTR_BLOB        VARTYPE = 0xfff
	VT_VECTOR           VARTYPE = 0x1000
	VT_ARRAY            VARTYPE = 0x2000
	VT_BYREF            VARTYPE = 0x4000
	VT_RESERVED         VARTYPE = 0x8000
	VT_ILLEGAL          VARTYPE = 0xffff
	VT_ILLEGALMASKED    VARTYPE = 0xfff
	VT_TYPEMASK         VARTYPE = 0xfff
)

type VAR_BOOL

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

func BoolToVariantBool

func BoolToVariantBool(value bool) *VAR_BOOL

type VAR_BSTR

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

func StringToVariantBSTR

func StringToVariantBSTR(value string) *VAR_BSTR

type VAR_I4

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

func IntToVariantI4

func IntToVariantI4(value int32) *VAR_I4

type VAR_PBOOL

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

type VAR_PDISP

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

type VAR_PPDISP

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

type VAR_PSAFEARRAY

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

type VAR_PVAR

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

type VAR_UI4

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

type WINDOWPLACEMENT

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

type WINDOWPOS

type WINDOWPOS struct {
	Hwnd            HWND
	HwndInsertAfter HWND
	X               int32
	Y               int32
	Cx              int32
	Cy              int32
	Flags           uint32
}

type WINEVENTPROC

type WINEVENTPROC func(hWinEventHook HWINEVENTHOOK, event uint32, hwnd HWND, idObject int32, idChild int32, idEventThread uint32, dwmsEventTime uint32) uintptr

type WNDCLASSEX

type WNDCLASSEX struct {
	CbSize        uint32
	Style         uint32
	LpfnWndProc   uintptr
	CbClsExtra    int32
	CbWndExtra    int32
	HInstance     HINSTANCE
	HIcon         HICON
	HCursor       HCURSOR
	HbrBackground HBRUSH
	LpszMenuName  *uint16
	LpszClassName *uint16
	HIconSm       HICON
}

Notes

Bugs

  • Testing this function on multiple systems yielded inconsistent results. For instance, the pValue.LongValue kept the value '192' on test system A, but on B this was '0', while the padding bytes of the struct got the correct value. Until someone can figure out this behaviour, prefer to use the Double or Large counterparts instead. These functions provide actually the same data, except in a different, working format.

  • See description of PdhGetFormattedCounterValueLong().

Jump to

Keyboard shortcuts

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