go-tg-screenshot-bot

Форк
0
377 строк · 11.0 Кб
1
// Copyright 2010 The win Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
4

5
// +build windows
6

7
package win
8

9
const (
10
	LVSCW_AUTOSIZE           = ^uintptr(0)
11
	LVSCW_AUTOSIZE_USEHEADER = ^uintptr(1)
12
)
13

14
// LVM_SETITEMCOUNT flags
15
const (
16
	LVSICF_NOINVALIDATEALL = 0x0001
17
	LVSICF_NOSCROLL        = 0x0002
18
)
19

20
// ListView messages
21
const (
22
	LVM_FIRST                    = 0x1000
23
	LVM_SETBKCOLOR               = LVM_FIRST + 1
24
	LVM_SETIMAGELIST             = LVM_FIRST + 3
25
	LVM_GETITEM                  = LVM_FIRST + 75
26
	LVM_SETITEM                  = LVM_FIRST + 76
27
	LVM_INSERTITEM               = LVM_FIRST + 77
28
	LVM_DELETEITEM               = LVM_FIRST + 8
29
	LVM_DELETEALLITEMS           = LVM_FIRST + 9
30
	LVM_GETCALLBACKMASK          = LVM_FIRST + 10
31
	LVM_SETCALLBACKMASK          = LVM_FIRST + 11
32
	LVM_GETNEXTITEM              = LVM_FIRST + 12
33
	LVM_FINDITEM                 = LVM_FIRST + 83
34
	LVM_GETITEMRECT              = LVM_FIRST + 14
35
	LVM_GETSTRINGWIDTH           = LVM_FIRST + 87
36
	LVM_HITTEST                  = LVM_FIRST + 18
37
	LVM_ENSUREVISIBLE            = LVM_FIRST + 19
38
	LVM_SCROLL                   = LVM_FIRST + 20
39
	LVM_REDRAWITEMS              = LVM_FIRST + 21
40
	LVM_ARRANGE                  = LVM_FIRST + 22
41
	LVM_EDITLABEL                = LVM_FIRST + 118
42
	LVM_GETEDITCONTROL           = LVM_FIRST + 24
43
	LVM_GETCOLUMN                = LVM_FIRST + 95
44
	LVM_SETCOLUMN                = LVM_FIRST + 96
45
	LVM_INSERTCOLUMN             = LVM_FIRST + 97
46
	LVM_DELETECOLUMN             = LVM_FIRST + 28
47
	LVM_GETCOLUMNWIDTH           = LVM_FIRST + 29
48
	LVM_SETCOLUMNWIDTH           = LVM_FIRST + 30
49
	LVM_GETHEADER                = LVM_FIRST + 31
50
	LVM_CREATEDRAGIMAGE          = LVM_FIRST + 33
51
	LVM_GETVIEWRECT              = LVM_FIRST + 34
52
	LVM_GETTEXTCOLOR             = LVM_FIRST + 35
53
	LVM_SETTEXTCOLOR             = LVM_FIRST + 36
54
	LVM_GETTEXTBKCOLOR           = LVM_FIRST + 37
55
	LVM_SETTEXTBKCOLOR           = LVM_FIRST + 38
56
	LVM_GETTOPINDEX              = LVM_FIRST + 39
57
	LVM_GETCOUNTPERPAGE          = LVM_FIRST + 40
58
	LVM_GETORIGIN                = LVM_FIRST + 41
59
	LVM_UPDATE                   = LVM_FIRST + 42
60
	LVM_SETITEMSTATE             = LVM_FIRST + 43
61
	LVM_GETITEMSTATE             = LVM_FIRST + 44
62
	LVM_GETITEMTEXT              = LVM_FIRST + 115
63
	LVM_SETITEMTEXT              = LVM_FIRST + 116
64
	LVM_SETITEMCOUNT             = LVM_FIRST + 47
65
	LVM_SORTITEMS                = LVM_FIRST + 48
66
	LVM_SETITEMPOSITION32        = LVM_FIRST + 49
67
	LVM_GETSELECTEDCOUNT         = LVM_FIRST + 50
68
	LVM_GETITEMSPACING           = LVM_FIRST + 51
69
	LVM_GETISEARCHSTRING         = LVM_FIRST + 117
70
	LVM_SETICONSPACING           = LVM_FIRST + 53
71
	LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54
72
	LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55
73
	LVM_GETSUBITEMRECT           = LVM_FIRST + 56
74
	LVM_SUBITEMHITTEST           = LVM_FIRST + 57
75
	LVM_SETCOLUMNORDERARRAY      = LVM_FIRST + 58
76
	LVM_GETCOLUMNORDERARRAY      = LVM_FIRST + 59
77
	LVM_SETHOTITEM               = LVM_FIRST + 60
78
	LVM_GETHOTITEM               = LVM_FIRST + 61
79
	LVM_SETHOTCURSOR             = LVM_FIRST + 62
80
	LVM_GETHOTCURSOR             = LVM_FIRST + 63
81
	LVM_APPROXIMATEVIEWRECT      = LVM_FIRST + 64
82
	LVM_SETWORKAREAS             = LVM_FIRST + 65
83
	LVM_GETWORKAREAS             = LVM_FIRST + 70
84
	LVM_GETNUMBEROFWORKAREAS     = LVM_FIRST + 73
85
	LVM_GETSELECTIONMARK         = LVM_FIRST + 66
86
	LVM_SETSELECTIONMARK         = LVM_FIRST + 67
87
	LVM_SETHOVERTIME             = LVM_FIRST + 71
88
	LVM_GETHOVERTIME             = LVM_FIRST + 72
89
	LVM_SETTOOLTIPS              = LVM_FIRST + 74
90
	LVM_GETTOOLTIPS              = LVM_FIRST + 78
91
	LVM_SORTITEMSEX              = LVM_FIRST + 81
92
	LVM_SETBKIMAGE               = LVM_FIRST + 138
93
	LVM_GETBKIMAGE               = LVM_FIRST + 139
94
	LVM_SETSELECTEDCOLUMN        = LVM_FIRST + 140
95
	LVM_SETVIEW                  = LVM_FIRST + 142
96
	LVM_GETVIEW                  = LVM_FIRST + 143
97
	LVM_INSERTGROUP              = LVM_FIRST + 145
98
	LVM_SETGROUPINFO             = LVM_FIRST + 147
99
	LVM_GETGROUPINFO             = LVM_FIRST + 149
100
	LVM_REMOVEGROUP              = LVM_FIRST + 150
101
	LVM_MOVEGROUP                = LVM_FIRST + 151
102
	LVM_GETGROUPCOUNT            = LVM_FIRST + 152
103
	LVM_GETGROUPINFOBYINDEX      = LVM_FIRST + 153
104
	LVM_MOVEITEMTOGROUP          = LVM_FIRST + 154
105
	LVM_GETGROUPRECT             = LVM_FIRST + 98
106
	LVM_SETGROUPMETRICS          = LVM_FIRST + 155
107
	LVM_GETGROUPMETRICS          = LVM_FIRST + 156
108
	LVM_ENABLEGROUPVIEW          = LVM_FIRST + 157
109
	LVM_SORTGROUPS               = LVM_FIRST + 158
110
	LVM_INSERTGROUPSORTED        = LVM_FIRST + 159
111
	LVM_REMOVEALLGROUPS          = LVM_FIRST + 160
112
	LVM_HASGROUP                 = LVM_FIRST + 161
113
	LVM_GETGROUPSTATE            = LVM_FIRST + 92
114
	LVM_GETFOCUSEDGROUP          = LVM_FIRST + 93
115
	LVM_SETTILEVIEWINFO          = LVM_FIRST + 162
116
	LVM_GETTILEVIEWINFO          = LVM_FIRST + 163
117
	LVM_SETTILEINFO              = LVM_FIRST + 164
118
	LVM_GETTILEINFO              = LVM_FIRST + 165
119
	LVM_SETINSERTMARK            = LVM_FIRST + 166
120
	LVM_GETINSERTMARK            = LVM_FIRST + 167
121
	LVM_INSERTMARKHITTEST        = LVM_FIRST + 168
122
	LVM_GETINSERTMARKRECT        = LVM_FIRST + 169
123
	LVM_SETINSERTMARKCOLOR       = LVM_FIRST + 170
124
	LVM_GETINSERTMARKCOLOR       = LVM_FIRST + 171
125
	LVM_SETINFOTIP               = LVM_FIRST + 173
126
	LVM_GETSELECTEDCOLUMN        = LVM_FIRST + 174
127
	LVM_ISGROUPVIEWENABLED       = LVM_FIRST + 175
128
	LVM_GETOUTLINECOLOR          = LVM_FIRST + 176
129
	LVM_SETOUTLINECOLOR          = LVM_FIRST + 177
130
	LVM_CANCELEDITLABEL          = LVM_FIRST + 179
131
	LVM_MAPINDEXTOID             = LVM_FIRST + 180
132
	LVM_MAPIDTOINDEX             = LVM_FIRST + 181
133
	LVM_ISITEMVISIBLE            = LVM_FIRST + 182
134
	LVM_GETNEXTITEMINDEX         = LVM_FIRST + 211
135
)
136

