github.com/secoba/wails/v2@v2.6.4/internal/frontend/desktop/windows/winc/w32/constants.go (about) 1 //go:build windows 2 3 /* 4 * Copyright (C) 2019 The Winc Authors. All Rights Reserved. 5 * Copyright (C) 2010-2012 The W32 Authors. All Rights Reserved. 6 */ 7 package w32 8 9 const ( 10 FALSE = 0 11 TRUE = 1 12 ) 13 14 const ( 15 NO_ERROR = 0 16 ERROR_SUCCESS = 0 17 ERROR_FILE_NOT_FOUND = 2 18 ERROR_PATH_NOT_FOUND = 3 19 ERROR_ACCESS_DENIED = 5 20 ERROR_INVALID_HANDLE = 6 21 ERROR_BAD_FORMAT = 11 22 ERROR_INVALID_NAME = 123 23 ERROR_MORE_DATA = 234 24 ERROR_NO_MORE_ITEMS = 259 25 ERROR_INVALID_SERVICE_CONTROL = 1052 26 ERROR_SERVICE_REQUEST_TIMEOUT = 1053 27 ERROR_SERVICE_NO_THREAD = 1054 28 ERROR_SERVICE_DATABASE_LOCKED = 1055 29 ERROR_SERVICE_ALREADY_RUNNING = 1056 30 ERROR_SERVICE_DISABLED = 1058 31 ERROR_SERVICE_DOES_NOT_EXIST = 1060 32 ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061 33 ERROR_SERVICE_NOT_ACTIVE = 1062 34 ERROR_DATABASE_DOES_NOT_EXIST = 1065 35 ERROR_SERVICE_DEPENDENCY_FAIL = 1068 36 ERROR_SERVICE_LOGON_FAILED = 1069 37 ERROR_SERVICE_MARKED_FOR_DELETE = 1072 38 ERROR_SERVICE_DEPENDENCY_DELETED = 1075 39 ) 40 41 const ( 42 SE_ERR_FNF = 2 43 SE_ERR_PNF = 3 44 SE_ERR_ACCESSDENIED = 5 45 SE_ERR_OOM = 8 46 SE_ERR_DLLNOTFOUND = 32 47 SE_ERR_SHARE = 26 48 SE_ERR_ASSOCINCOMPLETE = 27 49 SE_ERR_DDETIMEOUT = 28 50 SE_ERR_DDEFAIL = 29 51 SE_ERR_DDEBUSY = 30 52 SE_ERR_NOASSOC = 31 53 ) 54 55 const ( 56 CW_USEDEFAULT = ^0x7fffffff 57 ) 58 59 const ( 60 IMAGE_BITMAP = 0 61 IMAGE_ICON = 1 62 IMAGE_CURSOR = 2 63 IMAGE_ENHMETAFILE = 3 64 ) 65 66 // ShowWindow constants 67 const ( 68 SW_HIDE = 0 69 SW_NORMAL = 1 70 SW_SHOWNORMAL = 1 71 SW_SHOWMINIMIZED = 2 72 SW_MAXIMIZE = 3 73 SW_SHOWMAXIMIZED = 3 74 SW_SHOWNOACTIVATE = 4 75 SW_SHOW = 5 76 SW_MINIMIZE = 6 77 SW_SHOWMINNOACTIVE = 7 78 SW_SHOWNA = 8 79 SW_RESTORE = 9 80 SW_SHOWDEFAULT = 10 81 SW_FORCEMINIMIZE = 11 82 ) 83 84 // Window class styles 85 const ( 86 CS_VREDRAW = 0x00000001 87 CS_HREDRAW = 0x00000002 88 CS_KEYCVTWINDOW = 0x00000004 89 CS_DBLCLKS = 0x00000008 90 CS_OWNDC = 0x00000020 91 CS_CLASSDC = 0x00000040 92 CS_PARENTDC = 0x00000080 93 CS_NOKEYCVT = 0x00000100 94 CS_NOCLOSE = 0x00000200 95 CS_SAVEBITS = 0x00000800 96 CS_BYTEALIGNCLIENT = 0x00001000 97 CS_BYTEALIGNWINDOW = 0x00002000 98 CS_GLOBALCLASS = 0x00004000 99 CS_IME = 0x00010000 100 CS_DROPSHADOW = 0x00020000 101 ) 102 103 // Predefined cursor constants 104 const ( 105 IDC_ARROW = 32512 106 IDC_IBEAM = 32513 107 IDC_WAIT = 32514 108 IDC_CROSS = 32515 109 IDC_UPARROW = 32516 110 IDC_SIZENWSE = 32642 111 IDC_SIZENESW = 32643 112 IDC_SIZEWE = 32644 113 IDC_SIZENS = 32645 114 IDC_SIZEALL = 32646 115 IDC_NO = 32648 116 IDC_HAND = 32649 117 IDC_APPSTARTING = 32650 118 IDC_HELP = 32651 119 IDC_ICON = 32641 120 IDC_SIZE = 32640 121 ) 122 123 // Predefined icon constants 124 const ( 125 IDI_APPLICATION = 32512 126 IDI_HAND = 32513 127 IDI_QUESTION = 32514 128 IDI_EXCLAMATION = 32515 129 IDI_ASTERISK = 32516 130 IDI_WINLOGO = 32517 131 IDI_WARNING = IDI_EXCLAMATION 132 IDI_ERROR = IDI_HAND 133 IDI_INFORMATION = IDI_ASTERISK 134 ) 135 136 // Button style constants 137 const ( 138 BS_3STATE = 5 139 BS_AUTO3STATE = 6 140 BS_AUTOCHECKBOX = 3 141 BS_AUTORADIOBUTTON = 9 142 BS_BITMAP = 128 143 BS_BOTTOM = 0x800 144 BS_CENTER = 0x300 145 BS_CHECKBOX = 2 146 BS_DEFPUSHBUTTON = 1 147 BS_GROUPBOX = 7 148 BS_ICON = 64 149 BS_LEFT = 256 150 BS_LEFTTEXT = 32 151 BS_MULTILINE = 0x2000 152 BS_NOTIFY = 0x4000 153 BS_OWNERDRAW = 0xB 154 BS_PUSHBUTTON = 0 155 BS_PUSHLIKE = 4096 156 BS_RADIOBUTTON = 4 157 BS_RIGHT = 512 158 BS_RIGHTBUTTON = 32 159 BS_TEXT = 0 160 BS_TOP = 0x400 161 BS_USERBUTTON = 8 162 BS_VCENTER = 0xC00 163 BS_FLAT = 0x8000 164 BS_SPLITBUTTON = 0x000C // >= Vista 165 BS_DEFSPLITBUTTON = 0x000D // >= Vista 166 ) 167 168 // Button state constants 169 const ( 170 BST_CHECKED = 1 171 BST_INDETERMINATE = 2 172 BST_UNCHECKED = 0 173 BST_FOCUS = 8 174 BST_PUSHED = 4 175 ) 176 177 // Predefined brushes constants 178 const ( 179 COLOR_3DDKSHADOW = 21 180 COLOR_3DFACE = 15 181 COLOR_3DHILIGHT = 20 182 COLOR_3DHIGHLIGHT = 20 183 COLOR_3DLIGHT = 22 184 COLOR_BTNHILIGHT = 20 185 COLOR_3DSHADOW = 16 186 COLOR_ACTIVEBORDER = 10 187 COLOR_ACTIVECAPTION = 2 188 COLOR_APPWORKSPACE = 12 189 COLOR_BACKGROUND = 1 190 COLOR_DESKTOP = 1 191 COLOR_BTNFACE = 15 192 COLOR_BTNHIGHLIGHT = 20 193 COLOR_BTNSHADOW = 16 194 COLOR_BTNTEXT = 18 195 COLOR_CAPTIONTEXT = 9 196 COLOR_GRAYTEXT = 17 197 COLOR_HIGHLIGHT = 13 198 COLOR_HIGHLIGHTTEXT = 14 199 COLOR_INACTIVEBORDER = 11 200 COLOR_INACTIVECAPTION = 3 201 COLOR_INACTIVECAPTIONTEXT = 19 202 COLOR_INFOBK = 24 203 COLOR_INFOTEXT = 23 204 COLOR_MENU = 4 205 COLOR_MENUTEXT = 7 206 COLOR_SCROLLBAR = 0 207 COLOR_WINDOW = 5 208 COLOR_WINDOWFRAME = 6 209 COLOR_WINDOWTEXT = 8 210 COLOR_HOTLIGHT = 26 211 COLOR_GRADIENTACTIVECAPTION = 27 212 COLOR_GRADIENTINACTIVECAPTION = 28 213 ) 214 215 // Button message constants 216 const ( 217 BM_CLICK = 245 218 BM_GETCHECK = 240 219 BM_GETIMAGE = 246 220 BM_GETSTATE = 242 221 BM_SETCHECK = 241 222 BM_SETIMAGE = 247 223 BM_SETSTATE = 243 224 BM_SETSTYLE = 244 225 ) 226 227 // Button notifications 228 const ( 229 BN_CLICKED = 0 230 BN_PAINT = 1 231 BN_HILITE = 2 232 BN_PUSHED = BN_HILITE 233 BN_UNHILITE = 3 234 BN_UNPUSHED = BN_UNHILITE 235 BN_DISABLE = 4 236 BN_DOUBLECLICKED = 5 237 BN_DBLCLK = BN_DOUBLECLICKED 238 BN_SETFOCUS = 6 239 BN_KILLFOCUS = 7 240 ) 241 242 // TrackPopupMenu[Ex] flags 243 const ( 244 TPM_CENTERALIGN = 0x0004 245 TPM_LEFTALIGN = 0x0000 246 TPM_RIGHTALIGN = 0x0008 247 TPM_BOTTOMALIGN = 0x0020 248 TPM_TOPALIGN = 0x0000 249 TPM_VCENTERALIGN = 0x0010 250 TPM_NONOTIFY = 0x0080 251 TPM_RETURNCMD = 0x0100 252 TPM_LEFTBUTTON = 0x0000 253 TPM_RIGHTBUTTON = 0x0002 254 TPM_HORNEGANIMATION = 0x0800 255 TPM_HORPOSANIMATION = 0x0400 256 TPM_NOANIMATION = 0x4000 257 TPM_VERNEGANIMATION = 0x2000 258 TPM_VERPOSANIMATION = 0x1000 259 TPM_HORIZONTAL = 0x0000 260 TPM_VERTICAL = 0x0040 261 ) 262 263 // GetWindowLong and GetWindowLongPtr constants 264 const ( 265 GWL_EXSTYLE = -20 266 GWL_STYLE = -16 267 GWL_WNDPROC = -4 268 GWLP_WNDPROC = -4 269 GWL_HINSTANCE = -6 270 GWLP_HINSTANCE = -6 271 GWL_HWNDPARENT = -8 272 GWLP_HWNDPARENT = -8 273 GWL_ID = -12 274 GWLP_ID = -12 275 GWL_USERDATA = -21 276 GWLP_USERDATA = -21 277 ) 278 279 // Window style constants 280 const ( 281 WS_OVERLAPPED = 0x00000000 282 WS_POPUP = 0x80000000 283 WS_CHILD = 0x40000000 284 WS_MINIMIZE = 0x20000000 285 WS_VISIBLE = 0x10000000 286 WS_DISABLED = 0x08000000 287 WS_CLIPSIBLINGS = 0x04000000 288 WS_CLIPCHILDREN = 0x02000000 289 WS_MAXIMIZE = 0x01000000 290 WS_CAPTION = 0x00C00000 291 WS_BORDER = 0x00800000 292 WS_DLGFRAME = 0x00400000 293 WS_VSCROLL = 0x00200000 294 WS_HSCROLL = 0x00100000 295 WS_SYSMENU = 0x00080000 296 WS_THICKFRAME = 0x00040000 297 WS_GROUP = 0x00020000 298 WS_TABSTOP = 0x00010000 299 WS_MINIMIZEBOX = 0x00020000 300 WS_MAXIMIZEBOX = 0x00010000 301 WS_TILED = 0x00000000 302 WS_ICONIC = 0x20000000 303 WS_SIZEBOX = 0x00040000 304 WS_OVERLAPPEDWINDOW = 0x00000000 | 0x00C00000 | 0x00080000 | 0x00040000 | 0x00020000 | 0x00010000 305 WS_POPUPWINDOW = 0x80000000 | 0x00800000 | 0x00080000 306 WS_CHILDWINDOW = 0x40000000 307 ) 308 309 // Extended window style constants 310 const ( 311 WS_EX_DLGMODALFRAME = 0x00000001 312 WS_EX_NOPARENTNOTIFY = 0x00000004 313 WS_EX_TOPMOST = 0x00000008 314 WS_EX_ACCEPTFILES = 0x00000010 315 WS_EX_TRANSPARENT = 0x00000020 316 WS_EX_MDICHILD = 0x00000040 317 WS_EX_TOOLWINDOW = 0x00000080 318 WS_EX_WINDOWEDGE = 0x00000100 319 WS_EX_CLIENTEDGE = 0x00000200 320 WS_EX_CONTEXTHELP = 0x00000400 321 WS_EX_RIGHT = 0x00001000 322 WS_EX_LEFT = 0x00000000 323 WS_EX_RTLREADING = 0x00002000 324 WS_EX_LTRREADING = 0x00000000 325 WS_EX_LEFTSCROLLBAR = 0x00004000 326 WS_EX_RIGHTSCROLLBAR = 0x00000000 327 WS_EX_CONTROLPARENT = 0x00010000 328 WS_EX_STATICEDGE = 0x00020000 329 WS_EX_APPWINDOW = 0x00040000 330 WS_EX_OVERLAPPEDWINDOW = 0x00000100 | 0x00000200 331 WS_EX_PALETTEWINDOW = 0x00000100 | 0x00000080 | 0x00000008 332 WS_EX_LAYERED = 0x00080000 333 WS_EX_NOINHERITLAYOUT = 0x00100000 334 WS_EX_NOREDIRECTIONBITMAP = 0x00200000 335 WS_EX_LAYOUTRTL = 0x00400000 336 WS_EX_NOACTIVATE = 0x08000000 337 ) 338 339 // Window message constants 340 const ( 341 WM_APP = 32768 342 WM_ACTIVATE = 6 343 WM_ACTIVATEAPP = 28 344 WM_AFXFIRST = 864 345 WM_AFXLAST = 895 346 WM_ASKCBFORMATNAME = 780 347 WM_CANCELJOURNAL = 75 348 WM_CANCELMODE = 31 349 WM_CAPTURECHANGED = 533 350 WM_CHANGECBCHAIN = 781 351 WM_CHAR = 258 352 WM_CHARTOITEM = 47 353 WM_CHILDACTIVATE = 34 354 WM_CLEAR = 771 355 WM_CLOSE = 16 356 WM_COMMAND = 273 357 WM_COMMNOTIFY = 68 /* OBSOLETE */ 358 WM_COMPACTING = 65 359 WM_COMPAREITEM = 57 360 WM_CONTEXTMENU = 123 361 WM_COPY = 769 362 WM_COPYDATA = 74 363 WM_CREATE = 1 364 WM_CTLCOLORBTN = 309 365 WM_CTLCOLORDLG = 310 366 WM_CTLCOLOREDIT = 307 367 WM_CTLCOLORLISTBOX = 308 368 WM_CTLCOLORMSGBOX = 306 369 WM_CTLCOLORSCROLLBAR = 311 370 WM_CTLCOLORSTATIC = 312 371 WM_CUT = 768 372 WM_DEADCHAR = 259 373 WM_DELETEITEM = 45 374 WM_DESTROY = 2 375 WM_DESTROYCLIPBOARD = 775 376 WM_DEVICECHANGE = 537 377 WM_DEVMODECHANGE = 27 378 WM_DISPLAYCHANGE = 126 379 WM_DRAWCLIPBOARD = 776 380 WM_DRAWITEM = 43 381 WM_DROPFILES = 563 382 WM_ENABLE = 10 383 WM_ENDSESSION = 22 384 WM_ENTERIDLE = 289 385 WM_ENTERMENULOOP = 529 386 WM_ENTERSIZEMOVE = 561 387 WM_ERASEBKGND = 20 388 WM_EXITMENULOOP = 530 389 WM_EXITSIZEMOVE = 562 390 WM_FONTCHANGE = 29 391 WM_GETDLGCODE = 135 392 WM_GETFONT = 49 393 WM_GETHOTKEY = 51 394 WM_GETICON = 127 395 WM_GETMINMAXINFO = 36 396 WM_GETTEXT = 13 397 WM_GETTEXTLENGTH = 14 398 WM_HANDHELDFIRST = 856 399 WM_HANDHELDLAST = 863 400 WM_HELP = 83 401 WM_HOTKEY = 786 402 WM_HSCROLL = 276 403 WM_HSCROLLCLIPBOARD = 782 404 WM_ICONERASEBKGND = 39 405 WM_INITDIALOG = 272 406 WM_INITMENU = 278 407 WM_INITMENUPOPUP = 279 408 WM_INPUT = 0x00FF 409 WM_INPUTLANGCHANGE = 81 410 WM_INPUTLANGCHANGEREQUEST = 80 411 WM_KEYDOWN = 256 412 WM_KEYUP = 257 413 WM_KILLFOCUS = 8 414 WM_MDIACTIVATE = 546 415 WM_MDICASCADE = 551 416 WM_MDICREATE = 544 417 WM_MDIDESTROY = 545 418 WM_MDIGETACTIVE = 553 419 WM_MDIICONARRANGE = 552 420 WM_MDIMAXIMIZE = 549 421 WM_MDINEXT = 548 422 WM_MDIREFRESHMENU = 564 423 WM_MDIRESTORE = 547 424 WM_MDISETMENU = 560 425 WM_MDITILE = 550 426 WM_MEASUREITEM = 44 427 WM_GETOBJECT = 0x003D 428 WM_CHANGEUISTATE = 0x0127 429 WM_UPDATEUISTATE = 0x0128 430 WM_QUERYUISTATE = 0x0129 431 WM_UNINITMENUPOPUP = 0x0125 432 WM_MENURBUTTONUP = 290 433 WM_MENUCOMMAND = 0x0126 434 WM_MENUGETOBJECT = 0x0124 435 WM_MENUDRAG = 0x0123 436 WM_APPCOMMAND = 0x0319 437 WM_MENUCHAR = 288 438 WM_MENUSELECT = 287 439 WM_MOVE = 3 440 WM_MOVING = 534 441 WM_NCACTIVATE = 134 442 WM_NCCALCSIZE = 131 443 WM_NCCREATE = 129 444 WM_NCDESTROY = 130 445 WM_NCHITTEST = 132 446 WM_NCLBUTTONDBLCLK = 163 447 WM_NCLBUTTONDOWN = 161 448 WM_NCLBUTTONUP = 162 449 WM_NCMBUTTONDBLCLK = 169 450 WM_NCMBUTTONDOWN = 167 451 WM_NCMBUTTONUP = 168 452 WM_NCXBUTTONDOWN = 171 453 WM_NCXBUTTONUP = 172 454 WM_NCXBUTTONDBLCLK = 173 455 WM_NCMOUSEHOVER = 0x02A0 456 WM_NCMOUSELEAVE = 0x02A2 457 WM_NCMOUSEMOVE = 160 458 WM_NCPAINT = 133 459 WM_NCRBUTTONDBLCLK = 166 460 WM_NCRBUTTONDOWN = 164 461 WM_NCRBUTTONUP = 165 462 WM_NEXTDLGCTL = 40 463 WM_NEXTMENU = 531 464 WM_NOTIFY = 78 465 WM_NOTIFYFORMAT = 85 466 WM_NULL = 0 467 WM_PAINT = 15 468 WM_PAINTCLIPBOARD = 777 469 WM_PAINTICON = 38 470 WM_PALETTECHANGED = 785 471 WM_PALETTEISCHANGING = 784 472 WM_PARENTNOTIFY = 528 473 WM_PASTE = 770 474 WM_PENWINFIRST = 896 475 WM_PENWINLAST = 911 476 WM_POWER = 72 477 WM_POWERBROADCAST = 536 478 WM_PRINT = 791 479 WM_PRINTCLIENT = 792 480 WM_QUERYDRAGICON = 55 481 WM_QUERYENDSESSION = 17 482 WM_QUERYNEWPALETTE = 783 483 WM_QUERYOPEN = 19 484 WM_QUEUESYNC = 35 485 WM_QUIT = 18 486 WM_RENDERALLFORMATS = 774 487 WM_RENDERFORMAT = 773 488 WM_SETCURSOR = 32 489 WM_SETFOCUS = 7 490 WM_SETFONT = 48 491 WM_SETHOTKEY = 50 492 WM_SETICON = 128 493 WM_SETREDRAW = 11 494 WM_SETTEXT = 12 495 WM_SETTINGCHANGE = 26 496 WM_SHOWWINDOW = 24 497 WM_SIZE = 5 498 WM_SIZECLIPBOARD = 779 499 WM_SIZING = 532 500 WM_SPOOLERSTATUS = 42 501 WM_STYLECHANGED = 125 502 WM_STYLECHANGING = 124 503 WM_SYSCHAR = 262 504 WM_SYSCOLORCHANGE = 21 505 WM_SYSCOMMAND = 274 506 WM_SYSDEADCHAR = 263 507 WM_SYSKEYDOWN = 260 508 WM_SYSKEYUP = 261 509 WM_TCARD = 82 510 WM_THEMECHANGED = 794 511 WM_TIMECHANGE = 30 512 WM_TIMER = 275 513 WM_UNDO = 772 514 WM_USER = 1024 515 WM_USERCHANGED = 84 516 WM_VKEYTOITEM = 46 517 WM_VSCROLL = 277 518 WM_VSCROLLCLIPBOARD = 778 519 WM_WINDOWPOSCHANGED = 71 520 WM_WINDOWPOSCHANGING = 70 521 WM_WININICHANGE = 26 522 WM_KEYFIRST = 256 523 WM_KEYLAST = 264 524 WM_SYNCPAINT = 136 525 WM_MOUSEACTIVATE = 33 526 WM_MOUSEMOVE = 512 527 WM_LBUTTONDOWN = 513 528 WM_LBUTTONUP = 514 529 WM_LBUTTONDBLCLK = 515 530 WM_RBUTTONDOWN = 516 531 WM_RBUTTONUP = 517 532 WM_RBUTTONDBLCLK = 518 533 WM_MBUTTONDOWN = 519 534 WM_MBUTTONUP = 520 535 WM_MBUTTONDBLCLK = 521 536 WM_MOUSEWHEEL = 522 537 WM_MOUSEFIRST = 512 538 WM_XBUTTONDOWN = 523 539 WM_XBUTTONUP = 524 540 WM_XBUTTONDBLCLK = 525 541 WM_MOUSELAST = 525 542 WM_MOUSEHOVER = 0x2A1 543 WM_MOUSELEAVE = 0x2A3 544 WM_CLIPBOARDUPDATE = 0x031D 545 ) 546 547 // WM_ACTIVATE 548 const ( 549 WA_INACTIVE = 0 550 WA_ACTIVE = 1 551 WA_CLICKACTIVE = 2 552 ) 553 554 const LF_FACESIZE = 32 555 556 // Font weight constants 557 const ( 558 FW_DONTCARE = 0 559 FW_THIN = 100 560 FW_EXTRALIGHT = 200 561 FW_ULTRALIGHT = FW_EXTRALIGHT 562 FW_LIGHT = 300 563 FW_NORMAL = 400 564 FW_REGULAR = 400 565 FW_MEDIUM = 500 566 FW_SEMIBOLD = 600 567 FW_DEMIBOLD = FW_SEMIBOLD 568 FW_BOLD = 700 569 FW_EXTRABOLD = 800 570 FW_ULTRABOLD = FW_EXTRABOLD 571 FW_HEAVY = 900 572 FW_BLACK = FW_HEAVY 573 ) 574 575 // Charset constants 576 const ( 577 ANSI_CHARSET = 0 578 DEFAULT_CHARSET = 1 579 SYMBOL_CHARSET = 2 580 SHIFTJIS_CHARSET = 128 581 HANGEUL_CHARSET = 129 582 HANGUL_CHARSET = 129 583 GB2312_CHARSET = 134 584 CHINESEBIG5_CHARSET = 136 585 GREEK_CHARSET = 161 586 TURKISH_CHARSET = 162 587 HEBREW_CHARSET = 177 588 ARABIC_CHARSET = 178 589 BALTIC_CHARSET = 186 590 RUSSIAN_CHARSET = 204 591 THAI_CHARSET = 222 592 EASTEUROPE_CHARSET = 238 593 OEM_CHARSET = 255 594 JOHAB_CHARSET = 130 595 VIETNAMESE_CHARSET = 163 596 MAC_CHARSET = 77 597 ) 598 599 // Font output precision constants 600 const ( 601 OUT_DEFAULT_PRECIS = 0 602 OUT_STRING_PRECIS = 1 603 OUT_CHARACTER_PRECIS = 2 604 OUT_STROKE_PRECIS = 3 605 OUT_TT_PRECIS = 4 606 OUT_DEVICE_PRECIS = 5 607 OUT_RASTER_PRECIS = 6 608 OUT_TT_ONLY_PRECIS = 7 609 OUT_OUTLINE_PRECIS = 8 610 OUT_PS_ONLY_PRECIS = 10 611 ) 612 613 // Font clipping precision constants 614 const ( 615 CLIP_DEFAULT_PRECIS = 0 616 CLIP_CHARACTER_PRECIS = 1 617 CLIP_STROKE_PRECIS = 2 618 CLIP_MASK = 15 619 CLIP_LH_ANGLES = 16 620 CLIP_TT_ALWAYS = 32 621 CLIP_EMBEDDED = 128 622 ) 623 624 // Font output quality constants 625 const ( 626 DEFAULT_QUALITY = 0 627 DRAFT_QUALITY = 1 628 PROOF_QUALITY = 2 629 NONANTIALIASED_QUALITY = 3 630 ANTIALIASED_QUALITY = 4 631 CLEARTYPE_QUALITY = 5 632 ) 633 634 // Font pitch constants 635 const ( 636 DEFAULT_PITCH = 0 637 FIXED_PITCH = 1 638 VARIABLE_PITCH = 2 639 ) 640 641 // Font family constants 642 const ( 643 FF_DECORATIVE = 80 644 FF_DONTCARE = 0 645 FF_MODERN = 48 646 FF_ROMAN = 16 647 FF_SCRIPT = 64 648 FF_SWISS = 32 649 ) 650 651 // DeviceCapabilities capabilities 652 const ( 653 DC_FIELDS = 1 654 DC_PAPERS = 2 655 DC_PAPERSIZE = 3 656 DC_MINEXTENT = 4 657 DC_MAXEXTENT = 5 658 DC_BINS = 6 659 DC_DUPLEX = 7 660 DC_SIZE = 8 661 DC_EXTRA = 9 662 DC_VERSION = 10 663 DC_DRIVER = 11 664 DC_BINNAMES = 12 665 DC_ENUMRESOLUTIONS = 13 666 DC_FILEDEPENDENCIES = 14 667 DC_TRUETYPE = 15 668 DC_PAPERNAMES = 16 669 DC_ORIENTATION = 17 670 DC_COPIES = 18 671 DC_BINADJUST = 19 672 DC_EMF_COMPLIANT = 20 673 DC_DATATYPE_PRODUCED = 21 674 DC_COLLATE = 22 675 DC_MANUFACTURER = 23 676 DC_MODEL = 24 677 DC_PERSONALITY = 25 678 DC_PRINTRATE = 26 679 DC_PRINTRATEUNIT = 27 680 DC_PRINTERMEM = 28 681 DC_MEDIAREADY = 29 682 DC_STAPLE = 30 683 DC_PRINTRATEPPM = 31 684 DC_COLORDEVICE = 32 685 DC_NUP = 33 686 DC_MEDIATYPENAMES = 34 687 DC_MEDIATYPES = 35 688 ) 689 690 // GetDeviceCaps index constants 691 const ( 692 DRIVERVERSION = 0 693 TECHNOLOGY = 2 694 HORZSIZE = 4 695 VERTSIZE = 6 696 HORZRES = 8 697 VERTRES = 10 698 LOGPIXELSX = 88 699 LOGPIXELSY = 90 700 BITSPIXEL = 12 701 PLANES = 14 702 NUMBRUSHES = 16 703 NUMPENS = 18 704 NUMFONTS = 22 705 NUMCOLORS = 24 706 NUMMARKERS = 20 707 ASPECTX = 40 708 ASPECTY = 42 709 ASPECTXY = 44 710 PDEVICESIZE = 26 711 CLIPCAPS = 36 712 SIZEPALETTE = 104 713 NUMRESERVED = 106 714 COLORRES = 108 715 PHYSICALWIDTH = 110 716 PHYSICALHEIGHT = 111 717 PHYSICALOFFSETX = 112 718 PHYSICALOFFSETY = 113 719 SCALINGFACTORX = 114 720 SCALINGFACTORY = 115 721 VREFRESH = 116 722 DESKTOPHORZRES = 118 723 DESKTOPVERTRES = 117 724 BLTALIGNMENT = 119 725 SHADEBLENDCAPS = 120 726 COLORMGMTCAPS = 121 727 RASTERCAPS = 38 728 CURVECAPS = 28 729 LINECAPS = 30 730 POLYGONALCAPS = 32 731 TEXTCAPS = 34 732 ) 733 734 // GetDeviceCaps TECHNOLOGY constants 735 const ( 736 DT_PLOTTER = 0 737 DT_RASDISPLAY = 1 738 DT_RASPRINTER = 2 739 DT_RASCAMERA = 3 740 DT_CHARSTREAM = 4 741 DT_METAFILE = 5 742 DT_DISPFILE = 6 743 ) 744 745 // GetDeviceCaps SHADEBLENDCAPS constants 746 const ( 747 SB_NONE = 0x00 748 SB_CONST_ALPHA = 0x01 749 SB_PIXEL_ALPHA = 0x02 750 SB_PREMULT_ALPHA = 0x04 751 SB_GRAD_RECT = 0x10 752 SB_GRAD_TRI = 0x20 753 ) 754 755 // GetDeviceCaps COLORMGMTCAPS constants 756 const ( 757 CM_NONE = 0x00 758 CM_DEVICE_ICM = 0x01 759 CM_GAMMA_RAMP = 0x02 760 CM_CMYK_COLOR = 0x04 761 ) 762 763 // GetDeviceCaps RASTERCAPS constants 764 const ( 765 RC_BANDING = 2 766 RC_BITBLT = 1 767 RC_BITMAP64 = 8 768 RC_DI_BITMAP = 128 769 RC_DIBTODEV = 512 770 RC_FLOODFILL = 4096 771 RC_GDI20_OUTPUT = 16 772 RC_PALETTE = 256 773 RC_SCALING = 4 774 RC_STRETCHBLT = 2048 775 RC_STRETCHDIB = 8192 776 RC_DEVBITS = 0x8000 777 RC_OP_DX_OUTPUT = 0x4000 778 ) 779 780 // GetDeviceCaps CURVECAPS constants 781 const ( 782 CC_NONE = 0 783 CC_CIRCLES = 1 784 CC_PIE = 2 785 CC_CHORD = 4 786 CC_ELLIPSES = 8 787 CC_WIDE = 16 788 CC_STYLED = 32 789 CC_WIDESTYLED = 64 790 CC_INTERIORS = 128 791 CC_ROUNDRECT = 256 792 ) 793 794 // GetDeviceCaps LINECAPS constants 795 const ( 796 LC_NONE = 0 797 LC_POLYLINE = 2 798 LC_MARKER = 4 799 LC_POLYMARKER = 8 800 LC_WIDE = 16 801 LC_STYLED = 32 802 LC_WIDESTYLED = 64 803 LC_INTERIORS = 128 804 ) 805 806 // GetDeviceCaps POLYGONALCAPS constants 807 const ( 808 PC_NONE = 0 809 PC_POLYGON = 1 810 PC_POLYPOLYGON = 256 811 PC_PATHS = 512 812 PC_RECTANGLE = 2 813 PC_WINDPOLYGON = 4 814 PC_SCANLINE = 8 815 PC_TRAPEZOID = 4 816 PC_WIDE = 16 817 PC_STYLED = 32 818 PC_WIDESTYLED = 64 819 PC_INTERIORS = 128 820 ) 821 822 // GetDeviceCaps TEXTCAPS constants 823 const ( 824 TC_OP_CHARACTER = 1 825 TC_OP_STROKE = 2 826 TC_CP_STROKE = 4 827 TC_CR_90 = 8 828 TC_CR_ANY = 16 829 TC_SF_X_YINDEP = 32 830 TC_SA_DOUBLE = 64 831 TC_SA_INTEGER = 128 832 TC_SA_CONTIN = 256 833 TC_EA_DOUBLE = 512 834 TC_IA_ABLE = 1024 835 TC_UA_ABLE = 2048 836 TC_SO_ABLE = 4096 837 TC_RA_ABLE = 8192 838 TC_VA_ABLE = 16384 839 TC_RESERVED = 32768 840 TC_SCROLLBLT = 65536 841 ) 842 843 // Static control styles 844 const ( 845 SS_BITMAP = 14 846 SS_BLACKFRAME = 7 847 SS_BLACKRECT = 4 848 SS_CENTER = 1 849 SS_CENTERIMAGE = 512 850 SS_EDITCONTROL = 0x2000 851 SS_ENHMETAFILE = 15 852 SS_ETCHEDFRAME = 18 853 SS_ETCHEDHORZ = 16 854 SS_ETCHEDVERT = 17 855 SS_GRAYFRAME = 8 856 SS_GRAYRECT = 5 857 SS_ICON = 3 858 SS_LEFT = 0 859 SS_LEFTNOWORDWRAP = 0xc 860 SS_NOPREFIX = 128 861 SS_NOTIFY = 256 862 SS_OWNERDRAW = 0xd 863 SS_REALSIZECONTROL = 0x040 864 SS_REALSIZEIMAGE = 0x800 865 SS_RIGHT = 2 866 SS_RIGHTJUST = 0x400 867 SS_SIMPLE = 11 868 SS_SUNKEN = 4096 869 SS_WHITEFRAME = 9 870 SS_WHITERECT = 6 871 SS_USERITEM = 10 872 SS_TYPEMASK = 0x0000001F 873 SS_ENDELLIPSIS = 0x00004000 874 SS_PATHELLIPSIS = 0x00008000 875 SS_WORDELLIPSIS = 0x0000C000 876 SS_ELLIPSISMASK = 0x0000C000 877 ) 878 879 // Edit styles 880 const ( 881 ES_LEFT = 0x0000 882 ES_CENTER = 0x0001 883 ES_RIGHT = 0x0002 884 ES_MULTILINE = 0x0004 885 ES_UPPERCASE = 0x0008 886 ES_LOWERCASE = 0x0010 887 ES_PASSWORD = 0x0020 888 ES_AUTOVSCROLL = 0x0040 889 ES_AUTOHSCROLL = 0x0080 890 ES_NOHIDESEL = 0x0100 891 ES_OEMCONVERT = 0x0400 892 ES_READONLY = 0x0800 893 ES_WANTRETURN = 0x1000 894 ES_NUMBER = 0x2000 895 ) 896 897 // Edit notifications 898 const ( 899 EN_SETFOCUS = 0x0100 900 EN_KILLFOCUS = 0x0200 901 EN_CHANGE = 0x0300 902 EN_UPDATE = 0x0400 903 EN_ERRSPACE = 0x0500 904 EN_MAXTEXT = 0x0501 905 EN_HSCROLL = 0x0601 906 EN_VSCROLL = 0x0602 907 EN_ALIGN_LTR_EC = 0x0700 908 EN_ALIGN_RTL_EC = 0x0701 909 ) 910 911 // Edit messages 912 const ( 913 EM_GETSEL = 0x00B0 914 EM_SETSEL = 0x00B1 915 EM_GETRECT = 0x00B2 916 EM_SETRECT = 0x00B3 917 EM_SETRECTNP = 0x00B4 918 EM_SCROLL = 0x00B5 919 EM_LINESCROLL = 0x00B6 920 EM_SCROLLCARET = 0x00B7 921 EM_GETMODIFY = 0x00B8 922 EM_SETMODIFY = 0x00B9 923 EM_GETLINECOUNT = 0x00BA 924 EM_LINEINDEX = 0x00BB 925 EM_SETHANDLE = 0x00BC 926 EM_GETHANDLE = 0x00BD 927 EM_GETTHUMB = 0x00BE 928 EM_LINELENGTH = 0x00C1 929 EM_REPLACESEL = 0x00C2 930 EM_GETLINE = 0x00C4 931 EM_LIMITTEXT = 0x00C5 932 EM_CANUNDO = 0x00C6 933 EM_UNDO = 0x00C7 934 EM_FMTLINES = 0x00C8 935 EM_LINEFROMCHAR = 0x00C9 936 EM_SETTABSTOPS = 0x00CB 937 EM_SETPASSWORDCHAR = 0x00CC 938 EM_EMPTYUNDOBUFFER = 0x00CD 939 EM_GETFIRSTVISIBLELINE = 0x00CE 940 EM_SETREADONLY = 0x00CF 941 EM_SETWORDBREAKPROC = 0x00D0 942 EM_GETWORDBREAKPROC = 0x00D1 943 EM_GETPASSWORDCHAR = 0x00D2 944 EM_SETMARGINS = 0x00D3 945 EM_GETMARGINS = 0x00D4 946 EM_SETLIMITTEXT = EM_LIMITTEXT 947 EM_GETLIMITTEXT = 0x00D5 948 EM_POSFROMCHAR = 0x00D6 949 EM_CHARFROMPOS = 0x00D7 950 EM_SETIMESTATUS = 0x00D8 951 EM_GETIMESTATUS = 0x00D9 952 EM_SETCUEBANNER = 0x1501 953 EM_GETCUEBANNER = 0x1502 954 ) 955 956 const ( 957 CCM_FIRST = 0x2000 958 CCM_LAST = CCM_FIRST + 0x200 959 CCM_SETBKCOLOR = 8193 960 CCM_SETCOLORSCHEME = 8194 961 CCM_GETCOLORSCHEME = 8195 962 CCM_GETDROPTARGET = 8196 963 CCM_SETUNICODEFORMAT = 8197 964 CCM_GETUNICODEFORMAT = 8198 965 CCM_SETVERSION = 0x2007 966 CCM_GETVERSION = 0x2008 967 CCM_SETNOTIFYWINDOW = 0x2009 968 CCM_SETWINDOWTHEME = 0x200b 969 CCM_DPISCALE = 0x200c 970 ) 971 972 // Common controls styles 973 const ( 974 CCS_TOP = 1 975 CCS_NOMOVEY = 2 976 CCS_BOTTOM = 3 977 CCS_NORESIZE = 4 978 CCS_NOPARENTALIGN = 8 979 CCS_ADJUSTABLE = 32 980 CCS_NODIVIDER = 64 981 CCS_VERT = 128 982 CCS_LEFT = 129 983 CCS_NOMOVEX = 130 984 CCS_RIGHT = 131 985 ) 986 987 // ProgressBar messages 988 const ( 989 PROGRESS_CLASS = "msctls_progress32" 990 PBM_SETPOS = WM_USER + 2 991 PBM_DELTAPOS = WM_USER + 3 992 PBM_SETSTEP = WM_USER + 4 993 PBM_STEPIT = WM_USER + 5 994 PBM_SETRANGE32 = 1030 995 PBM_GETRANGE = 1031 996 PBM_GETPOS = 1032 997 PBM_SETBARCOLOR = 1033 998 PBM_SETBKCOLOR = CCM_SETBKCOLOR 999 PBS_SMOOTH = 1 1000 PBS_VERTICAL = 4 1001 ) 1002 1003 // Trackbar messages and constants 1004 const ( 1005 TBS_AUTOTICKS = 1 1006 TBS_VERT = 2 1007 TBS_HORZ = 0 1008 TBS_TOP = 4 1009 TBS_BOTTOM = 0 1010 TBS_LEFT = 4 1011 TBS_RIGHT = 0 1012 TBS_BOTH = 8 1013 TBS_NOTICKS = 16 1014 TBS_ENABLESELRANGE = 32 1015 TBS_FIXEDLENGTH = 64 1016 TBS_NOTHUMB = 128 1017 TBS_TOOLTIPS = 0x0100 1018 ) 1019 1020 const ( 1021 TBM_GETPOS = (WM_USER) 1022 TBM_GETRANGEMIN = (WM_USER + 1) 1023 TBM_GETRANGEMAX = (WM_USER + 2) 1024 TBM_GETTIC = (WM_USER + 3) 1025 TBM_SETTIC = (WM_USER + 4) 1026 TBM_SETPOS = (WM_USER + 5) 1027 TBM_SETRANGE = (WM_USER + 6) 1028 TBM_SETRANGEMIN = (WM_USER + 7) 1029 TBM_SETRANGEMAX = (WM_USER + 8) 1030 TBM_CLEARTICS = (WM_USER + 9) 1031 TBM_SETSEL = (WM_USER + 10) 1032 TBM_SETSELSTART = (WM_USER + 11) 1033 TBM_SETSELEND = (WM_USER + 12) 1034 TBM_GETPTICS = (WM_USER + 14) 1035 TBM_GETTICPOS = (WM_USER + 15) 1036 TBM_GETNUMTICS = (WM_USER + 16) 1037 TBM_GETSELSTART = (WM_USER + 17) 1038 TBM_GETSELEND = (WM_USER + 18) 1039 TBM_CLEARSEL = (WM_USER + 19) 1040 TBM_SETTICFREQ = (WM_USER + 20) 1041 TBM_SETPAGESIZE = (WM_USER + 21) 1042 TBM_GETPAGESIZE = (WM_USER + 22) 1043 TBM_SETLINESIZE = (WM_USER + 23) 1044 TBM_GETLINESIZE = (WM_USER + 24) 1045 TBM_GETTHUMBRECT = (WM_USER + 25) 1046 TBM_GETCHANNELRECT = (WM_USER + 26) 1047 TBM_SETTHUMBLENGTH = (WM_USER + 27) 1048 TBM_GETTHUMBLENGTH = (WM_USER + 28) 1049 TBM_SETTOOLTIPS = (WM_USER + 29) 1050 TBM_GETTOOLTIPS = (WM_USER + 30) 1051 TBM_SETTIPSIDE = (WM_USER + 31) 1052 TBM_SETBUDDY = (WM_USER + 32) 1053 TBM_GETBUDDY = (WM_USER + 33) 1054 ) 1055 1056 const ( 1057 TB_LINEUP = 0 1058 TB_LINEDOWN = 1 1059 TB_PAGEUP = 2 1060 TB_PAGEDOWN = 3 1061 TB_THUMBPOSITION = 4 1062 TB_THUMBTRACK = 5 1063 TB_TOP = 6 1064 TB_BOTTOM = 7 1065 TB_ENDTRACK = 8 1066 ) 1067 1068 // GetOpenFileName and GetSaveFileName extended flags 1069 const ( 1070 OFN_EX_NOPLACESBAR = 0x00000001 1071 ) 1072 1073 // GetOpenFileName and GetSaveFileName flags 1074 const ( 1075 OFN_ALLOWMULTISELECT = 0x00000200 1076 OFN_CREATEPROMPT = 0x00002000 1077 OFN_DONTADDTORECENT = 0x02000000 1078 OFN_ENABLEHOOK = 0x00000020 1079 OFN_ENABLEINCLUDENOTIFY = 0x00400000 1080 OFN_ENABLESIZING = 0x00800000 1081 OFN_ENABLETEMPLATE = 0x00000040 1082 OFN_ENABLETEMPLATEHANDLE = 0x00000080 1083 OFN_EXPLORER = 0x00080000 1084 OFN_EXTENSIONDIFFERENT = 0x00000400 1085 OFN_FILEMUSTEXIST = 0x00001000 1086 OFN_FORCESHOWHIDDEN = 0x10000000 1087 OFN_HIDEREADONLY = 0x00000004 1088 OFN_LONGNAMES = 0x00200000 1089 OFN_NOCHANGEDIR = 0x00000008 1090 OFN_NODEREFERENCELINKS = 0x00100000 1091 OFN_NOLONGNAMES = 0x00040000 1092 OFN_NONETWORKBUTTON = 0x00020000 1093 OFN_NOREADONLYRETURN = 0x00008000 1094 OFN_NOTESTFILECREATE = 0x00010000 1095 OFN_NOVALIDATE = 0x00000100 1096 OFN_OVERWRITEPROMPT = 0x00000002 1097 OFN_PATHMUSTEXIST = 0x00000800 1098 OFN_READONLY = 0x00000001 1099 OFN_SHAREAWARE = 0x00004000 1100 OFN_SHOWHELP = 0x00000010 1101 ) 1102 1103 // SHBrowseForFolder flags 1104 const ( 1105 BIF_RETURNONLYFSDIRS = 0x00000001 1106 BIF_DONTGOBELOWDOMAIN = 0x00000002 1107 BIF_STATUSTEXT = 0x00000004 1108 BIF_RETURNFSANCESTORS = 0x00000008 1109 BIF_EDITBOX = 0x00000010 1110 BIF_VALIDATE = 0x00000020 1111 BIF_NEWDIALOGSTYLE = 0x00000040 1112 BIF_BROWSEINCLUDEURLS = 0x00000080 1113 BIF_USENEWUI = BIF_EDITBOX | BIF_NEWDIALOGSTYLE 1114 BIF_UAHINT = 0x00000100 1115 BIF_NONEWFOLDERBUTTON = 0x00000200 1116 BIF_NOTRANSLATETARGETS = 0x00000400 1117 BIF_BROWSEFORCOMPUTER = 0x00001000 1118 BIF_BROWSEFORPRINTER = 0x00002000 1119 BIF_BROWSEINCLUDEFILES = 0x00004000 1120 BIF_SHAREABLE = 0x00008000 1121 BIF_BROWSEFILEJUNCTIONS = 0x00010000 1122 ) 1123 1124 // MessageBox flags 1125 const ( 1126 MB_OK = 0x00000000 1127 MB_OKCANCEL = 0x00000001 1128 MB_ABORTRETRYIGNORE = 0x00000002 1129 MB_YESNOCANCEL = 0x00000003 1130 MB_YESNO = 0x00000004 1131 MB_RETRYCANCEL = 0x00000005 1132 MB_CANCELTRYCONTINUE = 0x00000006 1133 MB_ICONHAND = 0x00000010 1134 MB_ICONQUESTION = 0x00000020 1135 MB_ICONEXCLAMATION = 0x00000030 1136 MB_ICONASTERISK = 0x00000040 1137 MB_USERICON = 0x00000080 1138 MB_ICONWARNING = MB_ICONEXCLAMATION 1139 MB_ICONERROR = MB_ICONHAND 1140 MB_ICONINFORMATION = MB_ICONASTERISK 1141 MB_ICONSTOP = MB_ICONHAND 1142 MB_DEFBUTTON1 = 0x00000000 1143 MB_DEFBUTTON2 = 0x00000100 1144 MB_DEFBUTTON3 = 0x00000200 1145 MB_DEFBUTTON4 = 0x00000300 1146 ) 1147 1148 // COM 1149 const ( 1150 E_INVALIDARG = 0x80070057 1151 E_OUTOFMEMORY = 0x8007000E 1152 E_UNEXPECTED = 0x8000FFFF 1153 ) 1154 1155 const ( 1156 S_OK = 0 1157 S_FALSE = 0x0001 1158 RPC_E_CHANGED_MODE = 0x80010106 1159 ) 1160 1161 // GetSystemMetrics constants 1162 const ( 1163 SM_CXSCREEN = 0 1164 SM_CYSCREEN = 1 1165 SM_CXVSCROLL = 2 1166 SM_CYHSCROLL = 3 1167 SM_CYCAPTION = 4 1168 SM_CXBORDER = 5 1169 SM_CYBORDER = 6 1170 SM_CXDLGFRAME = 7 1171 SM_CYDLGFRAME = 8 1172 SM_CYVTHUMB = 9 1173 SM_CXHTHUMB = 10 1174 SM_CXICON = 11 1175 SM_CYICON = 12 1176 SM_CXCURSOR = 13 1177 SM_CYCURSOR = 14 1178 SM_CYMENU = 15 1179 SM_CXFULLSCREEN = 16 1180 SM_CYFULLSCREEN = 17 1181 SM_CYKANJIWINDOW = 18 1182 SM_MOUSEPRESENT = 19 1183 SM_CYVSCROLL = 20 1184 SM_CXHSCROLL = 21 1185 SM_DEBUG = 22 1186 SM_SWAPBUTTON = 23 1187 SM_RESERVED1 = 24 1188 SM_RESERVED2 = 25 1189 SM_RESERVED3 = 26 1190 SM_RESERVED4 = 27 1191 SM_CXMIN = 28 1192 SM_CYMIN = 29 1193 SM_CXSIZE = 30 1194 SM_CYSIZE = 31 1195 SM_CXFRAME = 32 1196 SM_CYFRAME = 33 1197 SM_CXMINTRACK = 34 1198 SM_CYMINTRACK = 35 1199 SM_CXDOUBLECLK = 36 1200 SM_CYDOUBLECLK = 37 1201 SM_CXICONSPACING = 38 1202 SM_CYICONSPACING = 39 1203 SM_MENUDROPALIGNMENT = 40 1204 SM_PENWINDOWS = 41 1205 SM_DBCSENABLED = 42 1206 SM_CMOUSEBUTTONS = 43 1207 SM_CXFIXEDFRAME = SM_CXDLGFRAME 1208 SM_CYFIXEDFRAME = SM_CYDLGFRAME 1209 SM_CXSIZEFRAME = SM_CXFRAME 1210 SM_CYSIZEFRAME = SM_CYFRAME 1211 SM_SECURE = 44 1212 SM_CXEDGE = 45 1213 SM_CYEDGE = 46 1214 SM_CXMINSPACING = 47 1215 SM_CYMINSPACING = 48 1216 SM_CXSMICON = 49 1217 SM_CYSMICON = 50 1218 SM_CYSMCAPTION = 51 1219 SM_CXSMSIZE = 52 1220 SM_CYSMSIZE = 53 1221 SM_CXMENUSIZE = 54 1222 SM_CYMENUSIZE = 55 1223 SM_ARRANGE = 56 1224 SM_CXMINIMIZED = 57 1225 SM_CYMINIMIZED = 58 1226 SM_CXMAXTRACK = 59 1227 SM_CYMAXTRACK = 60 1228 SM_CXMAXIMIZED = 61 1229 SM_CYMAXIMIZED = 62 1230 SM_NETWORK = 63 1231 SM_CLEANBOOT = 67 1232 SM_CXDRAG = 68 1233 SM_CYDRAG = 69 1234 SM_SHOWSOUNDS = 70 1235 SM_CXMENUCHECK = 71 1236 SM_CYMENUCHECK = 72 1237 SM_SLOWMACHINE = 73 1238 SM_MIDEASTENABLED = 74 1239 SM_MOUSEWHEELPRESENT = 75 1240 SM_XVIRTUALSCREEN = 76 1241 SM_YVIRTUALSCREEN = 77 1242 SM_CXVIRTUALSCREEN = 78 1243 SM_CYVIRTUALSCREEN = 79 1244 SM_CMONITORS = 80 1245 SM_SAMEDISPLAYFORMAT = 81 1246 SM_IMMENABLED = 82 1247 SM_CXFOCUSBORDER = 83 1248 SM_CYFOCUSBORDER = 84 1249 SM_TABLETPC = 86 1250 SM_MEDIACENTER = 87 1251 SM_STARTER = 88 1252 SM_SERVERR2 = 89 1253 SM_CMETRICS = 91 1254 SM_REMOTESESSION = 0x1000 1255 SM_SHUTTINGDOWN = 0x2000 1256 SM_REMOTECONTROL = 0x2001 1257 SM_CARETBLINKINGENABLED = 0x2002 1258 ) 1259 1260 const ( 1261 CLSCTX_INPROC_SERVER = 1 1262 CLSCTX_INPROC_HANDLER = 2 1263 CLSCTX_LOCAL_SERVER = 4 1264 CLSCTX_INPROC_SERVER16 = 8 1265 CLSCTX_REMOTE_SERVER = 16 1266 CLSCTX_ALL = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER 1267 CLSCTX_INPROC = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER 1268 CLSCTX_SERVER = CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER 1269 ) 1270 1271 const ( 1272 COINIT_APARTMENTTHREADED = 0x2 1273 COINIT_MULTITHREADED = 0x0 1274 COINIT_DISABLE_OLE1DDE = 0x4 1275 COINIT_SPEED_OVER_MEMORY = 0x8 1276 ) 1277 1278 const ( 1279 DISPATCH_METHOD = 1 1280 DISPATCH_PROPERTYGET = 2 1281 DISPATCH_PROPERTYPUT = 4 1282 DISPATCH_PROPERTYPUTREF = 8 1283 ) 1284 1285 const ( 1286 CC_FASTCALL = iota 1287 CC_CDECL 1288 CC_MSCPASCAL 1289 CC_PASCAL = CC_MSCPASCAL 1290 CC_MACPASCAL 1291 CC_STDCALL 1292 CC_FPFASTCALL 1293 CC_SYSCALL 1294 CC_MPWCDECL 1295 CC_MPWPASCAL 1296 CC_MAX = CC_MPWPASCAL 1297 ) 1298 1299 const ( 1300 VT_EMPTY = 0x0 1301 VT_NULL = 0x1 1302 VT_I2 = 0x2 1303 VT_I4 = 0x3 1304 VT_R4 = 0x4 1305 VT_R8 = 0x5 1306 VT_CY = 0x6 1307 VT_DATE = 0x7 1308 VT_BSTR = 0x8 1309 VT_DISPATCH = 0x9 1310 VT_ERROR = 0xa 1311 VT_BOOL = 0xb 1312 VT_VARIANT = 0xc 1313 VT_UNKNOWN = 0xd 1314 VT_DECIMAL = 0xe 1315 VT_I1 = 0x10 1316 VT_UI1 = 0x11 1317 VT_UI2 = 0x12 1318 VT_UI4 = 0x13 1319 VT_I8 = 0x14 1320 VT_UI8 = 0x15 1321 VT_INT = 0x16 1322 VT_UINT = 0x17 1323 VT_VOID = 0x18 1324 VT_HRESULT = 0x19 1325 VT_PTR = 0x1a 1326 VT_SAFEARRAY = 0x1b 1327 VT_CARRAY = 0x1c 1328 VT_USERDEFINED = 0x1d 1329 VT_LPSTR = 0x1e 1330 VT_LPWSTR = 0x1f 1331 VT_RECORD = 0x24 1332 VT_INT_PTR = 0x25 1333 VT_UINT_PTR = 0x26 1334 VT_FILETIME = 0x40 1335 VT_BLOB = 0x41 1336 VT_STREAM = 0x42 1337 VT_STORAGE = 0x43 1338 VT_STREAMED_OBJECT = 0x44 1339 VT_STORED_OBJECT = 0x45 1340 VT_BLOB_OBJECT = 0x46 1341 VT_CF = 0x47 1342 VT_CLSID = 0x48 1343 VT_BSTR_BLOB = 0xfff 1344 VT_VECTOR = 0x1000 1345 VT_ARRAY = 0x2000 1346 VT_BYREF = 0x4000 1347 VT_RESERVED = 0x8000 1348 VT_ILLEGAL = 0xffff 1349 VT_ILLEGALMASKED = 0xfff 1350 VT_TYPEMASK = 0xfff 1351 ) 1352 1353 const ( 1354 DISPID_UNKNOWN = -1 1355 DISPID_VALUE = 0 1356 DISPID_PROPERTYPUT = -3 1357 DISPID_NEWENUM = -4 1358 DISPID_EVALUATE = -5 1359 DISPID_CONSTRUCTOR = -6 1360 DISPID_DESTRUCTOR = -7 1361 DISPID_COLLECT = -8 1362 ) 1363 1364 const ( 1365 MONITOR_DEFAULTTONULL = 0x00000000 1366 MONITOR_DEFAULTTOPRIMARY = 0x00000001 1367 MONITOR_DEFAULTTONEAREST = 0x00000002 1368 1369 MONITORINFOF_PRIMARY = 0x00000001 1370 ) 1371 1372 const ( 1373 CCHDEVICENAME = 32 1374 CCHFORMNAME = 32 1375 ) 1376 1377 const ( 1378 IDOK = 1 1379 IDCANCEL = 2 1380 IDABORT = 3 1381 IDRETRY = 4 1382 IDIGNORE = 5 1383 IDYES = 6 1384 IDNO = 7 1385 IDCLOSE = 8 1386 IDHELP = 9 1387 IDTRYAGAIN = 10 1388 IDCONTINUE = 11 1389 IDTIMEOUT = 32000 1390 ) 1391 1392 // Generic WM_NOTIFY notification codes 1393 const ( 1394 NM_FIRST = 0 1395 NM_OUTOFMEMORY = NM_FIRST - 1 1396 NM_CLICK = NM_FIRST - 2 1397 NM_DBLCLK = NM_FIRST - 3 1398 NM_RETURN = NM_FIRST - 4 1399 NM_RCLICK = NM_FIRST - 5 1400 NM_RDBLCLK = NM_FIRST - 6 1401 NM_SETFOCUS = NM_FIRST - 7 1402 NM_KILLFOCUS = NM_FIRST - 8 1403 NM_CUSTOMDRAW = NM_FIRST - 12 1404 NM_HOVER = NM_FIRST - 13 1405 NM_NCHITTEST = NM_FIRST - 14 1406 NM_KEYDOWN = NM_FIRST - 15 1407 NM_RELEASEDCAPTURE = NM_FIRST - 16 1408 NM_SETCURSOR = NM_FIRST - 17 1409 NM_CHAR = NM_FIRST - 18 1410 NM_TOOLTIPSCREATED = NM_FIRST - 19 1411 NM_LAST = NM_FIRST - 99 1412 ) 1413 1414 // ListView messages 1415 const ( 1416 LVM_FIRST = 0x1000 1417 LVM_GETITEMCOUNT = LVM_FIRST + 4 1418 LVM_SETIMAGELIST = LVM_FIRST + 3 1419 LVM_GETIMAGELIST = LVM_FIRST + 2 1420 LVM_GETITEM = LVM_FIRST + 75 1421 LVM_SETITEM = LVM_FIRST + 76 1422 LVM_INSERTITEM = LVM_FIRST + 77 1423 LVM_DELETEITEM = LVM_FIRST + 8 1424 LVM_DELETEALLITEMS = LVM_FIRST + 9 1425 LVM_GETCALLBACKMASK = LVM_FIRST + 10 1426 LVM_SETCALLBACKMASK = LVM_FIRST + 11 1427 LVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT 1428 LVM_GETNEXTITEM = LVM_FIRST + 12 1429 LVM_FINDITEM = LVM_FIRST + 83 1430 LVM_GETITEMRECT = LVM_FIRST + 14 1431 LVM_GETSTRINGWIDTH = LVM_FIRST + 87 1432 LVM_HITTEST = LVM_FIRST + 18 1433 LVM_ENSUREVISIBLE = LVM_FIRST + 19 1434 LVM_SCROLL = LVM_FIRST + 20 1435 LVM_REDRAWITEMS = LVM_FIRST + 21 1436 LVM_ARRANGE = LVM_FIRST + 22 1437 LVM_EDITLABEL = LVM_FIRST + 118 1438 LVM_GETEDITCONTROL = LVM_FIRST + 24 1439 LVM_GETCOLUMN = LVM_FIRST + 95 1440 LVM_SETCOLUMN = LVM_FIRST + 96 1441 LVM_INSERTCOLUMN = LVM_FIRST + 97 1442 LVM_DELETECOLUMN = LVM_FIRST + 28 1443 LVM_GETCOLUMNWIDTH = LVM_FIRST + 29 1444 LVM_SETCOLUMNWIDTH = LVM_FIRST + 30 1445 LVM_GETHEADER = LVM_FIRST + 31 1446 LVM_CREATEDRAGIMAGE = LVM_FIRST + 33 1447 LVM_GETVIEWRECT = LVM_FIRST + 34 1448 LVM_GETTEXTCOLOR = LVM_FIRST + 35 1449 LVM_SETTEXTCOLOR = LVM_FIRST + 36 1450 LVM_GETTEXTBKCOLOR = LVM_FIRST + 37 1451 LVM_SETTEXTBKCOLOR = LVM_FIRST + 38 1452 LVM_GETTOPINDEX = LVM_FIRST + 39 1453 LVM_GETCOUNTPERPAGE = LVM_FIRST + 40 1454 LVM_GETORIGIN = LVM_FIRST + 41 1455 LVM_UPDATE = LVM_FIRST + 42 1456 LVM_SETITEMSTATE = LVM_FIRST + 43 1457 LVM_GETITEMSTATE = LVM_FIRST + 44 1458 LVM_GETITEMTEXT = LVM_FIRST + 115 1459 LVM_SETITEMTEXT = LVM_FIRST + 116 1460 LVM_SETITEMCOUNT = LVM_FIRST + 47 1461 LVM_SORTITEMS = LVM_FIRST + 48 1462 LVM_SETITEMPOSITION32 = LVM_FIRST + 49 1463 LVM_GETSELECTEDCOUNT = LVM_FIRST + 50 1464 LVM_GETITEMSPACING = LVM_FIRST + 51 1465 LVM_GETISEARCHSTRING = LVM_FIRST + 117 1466 LVM_SETICONSPACING = LVM_FIRST + 53 1467 LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54 1468 LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55 1469 LVM_GETSUBITEMRECT = LVM_FIRST + 56 1470 LVM_SUBITEMHITTEST = LVM_FIRST + 57 1471 LVM_SETCOLUMNORDERARRAY = LVM_FIRST + 58 1472 LVM_GETCOLUMNORDERARRAY = LVM_FIRST + 59 1473 LVM_SETHOTITEM = LVM_FIRST + 60 1474 LVM_GETHOTITEM = LVM_FIRST + 61 1475 LVM_SETHOTCURSOR = LVM_FIRST + 62 1476 LVM_GETHOTCURSOR = LVM_FIRST + 63 1477 LVM_APPROXIMATEVIEWRECT = LVM_FIRST + 64 1478 LVM_SETWORKAREAS = LVM_FIRST + 65 1479 LVM_GETWORKAREAS = LVM_FIRST + 70 1480 LVM_GETNUMBEROFWORKAREAS = LVM_FIRST + 73 1481 LVM_GETSELECTIONMARK = LVM_FIRST + 66 1482 LVM_SETSELECTIONMARK = LVM_FIRST + 67 1483 LVM_SETHOVERTIME = LVM_FIRST + 71 1484 LVM_GETHOVERTIME = LVM_FIRST + 72 1485 LVM_SETTOOLTIPS = LVM_FIRST + 74 1486 LVM_GETTOOLTIPS = LVM_FIRST + 78 1487 LVM_SORTITEMSEX = LVM_FIRST + 81 1488 LVM_SETBKIMAGE = LVM_FIRST + 138 1489 LVM_GETBKIMAGE = LVM_FIRST + 139 1490 LVM_SETSELECTEDCOLUMN = LVM_FIRST + 140 1491 LVM_SETVIEW = LVM_FIRST + 142 1492 LVM_GETVIEW = LVM_FIRST + 143 1493 LVM_INSERTGROUP = LVM_FIRST + 145 1494 LVM_SETGROUPINFO = LVM_FIRST + 147 1495 LVM_GETGROUPINFO = LVM_FIRST + 149 1496 LVM_REMOVEGROUP = LVM_FIRST + 150 1497 LVM_MOVEGROUP = LVM_FIRST + 151 1498 LVM_GETGROUPCOUNT = LVM_FIRST + 152 1499 LVM_GETGROUPINFOBYINDEX = LVM_FIRST + 153 1500 LVM_MOVEITEMTOGROUP = LVM_FIRST + 154 1501 LVM_GETGROUPRECT = LVM_FIRST + 98 1502 LVM_SETGROUPMETRICS = LVM_FIRST + 155 1503 LVM_GETGROUPMETRICS = LVM_FIRST + 156 1504 LVM_ENABLEGROUPVIEW = LVM_FIRST + 157 1505 LVM_SORTGROUPS = LVM_FIRST + 158 1506 LVM_INSERTGROUPSORTED = LVM_FIRST + 159 1507 LVM_REMOVEALLGROUPS = LVM_FIRST + 160 1508 LVM_HASGROUP = LVM_FIRST + 161 1509 LVM_GETGROUPSTATE = LVM_FIRST + 92 1510 LVM_GETFOCUSEDGROUP = LVM_FIRST + 93 1511 LVM_SETTILEVIEWINFO = LVM_FIRST + 162 1512 LVM_GETTILEVIEWINFO = LVM_FIRST + 163 1513 LVM_SETTILEINFO = LVM_FIRST + 164 1514 LVM_GETTILEINFO = LVM_FIRST + 165 1515 LVM_SETINSERTMARK = LVM_FIRST + 166 1516 LVM_GETINSERTMARK = LVM_FIRST + 167 1517 LVM_INSERTMARKHITTEST = LVM_FIRST + 168 1518 LVM_GETINSERTMARKRECT = LVM_FIRST + 169 1519 LVM_SETINSERTMARKCOLOR = LVM_FIRST + 170 1520 LVM_GETINSERTMARKCOLOR = LVM_FIRST + 171 1521 LVM_SETINFOTIP = LVM_FIRST + 173 1522 LVM_GETSELECTEDCOLUMN = LVM_FIRST + 174 1523 LVM_ISGROUPVIEWENABLED = LVM_FIRST + 175 1524 LVM_GETOUTLINECOLOR = LVM_FIRST + 176 1525 LVM_SETOUTLINECOLOR = LVM_FIRST + 177 1526 LVM_CANCELEDITLABEL = LVM_FIRST + 179 1527 LVM_MAPINDEXTOID = LVM_FIRST + 180 1528 LVM_MAPIDTOINDEX = LVM_FIRST + 181 1529 LVM_ISITEMVISIBLE = LVM_FIRST + 182 1530 LVM_GETNEXTITEMINDEX = LVM_FIRST + 211 1531 ) 1532 1533 // ListView notifications 1534 const ( 1535 LVN_FIRST = -100 1536 1537 LVN_ITEMCHANGING = LVN_FIRST - 0 1538 LVN_ITEMCHANGED = LVN_FIRST - 1 1539 LVN_INSERTITEM = LVN_FIRST - 2 1540 LVN_DELETEITEM = LVN_FIRST - 3 1541 LVN_DELETEALLITEMS = LVN_FIRST - 4 1542 LVN_BEGINLABELEDITA = LVN_FIRST - 5 1543 LVN_BEGINLABELEDITW = LVN_FIRST - 75 1544 LVN_ENDLABELEDITA = LVN_FIRST - 6 1545 LVN_ENDLABELEDITW = LVN_FIRST - 76 1546 LVN_COLUMNCLICK = LVN_FIRST - 8 1547 LVN_BEGINDRAG = LVN_FIRST - 9 1548 LVN_BEGINRDRAG = LVN_FIRST - 11 1549 LVN_ODCACHEHINT = LVN_FIRST - 13 1550 LVN_ODFINDITEMA = LVN_FIRST - 52 1551 LVN_ODFINDITEMW = LVN_FIRST - 79 1552 LVN_ITEMACTIVATE = LVN_FIRST - 14 1553 LVN_ODSTATECHANGED = LVN_FIRST - 15 1554 LVN_HOTTRACK = LVN_FIRST - 21 1555 LVN_GETDISPINFO = LVN_FIRST - 77 1556 LVN_SETDISPINFO = LVN_FIRST - 78 1557 LVN_KEYDOWN = LVN_FIRST - 55 1558 LVN_MARQUEEBEGIN = LVN_FIRST - 56 1559 LVN_GETINFOTIP = LVN_FIRST - 58 1560 LVN_INCREMENTALSEARCH = LVN_FIRST - 63 1561 LVN_BEGINSCROLL = LVN_FIRST - 80 1562 LVN_ENDSCROLL = LVN_FIRST - 81 1563 ) 1564 1565 const ( 1566 LVSCW_AUTOSIZE = ^uintptr(0) 1567 LVSCW_AUTOSIZE_USEHEADER = ^uintptr(1) 1568 ) 1569 1570 // ListView LVNI constants 1571 const ( 1572 LVNI_ALL = 0 1573 LVNI_FOCUSED = 1 1574 LVNI_SELECTED = 2 1575 LVNI_CUT = 4 1576 LVNI_DROPHILITED = 8 1577 LVNI_ABOVE = 256 1578 LVNI_BELOW = 512 1579 LVNI_TOLEFT = 1024 1580 LVNI_TORIGHT = 2048 1581 ) 1582 1583 // ListView styles 1584 const ( 1585 LVS_ICON = 0x0000 1586 LVS_REPORT = 0x0001 1587 LVS_SMALLICON = 0x0002 1588 LVS_LIST = 0x0003 1589 LVS_TYPEMASK = 0x0003 1590 LVS_SINGLESEL = 0x0004 1591 LVS_SHOWSELALWAYS = 0x0008 1592 LVS_SORTASCENDING = 0x0010 1593 LVS_SORTDESCENDING = 0x0020 1594 LVS_SHAREIMAGELISTS = 0x0040 1595 LVS_NOLABELWRAP = 0x0080 1596 LVS_AUTOARRANGE = 0x0100 1597 LVS_EDITLABELS = 0x0200 1598 LVS_OWNERDATA = 0x1000 1599 LVS_NOSCROLL = 0x2000 1600 LVS_TYPESTYLEMASK = 0xfc00 1601 LVS_ALIGNTOP = 0x0000 1602 LVS_ALIGNLEFT = 0x0800 1603 LVS_ALIGNMASK = 0x0c00 1604 LVS_OWNERDRAWFIXED = 0x0400 1605 LVS_NOCOLUMNHEADER = 0x4000 1606 LVS_NOSORTHEADER = 0x8000 1607 ) 1608 1609 // ListView extended styles 1610 const ( 1611 LVS_EX_GRIDLINES = 0x00000001 1612 LVS_EX_SUBITEMIMAGES = 0x00000002 1613 LVS_EX_CHECKBOXES = 0x00000004 1614 LVS_EX_TRACKSELECT = 0x00000008 1615 LVS_EX_HEADERDRAGDROP = 0x00000010 1616 LVS_EX_FULLROWSELECT = 0x00000020 1617 LVS_EX_ONECLICKACTIVATE = 0x00000040 1618 LVS_EX_TWOCLICKACTIVATE = 0x00000080 1619 LVS_EX_FLATSB = 0x00000100 1620 LVS_EX_REGIONAL = 0x00000200 1621 LVS_EX_INFOTIP = 0x00000400 1622 LVS_EX_UNDERLINEHOT = 0x00000800 1623 LVS_EX_UNDERLINECOLD = 0x00001000 1624 LVS_EX_MULTIWORKAREAS = 0x00002000 1625 LVS_EX_LABELTIP = 0x00004000 1626 LVS_EX_BORDERSELECT = 0x00008000 1627 LVS_EX_DOUBLEBUFFER = 0x00010000 1628 LVS_EX_HIDELABELS = 0x00020000 1629 LVS_EX_SINGLEROW = 0x00040000 1630 LVS_EX_SNAPTOGRID = 0x00080000 1631 LVS_EX_SIMPLESELECT = 0x00100000 1632 ) 1633 1634 // ListView column flags 1635 const ( 1636 LVCF_FMT = 0x0001 1637 LVCF_WIDTH = 0x0002 1638 LVCF_TEXT = 0x0004 1639 LVCF_SUBITEM = 0x0008 1640 LVCF_IMAGE = 0x0010 1641 LVCF_ORDER = 0x0020 1642 ) 1643 1644 // ListView column format constants 1645 const ( 1646 LVCFMT_LEFT = 0x0000 1647 LVCFMT_RIGHT = 0x0001 1648 LVCFMT_CENTER = 0x0002 1649 LVCFMT_JUSTIFYMASK = 0x0003 1650 LVCFMT_IMAGE = 0x0800 1651 LVCFMT_BITMAP_ON_RIGHT = 0x1000 1652 LVCFMT_COL_HAS_IMAGES = 0x8000 1653 ) 1654 1655 // ListView item flags 1656 const ( 1657 LVIF_TEXT = 0x00000001 1658 LVIF_IMAGE = 0x00000002 1659 LVIF_PARAM = 0x00000004 1660 LVIF_STATE = 0x00000008 1661 LVIF_INDENT = 0x00000010 1662 LVIF_NORECOMPUTE = 0x00000800 1663 LVIF_GROUPID = 0x00000100 1664 LVIF_COLUMNS = 0x00000200 1665 ) 1666 1667 const LVFI_PARAM = 0x0001 1668 1669 // ListView item states 1670 const ( 1671 LVIS_FOCUSED = 1 1672 LVIS_SELECTED = 2 1673 LVIS_CUT = 4 1674 LVIS_DROPHILITED = 8 1675 LVIS_OVERLAYMASK = 0xF00 1676 LVIS_STATEIMAGEMASK = 0xF000 1677 ) 1678 1679 // ListView hit test constants 1680 const ( 1681 LVHT_NOWHERE = 0x00000001 1682 LVHT_ONITEMICON = 0x00000002 1683 LVHT_ONITEMLABEL = 0x00000004 1684 LVHT_ONITEMSTATEICON = 0x00000008 1685 LVHT_ONITEM = LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON 1686 1687 LVHT_ABOVE = 0x00000008 1688 LVHT_BELOW = 0x00000010 1689 LVHT_TORIGHT = 0x00000020 1690 LVHT_TOLEFT = 0x00000040 1691 ) 1692 1693 // ListView image list types 1694 const ( 1695 LVSIL_NORMAL = 0 1696 LVSIL_SMALL = 1 1697 LVSIL_STATE = 2 1698 LVSIL_GROUPHEADER = 3 1699 ) 1700 1701 // InitCommonControlsEx flags 1702 const ( 1703 ICC_LISTVIEW_CLASSES = 1 1704 ICC_TREEVIEW_CLASSES = 2 1705 ICC_BAR_CLASSES = 4 1706 ICC_TAB_CLASSES = 8 1707 ICC_UPDOWN_CLASS = 16 1708 ICC_PROGRESS_CLASS = 32 1709 ICC_HOTKEY_CLASS = 64 1710 ICC_ANIMATE_CLASS = 128 1711 ICC_WIN95_CLASSES = 255 1712 ICC_DATE_CLASSES = 256 1713 ICC_USEREX_CLASSES = 512 1714 ICC_COOL_CLASSES = 1024 1715 ICC_INTERNET_CLASSES = 2048 1716 ICC_PAGESCROLLER_CLASS = 4096 1717 ICC_NATIVEFNTCTL_CLASS = 8192 1718 INFOTIPSIZE = 1024 1719 ICC_STANDARD_CLASSES = 0x00004000 1720 ICC_LINK_CLASS = 0x00008000 1721 ) 1722 1723 // Dialog Codes 1724 const ( 1725 DLGC_WANTARROWS = 0x0001 1726 DLGC_WANTTAB = 0x0002 1727 DLGC_WANTALLKEYS = 0x0004 1728 DLGC_WANTMESSAGE = 0x0004 1729 DLGC_HASSETSEL = 0x0008 1730 DLGC_DEFPUSHBUTTON = 0x0010 1731 DLGC_UNDEFPUSHBUTTON = 0x0020 1732 DLGC_RADIOBUTTON = 0x0040 1733 DLGC_WANTCHARS = 0x0080 1734 DLGC_STATIC = 0x0100 1735 DLGC_BUTTON = 0x2000 1736 ) 1737 1738 // Get/SetWindowWord/Long offsets for use with WC_DIALOG windows 1739 const ( 1740 DWL_MSGRESULT = 0 1741 DWL_DLGPROC = 4 1742 DWL_USER = 8 1743 ) 1744 1745 // Registry predefined keys 1746 const ( 1747 HKEY_CLASSES_ROOT HKEY = 0x80000000 1748 HKEY_CURRENT_USER HKEY = 0x80000001 1749 HKEY_LOCAL_MACHINE HKEY = 0x80000002 1750 HKEY_USERS HKEY = 0x80000003 1751 HKEY_PERFORMANCE_DATA HKEY = 0x80000004 1752 HKEY_CURRENT_CONFIG HKEY = 0x80000005 1753 HKEY_DYN_DATA HKEY = 0x80000006 1754 ) 1755 1756 // Registry Key Security and Access Rights 1757 const ( 1758 KEY_ALL_ACCESS = 0xF003F 1759 KEY_CREATE_SUB_KEY = 0x0004 1760 KEY_ENUMERATE_SUB_KEYS = 0x0008 1761 KEY_NOTIFY = 0x0010 1762 KEY_QUERY_VALUE = 0x0001 1763 KEY_SET_VALUE = 0x0002 1764 KEY_READ = 0x20019 1765 KEY_WRITE = 0x20006 1766 ) 1767 1768 const ( 1769 NFR_ANSI = 1 1770 NFR_UNICODE = 2 1771 NF_QUERY = 3 1772 NF_REQUERY = 4 1773 ) 1774 1775 // Registry value types 1776 const ( 1777 RRF_RT_REG_NONE = 0x00000001 1778 RRF_RT_REG_SZ = 0x00000002 1779 RRF_RT_REG_EXPAND_SZ = 0x00000004 1780 RRF_RT_REG_BINARY = 0x00000008 1781 RRF_RT_REG_DWORD = 0x00000010 1782 RRF_RT_REG_MULTI_SZ = 0x00000020 1783 RRF_RT_REG_QWORD = 0x00000040 1784 RRF_RT_DWORD = (RRF_RT_REG_BINARY | RRF_RT_REG_DWORD) 1785 RRF_RT_QWORD = (RRF_RT_REG_BINARY | RRF_RT_REG_QWORD) 1786 RRF_RT_ANY = 0x0000ffff 1787 RRF_NOEXPAND = 0x10000000 1788 RRF_ZEROONFAILURE = 0x20000000 1789 REG_PROCESS_APPKEY = 0x00000001 1790 REG_MUI_STRING_TRUNCATE = 0x00000001 1791 ) 1792 1793 // PeekMessage wRemoveMsg value 1794 const ( 1795 PM_NOREMOVE = 0x000 1796 PM_REMOVE = 0x001 1797 PM_NOYIELD = 0x002 1798 ) 1799 1800 // ImageList flags 1801 const ( 1802 ILC_MASK = 0x00000001 1803 ILC_COLOR = 0x00000000 1804 ILC_COLORDDB = 0x000000FE 1805 ILC_COLOR4 = 0x00000004 1806 ILC_COLOR8 = 0x00000008 1807 ILC_COLOR16 = 0x00000010 1808 ILC_COLOR24 = 0x00000018 1809 ILC_COLOR32 = 0x00000020 1810 ILC_PALETTE = 0x00000800 1811 ILC_MIRROR = 0x00002000 1812 ILC_PERITEMMIRROR = 0x00008000 1813 ILC_ORIGINALSIZE = 0x00010000 1814 ILC_HIGHQUALITYSCALE = 0x00020000 1815 ) 1816 1817 // Keystroke Message Flags 1818 const ( 1819 KF_EXTENDED = 0x0100 1820 KF_DLGMODE = 0x0800 1821 KF_MENUMODE = 0x1000 1822 KF_ALTDOWN = 0x2000 1823 KF_REPEAT = 0x4000 1824 KF_UP = 0x8000 1825 ) 1826 1827 // Virtual-Key Codes 1828 /* 1829 const ( 1830 VK_LBUTTON = 0x01 1831 VK_RBUTTON = 0x02 1832 VK_CANCEL = 0x03 1833 VK_MBUTTON = 0x04 1834 VK_XBUTTON1 = 0x05 1835 VK_XBUTTON2 = 0x06 1836 VK_BACK = 0x08 1837 VK_TAB = 0x09 1838 VK_CLEAR = 0x0C 1839 VK_RETURN = 0x0D 1840 VK_SHIFT = 0x10 1841 VK_CONTROL = 0x11 1842 VK_MENU = 0x12 1843 VK_PAUSE = 0x13 1844 VK_CAPITAL = 0x14 1845 VK_KANA = 0x15 1846 VK_HANGEUL = 0x15 1847 VK_HANGUL = 0x15 1848 VK_JUNJA = 0x17 1849 VK_FINAL = 0x18 1850 VK_HANJA = 0x19 1851 VK_KANJI = 0x19 1852 VK_ESCAPE = 0x1B 1853 VK_CONVERT = 0x1C 1854 VK_NONCONVERT = 0x1D 1855 VK_ACCEPT = 0x1E 1856 VK_MODECHANGE = 0x1F 1857 VK_SPACE = 0x20 1858 VK_PRIOR = 0x21 1859 VK_NEXT = 0x22 1860 VK_END = 0x23 1861 VK_HOME = 0x24 1862 VK_LEFT = 0x25 1863 VK_UP = 0x26 1864 VK_RIGHT = 0x27 1865 VK_DOWN = 0x28 1866 VK_SELECT = 0x29 1867 VK_PRINT = 0x2A 1868 VK_EXECUTE = 0x2B 1869 VK_SNAPSHOT = 0x2C 1870 VK_INSERT = 0x2D 1871 VK_DELETE = 0x2E 1872 VK_HELP = 0x2F 1873 VK_LWIN = 0x5B 1874 VK_RWIN = 0x5C 1875 VK_APPS = 0x5D 1876 VK_SLEEP = 0x5F 1877 VK_NUMPAD0 = 0x60 1878 VK_NUMPAD1 = 0x61 1879 VK_NUMPAD2 = 0x62 1880 VK_NUMPAD3 = 0x63 1881 VK_NUMPAD4 = 0x64 1882 VK_NUMPAD5 = 0x65 1883 VK_NUMPAD6 = 0x66 1884 VK_NUMPAD7 = 0x67 1885 VK_NUMPAD8 = 0x68 1886 VK_NUMPAD9 = 0x69 1887 VK_MULTIPLY = 0x6A 1888 VK_ADD = 0x6B 1889 VK_SEPARATOR = 0x6C 1890 VK_SUBTRACT = 0x6D 1891 VK_DECIMAL = 0x6E 1892 VK_DIVIDE = 0x6F 1893 VK_F1 = 0x70 1894 VK_F2 = 0x71 1895 VK_F3 = 0x72 1896 VK_F4 = 0x73 1897 VK_F5 = 0x74 1898 VK_F6 = 0x75 1899 VK_F7 = 0x76 1900 VK_F8 = 0x77 1901 VK_F9 = 0x78 1902 VK_F10 = 0x79 1903 VK_F11 = 0x7A 1904 VK_F12 = 0x7B 1905 VK_F13 = 0x7C 1906 VK_F14 = 0x7D 1907 VK_F15 = 0x7E 1908 VK_F16 = 0x7F 1909 VK_F17 = 0x80 1910 VK_F18 = 0x81 1911 VK_F19 = 0x82 1912 VK_F20 = 0x83 1913 VK_F21 = 0x84 1914 VK_F22 = 0x85 1915 VK_F23 = 0x86 1916 VK_F24 = 0x87 1917 VK_NUMLOCK = 0x90 1918 VK_SCROLL = 0x91 1919 VK_OEM_NEC_EQUAL = 0x92 1920 VK_OEM_FJ_JISHO = 0x92 1921 VK_OEM_FJ_MASSHOU = 0x93 1922 VK_OEM_FJ_TOUROKU = 0x94 1923 VK_OEM_FJ_LOYA = 0x95 1924 VK_OEM_FJ_ROYA = 0x96 1925 VK_LSHIFT = 0xA0 1926 VK_RSHIFT = 0xA1 1927 VK_LCONTROL = 0xA2 1928 VK_RCONTROL = 0xA3 1929 VK_LMENU = 0xA4 1930 VK_RMENU = 0xA5 1931 VK_BROWSER_BACK = 0xA6 1932 VK_BROWSER_FORWARD = 0xA7 1933 VK_BROWSER_REFRESH = 0xA8 1934 VK_BROWSER_STOP = 0xA9 1935 VK_BROWSER_SEARCH = 0xAA 1936 VK_BROWSER_FAVORITES = 0xAB 1937 VK_BROWSER_HOME = 0xAC 1938 VK_VOLUME_MUTE = 0xAD 1939 VK_VOLUME_DOWN = 0xAE 1940 VK_VOLUME_UP = 0xAF 1941 VK_MEDIA_NEXT_TRACK = 0xB0 1942 VK_MEDIA_PREV_TRACK = 0xB1 1943 VK_MEDIA_STOP = 0xB2 1944 VK_MEDIA_PLAY_PAUSE = 0xB3 1945 VK_LAUNCH_MAIL = 0xB4 1946 VK_LAUNCH_MEDIA_SELECT = 0xB5 1947 VK_LAUNCH_APP1 = 0xB6 1948 VK_LAUNCH_APP2 = 0xB7 1949 VK_OEM_1 = 0xBA 1950 VK_OEM_PLUS = 0xBB 1951 VK_OEM_COMMA = 0xBC 1952 VK_OEM_MINUS = 0xBD 1953 VK_OEM_PERIOD = 0xBE 1954 VK_OEM_2 = 0xBF 1955 VK_OEM_3 = 0xC0 1956 VK_OEM_4 = 0xDB 1957 VK_OEM_5 = 0xDC 1958 VK_OEM_6 = 0xDD 1959 VK_OEM_7 = 0xDE 1960 VK_OEM_8 = 0xDF 1961 VK_OEM_AX = 0xE1 1962 VK_OEM_102 = 0xE2 1963 VK_ICO_HELP = 0xE3 1964 VK_ICO_00 = 0xE4 1965 VK_PROCESSKEY = 0xE5 1966 VK_ICO_CLEAR = 0xE6 1967 VK_OEM_RESET = 0xE9 1968 VK_OEM_JUMP = 0xEA 1969 VK_OEM_PA1 = 0xEB 1970 VK_OEM_PA2 = 0xEC 1971 VK_OEM_PA3 = 0xED 1972 VK_OEM_WSCTRL = 0xEE 1973 VK_OEM_CUSEL = 0xEF 1974 VK_OEM_ATTN = 0xF0 1975 VK_OEM_FINISH = 0xF1 1976 VK_OEM_COPY = 0xF2 1977 VK_OEM_AUTO = 0xF3 1978 VK_OEM_ENLW = 0xF4 1979 VK_OEM_BACKTAB = 0xF5 1980 VK_ATTN = 0xF6 1981 VK_CRSEL = 0xF7 1982 VK_EXSEL = 0xF8 1983 VK_EREOF = 0xF9 1984 VK_PLAY = 0xFA 1985 VK_ZOOM = 0xFB 1986 VK_NONAME = 0xFC 1987 VK_PA1 = 0xFD 1988 VK_OEM_CLEAR = 0xFE 1989 )*/ 1990 1991 // Registry Value Types 1992 const ( 1993 REG_NONE = 0 1994 REG_SZ = 1 1995 REG_EXPAND_SZ = 2 1996 REG_BINARY = 3 1997 REG_DWORD = 4 1998 REG_DWORD_LITTLE_ENDIAN = 4 1999 REG_DWORD_BIG_ENDIAN = 5 2000 REG_LINK = 6 2001 REG_MULTI_SZ = 7 2002 REG_RESOURCE_LIST = 8 2003 REG_FULL_RESOURCE_DESCRIPTOR = 9 2004 REG_RESOURCE_REQUIREMENTS_LIST = 10 2005 REG_QWORD = 11 2006 REG_QWORD_LITTLE_ENDIAN = 11 2007 ) 2008 2009 // Tooltip styles 2010 const ( 2011 TTS_ALWAYSTIP = 0x01 2012 TTS_NOPREFIX = 0x02 2013 TTS_NOANIMATE = 0x10 2014 TTS_NOFADE = 0x20 2015 TTS_BALLOON = 0x40 2016 TTS_CLOSE = 0x80 2017 TTS_USEVISUALSTYLE = 0x100 2018 ) 2019 2020 // Tooltip messages 2021 const ( 2022 TTM_ACTIVATE = (WM_USER + 1) 2023 TTM_SETDELAYTIME = (WM_USER + 3) 2024 TTM_ADDTOOL = (WM_USER + 50) 2025 TTM_DELTOOL = (WM_USER + 51) 2026 TTM_NEWTOOLRECT = (WM_USER + 52) 2027 TTM_RELAYEVENT = (WM_USER + 7) 2028 TTM_GETTOOLINFO = (WM_USER + 53) 2029 TTM_SETTOOLINFO = (WM_USER + 54) 2030 TTM_HITTEST = (WM_USER + 55) 2031 TTM_GETTEXT = (WM_USER + 56) 2032 TTM_UPDATETIPTEXT = (WM_USER + 57) 2033 TTM_GETTOOLCOUNT = (WM_USER + 13) 2034 TTM_ENUMTOOLS = (WM_USER + 58) 2035 TTM_GETCURRENTTOOL = (WM_USER + 59) 2036 TTM_WINDOWFROMPOINT = (WM_USER + 16) 2037 TTM_TRACKACTIVATE = (WM_USER + 17) 2038 TTM_TRACKPOSITION = (WM_USER + 18) 2039 TTM_SETTIPBKCOLOR = (WM_USER + 19) 2040 TTM_SETTIPTEXTCOLOR = (WM_USER + 20) 2041 TTM_GETDELAYTIME = (WM_USER + 21) 2042 TTM_GETTIPBKCOLOR = (WM_USER + 22) 2043 TTM_GETTIPTEXTCOLOR = (WM_USER + 23) 2044 TTM_SETMAXTIPWIDTH = (WM_USER + 24) 2045 TTM_GETMAXTIPWIDTH = (WM_USER + 25) 2046 TTM_SETMARGIN = (WM_USER + 26) 2047 TTM_GETMARGIN = (WM_USER + 27) 2048 TTM_POP = (WM_USER + 28) 2049 TTM_UPDATE = (WM_USER + 29) 2050 TTM_GETBUBBLESIZE = (WM_USER + 30) 2051 TTM_ADJUSTRECT = (WM_USER + 31) 2052 TTM_SETTITLE = (WM_USER + 33) 2053 TTM_POPUP = (WM_USER + 34) 2054 TTM_GETTITLE = (WM_USER + 35) 2055 ) 2056 2057 // Tooltip icons 2058 const ( 2059 TTI_NONE = 0 2060 TTI_INFO = 1 2061 TTI_WARNING = 2 2062 TTI_ERROR = 3 2063 TTI_INFO_LARGE = 4 2064 TTI_WARNING_LARGE = 5 2065 TTI_ERROR_LARGE = 6 2066 ) 2067 2068 // Tooltip notifications 2069 const ( 2070 TTN_FIRST = -520 2071 TTN_LAST = -549 2072 TTN_GETDISPINFO = (TTN_FIRST - 10) 2073 TTN_SHOW = (TTN_FIRST - 1) 2074 TTN_POP = (TTN_FIRST - 2) 2075 TTN_LINKCLICK = (TTN_FIRST - 3) 2076 TTN_NEEDTEXT = TTN_GETDISPINFO 2077 ) 2078 2079 const ( 2080 TTF_IDISHWND = 0x0001 2081 TTF_CENTERTIP = 0x0002 2082 TTF_RTLREADING = 0x0004 2083 TTF_SUBCLASS = 0x0010 2084 TTF_TRACK = 0x0020 2085 TTF_ABSOLUTE = 0x0080 2086 TTF_TRANSPARENT = 0x0100 2087 TTF_PARSELINKS = 0x1000 2088 TTF_DI_SETITEM = 0x8000 2089 ) 2090 2091 const ( 2092 SWP_NOSIZE = 0x0001 2093 SWP_NOMOVE = 0x0002 2094 SWP_NOZORDER = 0x0004 2095 SWP_NOREDRAW = 0x0008 2096 SWP_NOACTIVATE = 0x0010 2097 SWP_FRAMECHANGED = 0x0020 2098 SWP_SHOWWINDOW = 0x0040 2099 SWP_HIDEWINDOW = 0x0080 2100 SWP_NOCOPYBITS = 0x0100 2101 SWP_NOOWNERZORDER = 0x0200 2102 SWP_NOSENDCHANGING = 0x0400 2103 SWP_DRAWFRAME = SWP_FRAMECHANGED 2104 SWP_NOREPOSITION = SWP_NOOWNERZORDER 2105 SWP_DEFERERASE = 0x2000 2106 SWP_ASYNCWINDOWPOS = 0x4000 2107 ) 2108 2109 // Predefined window handles 2110 const ( 2111 HWND_BROADCAST = HWND(0xFFFF) 2112 HWND_BOTTOM = HWND(1) 2113 HWND_NOTOPMOST = ^HWND(1) // -2 2114 HWND_TOP = HWND(0) 2115 HWND_TOPMOST = ^HWND(0) // -1 2116 HWND_DESKTOP = HWND(0) 2117 HWND_MESSAGE = ^HWND(2) // -3 2118 ) 2119 2120 // Pen types 2121 const ( 2122 PS_COSMETIC = 0x00000000 2123 PS_GEOMETRIC = 0x00010000 2124 PS_TYPE_MASK = 0x000F0000 2125 ) 2126 2127 // Pen styles 2128 const ( 2129 PS_SOLID = 0 2130 PS_DASH = 1 2131 PS_DOT = 2 2132 PS_DASHDOT = 3 2133 PS_DASHDOTDOT = 4 2134 PS_NULL = 5 2135 PS_INSIDEFRAME = 6 2136 PS_USERSTYLE = 7 2137 PS_ALTERNATE = 8 2138 PS_STYLE_MASK = 0x0000000F 2139 ) 2140 2141 // Pen cap types 2142 const ( 2143 PS_ENDCAP_ROUND = 0x00000000 2144 PS_ENDCAP_SQUARE = 0x00000100 2145 PS_ENDCAP_FLAT = 0x00000200 2146 PS_ENDCAP_MASK = 0x00000F00 2147 ) 2148 2149 // Pen join types 2150 const ( 2151 PS_JOIN_ROUND = 0x00000000 2152 PS_JOIN_BEVEL = 0x00001000 2153 PS_JOIN_MITER = 0x00002000 2154 PS_JOIN_MASK = 0x0000F000 2155 ) 2156 2157 // Hatch styles 2158 const ( 2159 HS_HORIZONTAL = 0 2160 HS_VERTICAL = 1 2161 HS_FDIAGONAL = 2 2162 HS_BDIAGONAL = 3 2163 HS_CROSS = 4 2164 HS_DIAGCROSS = 5 2165 ) 2166 2167 // Stock Logical Objects 2168 const ( 2169 WHITE_BRUSH = 0 2170 LTGRAY_BRUSH = 1 2171 GRAY_BRUSH = 2 2172 DKGRAY_BRUSH = 3 2173 BLACK_BRUSH = 4 2174 NULL_BRUSH = 5 2175 HOLLOW_BRUSH = NULL_BRUSH 2176 WHITE_PEN = 6 2177 BLACK_PEN = 7 2178 NULL_PEN = 8 2179 OEM_FIXED_FONT = 10 2180 ANSI_FIXED_FONT = 11 2181 ANSI_VAR_FONT = 12 2182 SYSTEM_FONT = 13 2183 DEVICE_DEFAULT_FONT = 14 2184 DEFAULT_PALETTE = 15 2185 SYSTEM_FIXED_FONT = 16 2186 DEFAULT_GUI_FONT = 17 2187 DC_BRUSH = 18 2188 DC_PEN = 19 2189 ) 2190 2191 // Brush styles 2192 const ( 2193 BS_SOLID = 0 2194 BS_NULL = 1 2195 BS_HOLLOW = BS_NULL 2196 BS_HATCHED = 2 2197 BS_PATTERN = 3 2198 BS_INDEXED = 4 2199 BS_DIBPATTERN = 5 2200 BS_DIBPATTERNPT = 6 2201 BS_PATTERN8X8 = 7 2202 BS_DIBPATTERN8X8 = 8 2203 BS_MONOPATTERN = 9 2204 ) 2205 2206 // TRACKMOUSEEVENT flags 2207 const ( 2208 TME_HOVER = 0x00000001 2209 TME_LEAVE = 0x00000002 2210 TME_NONCLIENT = 0x00000010 2211 TME_QUERY = 0x40000000 2212 TME_CANCEL = 0x80000000 2213 2214 HOVER_DEFAULT = 0xFFFFFFFF 2215 ) 2216 2217 // WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes 2218 const ( 2219 HTERROR = (-2) 2220 HTTRANSPARENT = (-1) 2221 HTNOWHERE = 0 2222 HTCLIENT = 1 2223 HTCAPTION = 2 2224 HTSYSMENU = 3 2225 HTGROWBOX = 4 2226 HTSIZE = HTGROWBOX 2227 HTMENU = 5 2228 HTHSCROLL = 6 2229 HTVSCROLL = 7 2230 HTMINBUTTON = 8 2231 HTMAXBUTTON = 9 2232 HTLEFT = 10 2233 HTRIGHT = 11 2234 HTTOP = 12 2235 HTTOPLEFT = 13 2236 HTTOPRIGHT = 14 2237 HTBOTTOM = 15 2238 HTBOTTOMLEFT = 16 2239 HTBOTTOMRIGHT = 17 2240 HTBORDER = 18 2241 HTREDUCE = HTMINBUTTON 2242 HTZOOM = HTMAXBUTTON 2243 HTSIZEFIRST = HTLEFT 2244 HTSIZELAST = HTBOTTOMRIGHT 2245 HTOBJECT = 19 2246 HTCLOSE = 20 2247 HTHELP = 21 2248 ) 2249 2250 // DrawText[Ex] format flags 2251 const ( 2252 DT_TOP = 0x00000000 2253 DT_LEFT = 0x00000000 2254 DT_CENTER = 0x00000001 2255 DT_RIGHT = 0x00000002 2256 DT_VCENTER = 0x00000004 2257 DT_BOTTOM = 0x00000008 2258 DT_WORDBREAK = 0x00000010 2259 DT_SINGLELINE = 0x00000020 2260 DT_EXPANDTABS = 0x00000040 2261 DT_TABSTOP = 0x00000080 2262 DT_NOCLIP = 0x00000100 2263 DT_EXTERNALLEADING = 0x00000200 2264 DT_CALCRECT = 0x00000400 2265 DT_NOPREFIX = 0x00000800 2266 DT_INTERNAL = 0x00001000 2267 DT_EDITCONTROL = 0x00002000 2268 DT_PATH_ELLIPSIS = 0x00004000 2269 DT_END_ELLIPSIS = 0x00008000 2270 DT_MODIFYSTRING = 0x00010000 2271 DT_RTLREADING = 0x00020000 2272 DT_WORD_ELLIPSIS = 0x00040000 2273 DT_NOFULLWIDTHCHARBREAK = 0x00080000 2274 DT_HIDEPREFIX = 0x00100000 2275 DT_PREFIXONLY = 0x00200000 2276 ) 2277 2278 const CLR_INVALID = 0xFFFFFFFF 2279 2280 // Background Modes 2281 const ( 2282 TRANSPARENT = 1 2283 OPAQUE = 2 2284 BKMODE_LAST = 2 2285 ) 2286 2287 // Global Memory Flags 2288 const ( 2289 GMEM_FIXED = 0x0000 2290 GMEM_MOVEABLE = 0x0002 2291 GMEM_NOCOMPACT = 0x0010 2292 GMEM_NODISCARD = 0x0020 2293 GMEM_ZEROINIT = 0x0040 2294 GMEM_MODIFY = 0x0080 2295 GMEM_DISCARDABLE = 0x0100 2296 GMEM_NOT_BANKED = 0x1000 2297 GMEM_SHARE = 0x2000 2298 GMEM_DDESHARE = 0x2000 2299 GMEM_NOTIFY = 0x4000 2300 GMEM_LOWER = GMEM_NOT_BANKED 2301 GMEM_VALID_FLAGS = 0x7F72 2302 GMEM_INVALID_HANDLE = 0x8000 2303 GHND = (GMEM_MOVEABLE | GMEM_ZEROINIT) 2304 GPTR = (GMEM_FIXED | GMEM_ZEROINIT) 2305 ) 2306 2307 // Ternary raster operations 2308 const ( 2309 SRCCOPY = 0x00CC0020 2310 SRCPAINT = 0x00EE0086 2311 SRCAND = 0x008800C6 2312 SRCINVERT = 0x00660046 2313 SRCERASE = 0x00440328 2314 NOTSRCCOPY = 0x00330008 2315 NOTSRCERASE = 0x001100A6 2316 MERGECOPY = 0x00C000CA 2317 MERGEPAINT = 0x00BB0226 2318 PATCOPY = 0x00F00021 2319 PATPAINT = 0x00FB0A09 2320 PATINVERT = 0x005A0049 2321 DSTINVERT = 0x00550009 2322 BLACKNESS = 0x00000042 2323 WHITENESS = 0x00FF0062 2324 NOMIRRORBITMAP = 0x80000000 2325 CAPTUREBLT = 0x40000000 2326 ) 2327 2328 // Clipboard formats 2329 const ( 2330 CF_TEXT = 1 2331 CF_BITMAP = 2 2332 CF_METAFILEPICT = 3 2333 CF_SYLK = 4 2334 CF_DIF = 5 2335 CF_TIFF = 6 2336 CF_OEMTEXT = 7 2337 CF_DIB = 8 2338 CF_PALETTE = 9 2339 CF_PENDATA = 10 2340 CF_RIFF = 11 2341 CF_WAVE = 12 2342 CF_UNICODETEXT = 13 2343 CF_ENHMETAFILE = 14 2344 CF_HDROP = 15 2345 CF_LOCALE = 16 2346 CF_DIBV5 = 17 2347 CF_MAX = 18 2348 CF_OWNERDISPLAY = 0x0080 2349 CF_DSPTEXT = 0x0081 2350 CF_DSPBITMAP = 0x0082 2351 CF_DSPMETAFILEPICT = 0x0083 2352 CF_DSPENHMETAFILE = 0x008E 2353 CF_PRIVATEFIRST = 0x0200 2354 CF_PRIVATELAST = 0x02FF 2355 CF_GDIOBJFIRST = 0x0300 2356 CF_GDIOBJLAST = 0x03FF 2357 ) 2358 2359 // Bitmap compression formats 2360 const ( 2361 BI_RGB = 0 2362 BI_RLE8 = 1 2363 BI_RLE4 = 2 2364 BI_BITFIELDS = 3 2365 BI_JPEG = 4 2366 BI_PNG = 5 2367 ) 2368 2369 // SetDIBitsToDevice fuColorUse 2370 const ( 2371 DIB_PAL_COLORS = 1 2372 DIB_RGB_COLORS = 0 2373 ) 2374 2375 const ( 2376 STANDARD_RIGHTS_REQUIRED = 0x000F 2377 ) 2378 2379 // Service Control Manager object specific access types 2380 const ( 2381 SC_MANAGER_CONNECT = 0x0001 2382 SC_MANAGER_CREATE_SERVICE = 0x0002 2383 SC_MANAGER_ENUMERATE_SERVICE = 0x0004 2384 SC_MANAGER_LOCK = 0x0008 2385 SC_MANAGER_QUERY_LOCK_STATUS = 0x0010 2386 SC_MANAGER_MODIFY_BOOT_CONFIG = 0x0020 2387 SC_MANAGER_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SC_MANAGER_CONNECT | SC_MANAGER_CREATE_SERVICE | SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_LOCK | SC_MANAGER_QUERY_LOCK_STATUS | SC_MANAGER_MODIFY_BOOT_CONFIG 2388 ) 2389 2390 // Service Types (Bit Mask) 2391 const ( 2392 SERVICE_KERNEL_DRIVER = 0x00000001 2393 SERVICE_FILE_SYSTEM_DRIVER = 0x00000002 2394 SERVICE_ADAPTER = 0x00000004 2395 SERVICE_RECOGNIZER_DRIVER = 0x00000008 2396 SERVICE_DRIVER = SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER | SERVICE_RECOGNIZER_DRIVER 2397 SERVICE_WIN32_OWN_PROCESS = 0x00000010 2398 SERVICE_WIN32_SHARE_PROCESS = 0x00000020 2399 SERVICE_WIN32 = SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS 2400 SERVICE_INTERACTIVE_PROCESS = 0x00000100 2401 SERVICE_TYPE_ALL = SERVICE_WIN32 | SERVICE_ADAPTER | SERVICE_DRIVER | SERVICE_INTERACTIVE_PROCESS 2402 ) 2403 2404 // Service State -- for CurrentState 2405 const ( 2406 SERVICE_STOPPED = 0x00000001 2407 SERVICE_START_PENDING = 0x00000002 2408 SERVICE_STOP_PENDING = 0x00000003 2409 SERVICE_RUNNING = 0x00000004 2410 SERVICE_CONTINUE_PENDING = 0x00000005 2411 SERVICE_PAUSE_PENDING = 0x00000006 2412 SERVICE_PAUSED = 0x00000007 2413 ) 2414 2415 // Controls Accepted (Bit Mask) 2416 const ( 2417 SERVICE_ACCEPT_STOP = 0x00000001 2418 SERVICE_ACCEPT_PAUSE_CONTINUE = 0x00000002 2419 SERVICE_ACCEPT_SHUTDOWN = 0x00000004 2420 SERVICE_ACCEPT_PARAMCHANGE = 0x00000008 2421 SERVICE_ACCEPT_NETBINDCHANGE = 0x00000010 2422 SERVICE_ACCEPT_HARDWAREPROFILECHANGE = 0x00000020 2423 SERVICE_ACCEPT_POWEREVENT = 0x00000040 2424 SERVICE_ACCEPT_SESSIONCHANGE = 0x00000080 2425 SERVICE_ACCEPT_PRESHUTDOWN = 0x00000100 2426 SERVICE_ACCEPT_TIMECHANGE = 0x00000200 2427 SERVICE_ACCEPT_TRIGGEREVENT = 0x00000400 2428 ) 2429 2430 // Service object specific access type 2431 const ( 2432 SERVICE_QUERY_CONFIG = 0x0001 2433 SERVICE_CHANGE_CONFIG = 0x0002 2434 SERVICE_QUERY_STATUS = 0x0004 2435 SERVICE_ENUMERATE_DEPENDENTS = 0x0008 2436 SERVICE_START = 0x0010 2437 SERVICE_STOP = 0x0020 2438 SERVICE_PAUSE_CONTINUE = 0x0040 2439 SERVICE_INTERROGATE = 0x0080 2440 SERVICE_USER_DEFINED_CONTROL = 0x0100 2441 2442 SERVICE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | 2443 SERVICE_QUERY_CONFIG | 2444 SERVICE_CHANGE_CONFIG | 2445 SERVICE_QUERY_STATUS | 2446 SERVICE_ENUMERATE_DEPENDENTS | 2447 SERVICE_START | 2448 SERVICE_STOP | 2449 SERVICE_PAUSE_CONTINUE | 2450 SERVICE_INTERROGATE | 2451 SERVICE_USER_DEFINED_CONTROL 2452 ) 2453 2454 // MapVirtualKey maptypes 2455 const ( 2456 MAPVK_VK_TO_CHAR = 2 2457 MAPVK_VK_TO_VSC = 0 2458 MAPVK_VSC_TO_VK = 1 2459 MAPVK_VSC_TO_VK_EX = 3 2460 ) 2461 2462 // ReadEventLog Flags 2463 const ( 2464 EVENTLOG_SEEK_READ = 0x0002 2465 EVENTLOG_SEQUENTIAL_READ = 0x0001 2466 EVENTLOG_FORWARDS_READ = 0x0004 2467 EVENTLOG_BACKWARDS_READ = 0x0008 2468 ) 2469 2470 // CreateToolhelp32Snapshot flags 2471 const ( 2472 TH32CS_SNAPHEAPLIST = 0x00000001 2473 TH32CS_SNAPPROCESS = 0x00000002 2474 TH32CS_SNAPTHREAD = 0x00000004 2475 TH32CS_SNAPMODULE = 0x00000008 2476 TH32CS_SNAPMODULE32 = 0x00000010 2477 TH32CS_INHERIT = 0x80000000 2478 TH32CS_SNAPALL = TH32CS_SNAPHEAPLIST | TH32CS_SNAPMODULE | TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD 2479 ) 2480 2481 const ( 2482 MAX_MODULE_NAME32 = 255 2483 MAX_PATH = 260 2484 ) 2485 2486 const ( 2487 FOREGROUND_BLUE = 0x0001 2488 FOREGROUND_GREEN = 0x0002 2489 FOREGROUND_RED = 0x0004 2490 FOREGROUND_INTENSITY = 0x0008 2491 BACKGROUND_BLUE = 0x0010 2492 BACKGROUND_GREEN = 0x0020 2493 BACKGROUND_RED = 0x0040 2494 BACKGROUND_INTENSITY = 0x0080 2495 COMMON_LVB_LEADING_BYTE = 0x0100 2496 COMMON_LVB_TRAILING_BYTE = 0x0200 2497 COMMON_LVB_GRID_HORIZONTAL = 0x0400 2498 COMMON_LVB_GRID_LVERTICAL = 0x0800 2499 COMMON_LVB_GRID_RVERTICAL = 0x1000 2500 COMMON_LVB_REVERSE_VIDEO = 0x4000 2501 COMMON_LVB_UNDERSCORE = 0x8000 2502 ) 2503 2504 // Flags used by the DWM_BLURBEHIND structure to indicate 2505 // which of its members contain valid information. 2506 const ( 2507 DWM_BB_ENABLE = 0x00000001 // A value for the fEnable member has been specified. 2508 DWM_BB_BLURREGION = 0x00000002 // A value for the hRgnBlur member has been specified. 2509 DWM_BB_TRANSITIONONMAXIMIZED = 0x00000004 // A value for the fTransitionOnMaximized member has been specified. 2510 ) 2511 2512 // Flags used by the DwmEnableComposition function 2513 // to change the state of Desktop Window Manager (DWM) composition. 2514 const ( 2515 DWM_EC_DISABLECOMPOSITION = 0 // Disable composition 2516 DWM_EC_ENABLECOMPOSITION = 1 // Enable composition 2517 ) 2518 2519 // enum-lite implementation for the following constant structure 2520 type DWM_SHOWCONTACT int32 2521 2522 const ( 2523 DWMSC_DOWN = 0x00000001 2524 DWMSC_UP = 0x00000002 2525 DWMSC_DRAG = 0x00000004 2526 DWMSC_HOLD = 0x00000008 2527 DWMSC_PENBARREL = 0x00000010 2528 DWMSC_NONE = 0x00000000 2529 DWMSC_ALL = 0xFFFFFFFF 2530 ) 2531 2532 // enum-lite implementation for the following constant structure 2533 type DWM_SOURCE_FRAME_SAMPLING int32 2534 2535 // TODO: need to verify this construction 2536 // Flags used by the DwmSetPresentParameters function 2537 // to specify the frame sampling type 2538 const ( 2539 DWM_SOURCE_FRAME_SAMPLING_POINT = iota + 1 2540 DWM_SOURCE_FRAME_SAMPLING_COVERAGE 2541 DWM_SOURCE_FRAME_SAMPLING_LAST 2542 ) 2543 2544 // Flags used by the DWM_THUMBNAIL_PROPERTIES structure to 2545 // indicate which of its members contain valid information. 2546 const ( 2547 DWM_TNP_RECTDESTINATION = 0x00000001 // A value for the rcDestination member has been specified 2548 DWM_TNP_RECTSOURCE = 0x00000002 // A value for the rcSource member has been specified 2549 DWM_TNP_OPACITY = 0x00000004 // A value for the opacity member has been specified 2550 DWM_TNP_VISIBLE = 0x00000008 // A value for the fVisible member has been specified 2551 DWM_TNP_SOURCECLIENTAREAONLY = 0x00000010 // A value for the fSourceClientAreaOnly member has been specified 2552 ) 2553 2554 // enum-lite implementation for the following constant structure 2555 type DWMFLIP3DWINDOWPOLICY int32 2556 2557 // TODO: need to verify this construction 2558 // Flags used by the DwmSetWindowAttribute function 2559 // to specify the Flip3D window policy 2560 const ( 2561 DWMFLIP3D_DEFAULT = iota + 1 2562 DWMFLIP3D_EXCLUDEBELOW 2563 DWMFLIP3D_EXCLUDEABOVE 2564 DWMFLIP3D_LAST 2565 ) 2566 2567 // enum-lite implementation for the following constant structure 2568 type DWMNCRENDERINGPOLICY int32 2569 2570 // TODO: need to verify this construction 2571 // Flags used by the DwmSetWindowAttribute function 2572 // to specify the non-client area rendering policy 2573 const ( 2574 DWMNCRP_USEWINDOWSTYLE = iota + 1 2575 DWMNCRP_DISABLED 2576 DWMNCRP_ENABLED 2577 DWMNCRP_LAST 2578 ) 2579 2580 // enum-lite implementation for the following constant structure 2581 type DWMTRANSITION_OWNEDWINDOW_TARGET int32 2582 2583 const ( 2584 DWMTRANSITION_OWNEDWINDOW_NULL = -1 2585 DWMTRANSITION_OWNEDWINDOW_REPOSITION = 0 2586 ) 2587 2588 // enum-lite implementation for the following constant structure 2589 type DWMWINDOWATTRIBUTE int32 2590 2591 // TODO: need to verify this construction 2592 // Flags used by the DwmGetWindowAttribute and DwmSetWindowAttribute functions 2593 // to specify window attributes for non-client rendering 2594 const ( 2595 DWMWA_NCRENDERING_ENABLED = iota + 1 2596 DWMWA_NCRENDERING_POLICY 2597 DWMWA_TRANSITIONS_FORCEDISABLED 2598 DWMWA_ALLOW_NCPAINT 2599 DWMWA_CAPTION_BUTTON_BOUNDS 2600 DWMWA_NONCLIENT_RTL_LAYOUT 2601 DWMWA_FORCE_ICONIC_REPRESENTATION 2602 DWMWA_FLIP3D_POLICY 2603 DWMWA_EXTENDED_FRAME_BOUNDS 2604 DWMWA_HAS_ICONIC_BITMAP 2605 DWMWA_DISALLOW_PEEK 2606 DWMWA_EXCLUDED_FROM_PEEK 2607 DWMWA_CLOAK 2608 DWMWA_CLOAKED 2609 DWMWA_FREEZE_REPRESENTATION 2610 DWMWA_LAST 2611 ) 2612 2613 // enum-lite implementation for the following constant structure 2614 type GESTURE_TYPE int32 2615 2616 // TODO: use iota? 2617 // Identifies the gesture type 2618 const ( 2619 GT_PEN_TAP = 0 2620 GT_PEN_DOUBLETAP = 1 2621 GT_PEN_RIGHTTAP = 2 2622 GT_PEN_PRESSANDHOLD = 3 2623 GT_PEN_PRESSANDHOLDABORT = 4 2624 GT_TOUCH_TAP = 5 2625 GT_TOUCH_DOUBLETAP = 6 2626 GT_TOUCH_RIGHTTAP = 7 2627 GT_TOUCH_PRESSANDHOLD = 8 2628 GT_TOUCH_PRESSANDHOLDABORT = 9 2629 GT_TOUCH_PRESSANDTAP = 10 2630 ) 2631 2632 // Icons 2633 const ( 2634 ICON_SMALL = 0 2635 ICON_BIG = 1 2636 ICON_SMALL2 = 2 2637 ) 2638 2639 const ( 2640 SIZE_RESTORED = 0 2641 SIZE_MINIMIZED = 1 2642 SIZE_MAXIMIZED = 2 2643 SIZE_MAXSHOW = 3 2644 SIZE_MAXHIDE = 4 2645 ) 2646 2647 // XButton values 2648 const ( 2649 XBUTTON1 = 1 2650 XBUTTON2 = 2 2651 ) 2652 2653 // Devmode 2654 const ( 2655 DM_SPECVERSION = 0x0401 2656 2657 DM_ORIENTATION = 0x00000001 2658 DM_PAPERSIZE = 0x00000002 2659 DM_PAPERLENGTH = 0x00000004 2660 DM_PAPERWIDTH = 0x00000008 2661 DM_SCALE = 0x00000010 2662 DM_POSITION = 0x00000020 2663 DM_NUP = 0x00000040 2664 DM_DISPLAYORIENTATION = 0x00000080 2665 DM_COPIES = 0x00000100 2666 DM_DEFAULTSOURCE = 0x00000200 2667 DM_PRINTQUALITY = 0x00000400 2668 DM_COLOR = 0x00000800 2669 DM_DUPLEX = 0x00001000 2670 DM_YRESOLUTION = 0x00002000 2671 DM_TTOPTION = 0x00004000 2672 DM_COLLATE = 0x00008000 2673 DM_FORMNAME = 0x00010000 2674 DM_LOGPIXELS = 0x00020000 2675 DM_BITSPERPEL = 0x00040000 2676 DM_PELSWIDTH = 0x00080000 2677 DM_PELSHEIGHT = 0x00100000 2678 DM_DISPLAYFLAGS = 0x00200000 2679 DM_DISPLAYFREQUENCY = 0x00400000 2680 DM_ICMMETHOD = 0x00800000 2681 DM_ICMINTENT = 0x01000000 2682 DM_MEDIATYPE = 0x02000000 2683 DM_DITHERTYPE = 0x04000000 2684 DM_PANNINGWIDTH = 0x08000000 2685 DM_PANNINGHEIGHT = 0x10000000 2686 DM_DISPLAYFIXEDOUTPUT = 0x20000000 2687 ) 2688 2689 // ChangeDisplaySettings 2690 const ( 2691 CDS_UPDATEREGISTRY = 0x00000001 2692 CDS_TEST = 0x00000002 2693 CDS_FULLSCREEN = 0x00000004 2694 CDS_GLOBAL = 0x00000008 2695 CDS_SET_PRIMARY = 0x00000010 2696 CDS_VIDEOPARAMETERS = 0x00000020 2697 CDS_RESET = 0x40000000 2698 CDS_NORESET = 0x10000000 2699 2700 DISP_CHANGE_SUCCESSFUL = 0 2701 DISP_CHANGE_RESTART = 1 2702 DISP_CHANGE_FAILED = -1 2703 DISP_CHANGE_BADMODE = -2 2704 DISP_CHANGE_NOTUPDATED = -3 2705 DISP_CHANGE_BADFLAGS = -4 2706 DISP_CHANGE_BADPARAM = -5 2707 DISP_CHANGE_BADDUALVIEW = -6 2708 ) 2709 2710 const ( 2711 ENUM_CURRENT_SETTINGS = 0xFFFFFFFF 2712 ENUM_REGISTRY_SETTINGS = 0xFFFFFFFE 2713 ) 2714 2715 // PIXELFORMATDESCRIPTOR 2716 const ( 2717 PFD_TYPE_RGBA = 0 2718 PFD_TYPE_COLORINDEX = 1 2719 2720 PFD_MAIN_PLANE = 0 2721 PFD_OVERLAY_PLANE = 1 2722 PFD_UNDERLAY_PLANE = -1 2723 2724 PFD_DOUBLEBUFFER = 0x00000001 2725 PFD_STEREO = 0x00000002 2726 PFD_DRAW_TO_WINDOW = 0x00000004 2727 PFD_DRAW_TO_BITMAP = 0x00000008 2728 PFD_SUPPORT_GDI = 0x00000010 2729 PFD_SUPPORT_OPENGL = 0x00000020 2730 PFD_GENERIC_FORMAT = 0x00000040 2731 PFD_NEED_PALETTE = 0x00000080 2732 PFD_NEED_SYSTEM_PALETTE = 0x00000100 2733 PFD_SWAP_EXCHANGE = 0x00000200 2734 PFD_SWAP_COPY = 0x00000400 2735 PFD_SWAP_LAYER_BUFFERS = 0x00000800 2736 PFD_GENERIC_ACCELERATED = 0x00001000 2737 PFD_SUPPORT_DIRECTDRAW = 0x00002000 2738 PFD_DIRECT3D_ACCELERATED = 0x00004000 2739 PFD_SUPPORT_COMPOSITION = 0x00008000 2740 2741 PFD_DEPTH_DONTCARE = 0x20000000 2742 PFD_DOUBLEBUFFER_DONTCARE = 0x40000000 2743 PFD_STEREO_DONTCARE = 0x80000000 2744 ) 2745 2746 const ( 2747 INPUT_MOUSE = 0 2748 INPUT_KEYBOARD = 1 2749 INPUT_HARDWARE = 2 2750 ) 2751 2752 const ( 2753 MOUSEEVENTF_ABSOLUTE = 0x8000 2754 MOUSEEVENTF_HWHEEL = 0x01000 2755 MOUSEEVENTF_MOVE = 0x0001 2756 MOUSEEVENTF_MOVE_NOCOALESCE = 0x2000 2757 MOUSEEVENTF_LEFTDOWN = 0x0002 2758 MOUSEEVENTF_LEFTUP = 0x0004 2759 MOUSEEVENTF_RIGHTDOWN = 0x0008 2760 MOUSEEVENTF_RIGHTUP = 0x0010 2761 MOUSEEVENTF_MIDDLEDOWN = 0x0020 2762 MOUSEEVENTF_MIDDLEUP = 0x0040 2763 MOUSEEVENTF_VIRTUALDESK = 0x4000 2764 MOUSEEVENTF_WHEEL = 0x0800 2765 MOUSEEVENTF_XDOWN = 0x0080 2766 MOUSEEVENTF_XUP = 0x0100 2767 ) 2768 2769 // Windows Hooks (WH_*) 2770 // http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990(v=vs.85).aspx 2771 const ( 2772 WH_CALLWNDPROC = 4 2773 WH_CALLWNDPROCRET = 12 2774 WH_CBT = 5 2775 WH_DEBUG = 9 2776 WH_FOREGROUNDIDLE = 11 2777 WH_GETMESSAGE = 3 2778 WH_JOURNALPLAYBACK = 1 2779 WH_JOURNALRECORD = 0 2780 WH_KEYBOARD = 2 2781 WH_KEYBOARD_LL = 13 2782 WH_MOUSE = 7 2783 WH_MOUSE_LL = 14 2784 WH_MSGFILTER = -1 2785 WH_SHELL = 10 2786 WH_SYSMSGFILTER = 6 2787 ) 2788 2789 // ComboBox return values 2790 const ( 2791 CB_OKAY = 0 2792 CB_ERR = ^uintptr(0) // -1 2793 CB_ERRSPACE = ^uintptr(1) // -2 2794 ) 2795 2796 // ComboBox notifications 2797 const ( 2798 CBN_ERRSPACE = -1 2799 CBN_SELCHANGE = 1 2800 CBN_DBLCLK = 2 2801 CBN_SETFOCUS = 3 2802 CBN_KILLFOCUS = 4 2803 CBN_EDITCHANGE = 5 2804 CBN_EDITUPDATE = 6 2805 CBN_DROPDOWN = 7 2806 CBN_CLOSEUP = 8 2807 CBN_SELENDOK = 9 2808 CBN_SELENDCANCEL = 10 2809 ) 2810 2811 // ComboBox styles 2812 const ( 2813 CBS_SIMPLE = 0x0001 2814 CBS_DROPDOWN = 0x0002 2815 CBS_DROPDOWNLIST = 0x0003 2816 CBS_OWNERDRAWFIXED = 0x0010 2817 CBS_OWNERDRAWVARIABLE = 0x0020 2818 CBS_AUTOHSCROLL = 0x0040 2819 CBS_OEMCONVERT = 0x0080 2820 CBS_SORT = 0x0100 2821 CBS_HASSTRINGS = 0x0200 2822 CBS_NOINTEGRALHEIGHT = 0x0400 2823 CBS_DISABLENOSCROLL = 0x0800 2824 CBS_UPPERCASE = 0x2000 2825 CBS_LOWERCASE = 0x4000 2826 ) 2827 2828 // ComboBox messages 2829 const ( 2830 CB_GETEDITSEL = 0x0140 2831 CB_LIMITTEXT = 0x0141 2832 CB_SETEDITSEL = 0x0142 2833 CB_ADDSTRING = 0x0143 2834 CB_DELETESTRING = 0x0144 2835 CB_DIR = 0x0145 2836 CB_GETCOUNT = 0x0146 2837 CB_GETCURSEL = 0x0147 2838 CB_GETLBTEXT = 0x0148 2839 CB_GETLBTEXTLEN = 0x0149 2840 CB_INSERTSTRING = 0x014A 2841 CB_RESETCONTENT = 0x014B 2842 CB_FINDSTRING = 0x014C 2843 CB_SELECTSTRING = 0x014D 2844 CB_SETCURSEL = 0x014E 2845 CB_SHOWDROPDOWN = 0x014F 2846 CB_GETITEMDATA = 0x0150 2847 CB_SETITEMDATA = 0x0151 2848 CB_GETDROPPEDCONTROLRECT = 0x0152 2849 CB_SETITEMHEIGHT = 0x0153 2850 CB_GETITEMHEIGHT = 0x0154 2851 CB_SETEXTENDEDUI = 0x0155 2852 CB_GETEXTENDEDUI = 0x0156 2853 CB_GETDROPPEDSTATE = 0x0157 2854 CB_FINDSTRINGEXACT = 0x0158 2855 CB_SETLOCALE = 0x0159 2856 CB_GETLOCALE = 0x015A 2857 CB_GETTOPINDEX = 0x015b 2858 CB_SETTOPINDEX = 0x015c 2859 CB_GETHORIZONTALEXTENT = 0x015d 2860 CB_SETHORIZONTALEXTENT = 0x015e 2861 CB_GETDROPPEDWIDTH = 0x015f 2862 CB_SETDROPPEDWIDTH = 0x0160 2863 CB_INITSTORAGE = 0x0161 2864 CB_MULTIPLEADDSTRING = 0x0163 2865 CB_GETCOMBOBOXINFO = 0x0164 2866 ) 2867 2868 // TreeView styles 2869 const ( 2870 TVS_HASBUTTONS = 0x0001 2871 TVS_HASLINES = 0x0002 2872 TVS_LINESATROOT = 0x0004 2873 TVS_EDITLABELS = 0x0008 2874 TVS_DISABLEDRAGDROP = 0x0010 2875 TVS_SHOWSELALWAYS = 0x0020 2876 TVS_RTLREADING = 0x0040 2877 TVS_NOTOOLTIPS = 0x0080 2878 TVS_CHECKBOXES = 0x0100 2879 TVS_TRACKSELECT = 0x0200 2880 TVS_SINGLEEXPAND = 0x0400 2881 TVS_INFOTIP = 0x0800 2882 TVS_FULLROWSELECT = 0x1000 2883 TVS_NOSCROLL = 0x2000 2884 TVS_NONEVENHEIGHT = 0x4000 2885 TVS_NOHSCROLL = 0x8000 2886 ) 2887 2888 const ( 2889 TVS_EX_NOSINGLECOLLAPSE = 0x0001 2890 TVS_EX_MULTISELECT = 0x0002 2891 TVS_EX_DOUBLEBUFFER = 0x0004 2892 TVS_EX_NOINDENTSTATE = 0x0008 2893 TVS_EX_RICHTOOLTIP = 0x0010 2894 TVS_EX_AUTOHSCROLL = 0x0020 2895 TVS_EX_FADEINOUTEXPANDOS = 0x0040 2896 TVS_EX_PARTIALCHECKBOXES = 0x0080 2897 TVS_EX_EXCLUSIONCHECKBOXES = 0x0100 2898 TVS_EX_DIMMEDCHECKBOXES = 0x0200 2899 TVS_EX_DRAWIMAGEASYNC = 0x0400 2900 ) 2901 2902 const ( 2903 TVIF_TEXT = 0x0001 2904 TVIF_IMAGE = 0x0002 2905 TVIF_PARAM = 0x0004 2906 TVIF_STATE = 0x0008 2907 TVIF_HANDLE = 0x0010 2908 TVIF_SELECTEDIMAGE = 0x0020 2909 TVIF_CHILDREN = 0x0040 2910 TVIF_INTEGRAL = 0x0080 2911 TVIF_STATEEX = 0x0100 2912 TVIF_EXPANDEDIMAGE = 0x0200 2913 ) 2914 2915 const ( 2916 TVIS_SELECTED = 0x0002 2917 TVIS_CUT = 0x0004 2918 TVIS_DROPHILITED = 0x0008 2919 TVIS_BOLD = 0x0010 2920 TVIS_EXPANDED = 0x0020 2921 TVIS_EXPANDEDONCE = 0x0040 2922 TVIS_EXPANDPARTIAL = 0x0080 2923 TVIS_OVERLAYMASK = 0x0F00 2924 TVIS_STATEIMAGEMASK = 0xF000 2925 TVIS_USERMASK = 0xF000 2926 ) 2927 2928 const ( 2929 TVIS_EX_FLAT = 0x0001 2930 TVIS_EX_DISABLED = 0x0002 2931 TVIS_EX_ALL = 0x0002 2932 ) 2933 2934 const ( 2935 TVI_ROOT = ^HTREEITEM(0xffff) 2936 TVI_FIRST = ^HTREEITEM(0xfffe) 2937 TVI_LAST = ^HTREEITEM(0xfffd) 2938 TVI_SORT = ^HTREEITEM(0xfffc) 2939 ) 2940 2941 // TVM_EXPAND action flags 2942 const ( 2943 TVE_COLLAPSE = 0x0001 2944 TVE_EXPAND = 0x0002 2945 TVE_TOGGLE = 0x0003 2946 TVE_EXPANDPARTIAL = 0x4000 2947 TVE_COLLAPSERESET = 0x8000 2948 ) 2949 2950 const ( 2951 TVGN_CARET = 9 2952 ) 2953 2954 // TreeView messages 2955 const ( 2956 TV_FIRST = 0x1100 2957 2958 TVM_INSERTITEM = TV_FIRST + 50 2959 TVM_DELETEITEM = TV_FIRST + 1 2960 TVM_EXPAND = TV_FIRST + 2 2961 TVM_GETITEMRECT = TV_FIRST + 4 2962 TVM_GETCOUNT = TV_FIRST + 5 2963 TVM_GETINDENT = TV_FIRST + 6 2964 TVM_SETINDENT = TV_FIRST + 7 2965 TVM_GETIMAGELIST = TV_FIRST + 8 2966 TVM_SETIMAGELIST = TV_FIRST + 9 2967 TVM_GETNEXTITEM = TV_FIRST + 10 2968 TVM_SELECTITEM = TV_FIRST + 11 2969 TVM_GETITEM = TV_FIRST + 62 2970 TVM_SETITEM = TV_FIRST + 63 2971 TVM_EDITLABEL = TV_FIRST + 65 2972 TVM_GETEDITCONTROL = TV_FIRST + 15 2973 TVM_GETVISIBLECOUNT = TV_FIRST + 16 2974 TVM_HITTEST = TV_FIRST + 17 2975 TVM_CREATEDRAGIMAGE = TV_FIRST + 18 2976 TVM_SORTCHILDREN = TV_FIRST + 19 2977 TVM_ENSUREVISIBLE = TV_FIRST + 20 2978 TVM_SORTCHILDRENCB = TV_FIRST + 21 2979 TVM_ENDEDITLABELNOW = TV_FIRST + 22 2980 TVM_GETISEARCHSTRING = TV_FIRST + 64 2981 TVM_SETTOOLTIPS = TV_FIRST + 24 2982 TVM_GETTOOLTIPS = TV_FIRST + 25 2983 TVM_SETINSERTMARK = TV_FIRST + 26 2984 TVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT 2985 TVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT 2986 TVM_SETITEMHEIGHT = TV_FIRST + 27 2987 TVM_GETITEMHEIGHT = TV_FIRST + 28 2988 TVM_SETBKCOLOR = TV_FIRST + 29 2989 TVM_SETTEXTCOLOR = TV_FIRST + 30 2990 TVM_GETBKCOLOR = TV_FIRST + 31 2991 TVM_GETTEXTCOLOR = TV_FIRST + 32 2992 TVM_SETSCROLLTIME = TV_FIRST + 33 2993 TVM_GETSCROLLTIME = TV_FIRST + 34 2994 TVM_SETINSERTMARKCOLOR = TV_FIRST + 37 2995 TVM_GETINSERTMARKCOLOR = TV_FIRST + 38 2996 TVM_GETITEMSTATE = TV_FIRST + 39 2997 TVM_SETLINECOLOR = TV_FIRST + 40 2998 TVM_GETLINECOLOR = TV_FIRST + 41 2999 TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42 3000 TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43 3001 TVM_SETEXTENDEDSTYLE = TV_FIRST + 44 3002 TVM_GETEXTENDEDSTYLE = TV_FIRST + 45 3003 TVM_SETAUTOSCROLLINFO = TV_FIRST + 59 3004 ) 3005 3006 // TreeView notifications 3007 const ( 3008 TVN_FIRST = ^uint32(399) 3009 3010 TVN_SELCHANGING = TVN_FIRST - 50 3011 TVN_SELCHANGED = TVN_FIRST - 51 3012 TVN_GETDISPINFO = TVN_FIRST - 52 3013 TVN_ITEMEXPANDING = TVN_FIRST - 54 3014 TVN_ITEMEXPANDED = TVN_FIRST - 55 3015 TVN_BEGINDRAG = TVN_FIRST - 56 3016 TVN_BEGINRDRAG = TVN_FIRST - 57 3017 TVN_DELETEITEM = TVN_FIRST - 58 3018 TVN_BEGINLABELEDIT = TVN_FIRST - 59 3019 TVN_ENDLABELEDIT = TVN_FIRST - 60 3020 TVN_KEYDOWN = TVN_FIRST - 12 3021 TVN_GETINFOTIP = TVN_FIRST - 14 3022 TVN_SINGLEEXPAND = TVN_FIRST - 15 3023 TVN_ITEMCHANGING = TVN_FIRST - 17 3024 TVN_ITEMCHANGED = TVN_FIRST - 19 3025 TVN_ASYNCDRAW = TVN_FIRST - 20 3026 ) 3027 3028 // TreeView hit test constants 3029 const ( 3030 TVHT_NOWHERE = 1 3031 TVHT_ONITEMICON = 2 3032 TVHT_ONITEMLABEL = 4 3033 TVHT_ONITEM = TVHT_ONITEMICON | TVHT_ONITEMLABEL | TVHT_ONITEMSTATEICON 3034 TVHT_ONITEMINDENT = 8 3035 TVHT_ONITEMBUTTON = 16 3036 TVHT_ONITEMRIGHT = 32 3037 TVHT_ONITEMSTATEICON = 64 3038 TVHT_ABOVE = 256 3039 TVHT_BELOW = 512 3040 TVHT_TORIGHT = 1024 3041 TVHT_TOLEFT = 2048 3042 ) 3043 3044 type HTREEITEM HANDLE 3045 3046 type TVITEM struct { 3047 Mask uint32 3048 HItem HTREEITEM 3049 State uint32 3050 StateMask uint32 3051 PszText uintptr 3052 CchTextMax int32 3053 IImage int32 3054 ISelectedImage int32 3055 CChildren int32 3056 LParam uintptr 3057 } 3058 3059 /*type TVITEMEX struct { 3060 mask UINT 3061 hItem HTREEITEM 3062 state UINT 3063 stateMask UINT 3064 pszText LPWSTR 3065 cchTextMax int 3066 iImage int 3067 iSelectedImage int 3068 cChildren int 3069 lParam LPARAM 3070 iIntegral int 3071 uStateEx UINT 3072 hwnd HWND 3073 iExpandedImage int 3074 }*/ 3075 3076 type TVINSERTSTRUCT struct { 3077 HParent HTREEITEM 3078 HInsertAfter HTREEITEM 3079 Item TVITEM 3080 // itemex TVITEMEX 3081 } 3082 3083 type NMTREEVIEW struct { 3084 Hdr NMHDR 3085 Action uint32 3086 ItemOld TVITEM 3087 ItemNew TVITEM 3088 PtDrag POINT 3089 } 3090 3091 type NMTVDISPINFO struct { 3092 Hdr NMHDR 3093 Item TVITEM 3094 } 3095 3096 type NMTVKEYDOWN struct { 3097 Hdr NMHDR 3098 WVKey uint16 3099 Flags uint32 3100 } 3101 3102 type TVHITTESTINFO struct { 3103 Pt POINT 3104 Flags uint32 3105 HItem HTREEITEM 3106 } 3107 3108 // TabPage support 3109 3110 const TCM_FIRST = 0x1300 3111 const TCN_FIRST = -550 3112 3113 const ( 3114 TCS_SCROLLOPPOSITE = 0x0001 3115 TCS_BOTTOM = 0x0002 3116 TCS_RIGHT = 0x0002 3117 TCS_MULTISELECT = 0x0004 3118 TCS_FLATBUTTONS = 0x0008 3119 TCS_FORCEICONLEFT = 0x0010 3120 TCS_FORCELABELLEFT = 0x0020 3121 TCS_HOTTRACK = 0x0040 3122 TCS_VERTICAL = 0x0080 3123 TCS_TABS = 0x0000 3124 TCS_BUTTONS = 0x0100 3125 TCS_SINGLELINE = 0x0000 3126 TCS_MULTILINE = 0x0200 3127 TCS_RIGHTJUSTIFY = 0x0000 3128 TCS_FIXEDWIDTH = 0x0400 3129 TCS_RAGGEDRIGHT = 0x0800 3130 TCS_FOCUSONBUTTONDOWN = 0x1000 3131 TCS_OWNERDRAWFIXED = 0x2000 3132 TCS_TOOLTIPS = 0x4000 3133 TCS_FOCUSNEVER = 0x8000 3134 ) 3135 3136 const ( 3137 TCS_EX_FLATSEPARATORS = 0x00000001 3138 TCS_EX_REGISTERDROP = 0x00000002 3139 ) 3140 3141 const ( 3142 TCM_GETIMAGELIST = TCM_FIRST + 2 3143 TCM_SETIMAGELIST = TCM_FIRST + 3 3144 TCM_GETITEMCOUNT = TCM_FIRST + 4 3145 TCM_GETITEM = TCM_FIRST + 60 3146 TCM_SETITEM = TCM_FIRST + 61 3147 TCM_INSERTITEM = TCM_FIRST + 62 3148 TCM_DELETEITEM = TCM_FIRST + 8 3149 TCM_DELETEALLITEMS = TCM_FIRST + 9 3150 TCM_GETITEMRECT = TCM_FIRST + 10 3151 TCM_GETCURSEL = TCM_FIRST + 11 3152 TCM_SETCURSEL = TCM_FIRST + 12 3153 TCM_HITTEST = TCM_FIRST + 13 3154 TCM_SETITEMEXTRA = TCM_FIRST + 14 3155 TCM_ADJUSTRECT = TCM_FIRST + 40 3156 TCM_SETITEMSIZE = TCM_FIRST + 41 3157 TCM_REMOVEIMAGE = TCM_FIRST + 42 3158 TCM_SETPADDING = TCM_FIRST + 43 3159 TCM_GETROWCOUNT = TCM_FIRST + 44 3160 TCM_GETTOOLTIPS = TCM_FIRST + 45 3161 TCM_SETTOOLTIPS = TCM_FIRST + 46 3162 TCM_GETCURFOCUS = TCM_FIRST + 47 3163 TCM_SETCURFOCUS = TCM_FIRST + 48 3164 TCM_SETMINTABWIDTH = TCM_FIRST + 49 3165 TCM_DESELECTALL = TCM_FIRST + 50 3166 TCM_HIGHLIGHTITEM = TCM_FIRST + 51 3167 TCM_SETEXTENDEDSTYLE = TCM_FIRST + 52 3168 TCM_GETEXTENDEDSTYLE = TCM_FIRST + 53 3169 TCM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT 3170 TCM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT 3171 ) 3172 3173 const ( 3174 TCIF_TEXT = 0x0001 3175 TCIF_IMAGE = 0x0002 3176 TCIF_RTLREADING = 0x0004 3177 TCIF_PARAM = 0x0008 3178 TCIF_STATE = 0x0010 3179 ) 3180 3181 const ( 3182 TCIS_BUTTONPRESSED = 0x0001 3183 TCIS_HIGHLIGHTED = 0x0002 3184 ) 3185 3186 const ( 3187 TCHT_NOWHERE = 0x0001 3188 TCHT_ONITEMICON = 0x0002 3189 TCHT_ONITEMLABEL = 0x0004 3190 TCHT_ONITEM = TCHT_ONITEMICON | TCHT_ONITEMLABEL 3191 ) 3192 3193 const ( 3194 TCN_KEYDOWN = TCN_FIRST - 0 3195 TCN_SELCHANGE = TCN_FIRST - 1 3196 TCN_SELCHANGING = TCN_FIRST - 2 3197 TCN_GETOBJECT = TCN_FIRST - 3 3198 TCN_FOCUSCHANGE = TCN_FIRST - 4 3199 ) 3200 3201 type TCITEMHEADER struct { 3202 Mask uint32 3203 LpReserved1 uint32 3204 LpReserved2 uint32 3205 PszText *uint16 3206 CchTextMax int32 3207 IImage int32 3208 } 3209 3210 type TCITEM struct { 3211 Mask uint32 3212 DwState uint32 3213 DwStateMask uint32 3214 PszText *uint16 3215 CchTextMax int32 3216 IImage int32 3217 LParam uintptr 3218 } 3219 3220 type TCHITTESTINFO struct { 3221 Pt POINT 3222 flags uint32 3223 } 3224 3225 type NMTCKEYDOWN struct { 3226 Hdr NMHDR 3227 WVKey uint16 3228 Flags uint32 3229 } 3230 3231 // Menu support constants 3232 3233 // Constants for MENUITEMINFO.fMask 3234 const ( 3235 MIIM_STATE = 1 3236 MIIM_ID = 2 3237 MIIM_SUBMENU = 4 3238 MIIM_CHECKMARKS = 8 3239 MIIM_TYPE = 16 3240 MIIM_DATA = 32 3241 MIIM_STRING = 64 3242 MIIM_BITMAP = 128 3243 MIIM_FTYPE = 256 3244 ) 3245 3246 // Constants for MENUITEMINFO.fType 3247 const ( 3248 MFT_BITMAP = 4 3249 MFT_MENUBARBREAK = 32 3250 MFT_MENUBREAK = 64 3251 MFT_OWNERDRAW = 256 3252 MFT_RADIOCHECK = 512 3253 MFT_RIGHTJUSTIFY = 0x4000 3254 MFT_SEPARATOR = 0x800 3255 MFT_RIGHTORDER = 0x2000 3256 MFT_STRING = 0 3257 ) 3258 3259 // Constants for MENUITEMINFO.fState 3260 const ( 3261 MFS_CHECKED = 8 3262 MFS_DEFAULT = 4096 3263 MFS_DISABLED = 3 3264 MFS_ENABLED = 0 3265 MFS_GRAYED = 3 3266 MFS_HILITE = 128 3267 MFS_UNCHECKED = 0 3268 MFS_UNHILITE = 0 3269 ) 3270 3271 // Constants for MENUITEMINFO.hbmp* 3272 const ( 3273 HBMMENU_CALLBACK = -1 3274 HBMMENU_SYSTEM = 1 3275 HBMMENU_MBAR_RESTORE = 2 3276 HBMMENU_MBAR_MINIMIZE = 3 3277 HBMMENU_MBAR_CLOSE = 5 3278 HBMMENU_MBAR_CLOSE_D = 6 3279 HBMMENU_MBAR_MINIMIZE_D = 7 3280 HBMMENU_POPUP_CLOSE = 8 3281 HBMMENU_POPUP_RESTORE = 9 3282 HBMMENU_POPUP_MAXIMIZE = 10 3283 HBMMENU_POPUP_MINIMIZE = 11 3284 ) 3285 3286 // MENUINFO mask constants 3287 const ( 3288 MIM_APPLYTOSUBMENUS = 0x80000000 3289 MIM_BACKGROUND = 0x00000002 3290 MIM_HELPID = 0x00000004 3291 MIM_MAXHEIGHT = 0x00000001 3292 MIM_MENUDATA = 0x00000008 3293 MIM_STYLE = 0x00000010 3294 ) 3295 3296 // MENUINFO style constants 3297 const ( 3298 MNS_AUTODISMISS = 0x10000000 3299 MNS_CHECKORBMP = 0x04000000 3300 MNS_DRAGDROP = 0x20000000 3301 MNS_MODELESS = 0x40000000 3302 MNS_NOCHECK = 0x80000000 3303 MNS_NOTIFYBYPOS = 0x08000000 3304 ) 3305 3306 const ( 3307 MF_BYCOMMAND = 0x00000000 3308 MF_BYPOSITION = 0x00000400 3309 ) 3310 3311 type MENUITEMINFO struct { 3312 CbSize uint32 3313 FMask uint32 3314 FType uint32 3315 FState uint32 3316 WID uint32 3317 HSubMenu HMENU 3318 HbmpChecked HBITMAP 3319 HbmpUnchecked HBITMAP 3320 DwItemData uintptr 3321 DwTypeData *uint16 3322 Cch uint32 3323 HbmpItem HBITMAP 3324 } 3325 3326 type MENUINFO struct { 3327 CbSize uint32 3328 FMask uint32 3329 DwStyle uint32 3330 CyMax uint32 3331 HbrBack HBRUSH 3332 DwContextHelpID uint32 3333 DwMenuData uintptr 3334 } 3335 3336 // UI state constants 3337 const ( 3338 UIS_SET = 1 3339 UIS_CLEAR = 2 3340 UIS_INITIALIZE = 3 3341 ) 3342 3343 // UI state constants 3344 const ( 3345 UISF_HIDEFOCUS = 0x1 3346 UISF_HIDEACCEL = 0x2 3347 UISF_ACTIVE = 0x4 3348 ) 3349 3350 // Virtual key codes 3351 const ( 3352 VK_LBUTTON = 1 3353 VK_RBUTTON = 2 3354 VK_CANCEL = 3 3355 VK_MBUTTON = 4 3356 VK_XBUTTON1 = 5 3357 VK_XBUTTON2 = 6 3358 VK_BACK = 8 3359 VK_TAB = 9 3360 VK_CLEAR = 12 3361 VK_RETURN = 13 3362 VK_SHIFT = 16 3363 VK_CONTROL = 17 3364 VK_MENU = 18 3365 VK_PAUSE = 19 3366 VK_CAPITAL = 20 3367 VK_KANA = 0x15 3368 VK_HANGEUL = 0x15 3369 VK_HANGUL = 0x15 3370 VK_JUNJA = 0x17 3371 VK_FINAL = 0x18 3372 VK_HANJA = 0x19 3373 VK_KANJI = 0x19 3374 VK_ESCAPE = 0x1B 3375 VK_CONVERT = 0x1C 3376 VK_NONCONVERT = 0x1D 3377 VK_ACCEPT = 0x1E 3378 VK_MODECHANGE = 0x1F 3379 VK_SPACE = 32 3380 VK_PRIOR = 33 3381 VK_NEXT = 34 3382 VK_END = 35 3383 VK_HOME = 36 3384 VK_LEFT = 37 3385 VK_UP = 38 3386 VK_RIGHT = 39 3387 VK_DOWN = 40 3388 VK_SELECT = 41 3389 VK_PRINT = 42 3390 VK_EXECUTE = 43 3391 VK_SNAPSHOT = 44 3392 VK_INSERT = 45 3393 VK_DELETE = 46 3394 VK_HELP = 47 3395 VK_LWIN = 0x5B 3396 VK_RWIN = 0x5C 3397 VK_APPS = 0x5D 3398 VK_SLEEP = 0x5F 3399 VK_NUMPAD0 = 0x60 3400 VK_NUMPAD1 = 0x61 3401 VK_NUMPAD2 = 0x62 3402 VK_NUMPAD3 = 0x63 3403 VK_NUMPAD4 = 0x64 3404 VK_NUMPAD5 = 0x65 3405 VK_NUMPAD6 = 0x66 3406 VK_NUMPAD7 = 0x67 3407 VK_NUMPAD8 = 0x68 3408 VK_NUMPAD9 = 0x69 3409 VK_MULTIPLY = 0x6A 3410 VK_ADD = 0x6B 3411 VK_SEPARATOR = 0x6C 3412 VK_SUBTRACT = 0x6D 3413 VK_DECIMAL = 0x6E 3414 VK_DIVIDE = 0x6F 3415 VK_F1 = 0x70 3416 VK_F2 = 0x71 3417 VK_F3 = 0x72 3418 VK_F4 = 0x73 3419 VK_F5 = 0x74 3420 VK_F6 = 0x75 3421 VK_F7 = 0x76 3422 VK_F8 = 0x77 3423 VK_F9 = 0x78 3424 VK_F10 = 0x79 3425 VK_F11 = 0x7A 3426 VK_F12 = 0x7B 3427 VK_F13 = 0x7C 3428 VK_F14 = 0x7D 3429 VK_F15 = 0x7E 3430 VK_F16 = 0x7F 3431 VK_F17 = 0x80 3432 VK_F18 = 0x81 3433 VK_F19 = 0x82 3434 VK_F20 = 0x83 3435 VK_F21 = 0x84 3436 VK_F22 = 0x85 3437 VK_F23 = 0x86 3438 VK_F24 = 0x87 3439 VK_NUMLOCK = 0x90 3440 VK_SCROLL = 0x91 3441 VK_LSHIFT = 0xA0 3442 VK_RSHIFT = 0xA1 3443 VK_LCONTROL = 0xA2 3444 VK_RCONTROL = 0xA3 3445 VK_LMENU = 0xA4 3446 VK_RMENU = 0xA5 3447 VK_BROWSER_BACK = 0xA6 3448 VK_BROWSER_FORWARD = 0xA7 3449 VK_BROWSER_REFRESH = 0xA8 3450 VK_BROWSER_STOP = 0xA9 3451 VK_BROWSER_SEARCH = 0xAA 3452 VK_BROWSER_FAVORITES = 0xAB 3453 VK_BROWSER_HOME = 0xAC 3454 VK_VOLUME_MUTE = 0xAD 3455 VK_VOLUME_DOWN = 0xAE 3456 VK_VOLUME_UP = 0xAF 3457 VK_MEDIA_NEXT_TRACK = 0xB0 3458 VK_MEDIA_PREV_TRACK = 0xB1 3459 VK_MEDIA_STOP = 0xB2 3460 VK_MEDIA_PLAY_PAUSE = 0xB3 3461 VK_LAUNCH_MAIL = 0xB4 3462 VK_LAUNCH_MEDIA_SELECT = 0xB5 3463 VK_LAUNCH_APP1 = 0xB6 3464 VK_LAUNCH_APP2 = 0xB7 3465 VK_OEM_1 = 0xBA 3466 VK_OEM_PLUS = 0xBB 3467 VK_OEM_COMMA = 0xBC 3468 VK_OEM_MINUS = 0xBD 3469 VK_OEM_PERIOD = 0xBE 3470 VK_OEM_2 = 0xBF 3471 VK_OEM_3 = 0xC0 3472 VK_OEM_4 = 0xDB 3473 VK_OEM_5 = 0xDC 3474 VK_OEM_6 = 0xDD 3475 VK_OEM_7 = 0xDE 3476 VK_OEM_8 = 0xDF 3477 VK_OEM_102 = 0xE2 3478 VK_PROCESSKEY = 0xE5 3479 VK_PACKET = 0xE7 3480 VK_ATTN = 0xF6 3481 VK_CRSEL = 0xF7 3482 VK_EXSEL = 0xF8 3483 VK_EREOF = 0xF9 3484 VK_PLAY = 0xFA 3485 VK_ZOOM = 0xFB 3486 VK_NONAME = 0xFC 3487 VK_PA1 = 0xFD 3488 VK_OEM_CLEAR = 0xFE 3489 ) 3490 3491 // ScrollBar constants 3492 const ( 3493 SB_HORZ = 0 3494 SB_VERT = 1 3495 SB_CTL = 2 3496 SB_BOTH = 3 3497 ) 3498 3499 // ScrollBar commands 3500 const ( 3501 SB_LINEUP = 0 3502 SB_LINELEFT = 0 3503 SB_LINEDOWN = 1 3504 SB_LINERIGHT = 1 3505 SB_PAGEUP = 2 3506 SB_PAGELEFT = 2 3507 SB_PAGEDOWN = 3 3508 SB_PAGERIGHT = 3 3509 SB_THUMBPOSITION = 4 3510 SB_THUMBTRACK = 5 3511 SB_TOP = 6 3512 SB_LEFT = 6 3513 SB_BOTTOM = 7 3514 SB_RIGHT = 7 3515 SB_ENDSCROLL = 8 3516 ) 3517 3518 // [Get|Set]ScrollInfo mask constants 3519 const ( 3520 SIF_RANGE = 1 3521 SIF_PAGE = 2 3522 SIF_POS = 4 3523 SIF_DISABLENOSCROLL = 8 3524 SIF_TRACKPOS = 16 3525 SIF_ALL = SIF_RANGE + SIF_PAGE + SIF_POS + SIF_TRACKPOS 3526 )