This repository has been archived by the owner on Mar 13, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcommctrl.py
1549 lines (1547 loc) · 46.7 KB
/
commctrl.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Generated by h2py from COMMCTRL.H
WM_USER = 1024
ICC_LISTVIEW_CLASSES = 1 # listview, header
ICC_TREEVIEW_CLASSES = 2 # treeview, tooltips
ICC_BAR_CLASSES = 4 # toolbar, statusbar, trackbar, tooltips
ICC_TAB_CLASSES = 8 # tab, tooltips
ICC_UPDOWN_CLASS = 16 # updown
ICC_PROGRESS_CLASS = 32 # progress
ICC_HOTKEY_CLASS = 64 # hotkey
ICC_ANIMATE_CLASS = 128 # animate
ICC_WIN95_CLASSES = 255
ICC_DATE_CLASSES = 256 # month picker, date picker, time picker, updown
ICC_USEREX_CLASSES = 512 # comboex
ICC_COOL_CLASSES = 1024 # rebar (coolbar) control
ICC_INTERNET_CLASSES = 2048
ICC_PAGESCROLLER_CLASS = 4096 # page scroller
ICC_NATIVEFNTCTL_CLASS = 8192 # native font control
ODT_HEADER = 100
ODT_TAB = 101
ODT_LISTVIEW = 102
PY_0U = 0
NM_FIRST = (PY_0U) # generic to all controls
NM_LAST = (PY_0U- 99)
LVN_FIRST = (PY_0U-100) # listview
LVN_LAST = (PY_0U-199)
HDN_FIRST = (PY_0U-300) # header
HDN_LAST = (PY_0U-399)
TVN_FIRST = (PY_0U-400) # treeview
TVN_LAST = (PY_0U-499)
TTN_FIRST = (PY_0U-520) # tooltips
TTN_LAST = (PY_0U-549)
TCN_FIRST = (PY_0U-550) # tab control
TCN_LAST = (PY_0U-580)
CDN_FIRST = (PY_0U-601) # common dialog (new)
CDN_LAST = (PY_0U-699)
TBN_FIRST = (PY_0U-700) # toolbar
TBN_LAST = (PY_0U-720)
UDN_FIRST = (PY_0U-721) # updown
UDN_LAST = (PY_0U-740)
MCN_FIRST = (PY_0U-750) # monthcal
MCN_LAST = (PY_0U-759)
DTN_FIRST = (PY_0U-760) # datetimepick
DTN_LAST = (PY_0U-799)
CBEN_FIRST = (PY_0U-800) # combo box ex
CBEN_LAST = (PY_0U-830)
RBN_FIRST = (PY_0U-831) # rebar
RBN_LAST = (PY_0U-859)
IPN_FIRST = (PY_0U-860) # internet address
IPN_LAST = (PY_0U-879) # internet address
SBN_FIRST = (PY_0U-880) # status bar
SBN_LAST = (PY_0U-899)
PGN_FIRST = (PY_0U-900) # Pager Control
PGN_LAST = (PY_0U-950)
LVM_FIRST = 4096 # ListView messages
TV_FIRST = 4352 # TreeView messages
HDM_FIRST = 4608 # Header messages
TCM_FIRST = 4864 # Tab control messages
PGM_FIRST = 5120 # Pager control messages
CCM_FIRST = 8192 # Common control shared messages
CCM_SETBKCOLOR = (CCM_FIRST + 1) # lParam is bkColor
CCM_SETCOLORSCHEME = (CCM_FIRST + 2) # lParam is color scheme
CCM_GETCOLORSCHEME = (CCM_FIRST + 3) # fills in COLORSCHEME pointed to by lParam
CCM_GETDROPTARGET = (CCM_FIRST + 4)
CCM_SETUNICODEFORMAT = (CCM_FIRST + 5)
CCM_GETUNICODEFORMAT = (CCM_FIRST + 6)
INFOTIPSIZE = 1024
NM_OUTOFMEMORY = (NM_FIRST-1)
NM_CLICK = (NM_FIRST-2) # uses NMCLICK struct
NM_DBLCLK = (NM_FIRST-3)
NM_RETURN = (NM_FIRST-4)
NM_RCLICK = (NM_FIRST-5) # uses NMCLICK struct
NM_RDBLCLK = (NM_FIRST-6)
NM_SETFOCUS = (NM_FIRST-7)
NM_KILLFOCUS = (NM_FIRST-8)
NM_CUSTOMDRAW = (NM_FIRST-12)
NM_HOVER = (NM_FIRST-13)
NM_NCHITTEST = (NM_FIRST-14) # uses NMMOUSE struct
NM_KEYDOWN = (NM_FIRST-15) # uses NMKEY struct
NM_RELEASEDCAPTURE = (NM_FIRST-16)
NM_SETCURSOR = (NM_FIRST-17) # uses NMMOUSE struct
NM_CHAR = (NM_FIRST-18) # uses NMCHAR struct
MSGF_COMMCTRL_BEGINDRAG = 16896
MSGF_COMMCTRL_SIZEHEADER = 16897
MSGF_COMMCTRL_DRAGSELECT = 16898
MSGF_COMMCTRL_TOOLBARCUST = 16899
CDRF_DODEFAULT = 0
CDRF_NEWFONT = 2
CDRF_SKIPDEFAULT = 4
CDRF_NOTIFYPOSTPAINT = 16
CDRF_NOTIFYITEMDRAW = 32
CDRF_NOTIFYSUBITEMDRAW = 32 # flags are the same, we can distinguish by context
CDRF_NOTIFYPOSTERASE = 64
CDDS_PREPAINT = 1
CDDS_POSTPAINT = 2
CDDS_PREERASE = 3
CDDS_POSTERASE = 4
CDDS_ITEM = 65536
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 = 131072
CDIS_SELECTED = 1
CDIS_GRAYED = 2
CDIS_DISABLED = 4
CDIS_CHECKED = 8
CDIS_FOCUS = 16
CDIS_DEFAULT = 32
CDIS_HOT = 64
CDIS_MARKED = 128
CDIS_INDETERMINATE = 256
CLR_NONE = -1 # 0xFFFFFFFFL
CLR_DEFAULT = -16777216 # 0xFF000000L
ILC_MASK = 1
ILC_COLOR = 0
ILC_COLORDDB = 254
ILC_COLOR4 = 4
ILC_COLOR8 = 8
ILC_COLOR16 = 16
ILC_COLOR24 = 24
ILC_COLOR32 = 32
ILC_PALETTE = 2048 # (not implemented)
ILD_NORMAL = 0
ILD_TRANSPARENT = 1
ILD_MASK = 16
ILD_IMAGE = 32
ILD_ROP = 64
ILD_BLEND25 = 2
ILD_BLEND50 = 4
ILD_OVERLAYMASK = 3840
ILD_SELECTED = ILD_BLEND50
ILD_FOCUS = ILD_BLEND25
ILD_BLEND = ILD_BLEND50
CLR_HILIGHT = CLR_DEFAULT
ILCF_MOVE = (0)
ILCF_SWAP = (1)
WC_HEADERA = "SysHeader32"
WC_HEADER = WC_HEADERA
HDS_HORZ = 0
HDS_BUTTONS = 2
HDS_HOTTRACK = 4
HDS_HIDDEN = 8
HDS_DRAGDROP = 64
HDS_FULLDRAG = 128
HDI_WIDTH = 1
HDI_HEIGHT = HDI_WIDTH
HDI_TEXT = 2
HDI_FORMAT = 4
HDI_LPARAM = 8
HDI_BITMAP = 16
HDI_IMAGE = 32
HDI_DI_SETITEM = 64
HDI_ORDER = 128
HDF_LEFT = 0
HDF_RIGHT = 1
HDF_CENTER = 2
HDF_JUSTIFYMASK = 3
HDF_RTLREADING = 4
HDF_OWNERDRAW = 32768
HDF_STRING = 16384
HDF_BITMAP = 8192
HDF_BITMAP_ON_RIGHT = 4096
HDF_IMAGE = 2048
HDM_GETITEMCOUNT = (HDM_FIRST + 0)
HDM_INSERTITEMA = (HDM_FIRST + 1)
HDM_INSERTITEMW = (HDM_FIRST + 10)
HDM_INSERTITEM = HDM_INSERTITEMA
HDM_DELETEITEM = (HDM_FIRST + 2)
HDM_GETITEMA = (HDM_FIRST + 3)
HDM_GETITEMW = (HDM_FIRST + 11)
HDM_GETITEM = HDM_GETITEMA
HDM_SETITEMA = (HDM_FIRST + 4)
HDM_SETITEMW = (HDM_FIRST + 12)
HDM_SETITEM = HDM_SETITEMA
HDM_LAYOUT = (HDM_FIRST + 5)
HHT_NOWHERE = 1
HHT_ONHEADER = 2
HHT_ONDIVIDER = 4
HHT_ONDIVOPEN = 8
HHT_ABOVE = 256
HHT_BELOW = 512
HHT_TORIGHT = 1024
HHT_TOLEFT = 2048
HDM_HITTEST = (HDM_FIRST + 6)
HDM_GETITEMRECT = (HDM_FIRST + 7)
HDM_SETIMAGELIST = (HDM_FIRST + 8)
HDM_GETIMAGELIST = (HDM_FIRST + 9)
HDM_ORDERTOINDEX = (HDM_FIRST + 15)
HDM_CREATEDRAGIMAGE = (HDM_FIRST + 16) # wparam = which item (by index)
HDM_GETORDERARRAY = (HDM_FIRST + 17)
HDM_SETORDERARRAY = (HDM_FIRST + 18)
HDM_SETHOTDIVIDER = (HDM_FIRST + 19)
HDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
HDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
HDN_ITEMCHANGINGA = (HDN_FIRST-0)
HDN_ITEMCHANGINGW = (HDN_FIRST-20)
HDN_ITEMCHANGEDA = (HDN_FIRST-1)
HDN_ITEMCHANGEDW = (HDN_FIRST-21)
HDN_ITEMCLICKA = (HDN_FIRST-2)
HDN_ITEMCLICKW = (HDN_FIRST-22)
HDN_ITEMDBLCLICKA = (HDN_FIRST-3)
HDN_ITEMDBLCLICKW = (HDN_FIRST-23)
HDN_DIVIDERDBLCLICKA = (HDN_FIRST-5)
HDN_DIVIDERDBLCLICKW = (HDN_FIRST-25)
HDN_BEGINTRACKA = (HDN_FIRST-6)
HDN_BEGINTRACKW = (HDN_FIRST-26)
HDN_ENDTRACKA = (HDN_FIRST-7)
HDN_ENDTRACKW = (HDN_FIRST-27)
HDN_TRACKA = (HDN_FIRST-8)
HDN_TRACKW = (HDN_FIRST-28)
HDN_GETDISPINFOA = (HDN_FIRST-9)
HDN_GETDISPINFOW = (HDN_FIRST-29)
HDN_BEGINDRAG = (HDN_FIRST-10)
HDN_ENDDRAG = (HDN_FIRST-11)
HDN_ITEMCHANGING = HDN_ITEMCHANGINGA
HDN_ITEMCHANGED = HDN_ITEMCHANGEDA
HDN_ITEMCLICK = HDN_ITEMCLICKA
HDN_ITEMDBLCLICK = HDN_ITEMDBLCLICKA
HDN_DIVIDERDBLCLICK = HDN_DIVIDERDBLCLICKA
HDN_BEGINTRACK = HDN_BEGINTRACKA
HDN_ENDTRACK = HDN_ENDTRACKA
HDN_TRACK = HDN_TRACKA
HDN_GETDISPINFO = HDN_GETDISPINFOA
TOOLBARCLASSNAMEA = "ToolbarWindow32"
TOOLBARCLASSNAME = TOOLBARCLASSNAMEA
CMB_MASKED = 2
TBSTATE_CHECKED = 1
TBSTATE_PRESSED = 2
TBSTATE_ENABLED = 4
TBSTATE_HIDDEN = 8
TBSTATE_INDETERMINATE = 16
TBSTATE_WRAP = 32
TBSTATE_ELLIPSES = 64
TBSTATE_MARKED = 128
TBSTYLE_BUTTON = 0
TBSTYLE_SEP = 1
TBSTYLE_CHECK = 2
TBSTYLE_GROUP = 4
TBSTYLE_CHECKGROUP = (TBSTYLE_GROUP | TBSTYLE_CHECK)
TBSTYLE_DROPDOWN = 8
TBSTYLE_AUTOSIZE = 16 # automatically calculate the cx of the button
TBSTYLE_NOPREFIX = 32 # if this button should not have accel prefix
TBSTYLE_TOOLTIPS = 256
TBSTYLE_WRAPABLE = 512
TBSTYLE_ALTDRAG = 1024
TBSTYLE_FLAT = 2048
TBSTYLE_LIST = 4096
TBSTYLE_CUSTOMERASE = 8192
TBSTYLE_REGISTERDROP = 16384
TBSTYLE_TRANSPARENT = 32768
TBSTYLE_EX_DRAWDDARROWS = 1
BTNS_BUTTON = TBSTYLE_BUTTON
BTNS_SEP = TBSTYLE_SEP # 0x0001
BTNS_CHECK = TBSTYLE_CHECK # 0x0002
BTNS_GROUP = TBSTYLE_GROUP # 0x0004
BTNS_CHECKGROUP = TBSTYLE_CHECKGROUP # (TBSTYLE_GROUP | TBSTYLE_CHECK)
BTNS_DROPDOWN = TBSTYLE_DROPDOWN # 0x0008
BTNS_AUTOSIZE = TBSTYLE_AUTOSIZE # 0x0010; automatically calculate the cx of the button
BTNS_NOPREFIX = TBSTYLE_NOPREFIX # 0x0020; this button should not have accel prefix
BTNS_SHOWTEXT = 64 # 0x0040 // ignored unless TBSTYLE_EX_MIXEDBUTTONS is set
BTNS_WHOLEDROPDOWN = 128 # 0x0080 // draw drop-down arrow, but without split arrow section
TBCDRF_NOEDGES = 65536 # Don't draw button edges
TBCDRF_HILITEHOTTRACK = 131072 # Use color of the button bk when hottracked
TBCDRF_NOOFFSET = 262144 # Don't offset button if pressed
TBCDRF_NOMARK = 524288 # Don't draw default highlight of image/text for TBSTATE_MARKED
TBCDRF_NOETCHEDEFFECT = 1048576 # Don't draw etched effect for disabled items
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)
HINST_COMMCTRL = -1
IDB_STD_SMALL_COLOR = 0
IDB_STD_LARGE_COLOR = 1
IDB_VIEW_SMALL_COLOR = 4
IDB_VIEW_LARGE_COLOR = 5
IDB_HIST_SMALL_COLOR = 8
IDB_HIST_LARGE_COLOR = 9
STD_CUT = 0
STD_COPY = 1
STD_PASTE = 2
STD_UNDO = 3
STD_REDOW = 4
STD_DELETE = 5
STD_FILENEW = 6
STD_FILEOPEN = 7
STD_FILESAVE = 8
STD_PRINTPRE = 9
STD_PROPERTIES = 10
STD_HELP = 11
STD_FIND = 12
STD_REPLACE = 13
STD_PRINT = 14
VIEW_LARGEICONS = 0
VIEW_SMALLICONS = 1
VIEW_LIST = 2
VIEW_DETAILS = 3
VIEW_SORTNAME = 4
VIEW_SORTSIZE = 5
VIEW_SORTDATE = 6
VIEW_SORTTYPE = 7
VIEW_PARENTFOLDER = 8
VIEW_NETCONNECT = 9
VIEW_NETDISCONNECT = 10
VIEW_NEWFOLDER = 11
VIEW_VIEWMENU = 12
HIST_BACK = 0
HIST_FORWARD = 1
HIST_FAVORITES = 2
HIST_ADDTOFAVORITES = 3
HIST_VIEWTREE = 4
TB_ADDBUTTONSA = (WM_USER + 20)
TB_INSERTBUTTONA = (WM_USER + 21)
TB_ADDBUTTONS = (WM_USER + 20)
TB_INSERTBUTTON = (WM_USER + 21)
TB_DELETEBUTTON = (WM_USER + 22)
TB_GETBUTTON = (WM_USER + 23)
TB_BUTTONCOUNT = (WM_USER + 24)
TB_COMMANDTOINDEX = (WM_USER + 25)
TB_SAVERESTOREA = (WM_USER + 26)
TB_SAVERESTOREW = (WM_USER + 76)
TB_CUSTOMIZE = (WM_USER + 27)
TB_ADDSTRINGA = (WM_USER + 28)
TB_ADDSTRINGW = (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_SETCMDID = (WM_USER + 42)
TB_CHANGEBITMAP = (WM_USER + 43)
TB_GETBITMAP = (WM_USER + 44)
TB_GETBUTTONTEXTA = (WM_USER + 45)
TB_GETBUTTONTEXTW = (WM_USER + 75)
TB_REPLACEBITMAP = (WM_USER + 46)
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) # wParam is the Cmd instead of index
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_GETBUTTONSIZE = (WM_USER + 58)
TB_SETBUTTONWIDTH = (WM_USER + 59)
TB_SETMAXTEXTROWS = (WM_USER + 60)
TB_GETTEXTROWS = (WM_USER + 61)
TB_GETBUTTONTEXT = TB_GETBUTTONTEXTW
TB_SAVERESTORE = TB_SAVERESTOREW
TB_ADDSTRING = TB_ADDSTRINGW
TB_GETBUTTONTEXT = TB_GETBUTTONTEXTA
TB_SAVERESTORE = TB_SAVERESTOREA
TB_ADDSTRING = TB_ADDSTRINGA
TB_GETOBJECT = (WM_USER + 62) # wParam == IID, lParam void **ppv
TB_GETHOTITEM = (WM_USER + 71)
TB_SETHOTITEM = (WM_USER + 72) # wParam == iHotItem
TB_SETANCHORHIGHLIGHT = (WM_USER + 73) # wParam == TRUE/FALSE
TB_GETANCHORHIGHLIGHT = (WM_USER + 74)
TB_MAPACCELERATORA = (WM_USER + 78) # wParam == ch, lParam int * pidBtn
TBIMHT_AFTER = 1 # TRUE = insert After iButton, otherwise before
TBIMHT_BACKGROUND = 2 # TRUE iff missed buttons completely
TB_GETINSERTMARK = (WM_USER + 79) # lParam == LPTBINSERTMARK
TB_SETINSERTMARK = (WM_USER + 80) # lParam == LPTBINSERTMARK
TB_INSERTMARKHITTEST = (WM_USER + 81) # wParam == LPPOINT lParam == LPTBINSERTMARK
TB_MOVEBUTTON = (WM_USER + 82)
TB_GETMAXSIZE = (WM_USER + 83) # lParam == LPSIZE
TB_SETEXTENDEDSTYLE = (WM_USER + 84) # For TBSTYLE_EX_*
TB_GETEXTENDEDSTYLE = (WM_USER + 85) # For TBSTYLE_EX_*
TB_GETPADDING = (WM_USER + 86)
TB_SETPADDING = (WM_USER + 87)
TB_SETINSERTMARKCOLOR = (WM_USER + 88)
TB_GETINSERTMARKCOLOR = (WM_USER + 89)
TB_SETCOLORSCHEME = CCM_SETCOLORSCHEME # lParam is color scheme
TB_GETCOLORSCHEME = CCM_GETCOLORSCHEME # fills in COLORSCHEME pointed to by lParam
TB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
TB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
TB_MAPACCELERATORW = (WM_USER + 90) # wParam == ch, lParam int * pidBtn
TB_MAPACCELERATOR = TB_MAPACCELERATORW
TB_MAPACCELERATOR = TB_MAPACCELERATORA
TBBF_LARGE = 1
TB_GETBITMAPFLAGS = (WM_USER + 41)
TBIF_IMAGE = 1
TBIF_TEXT = 2
TBIF_STATE = 4
TBIF_STYLE = 8
TBIF_LPARAM = 16
TBIF_COMMAND = 32
TBIF_SIZE = 64
TB_GETBUTTONINFOW = (WM_USER + 63)
TB_SETBUTTONINFOW = (WM_USER + 64)
TB_GETBUTTONINFOA = (WM_USER + 65)
TB_SETBUTTONINFOA = (WM_USER + 66)
TB_INSERTBUTTONW = (WM_USER + 67)
TB_ADDBUTTONSW = (WM_USER + 68)
TB_HITTEST = (WM_USER + 69)
TB_SETDRAWTEXTFLAGS = (WM_USER + 70) # wParam == mask lParam == bit values
TBN_GETBUTTONINFOA = (TBN_FIRST-0)
TBN_GETBUTTONINFOW = (TBN_FIRST-20)
TBN_BEGINDRAG = (TBN_FIRST-1)
TBN_ENDDRAG = (TBN_FIRST-2)
TBN_BEGINADJUST = (TBN_FIRST-3)
TBN_ENDADJUST = (TBN_FIRST-4)
TBN_RESET = (TBN_FIRST-5)
TBN_QUERYINSERT = (TBN_FIRST-6)
TBN_QUERYDELETE = (TBN_FIRST-7)
TBN_TOOLBARCHANGE = (TBN_FIRST-8)
TBN_CUSTHELP = (TBN_FIRST-9)
TBN_DROPDOWN = (TBN_FIRST - 10)
TBN_GETOBJECT = (TBN_FIRST - 12)
HICF_OTHER = 0
HICF_MOUSE = 1 # Triggered by mouse
HICF_ARROWKEYS = 2 # Triggered by arrow keys
HICF_ACCELERATOR = 4 # Triggered by accelerator
HICF_DUPACCEL = 8 # This accelerator is not unique
HICF_ENTERING = 16 # idOld is invalid
HICF_LEAVING = 32 # idNew is invalid
HICF_RESELECT = 64 # hot item reselected
TBN_HOTITEMCHANGE = (TBN_FIRST - 13)
TBN_DRAGOUT = (TBN_FIRST - 14) # this is sent when the user clicks down on a button then drags off the button
TBN_DELETINGBUTTON = (TBN_FIRST - 15) # uses TBNOTIFY
TBN_GETDISPINFOA = (TBN_FIRST - 16) # This is sent when the toolbar needs some display information
TBN_GETDISPINFOW = (TBN_FIRST - 17) # This is sent when the toolbar needs some display information
TBN_GETINFOTIPA = (TBN_FIRST - 18)
TBN_GETINFOTIPW = (TBN_FIRST - 19)
TBN_GETINFOTIP = TBN_GETINFOTIPA
TBNF_IMAGE = 1
TBNF_TEXT = 2
TBNF_DI_SETITEM = 268435456
TBN_GETDISPINFO = TBN_GETDISPINFOA
TBDDRET_DEFAULT = 0
TBDDRET_NODEFAULT = 1
TBDDRET_TREATPRESSED = 2 # Treat as a standard press button
TBN_GETBUTTONINFO = TBN_GETBUTTONINFOA
REBARCLASSNAMEA = "ReBarWindow32"
REBARCLASSNAME = REBARCLASSNAMEA
RBIM_IMAGELIST = 1
RBS_TOOLTIPS = 256
RBS_VARHEIGHT = 512
RBS_BANDBORDERS = 1024
RBS_FIXEDORDER = 2048
RBS_REGISTERDROP = 4096
RBS_AUTOSIZE = 8192
RBS_VERTICALGRIPPER = 16384 # this always has the vertical gripper (default for horizontal mode)
RBS_DBLCLKTOGGLE = 32768
RBS_TOOLTIPS = 256
RBS_VARHEIGHT = 512
RBS_BANDBORDERS = 1024
RBS_FIXEDORDER = 2048
RBBS_BREAK = 1 # break to new line
RBBS_FIXEDSIZE = 2 # band can't be sized
RBBS_CHILDEDGE = 4 # edge around top & bottom of child window
RBBS_HIDDEN = 8 # don't show
RBBS_NOVERT = 16 # don't show when vertical
RBBS_FIXEDBMP = 32 # bitmap doesn't move during band resize
RBBS_VARIABLEHEIGHT = 64 # allow autosizing of this child vertically
RBBS_GRIPPERALWAYS = 128 # always show the gripper
RBBS_NOGRIPPER = 256 # never show the gripper
RBBIM_STYLE = 1
RBBIM_COLORS = 2
RBBIM_TEXT = 4
RBBIM_IMAGE = 8
RBBIM_CHILD = 16
RBBIM_CHILDSIZE = 32
RBBIM_SIZE = 64
RBBIM_BACKGROUND = 128
RBBIM_ID = 256
RBBIM_IDEALSIZE = 512
RBBIM_LPARAM = 1024
RB_INSERTBANDA = (WM_USER + 1)
RB_DELETEBAND = (WM_USER + 2)
RB_GETBARINFO = (WM_USER + 3)
RB_SETBARINFO = (WM_USER + 4)
RB_GETBANDINFO = (WM_USER + 5)
RB_SETBANDINFOA = (WM_USER + 6)
RB_SETPARENT = (WM_USER + 7)
RB_HITTEST = (WM_USER + 8)
RB_GETRECT = (WM_USER + 9)
RB_INSERTBANDW = (WM_USER + 10)
RB_SETBANDINFOW = (WM_USER + 11)
RB_GETBANDCOUNT = (WM_USER + 12)
RB_GETROWCOUNT = (WM_USER + 13)
RB_GETROWHEIGHT = (WM_USER + 14)
RB_IDTOINDEX = (WM_USER + 16) # wParam == id
RB_GETTOOLTIPS = (WM_USER + 17)
RB_SETTOOLTIPS = (WM_USER + 18)
RB_SETBKCOLOR = (WM_USER + 19) # sets the default BK color
RB_GETBKCOLOR = (WM_USER + 20) # defaults to CLR_NONE
RB_SETTEXTCOLOR = (WM_USER + 21)
RB_GETTEXTCOLOR = (WM_USER + 22) # defaults to 0x00000000
RB_SIZETORECT = (WM_USER + 23) # resize the rebar/break bands and such to this rect (lparam)
RB_SETCOLORSCHEME = CCM_SETCOLORSCHEME # lParam is color scheme
RB_GETCOLORSCHEME = CCM_GETCOLORSCHEME # fills in COLORSCHEME pointed to by lParam
RB_INSERTBAND = RB_INSERTBANDA
RB_SETBANDINFO = RB_SETBANDINFOA
RB_BEGINDRAG = (WM_USER + 24)
RB_ENDDRAG = (WM_USER + 25)
RB_DRAGMOVE = (WM_USER + 26)
RB_GETBARHEIGHT = (WM_USER + 27)
RB_GETBANDINFOW = (WM_USER + 28)
RB_GETBANDINFOA = (WM_USER + 29)
RB_GETBANDINFO = RB_GETBANDINFOA
RB_MINIMIZEBAND = (WM_USER + 30)
RB_MAXIMIZEBAND = (WM_USER + 31)
RB_GETDROPTARGET = (CCM_GETDROPTARGET)
RB_GETBANDBORDERS = (WM_USER + 34) # returns in lparam = lprc the amount of edges added to band wparam
RB_SHOWBAND = (WM_USER + 35) # show/hide band
RB_SETPALETTE = (WM_USER + 37)
RB_GETPALETTE = (WM_USER + 38)
RB_MOVEBAND = (WM_USER + 39)
RB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
RB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
RBN_HEIGHTCHANGE = (RBN_FIRST - 0)
RBN_GETOBJECT = (RBN_FIRST - 1)
RBN_LAYOUTCHANGED = (RBN_FIRST - 2)
RBN_AUTOSIZE = (RBN_FIRST - 3)
RBN_BEGINDRAG = (RBN_FIRST - 4)
RBN_ENDDRAG = (RBN_FIRST - 5)
RBN_DELETINGBAND = (RBN_FIRST - 6) # Uses NMREBAR
RBN_DELETEDBAND = (RBN_FIRST - 7) # Uses NMREBAR
RBN_CHILDSIZE = (RBN_FIRST - 8)
RBNM_ID = 1
RBNM_STYLE = 2
RBNM_LPARAM = 4
RBHT_NOWHERE = 1
RBHT_CAPTION = 2
RBHT_CLIENT = 3
RBHT_GRABBER = 4
TOOLTIPS_CLASSA = "tooltips_class32"
TOOLTIPS_CLASS = TOOLTIPS_CLASSA
TTS_ALWAYSTIP = 1
TTS_NOPREFIX = 2
TTF_IDISHWND = 1
TTF_CENTERTIP = 2
TTF_RTLREADING = 4
TTF_SUBCLASS = 16
TTF_TRACK = 32
TTF_ABSOLUTE = 128
TTF_TRANSPARENT = 256
TTF_DI_SETITEM = 32768 # valid only on the TTN_NEEDTEXT callback
TTDT_AUTOMATIC = 0
TTDT_RESHOW = 1
TTDT_AUTOPOP = 2
TTDT_INITIAL = 3
TTM_ACTIVATE = (WM_USER + 1)
TTM_SETDELAYTIME = (WM_USER + 3)
TTM_ADDTOOLA = (WM_USER + 4)
TTM_ADDTOOLW = (WM_USER + 50)
TTM_DELTOOLA = (WM_USER + 5)
TTM_DELTOOLW = (WM_USER + 51)
TTM_NEWTOOLRECTA = (WM_USER + 6)
TTM_NEWTOOLRECTW = (WM_USER + 52)
TTM_RELAYEVENT = (WM_USER + 7)
TTM_GETTOOLINFOA = (WM_USER + 8)
TTM_GETTOOLINFOW = (WM_USER + 53)
TTM_SETTOOLINFOA = (WM_USER + 9)
TTM_SETTOOLINFOW = (WM_USER + 54)
TTM_HITTESTA = (WM_USER +10)
TTM_HITTESTW = (WM_USER +55)
TTM_GETTEXTA = (WM_USER +11)
TTM_GETTEXTW = (WM_USER +56)
TTM_UPDATETIPTEXTA = (WM_USER +12)
TTM_UPDATETIPTEXTW = (WM_USER +57)
TTM_GETTOOLCOUNT = (WM_USER +13)
TTM_ENUMTOOLSA = (WM_USER +14)
TTM_ENUMTOOLSW = (WM_USER +58)
TTM_GETCURRENTTOOLA = (WM_USER + 15)
TTM_GETCURRENTTOOLW = (WM_USER + 59)
TTM_WINDOWFROMPOINT = (WM_USER + 16)
TTM_TRACKACTIVATE = (WM_USER + 17) # wParam = TRUE/FALSE start end lparam = LPTOOLINFO
TTM_TRACKPOSITION = (WM_USER + 18) # lParam = dwPos
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) # lParam = lprc
TTM_GETMARGIN = (WM_USER + 27) # lParam = lprc
TTM_POP = (WM_USER + 28)
TTM_UPDATE = (WM_USER + 29)
TTM_ADDTOOL = TTM_ADDTOOLA
TTM_DELTOOL = TTM_DELTOOLA
TTM_NEWTOOLRECT = TTM_NEWTOOLRECTA
TTM_GETTOOLINFO = TTM_GETTOOLINFOA
TTM_SETTOOLINFO = TTM_SETTOOLINFOA
TTM_HITTEST = TTM_HITTESTA
TTM_GETTEXT = TTM_GETTEXTA
TTM_UPDATETIPTEXT = TTM_UPDATETIPTEXTA
TTM_ENUMTOOLS = TTM_ENUMTOOLSA
TTM_GETCURRENTTOOL = TTM_GETCURRENTTOOLA
TTN_GETDISPINFOA = (TTN_FIRST - 0)
TTN_GETDISPINFOW = (TTN_FIRST - 10)
TTN_SHOW = (TTN_FIRST - 1)
TTN_POP = (TTN_FIRST - 2)
TTN_GETDISPINFO = TTN_GETDISPINFOA
TTN_NEEDTEXT = TTN_GETDISPINFO
TTN_NEEDTEXTA = TTN_GETDISPINFOA
TTN_NEEDTEXTW = TTN_GETDISPINFOW
SBARS_SIZEGRIP = 256
SBARS_TOOLTIPS = 2048
STATUSCLASSNAMEA = "msctls_statusbar32"
STATUSCLASSNAME = STATUSCLASSNAMEA
SB_SETTEXTA = (WM_USER+1)
SB_SETTEXTW = (WM_USER+11)
SB_GETTEXTA = (WM_USER+2)
SB_GETTEXTW = (WM_USER+13)
SB_GETTEXTLENGTHA = (WM_USER+3)
SB_GETTEXTLENGTHW = (WM_USER+12)
SB_GETTEXT = SB_GETTEXTA
SB_SETTEXT = SB_SETTEXTA
SB_GETTEXTLENGTH = SB_GETTEXTLENGTHA
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_ISSIMPLE = (WM_USER+14)
SB_SETICON = (WM_USER+15)
SB_SETTIPTEXTA = (WM_USER+16)
SB_SETTIPTEXTW = (WM_USER+17)
SB_GETTIPTEXTA = (WM_USER+18)
SB_GETTIPTEXTW = (WM_USER+19)
SB_GETICON = (WM_USER+20)
SB_SETTIPTEXT = SB_SETTIPTEXTA
SB_GETTIPTEXT = SB_GETTIPTEXTA
SB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
SB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
SBT_OWNERDRAW = 4096
SBT_NOBORDERS = 256
SBT_POPOUT = 512
SBT_RTLREADING = 1024
SBT_NOTABPARSING = 2048
SBT_TOOLTIPS = 2048
SB_SETBKCOLOR = CCM_SETBKCOLOR # lParam = bkColor
SBN_SIMPLEMODECHANGE = (SBN_FIRST - 0)
TRACKBAR_CLASSA = "msctls_trackbar32"
TRACKBAR_CLASS = TRACKBAR_CLASSA
TBS_AUTOTICKS = 1
TBS_VERT = 2
TBS_HORZ = 0
TBS_TOP = 4
TBS_BOTTOM = 0
TBS_LEFT = 4
TBS_RIGHT = 0
TBS_BOTH = 8
TBS_NOTICKS = 16
TBS_ENABLESELRANGE = 32
TBS_FIXEDLENGTH = 64
TBS_NOTHUMB = 128
TBS_TOOLTIPS = 256
TBM_GETPOS = (WM_USER)
TBM_GETRANGEMIN = (WM_USER+1)
TBM_GETRANGEMAX = (WM_USER+2)
TBM_GETTIC = (WM_USER+3)
TBM_SETTIC = (WM_USER+4)
TBM_SETPOS = (WM_USER+5)
TBM_SETRANGE = (WM_USER+6)
TBM_SETRANGEMIN = (WM_USER+7)
TBM_SETRANGEMAX = (WM_USER+8)
TBM_CLEARTICS = (WM_USER+9)
TBM_SETSEL = (WM_USER+10)
TBM_SETSELSTART = (WM_USER+11)
TBM_SETSELEND = (WM_USER+12)
TBM_GETPTICS = (WM_USER+14)
TBM_GETTICPOS = (WM_USER+15)
TBM_GETNUMTICS = (WM_USER+16)
TBM_GETSELSTART = (WM_USER+17)
TBM_GETSELEND = (WM_USER+18)
TBM_CLEARSEL = (WM_USER+19)
TBM_SETTICFREQ = (WM_USER+20)
TBM_SETPAGESIZE = (WM_USER+21)
TBM_GETPAGESIZE = (WM_USER+22)
TBM_SETLINESIZE = (WM_USER+23)
TBM_GETLINESIZE = (WM_USER+24)
TBM_GETTHUMBRECT = (WM_USER+25)
TBM_GETCHANNELRECT = (WM_USER+26)
TBM_SETTHUMBLENGTH = (WM_USER+27)
TBM_GETTHUMBLENGTH = (WM_USER+28)
TBM_SETTOOLTIPS = (WM_USER+29)
TBM_GETTOOLTIPS = (WM_USER+30)
TBM_SETTIPSIDE = (WM_USER+31)
TBTS_TOP = 0
TBTS_LEFT = 1
TBTS_BOTTOM = 2
TBTS_RIGHT = 3
TBM_SETBUDDY = (WM_USER+32) # wparam = BOOL fLeft; (or right)
TBM_GETBUDDY = (WM_USER+33) # wparam = BOOL fLeft; (or right)
TBM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
TBM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
TB_LINEUP = 0
TB_LINEDOWN = 1
TB_PAGEUP = 2
TB_PAGEDOWN = 3
TB_THUMBPOSITION = 4
TB_THUMBTRACK = 5
TB_TOP = 6
TB_BOTTOM = 7
TB_ENDTRACK = 8
TBCD_TICS = 1
TBCD_THUMB = 2
TBCD_CHANNEL = 3
DL_BEGINDRAG = (WM_USER+133)
DL_DRAGGING = (WM_USER+134)
DL_DROPPED = (WM_USER+135)
DL_CANCELDRAG = (WM_USER+136)
DL_CURSORSET = 0
DL_STOPCURSOR = 1
DL_COPYCURSOR = 2
DL_MOVECURSOR = 3
DRAGLISTMSGSTRING = "commctrl_DragListMsg"
UPDOWN_CLASSA = "msctls_updown32"
UPDOWN_CLASS = UPDOWN_CLASSA
UD_MAXVAL = 32767
UD_MINVAL = (-UD_MAXVAL)
UDS_WRAP = 1
UDS_SETBUDDYINT = 2
UDS_ALIGNRIGHT = 4
UDS_ALIGNLEFT = 8
UDS_AUTOBUDDY = 16
UDS_ARROWKEYS = 32
UDS_HORZ = 64
UDS_NOTHOUSANDS = 128
UDS_HOTTRACK = 256
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) # wParam & lParam are LPINT
UDM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
UDM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
UDN_DELTAPOS = (UDN_FIRST - 1)
PROGRESS_CLASSA = "msctls_progress32"
PROGRESS_CLASS = PROGRESS_CLASSA
PBS_SMOOTH = 1
PBS_VERTICAL = 4
PBM_SETRANGE = (WM_USER+1)
PBM_SETPOS = (WM_USER+2)
PBM_DELTAPOS = (WM_USER+3)
PBM_SETSTEP = (WM_USER+4)
PBM_STEPIT = (WM_USER+5)
PBM_SETRANGE32 = (WM_USER+6) # lParam = high, wParam = low
PBM_GETRANGE = (WM_USER+7) # wParam = return (TRUE ? low : high). lParam = PPBRANGE or NULL
PBM_GETPOS = (WM_USER+8)
PBM_SETBARCOLOR = (WM_USER+9) # lParam = bar color
PBM_SETBKCOLOR = CCM_SETBKCOLOR # lParam = bkColor
HOTKEYF_SHIFT = 1
HOTKEYF_CONTROL = 2
HOTKEYF_ALT = 4
HOTKEYF_EXT = 128
HOTKEYF_EXT = 8
HKCOMB_NONE = 1
HKCOMB_S = 2
HKCOMB_C = 4
HKCOMB_A = 8
HKCOMB_SC = 16
HKCOMB_SA = 32
HKCOMB_CA = 64
HKCOMB_SCA = 128
HKM_SETHOTKEY = (WM_USER+1)
HKM_GETHOTKEY = (WM_USER+2)
HKM_SETRULES = (WM_USER+3)
HOTKEY_CLASSA = "msctls_hotkey32"
HOTKEY_CLASS = HOTKEY_CLASSA
CCS_TOP = 0x00000001
CCS_NOMOVEY = 0x00000002
CCS_BOTTOM = 0x00000003
CCS_NORESIZE = 0x00000004
CCS_NOPARENTALIGN = 0x00000008
CCS_ADJUSTABLE = 0x00000020
CCS_NODIVIDER = 0x00000040
CCS_VERT = 0x00000080
CCS_LEFT = (CCS_VERT | CCS_TOP)
CCS_RIGHT = (CCS_VERT | CCS_BOTTOM)
CCS_NOMOVEX = (CCS_VERT | CCS_NOMOVEY)
WC_LISTVIEWA = "SysListView32"
WC_LISTVIEW = WC_LISTVIEWA
LVS_ICON = 0
LVS_REPORT = 1
LVS_SMALLICON = 2
LVS_LIST = 3
LVS_TYPEMASK = 3
LVS_SINGLESEL = 4
LVS_SHOWSELALWAYS = 8
LVS_SORTASCENDING = 16
LVS_SORTDESCENDING = 32
LVS_SHAREIMAGELISTS = 64
LVS_NOLABELWRAP = 128
LVS_AUTOARRANGE = 256
LVS_EDITLABELS = 512
LVS_OWNERDATA = 4096
LVS_NOSCROLL = 8192
LVS_TYPESTYLEMASK = 64512
LVS_ALIGNTOP = 0
LVS_ALIGNLEFT = 2048
LVS_ALIGNMASK = 3072
LVS_OWNERDRAWFIXED = 1024
LVS_NOCOLUMNHEADER = 16384
LVS_NOSORTHEADER = 32768
LVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
LVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
LVM_GETBKCOLOR = (LVM_FIRST + 0)
LVM_SETBKCOLOR = (LVM_FIRST + 1)
LVM_GETIMAGELIST = (LVM_FIRST + 2)
LVSIL_NORMAL = 0
LVSIL_SMALL = 1
LVSIL_STATE = 2
LVM_SETIMAGELIST = (LVM_FIRST + 3)
LVM_GETITEMCOUNT = (LVM_FIRST + 4)
LVIF_TEXT = 1
LVIF_IMAGE = 2
LVIF_PARAM = 4
LVIF_STATE = 8
LVIF_INDENT = 16
LVIF_NORECOMPUTE = 2048
LVIS_FOCUSED = 1
LVIS_SELECTED = 2
LVIS_CUT = 4
LVIS_DROPHILITED = 8
LVIS_ACTIVATING = 32
LVIS_OVERLAYMASK = 3840
LVIS_STATEIMAGEMASK = 61440
I_INDENTCALLBACK = (-1)
LPSTR_TEXTCALLBACKA = -1
LPSTR_TEXTCALLBACK = LPSTR_TEXTCALLBACKA
I_IMAGECALLBACK = (-1)
LVM_GETITEMA = (LVM_FIRST + 5)
LVM_GETITEMW = (LVM_FIRST + 75)
LVM_GETITEM = LVM_GETITEMW
LVM_GETITEM = LVM_GETITEMA
LVM_SETITEMA = (LVM_FIRST + 6)
LVM_SETITEMW = (LVM_FIRST + 76)
LVM_SETITEM = LVM_SETITEMW
LVM_SETITEM = LVM_SETITEMA
LVM_INSERTITEMA = (LVM_FIRST + 7)
LVM_INSERTITEMW = (LVM_FIRST + 77)
LVM_INSERTITEM = LVM_INSERTITEMA
LVM_DELETEITEM = (LVM_FIRST + 8)
LVM_DELETEALLITEMS = (LVM_FIRST + 9)
LVM_GETCALLBACKMASK = (LVM_FIRST + 10)
LVM_SETCALLBACKMASK = (LVM_FIRST + 11)
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
LVM_GETNEXTITEM = (LVM_FIRST + 12)
LVFI_PARAM = 1
LVFI_STRING = 2
LVFI_PARTIAL = 8
LVFI_WRAP = 32
LVFI_NEARESTXY = 64
LVM_FINDITEMA = (LVM_FIRST + 13)
LVM_FINDITEMW = (LVM_FIRST + 83)
LVM_FINDITEM = LVM_FINDITEMA
LVIR_BOUNDS = 0
LVIR_ICON = 1
LVIR_LABEL = 2
LVIR_SELECTBOUNDS = 3
LVM_GETITEMRECT = (LVM_FIRST + 14)
LVM_SETITEMPOSITION = (LVM_FIRST + 15)
LVM_GETITEMPOSITION = (LVM_FIRST + 16)
LVM_GETSTRINGWIDTHA = (LVM_FIRST + 17)
LVM_GETSTRINGWIDTHW = (LVM_FIRST + 87)
LVM_GETSTRINGWIDTH = LVM_GETSTRINGWIDTHA
LVHT_NOWHERE = 1
LVHT_ONITEMICON = 2
LVHT_ONITEMLABEL = 4
LVHT_ONITEMSTATEICON = 8
LVHT_ONITEM = (LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON)
LVHT_ABOVE = 8
LVHT_BELOW = 16
LVHT_TORIGHT = 32
LVHT_TOLEFT = 64
LVM_HITTEST = (LVM_FIRST + 18)
LVM_ENSUREVISIBLE = (LVM_FIRST + 19)
LVM_SCROLL = (LVM_FIRST + 20)
LVM_REDRAWITEMS = (LVM_FIRST + 21)
LVA_DEFAULT = 0
LVA_ALIGNLEFT = 1
LVA_ALIGNTOP = 2
LVA_SNAPTOGRID = 5
LVM_ARRANGE = (LVM_FIRST + 22)
LVM_EDITLABELA = (LVM_FIRST + 23)
LVM_EDITLABELW = (LVM_FIRST + 118)
LVM_EDITLABEL = LVM_EDITLABELW
LVM_EDITLABEL = LVM_EDITLABELA
LVM_GETEDITCONTROL = (LVM_FIRST + 24)
LVCF_FMT = 1
LVCF_WIDTH = 2
LVCF_TEXT = 4
LVCF_SUBITEM = 8
LVCF_IMAGE = 16
LVCF_ORDER = 32
LVCFMT_LEFT = 0
LVCFMT_RIGHT = 1
LVCFMT_CENTER = 2
LVCFMT_JUSTIFYMASK = 3
LVCFMT_IMAGE = 2048
LVCFMT_BITMAP_ON_RIGHT = 4096
LVCFMT_COL_HAS_IMAGES = 32768
LVM_GETCOLUMNA = (LVM_FIRST + 25)
LVM_GETCOLUMNW = (LVM_FIRST + 95)
LVM_GETCOLUMN = LVM_GETCOLUMNA
LVM_SETCOLUMNA = (LVM_FIRST + 26)
LVM_SETCOLUMNW = (LVM_FIRST + 96)
LVM_SETCOLUMN = LVM_SETCOLUMNA
LVM_INSERTCOLUMNA = (LVM_FIRST + 27)
LVM_INSERTCOLUMNW = (LVM_FIRST + 97)
LVM_INSERTCOLUMN = LVM_INSERTCOLUMNA
LVM_DELETECOLUMN = (LVM_FIRST + 28)
LVM_GETCOLUMNWIDTH = (LVM_FIRST + 29)
LVSCW_AUTOSIZE = -1
LVSCW_AUTOSIZE_USEHEADER = -2
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_GETITEMTEXTA = (LVM_FIRST + 45)
LVM_GETITEMTEXTW = (LVM_FIRST + 115)
LVM_GETITEMTEXT = LVM_GETITEMTEXTW
LVM_GETITEMTEXT = LVM_GETITEMTEXTA
LVM_SETITEMTEXTA = (LVM_FIRST + 46)
LVM_SETITEMTEXTW = (LVM_FIRST + 116)
LVM_SETITEMTEXT = LVM_SETITEMTEXTW
LVM_SETITEMTEXT = LVM_SETITEMTEXTA
LVSICF_NOINVALIDATEALL = 1
LVSICF_NOSCROLL = 2
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_GETISEARCHSTRINGA = (LVM_FIRST + 52)
LVM_GETISEARCHSTRINGW = (LVM_FIRST + 117)
LVM_GETISEARCHSTRING = LVM_GETISEARCHSTRINGA
LVM_SETICONSPACING = (LVM_FIRST + 53)
LVM_SETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 54) # optional wParam == mask
LVM_GETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 55)
LVS_EX_GRIDLINES = 1
LVS_EX_SUBITEMIMAGES = 2
LVS_EX_CHECKBOXES = 4
LVS_EX_TRACKSELECT = 8
LVS_EX_HEADERDRAGDROP = 16
LVS_EX_FULLROWSELECT = 32 # applies to report mode only
LVS_EX_ONECLICKACTIVATE = 64
LVS_EX_TWOCLICKACTIVATE = 128
LVS_EX_FLATSB = 256
LVS_EX_REGIONAL = 512
LVS_EX_INFOTIP = 1024 # listview does InfoTips for you
LVS_EX_UNDERLINEHOT = 2048
LVS_EX_UNDERLINECOLD = 4096
LVS_EX_MULTIWORKAREAS = 8192
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)