137
// ListView notifications
138
const (
139
	LVN_FIRST = ^uint32(99) // -100
140

141
	LVN_ITEMCHANGING      = LVN_FIRST - 0
142
	LVN_ITEMCHANGED       = LVN_FIRST - 1
143
	LVN_INSERTITEM        = LVN_FIRST - 2
144
	LVN_DELETEITEM        = LVN_FIRST - 3
145
	LVN_DELETEALLITEMS    = LVN_FIRST - 4
146
	LVN_BEGINLABELEDIT    = LVN_FIRST - 75
147
	LVN_ENDLABELEDIT      = LVN_FIRST - 76
148
	LVN_COLUMNCLICK       = LVN_FIRST - 8
149
	LVN_BEGINDRAG         = LVN_FIRST - 9
150
	LVN_BEGINRDRAG        = LVN_FIRST - 11
151
	LVN_ODCACHEHINT       = LVN_FIRST - 13
152
	LVN_ODFINDITEM        = LVN_FIRST - 79
153
	LVN_ITEMACTIVATE      = LVN_FIRST - 14
154
	LVN_ODSTATECHANGED    = LVN_FIRST - 15
155
	LVN_HOTTRACK          = LVN_FIRST - 21
156
	LVN_GETDISPINFO       = LVN_FIRST - 77
157
	LVN_SETDISPINFO       = LVN_FIRST - 78
158
	LVN_KEYDOWN           = LVN_FIRST - 55
159
	LVN_MARQUEEBEGIN      = LVN_FIRST - 56
160
	LVN_GETINFOTIP        = LVN_FIRST - 58
161
	LVN_INCREMENTALSEARCH = LVN_FIRST - 63
162
	LVN_BEGINSCROLL       = LVN_FIRST - 80
163
	LVN_ENDSCROLL         = LVN_FIRST - 81
164
)
165

