go-tg-screenshot-bot
247 строк · 6.1 Кб
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
7package win
8
9// TreeView styles
10const (
11TVS_HASBUTTONS = 0x0001
12TVS_HASLINES = 0x0002
13TVS_LINESATROOT = 0x0004
14TVS_EDITLABELS = 0x0008
15TVS_DISABLEDRAGDROP = 0x0010
16TVS_SHOWSELALWAYS = 0x0020
17TVS_RTLREADING = 0x0040
18TVS_NOTOOLTIPS = 0x0080
19TVS_CHECKBOXES = 0x0100
20TVS_TRACKSELECT = 0x0200
21TVS_SINGLEEXPAND = 0x0400
22TVS_INFOTIP = 0x0800
23TVS_FULLROWSELECT = 0x1000
24TVS_NOSCROLL = 0x2000
25TVS_NONEVENHEIGHT = 0x4000
26TVS_NOHSCROLL = 0x8000
27)
28
29const (
30TVS_EX_NOSINGLECOLLAPSE = 0x0001
31TVS_EX_MULTISELECT = 0x0002
32TVS_EX_DOUBLEBUFFER = 0x0004
33TVS_EX_NOINDENTSTATE = 0x0008
34TVS_EX_RICHTOOLTIP = 0x0010
35TVS_EX_AUTOHSCROLL = 0x0020
36TVS_EX_FADEINOUTEXPANDOS = 0x0040
37TVS_EX_PARTIALCHECKBOXES = 0x0080
38TVS_EX_EXCLUSIONCHECKBOXES = 0x0100
39TVS_EX_DIMMEDCHECKBOXES = 0x0200
40TVS_EX_DRAWIMAGEASYNC = 0x0400
41)
42
43const (
44TVIF_TEXT = 0x0001
45TVIF_IMAGE = 0x0002
46TVIF_PARAM = 0x0004
47TVIF_STATE = 0x0008
48TVIF_HANDLE = 0x0010
49TVIF_SELECTEDIMAGE = 0x0020
50TVIF_CHILDREN = 0x0040
51TVIF_INTEGRAL = 0x0080
52TVIF_STATEEX = 0x0100
53TVIF_EXPANDEDIMAGE = 0x0200
54)
55
56const (
57TVIS_SELECTED = 0x0002
58TVIS_CUT = 0x0004
59TVIS_DROPHILITED = 0x0008
60TVIS_BOLD = 0x0010
61TVIS_EXPANDED = 0x0020
62TVIS_EXPANDEDONCE = 0x0040
63TVIS_EXPANDPARTIAL = 0x0080
64TVIS_OVERLAYMASK = 0x0F00
65TVIS_STATEIMAGEMASK = 0xF000
66TVIS_USERMASK = 0xF000
67)
68
69const (
70TVIS_EX_FLAT = 0x0001
71TVIS_EX_DISABLED = 0x0002
72TVIS_EX_ALL = 0x0002
73)
74
75const (
76TVI_ROOT = ^HTREEITEM(0xffff)
77TVI_FIRST = ^HTREEITEM(0xfffe)
78TVI_LAST = ^HTREEITEM(0xfffd)
79TVI_SORT = ^HTREEITEM(0xfffc)
80)
81
82// TVM_EXPAND action flags
83const (
84TVE_COLLAPSE = 0x0001
85TVE_EXPAND = 0x0002
86TVE_TOGGLE = 0x0003
87TVE_EXPANDPARTIAL = 0x4000
88TVE_COLLAPSERESET = 0x8000
89)
90
91const (
92TVGN_CARET = 9
93)
94
95// TreeView messages
96const (
97TV_FIRST = 0x1100
98
99TVM_INSERTITEM = TV_FIRST + 50
100TVM_DELETEITEM = TV_FIRST + 1
101TVM_EXPAND = TV_FIRST + 2
102TVM_GETITEMRECT = TV_FIRST + 4
103TVM_GETCOUNT = TV_FIRST + 5
104TVM_GETINDENT = TV_FIRST + 6
105TVM_SETINDENT = TV_FIRST + 7
106TVM_GETIMAGELIST = TV_FIRST + 8
107TVM_SETIMAGELIST = TV_FIRST + 9
108TVM_GETNEXTITEM = TV_FIRST + 10
109TVM_SELECTITEM = TV_FIRST + 11
110TVM_GETITEM = TV_FIRST + 62
111TVM_SETITEM = TV_FIRST + 63
112TVM_EDITLABEL = TV_FIRST + 65
113TVM_GETEDITCONTROL = TV_FIRST + 15
114TVM_GETVISIBLECOUNT = TV_FIRST + 16
115TVM_HITTEST = TV_FIRST + 17
116TVM_CREATEDRAGIMAGE = TV_FIRST + 18
117TVM_SORTCHILDREN = TV_FIRST + 19
118TVM_ENSUREVISIBLE = TV_FIRST + 20
119TVM_SORTCHILDRENCB = TV_FIRST + 21
120TVM_ENDEDITLABELNOW = TV_FIRST + 22
121TVM_GETISEARCHSTRING = TV_FIRST + 64
122TVM_SETTOOLTIPS = TV_FIRST + 24
123TVM_GETTOOLTIPS = TV_FIRST + 25
124TVM_SETINSERTMARK = TV_FIRST + 26
125TVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
126TVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT
127TVM_SETITEMHEIGHT = TV_FIRST + 27
128TVM_GETITEMHEIGHT = TV_FIRST + 28
129TVM_SETBKCOLOR = TV_FIRST + 29
130TVM_SETTEXTCOLOR = TV_FIRST + 30
131TVM_GETBKCOLOR = TV_FIRST + 31
132TVM_GETTEXTCOLOR = TV_FIRST + 32
133TVM_SETSCROLLTIME = TV_FIRST + 33
134TVM_GETSCROLLTIME = TV_FIRST + 34
135TVM_SETINSERTMARKCOLOR = TV_FIRST + 37
136TVM_GETINSERTMARKCOLOR = TV_FIRST + 38
137TVM_GETITEMSTATE = TV_FIRST + 39
138TVM_SETLINECOLOR = TV_FIRST + 40
139TVM_GETLINECOLOR = TV_FIRST + 41
140TVM_MAPACCIDTOHTREEITEM = TV_FIRST + 42
141TVM_MAPHTREEITEMTOACCID = TV_FIRST + 43
142TVM_SETEXTENDEDSTYLE = TV_FIRST + 44
143TVM_GETEXTENDEDSTYLE = TV_FIRST + 45
144TVM_SETAUTOSCROLLINFO = TV_FIRST + 59
145)
146
147// TreeView notifications
148const (
149TVN_FIRST = ^uint32(399)
150
151TVN_SELCHANGING = TVN_FIRST - 50
152TVN_SELCHANGED = TVN_FIRST - 51
153TVN_GETDISPINFO = TVN_FIRST - 52
154TVN_ITEMEXPANDING = TVN_FIRST - 54
155TVN_ITEMEXPANDED = TVN_FIRST - 55
156TVN_BEGINDRAG = TVN_FIRST - 56
157TVN_BEGINRDRAG = TVN_FIRST - 57
158TVN_DELETEITEM = TVN_FIRST - 58
159TVN_BEGINLABELEDIT = TVN_FIRST - 59
160TVN_ENDLABELEDIT = TVN_FIRST - 60
161TVN_KEYDOWN = TVN_FIRST - 12
162TVN_GETINFOTIP = TVN_FIRST - 14
163TVN_SINGLEEXPAND = TVN_FIRST - 15
164TVN_ITEMCHANGING = TVN_FIRST - 17
165TVN_ITEMCHANGED = TVN_FIRST - 19
166TVN_ASYNCDRAW = TVN_FIRST - 20
167)
168
169// TreeView hit test constants
170const (
171TVHT_NOWHERE = 1
172TVHT_ONITEMICON = 2
173TVHT_ONITEMLABEL = 4
174TVHT_ONITEM = TVHT_ONITEMICON | TVHT_ONITEMLABEL | TVHT_ONITEMSTATEICON
175TVHT_ONITEMINDENT = 8
176TVHT_ONITEMBUTTON = 16
177TVHT_ONITEMRIGHT = 32
178TVHT_ONITEMSTATEICON = 64
179TVHT_ABOVE = 256
180TVHT_BELOW = 512
181TVHT_TORIGHT = 1024
182TVHT_TOLEFT = 2048
183)
184
185type HTREEITEM HANDLE
186
187type TVITEM struct {
188Mask uint32
189HItem HTREEITEM
190State uint32
191StateMask uint32
192PszText uintptr
193CchTextMax int32
194IImage int32
195ISelectedImage int32
196CChildren int32
197LParam uintptr
198}
199
200/*type TVITEMEX struct {
201mask UINT
202hItem HTREEITEM
203state UINT
204stateMask UINT
205pszText LPWSTR
206cchTextMax int
207iImage int
208iSelectedImage int
209cChildren int
210lParam LPARAM
211iIntegral int
212uStateEx UINT
213hwnd HWND
214iExpandedImage int
215}*/
216
217type TVINSERTSTRUCT struct {
218HParent HTREEITEM
219HInsertAfter HTREEITEM
220Item TVITEM
221// itemex TVITEMEX
222}
223
224type NMTREEVIEW struct {
225Hdr NMHDR
226Action uint32
227ItemOld TVITEM
228ItemNew TVITEM
229PtDrag POINT
230}
231
232type NMTVDISPINFO struct {
233Hdr NMHDR
234Item TVITEM
235}
236
237type NMTVKEYDOWN struct {
238Hdr NMHDR
239WVKey uint16
240Flags uint32
241}
242
243type TVHITTESTINFO struct {
244Pt POINT
245Flags uint32
246HItem HTREEITEM
247}
248