windowscodecs: Fix crash when PNG decoder is freed without successful init.
[wine.git] / include / commctrl.rh
blob863e14104f9b3a0572127970a3ac7895b8edeaec
1 /*
2  * Copyright (C) 2008 Vijay Kiran Kamuju
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
19 /* Macro to deal with LP64 <=> LLP64 differences in numeric constants with 'l' modifier */
20 #ifndef __MSABI_LONG
21 # if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__)
22 #  define __MSABI_LONG(x)         x ## l
23 # else
24 #  define __MSABI_LONG(x)         x
25 # endif
26 #endif
28 /* Header Control */
29 #define HDS_HORZ            0x0000
30 #define HDS_BUTTONS         0x0002
31 #define HDS_HOTTRACK        0x0004
32 #define HDS_HIDDEN          0x0008
33 #define HDS_DRAGDROP        0x0040
34 #define HDS_FULLDRAG        0x0080
35 #define HDS_FILTERBAR       0x0100
36 #define HDS_FLAT            0x0200
37 #define HDS_CHECKBOXES      0x0400
38 #define HDS_NOSIZING        0x0800
39 #define HDS_OVERFLOW        0x1000
41 /* Rebar Control */
42 #define RBS_TOOLTIPS        0x0100
43 #define RBS_VARHEIGHT       0x0200
44 #define RBS_BANDBORDERS     0x0400
45 #define RBS_FIXEDORDER      0x0800
46 #define RBS_REGISTERDROP    0x1000
47 #define RBS_AUTOSIZE        0x2000
48 #define RBS_VERTICALGRIPPER 0x4000
49 #define RBS_DBLCLKTOGGLE    0x8000
51 /* Tool tips */
52 #define TTS_ALWAYSTIP       0x01
53 #define TTS_NOPREFIX        0x02
54 #define TTS_NOANIMATE       0x10
55 #define TTS_NOFADE          0x20
56 #define TTS_BALLOON         0x40
57 #define TTS_CLOSE           0x80
58 #define TTS_USEVISUALSTYLE  0x100
60 /* Statusbar Control */
61 #define SBARS_SIZEGRIP      0x0100
62 #define SBARS_TOOLTIPS      0x0800
63 #define SBT_TOOLTIPS        0x0800
65 /* Toolbar Control */
66 #define TBS_AUTOTICKS       0x0001
67 #define TBS_VERT            0x0002
68 #define TBS_HORZ            0x0000
69 #define TBS_TOP             0x0004
70 #define TBS_BOTTOM          0x0000
71 #define TBS_LEFT            0x0004
72 #define TBS_RIGHT           0x0000
73 #define TBS_BOTH            0x0008
74 #define TBS_NOTICKS         0x0010
75 #define TBS_ENABLESELRANGE  0x0020
76 #define TBS_FIXEDLENGTH     0x0040
77 #define TBS_NOTHUMB         0x0080
78 #define TBS_TOOLTIPS        0x0100
79 #define TBS_REVERSED        0x0200
80 #define TBS_DOWNISLEFT      0x0400
82 /* UpDown Control */
83 #define UDS_WRAP            0x0001
84 #define UDS_SETBUDDYINT     0x0002
85 #define UDS_ALIGNRIGHT      0x0004
86 #define UDS_ALIGNLEFT       0x0008
87 #define UDS_AUTOBUDDY       0x0010
88 #define UDS_ARROWKEYS       0x0020
89 #define UDS_HORZ            0x0040
90 #define UDS_NOTHOUSANDS     0x0080
91 #define UDS_HOTTRACK        0x0100
93 /* Progressbar Control */
94 #define PBS_SMOOTH          0x01
95 #define PBS_VERTICAL        0x04
96 #define PBS_MARQUEE         0x08
97 #define PBS_SMOOTHREVERSE   0x10
99 /* Common Control Styles */
100 #define CCS_TOP             __MSABI_LONG(0x00000001)
101 #define CCS_NOMOVEY         __MSABI_LONG(0x00000002)
102 #define CCS_BOTTOM          __MSABI_LONG(0x00000003)
103 #define CCS_NORESIZE        __MSABI_LONG(0x00000004)
104 #define CCS_NOPARENTALIGN   __MSABI_LONG(0x00000008)
105 #define CCS_ADJUSTABLE      __MSABI_LONG(0x00000020)
106 #define CCS_NODIVIDER       __MSABI_LONG(0x00000040)
107 #define CCS_VERT            __MSABI_LONG(0x00000080)
108 #define CCS_LEFT            (CCS_VERT | CCS_TOP)
109 #define CCS_RIGHT           (CCS_VERT | CCS_BOTTOM)
110 #define CCS_NOMOVEX         (CCS_VERT | CCS_NOMOVEY)
112 /* Listview Control */
113 #define LVS_ICON            0x0000
114 #define LVS_REPORT          0x0001
115 #define LVS_SMALLICON       0x0002
116 #define LVS_LIST            0x0003
117 #define LVS_TYPEMASK        0x0003
118 #define LVS_SINGLESEL       0x0004
119 #define LVS_SHOWSELALWAYS   0x0008
120 #define LVS_SORTASCENDING   0x0010
121 #define LVS_SORTDESCENDING  0x0020
122 #define LVS_SHAREIMAGELISTS 0x0040
123 #define LVS_NOLABELWRAP     0x0080
124 #define LVS_AUTOARRANGE     0x0100
125 #define LVS_EDITLABELS      0x0200
126 #define LVS_OWNERDATA       0x1000
127 #define LVS_NOSCROLL        0x2000
128 #define LVS_TYPESTYLEMASK   0xfc00
129 #define LVS_ALIGNTOP        0x0000
130 #define LVS_ALIGNLEFT       0x0800
131 #define LVS_ALIGNMASK       0x0c00
132 #define LVS_OWNERDRAWFIXED  0x0400
133 #define LVS_NOCOLUMNHEADER  0x4000
134 #define LVS_NOSORTHEADER    0x8000
136 /* Treeview Control */
137 #define TVS_HASBUTTONS      0x0001
138 #define TVS_HASLINES        0x0002
139 #define TVS_LINESATROOT     0x0004
140 #define TVS_EDITLABELS      0x0008
141 #define TVS_DISABLEDRAGDROP 0x0010
142 #define TVS_SHOWSELALWAYS   0x0020
143 #define TVS_RTLREADING      0x0040
144 #define TVS_NOTOOLTIPS      0x0080
145 #define TVS_CHECKBOXES      0x0100
146 #define TVS_TRACKSELECT     0x0200
147 #define TVS_SINGLEEXPAND    0x0400
148 #define TVS_INFOTIP         0x0800
149 #define TVS_FULLROWSELECT   0x1000
150 #define TVS_NOSCROLL        0x2000
151 #define TVS_NONEVENHEIGHT   0x4000
152 #define TVS_NOHSCROLL       0x8000
154 /* Tab Control */
155 #define TCS_SCROLLOPPOSITE  0x0001   /* assumes multiline tab */
156 #define TCS_BOTTOM          0x0002
157 #define TCS_RIGHT           0x0002
158 #define TCS_MULTISELECT     0x0004  /* allow multi-select in button mode */
159 #define TCS_FLATBUTTONS     0x0008
160 #define TCS_FORCEICONLEFT   0x0010
161 #define TCS_FORCELABELLEFT  0x0020
162 #define TCS_HOTTRACK        0x0040
163 #define TCS_VERTICAL        0x0080
164 #define TCS_TABS            0x0000
165 #define TCS_BUTTONS         0x0100
166 #define TCS_SINGLELINE      0x0000
167 #define TCS_MULTILINE       0x0200
168 #define TCS_RIGHTJUSTIFY    0x0000
169 #define TCS_FIXEDWIDTH      0x0400
170 #define TCS_RAGGEDRIGHT     0x0800
171 #define TCS_FOCUSONBUTTONDOWN 0x1000
172 #define TCS_OWNERDRAWFIXED  0x2000
173 #define TCS_TOOLTIPS        0x4000
174 #define TCS_FOCUSNEVER      0x8000
176 /* Animate Control */
177 #define ACS_CENTER          0x0001
178 #define ACS_TRANSPARENT     0x0002
179 #define ACS_AUTOPLAY        0x0004
180 #define ACS_TIMER           0x0008  /* no threads, just timers */
182 /* Month Calendar Control */
183 #define MCS_DAYSTATE        0x0001
184 #define MCS_MULTISELECT     0x0002
185 #define MCS_WEEKNUMBERS     0x0004
186 #define MCS_NOTODAY         0x0010
187 #define MCS_NOTODAYCIRCLE   0x0008
188 #define MCS_NOTRAILINGDATES 0x0040
190 /* Datetime Control */
191 #define DTS_SHORTDATEFORMAT 0x0000
192 #define DTS_UPDOWN          0x0001
193 #define DTS_SHOWNONE        0x0002
194 #define DTS_LONGDATEFORMAT  0x0004
195 #define DTS_TIMEFORMAT      0x0009
196 #define DTS_APPCANPARSE     0x0010
197 #define DTS_RIGHTALIGN      0x0020
199 /* Pager Control */
200 #define PGS_VERT            0x00000000
201 #define PGS_HORZ            0x00000001
202 #define PGS_AUTOSCROLL      0x00000002
203 #define PGS_DRAGNDROP       0x00000004
205 /* Native Font Control */
206 #define NFS_EDIT            0x0001
207 #define NFS_STATIC          0x0002
208 #define NFS_LISTCOMBO       0x0004
209 #define NFS_BUTTON          0x0008
210 #define NFS_ALL             0x0010
211 #define NFS_USEFONTASSOC    0x0020