166
// ListView LVNI constants
167
const (
168
	LVNI_ALL         = 0
169
	LVNI_FOCUSED     = 1
170
	LVNI_SELECTED    = 2
171
	LVNI_CUT         = 4
172
	LVNI_DROPHILITED = 8
173
	LVNI_ABOVE       = 256
174
	LVNI_BELOW       = 512
175
	LVNI_TOLEFT      = 1024
176
	LVNI_TORIGHT     = 2048
177
)
178

179
// ListView styles
180
const (
181
	LVS_ICON            = 0x0000
182
	LVS_REPORT          = 0x0001
183
	LVS_SMALLICON       = 0x0002
184
	LVS_LIST            = 0x0003
185
	LVS_TYPEMASK        = 0x0003
186
	LVS_SINGLESEL       = 0x0004
187
	LVS_SHOWSELALWAYS   = 0x0008
188
	LVS_SORTASCENDING   = 0x0010
189
	LVS_SORTDESCENDING  = 0x0020
190
	LVS_SHAREIMAGELISTS = 0x0040
191
	LVS_NOLABELWRAP     = 0x0080
192
	LVS_AUTOARRANGE     = 0x0100
193
	LVS_EDITLABELS      = 0x0200
194
	LVS_OWNERDATA       = 0x1000
195
	LVS_NOSCROLL        = 0x2000
196
	LVS_TYPESTYLEMASK   = 0xfc00
197
	LVS_ALIGNTOP        = 0x0000
198
	LVS_ALIGNLEFT       = 0x0800
199
	LVS_ALIGNMASK       = 0x0c00
200
	LVS_OWNERDRAWFIXED  = 0x0400
201
	LVS_NOCOLUMNHEADER  = 0x4000
202
	LVS_NOSORTHEADER    = 0x8000
203
)
204

205
// ListView extended styles
206
const (
207
	LVS_EX_GRIDLINES        = 0x00000001
208
	LVS_EX_SUBITEMIMAGES    = 0x00000002
209
	LVS_EX_CHECKBOXES       = 0x00000004
210
	LVS_EX_TRACKSELECT      = 0x00000008
211
	LVS_EX_HEADERDRAGDROP   = 0x00000010
212
	LVS_EX_FULLROWSELECT    = 0x00000020
213
	LVS_EX_ONECLICKACTIVATE = 0x00000040
214
	LVS_EX_TWOCLICKACTIVATE = 0x00000080
215
	LVS_EX_FLATSB           = 0x00000100
216
	LVS_EX_REGIONAL         = 0x00000200
217
	LVS_EX_INFOTIP          = 0x00000400
218
	LVS_EX_UNDERLINEHOT     = 0x00000800
219
	LVS_EX_UNDERLINECOLD    = 0x00001000
220
	LVS_EX_MULTIWORKAREAS   = 0x00002000
221
	LVS_EX_LABELTIP         = 0x00004000
222
	LVS_EX_BORDERSELECT     = 0x00008000
223
	LVS_EX_DOUBLEBUFFER     = 0x00010000
224
	LVS_EX_HIDELABELS       = 0x00020000
225
	LVS_EX_SINGLEROW        = 0x00040000
226
	LVS_EX_SNAPTOGRID       = 0x00080000
227
	LVS_EX_SIMPLESELECT     = 0x00100000
228
)
229

230
// ListView column flags
231
const (
232
	LVCF_FMT     = 0x0001
233
	LVCF_WIDTH   = 0x0002
234
	LVCF_TEXT    = 0x0004
235
	LVCF_SUBITEM = 0x0008
236
	LVCF_IMAGE   = 0x0010
237
	LVCF_ORDER   = 0x0020
238
)
239

240
// ListView column format constants
241
const (
242
	LVCFMT_LEFT            = 0x0000
243
	LVCFMT_RIGHT           = 0x0001
244
	LVCFMT_CENTER          = 0x0002
245
	LVCFMT_JUSTIFYMASK     = 0x0003
246
	LVCFMT_IMAGE           = 0x0800
247
	LVCFMT_BITMAP_ON_RIGHT = 0x1000
248
	LVCFMT_COL_HAS_IMAGES  = 0x8000
249
)
250

251
// ListView item flags
252
const (
253
	LVIF_TEXT        = 0x00000001
254
	LVIF_IMAGE       = 0x00000002
255
	LVIF_PARAM       = 0x00000004
256
	LVIF_STATE       = 0x00000008
257
	LVIF_INDENT      = 0x00000010
258
	LVIF_NORECOMPUTE = 0x00000800
259
	LVIF_GROUPID     = 0x00000100
260
	LVIF_COLUMNS     = 0x00000200
261
)
262

263
// ListView item states
264
const (
265
	LVIS_FOCUSED        = 1
266
	LVIS_SELECTED       = 2
267
	LVIS_CUT            = 4
268
	LVIS_DROPHILITED    = 8
269
	LVIS_OVERLAYMASK    = 0xF00
270
	LVIS_STATEIMAGEMASK = 0xF000
271
)
272

273
// ListView hit test constants
274
const (
275
	LVHT_NOWHERE         = 0x00000001
276
	LVHT_ONITEMICON      = 0x00000002
277
	LVHT_ONITEMLABEL     = 0x00000004
278
	LVHT_ONITEMSTATEICON = 0x00000008
279
	LVHT_ONITEM          = LVHT_ONITEMICON | LVHT_ONITEMLABEL | LVHT_ONITEMSTATEICON
280

281
	LVHT_ABOVE   = 0x00000008
282
	LVHT_BELOW   = 0x00000010
283
	LVHT_TORIGHT = 0x00000020
284
	LVHT_TOLEFT  = 0x00000040
285
)
286

287
// ListView image list types
288
const (
289
	LVSIL_NORMAL      = 0
290
	LVSIL_SMALL       = 1
291
	LVSIL_STATE       = 2
292
	LVSIL_GROUPHEADER = 3
293
)
294

295
type LVCOLUMN struct {
296
	Mask       uint32
297
	Fmt        int32
298
	Cx         int32
299
	PszText    *uint16
300
	CchTextMax int32
301
	ISubItem   int32
302
	IImage     int32
303
	IOrder     int32
304
}
305

306
type LVITEM struct {
307
	Mask       uint32
308
	IItem      int32
309
	ISubItem   int32
310
	State      uint32
311
	StateMask  uint32
312
	PszText    *uint16
313
	CchTextMax int32
314
	IImage     int32
315
	LParam     uintptr
316
	IIndent    int32
317
	IGroupId   int32
318
	CColumns   uint32
319
	PuColumns  uint32
320
}
321

322
type LVHITTESTINFO struct {
323
	Pt       POINT
324
	Flags    uint32
325
	IItem    int32
326
	ISubItem int32
327
	IGroup   int32
328
}
329

330
type NMITEMACTIVATE struct {
331
	Hdr       NMHDR
332
	IItem     int32
333
	ISubItem  int32
334
	UNewState uint32
335
	UOldState uint32
336
	UChanged  uint32
337
	PtAction  POINT
338
	LParam    uintptr
339
	UKeyFlags uint32
340
}
341

342
type NMLISTVIEW struct {
343
	Hdr       NMHDR
344
	IItem     int32
345
	ISubItem  int32
346
	UNewState uint32
347
	UOldState uint32
348
	UChanged  uint32
349
	PtAction  POINT
350
	LParam    uintptr
351
}
352

353
type NMLVCUSTOMDRAW struct {
354
	Nmcd        NMCUSTOMDRAW
355
	ClrText     COLORREF
356
	ClrTextBk   COLORREF
357
	ISubItem    int32
358
	DwItemType  uint32
359
	ClrFace     COLORREF
360
	IIconEffect int32
361
	IIconPhase  int32
362
	IPartId     int32
363
	IStateId    int32
364
	RcText      RECT
365
	UAlign      uint32
366
}
367

368
type NMLVDISPINFO struct {
369
	Hdr  NMHDR
370
	Item LVITEM
371
}
372

373
type NMLVSCROLL struct {
374
	Hdr NMHDR
375
	Dx  int32
376
	Dy  int32
377
}
378

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.