]> git.saurik.com Git - wxWidgets.git/blame - src/stc/scintilla/include/Scintilla.h
compilation fix after NULL cast removal; also used it to get rid of an ugly OnTimerEv...
[wxWidgets.git] / src / stc / scintilla / include / Scintilla.h
CommitLineData
9ce192d4 1// Scintilla source code edit control
65ec6247
RD
2/** @file Scintilla.h
3 ** Interface to the edit control.
4 **/
9e730a78 5// Copyright 1998-2003 by Neil Hodgson <neilh@scintilla.org>
9ce192d4
RD
6// The License.txt file describes the conditions under which this software may be distributed.
7
d134f170
RD
8// Most of this file is automatically generated from the Scintilla.iface interface definition
9// file which contains any comments about the definitions. HFacer.py does the generation.
10
9ce192d4
RD
11#ifndef SCINTILLA_H
12#define SCINTILLA_H
13
c099c54c 14#if defined(LCCWIN) && LCCWIN
1e9bafca
RD
15typedef BOOL bool;
16#endif
17
d134f170 18#if PLAT_WIN
1a2fb4cd
RD
19// Return false on failure:
20bool Scintilla_RegisterClasses(void *hInstance);
21bool Scintilla_ReleaseResources();
9ce192d4 22#endif
1a2fb4cd 23int Scintilla_LinkLexers();
9ce192d4 24
65ec6247
RD
25// Here should be placed typedefs for uptr_t, an unsigned integer type large enough to
26// hold a pointer and sptr_t, a signed integer large enough to hold a pointer.
27// May need to be changed for 64 bit platforms.
c099c54c 28#if defined(_MSC_VER) && _MSC_VER >= 1300
a834585d
RD
29#include <BaseTsd.h>
30#endif
3faece94
VZ
31#if defined(__MINGW64__)
32#include <stdint.h>
33typedef uint64_t uptr_t;
34typedef int64_t sptr_t;
35#elif defined(MAXULONG_PTR)
a834585d
RD
36typedef ULONG_PTR uptr_t;
37typedef LONG_PTR sptr_t;
38#else
65ec6247
RD
39typedef unsigned long uptr_t;
40typedef long sptr_t;
a834585d 41#endif
65ec6247
RD
42
43typedef sptr_t (*SciFnDirect)(sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam);
9ce192d4 44
d134f170
RD
45//++Autogenerated -- start of section automatically generated from Scintilla.iface
46#define INVALID_POSITION -1
9ce192d4
RD
47#define SCI_START 2000
48#define SCI_OPTIONAL_START 3000
49#define SCI_LEXER_START 4000
d134f170
RD
50#define SCI_ADDTEXT 2001
51#define SCI_ADDSTYLEDTEXT 2002
52#define SCI_INSERTTEXT 2003
53#define SCI_CLEARALL 2004
54#define SCI_CLEARDOCUMENTSTYLE 2005
55#define SCI_GETLENGTH 2006
56#define SCI_GETCHARAT 2007
57#define SCI_GETCURRENTPOS 2008
58#define SCI_GETANCHOR 2009
59#define SCI_GETSTYLEAT 2010
60#define SCI_REDO 2011
61#define SCI_SETUNDOCOLLECTION 2012
62#define SCI_SELECTALL 2013
63#define SCI_SETSAVEPOINT 2014
64#define SCI_GETSTYLEDTEXT 2015
65#define SCI_CANREDO 2016
66#define SCI_MARKERLINEFROMHANDLE 2017
67#define SCI_MARKERDELETEHANDLE 2018
68#define SCI_GETUNDOCOLLECTION 2019
69#define SCWS_INVISIBLE 0
70#define SCWS_VISIBLEALWAYS 1
71#define SCWS_VISIBLEAFTERINDENT 2
72#define SCI_GETVIEWWS 2020
73#define SCI_SETVIEWWS 2021
74#define SCI_POSITIONFROMPOINT 2022
65ec6247 75#define SCI_POSITIONFROMPOINTCLOSE 2023
d134f170
RD
76#define SCI_GOTOLINE 2024
77#define SCI_GOTOPOS 2025
78#define SCI_SETANCHOR 2026
79#define SCI_GETCURLINE 2027
80#define SCI_GETENDSTYLED 2028
9ce192d4
RD
81#define SC_EOL_CRLF 0
82#define SC_EOL_CR 1
83#define SC_EOL_LF 2
65ec6247 84#define SCI_CONVERTEOLS 2029
d134f170
RD
85#define SCI_GETEOLMODE 2030
86#define SCI_SETEOLMODE 2031
87#define SCI_STARTSTYLING 2032
88#define SCI_SETSTYLING 2033
89#define SCI_GETBUFFEREDDRAW 2034
90#define SCI_SETBUFFEREDDRAW 2035
91#define SCI_SETTABWIDTH 2036
92#define SCI_GETTABWIDTH 2121
f6bcfd97 93#define SC_CP_UTF8 65001
9e730a78 94#define SC_CP_DBCS 1
d134f170
RD
95#define SCI_SETCODEPAGE 2037
96#define SCI_SETUSEPALETTE 2039
9ce192d4 97#define MARKER_MAX 31
9ce192d4
RD
98#define SC_MARK_CIRCLE 0
99#define SC_MARK_ROUNDRECT 1
100#define SC_MARK_ARROW 2
101#define SC_MARK_SMALLRECT 3
102#define SC_MARK_SHORTARROW 4
103#define SC_MARK_EMPTY 5
104#define SC_MARK_ARROWDOWN 6
105#define SC_MARK_MINUS 7
106#define SC_MARK_PLUS 8
65ec6247
RD
107#define SC_MARK_VLINE 9
108#define SC_MARK_LCORNER 10
109#define SC_MARK_TCORNER 11
110#define SC_MARK_BOXPLUS 12
111#define SC_MARK_BOXPLUSCONNECTED 13
112#define SC_MARK_BOXMINUS 14
113#define SC_MARK_BOXMINUSCONNECTED 15
114#define SC_MARK_LCORNERCURVE 16
115#define SC_MARK_TCORNERCURVE 17
116#define SC_MARK_CIRCLEPLUS 18
117#define SC_MARK_CIRCLEPLUSCONNECTED 19
118#define SC_MARK_CIRCLEMINUS 20
119#define SC_MARK_CIRCLEMINUSCONNECTED 21
1a2fb4cd 120#define SC_MARK_BACKGROUND 22
f114b858
RD
121#define SC_MARK_DOTDOTDOT 23
122#define SC_MARK_ARROWS 24
9e730a78 123#define SC_MARK_PIXMAP 25
1e9bafca 124#define SC_MARK_FULLRECT 26
b8b0e402 125#define SC_MARK_CHARACTER 10000
65ec6247
RD
126#define SC_MARKNUM_FOLDEREND 25
127#define SC_MARKNUM_FOLDEROPENMID 26
128#define SC_MARKNUM_FOLDERMIDTAIL 27
129#define SC_MARKNUM_FOLDERTAIL 28
130#define SC_MARKNUM_FOLDERSUB 29
9ce192d4
RD
131#define SC_MARKNUM_FOLDER 30
132#define SC_MARKNUM_FOLDEROPEN 31
1a2fb4cd 133#define SC_MASK_FOLDERS 0xFE000000
d134f170
RD
134#define SCI_MARKERDEFINE 2040
135#define SCI_MARKERSETFORE 2041
136#define SCI_MARKERSETBACK 2042
137#define SCI_MARKERADD 2043
138#define SCI_MARKERDELETE 2044
139#define SCI_MARKERDELETEALL 2045
140#define SCI_MARKERGET 2046
141#define SCI_MARKERNEXT 2047
142#define SCI_MARKERPREVIOUS 2048
9e730a78 143#define SCI_MARKERDEFINEPIXMAP 2049
1e9bafca 144#define SCI_MARKERADDSET 2466
b8193d80 145#define SCI_MARKERSETALPHA 2476
9ce192d4
RD
146#define SC_MARGIN_SYMBOL 0
147#define SC_MARGIN_NUMBER 1
b8193d80
RD
148#define SC_MARGIN_BACK 2
149#define SC_MARGIN_FORE 3
d134f170
RD
150#define SCI_SETMARGINTYPEN 2240
151#define SCI_GETMARGINTYPEN 2241
152#define SCI_SETMARGINWIDTHN 2242
153#define SCI_GETMARGINWIDTHN 2243
154#define SCI_SETMARGINMASKN 2244
155#define SCI_GETMARGINMASKN 2245
156#define SCI_SETMARGINSENSITIVEN 2246
157#define SCI_GETMARGINSENSITIVEN 2247
9ce192d4
RD
158#define STYLE_DEFAULT 32
159#define STYLE_LINENUMBER 33
160#define STYLE_BRACELIGHT 34
161#define STYLE_BRACEBAD 35
162#define STYLE_CONTROLCHAR 36
d134f170 163#define STYLE_INDENTGUIDE 37
b8193d80 164#define STYLE_CALLTIP 38
b8b0e402 165#define STYLE_LASTPREDEFINED 39
7e0c58e9 166#define STYLE_MAX 255
f6bcfd97
BP
167#define SC_CHARSET_ANSI 0
168#define SC_CHARSET_DEFAULT 1
d134f170
RD
169#define SC_CHARSET_BALTIC 186
170#define SC_CHARSET_CHINESEBIG5 136
171#define SC_CHARSET_EASTEUROPE 238
172#define SC_CHARSET_GB2312 134
173#define SC_CHARSET_GREEK 161
174#define SC_CHARSET_HANGUL 129
175#define SC_CHARSET_MAC 77
176#define SC_CHARSET_OEM 255
f6bcfd97 177#define SC_CHARSET_RUSSIAN 204
1e9bafca 178#define SC_CHARSET_CYRILLIC 1251
d134f170
RD
179#define SC_CHARSET_SHIFTJIS 128
180#define SC_CHARSET_SYMBOL 2
181#define SC_CHARSET_TURKISH 162
182#define SC_CHARSET_JOHAB 130
183#define SC_CHARSET_HEBREW 177
184#define SC_CHARSET_ARABIC 178
185#define SC_CHARSET_VIETNAMESE 163
186#define SC_CHARSET_THAI 222
1e9bafca 187#define SC_CHARSET_8859_15 1000
d134f170
RD
188#define SCI_STYLECLEARALL 2050
189#define SCI_STYLESETFORE 2051
190#define SCI_STYLESETBACK 2052
191#define SCI_STYLESETBOLD 2053
192#define SCI_STYLESETITALIC 2054
193#define SCI_STYLESETSIZE 2055
194#define SCI_STYLESETFONT 2056
195#define SCI_STYLESETEOLFILLED 2057
196#define SCI_STYLERESETDEFAULT 2058
197#define SCI_STYLESETUNDERLINE 2059
65ec6247
RD
198#define SC_CASE_MIXED 0
199#define SC_CASE_UPPER 1
200#define SC_CASE_LOWER 2
7e0c58e9
RD
201#define SCI_STYLEGETFORE 2481
202#define SCI_STYLEGETBACK 2482
203#define SCI_STYLEGETBOLD 2483
204#define SCI_STYLEGETITALIC 2484
205#define SCI_STYLEGETSIZE 2485
206#define SCI_STYLEGETFONT 2486
207#define SCI_STYLEGETEOLFILLED 2487
208#define SCI_STYLEGETUNDERLINE 2488
209#define SCI_STYLEGETCASE 2489
210#define SCI_STYLEGETCHARACTERSET 2490
211#define SCI_STYLEGETVISIBLE 2491
212#define SCI_STYLEGETCHANGEABLE 2492
213#define SCI_STYLEGETHOTSPOT 2493
65ec6247 214#define SCI_STYLESETCASE 2060
d134f170 215#define SCI_STYLESETCHARACTERSET 2066
9e730a78 216#define SCI_STYLESETHOTSPOT 2409
d134f170
RD
217#define SCI_SETSELFORE 2067
218#define SCI_SETSELBACK 2068
b8193d80
RD
219#define SCI_GETSELALPHA 2477
220#define SCI_SETSELALPHA 2478
7e0c58e9
RD
221#define SCI_GETSELEOLFILLED 2479
222#define SCI_SETSELEOLFILLED 2480
d134f170
RD
223#define SCI_SETCARETFORE 2069
224#define SCI_ASSIGNCMDKEY 2070
225#define SCI_CLEARCMDKEY 2071
226#define SCI_CLEARALLCMDKEYS 2072
227#define SCI_SETSTYLINGEX 2073
228#define SCI_STYLESETVISIBLE 2074
229#define SCI_GETCARETPERIOD 2075
230#define SCI_SETCARETPERIOD 2076
231#define SCI_SETWORDCHARS 2077
232#define SCI_BEGINUNDOACTION 2078
233#define SCI_ENDUNDOACTION 2079
9ce192d4
RD
234#define INDIC_PLAIN 0
235#define INDIC_SQUIGGLE 1
236#define INDIC_TT 2
f6bcfd97
BP
237#define INDIC_DIAGONAL 3
238#define INDIC_STRIKE 4
88a8b04e 239#define INDIC_HIDDEN 5
8e54aaed 240#define INDIC_BOX 6
b8193d80 241#define INDIC_ROUNDBOX 7
7e0c58e9
RD
242#define INDIC_MAX 31
243#define INDIC_CONTAINER 8
1a2fb4cd
RD
244#define INDIC0_MASK 0x20
245#define INDIC1_MASK 0x40
246#define INDIC2_MASK 0x80
247#define INDICS_MASK 0xE0
d134f170
RD
248#define SCI_INDICSETSTYLE 2080
249#define SCI_INDICGETSTYLE 2081
250#define SCI_INDICSETFORE 2082
251#define SCI_INDICGETFORE 2083
7e0c58e9
RD
252#define SCI_INDICSETUNDER 2510
253#define SCI_INDICGETUNDER 2511
f114b858
RD
254#define SCI_SETWHITESPACEFORE 2084
255#define SCI_SETWHITESPACEBACK 2085
d134f170
RD
256#define SCI_SETSTYLEBITS 2090
257#define SCI_GETSTYLEBITS 2091
258#define SCI_SETLINESTATE 2092
259#define SCI_GETLINESTATE 2093
260#define SCI_GETMAXLINESTATE 2094
65ec6247
RD
261#define SCI_GETCARETLINEVISIBLE 2095
262#define SCI_SETCARETLINEVISIBLE 2096
263#define SCI_GETCARETLINEBACK 2097
264#define SCI_SETCARETLINEBACK 2098
1a2fb4cd 265#define SCI_STYLESETCHANGEABLE 2099
d134f170
RD
266#define SCI_AUTOCSHOW 2100
267#define SCI_AUTOCCANCEL 2101
268#define SCI_AUTOCACTIVE 2102
269#define SCI_AUTOCPOSSTART 2103
270#define SCI_AUTOCCOMPLETE 2104
271#define SCI_AUTOCSTOPS 2105
272#define SCI_AUTOCSETSEPARATOR 2106
273#define SCI_AUTOCGETSEPARATOR 2107
274#define SCI_AUTOCSELECT 2108
275#define SCI_AUTOCSETCANCELATSTART 2110
276#define SCI_AUTOCGETCANCELATSTART 2111
277#define SCI_AUTOCSETFILLUPS 2112
278#define SCI_AUTOCSETCHOOSESINGLE 2113
279#define SCI_AUTOCGETCHOOSESINGLE 2114
280#define SCI_AUTOCSETIGNORECASE 2115
281#define SCI_AUTOCGETIGNORECASE 2116
65ec6247
RD
282#define SCI_USERLISTSHOW 2117
283#define SCI_AUTOCSETAUTOHIDE 2118
284#define SCI_AUTOCGETAUTOHIDE 2119
1a2fb4cd
RD
285#define SCI_AUTOCSETDROPRESTOFWORD 2270
286#define SCI_AUTOCGETDROPRESTOFWORD 2271
9e730a78
RD
287#define SCI_REGISTERIMAGE 2405
288#define SCI_CLEARREGISTEREDIMAGES 2408
289#define SCI_AUTOCGETTYPESEPARATOR 2285
290#define SCI_AUTOCSETTYPESEPARATOR 2286
1e9bafca
RD
291#define SCI_AUTOCSETMAXWIDTH 2208
292#define SCI_AUTOCGETMAXWIDTH 2209
293#define SCI_AUTOCSETMAXHEIGHT 2210
294#define SCI_AUTOCGETMAXHEIGHT 2211
d134f170
RD
295#define SCI_SETINDENT 2122
296#define SCI_GETINDENT 2123
297#define SCI_SETUSETABS 2124
298#define SCI_GETUSETABS 2125
299#define SCI_SETLINEINDENTATION 2126
300#define SCI_GETLINEINDENTATION 2127
301#define SCI_GETLINEINDENTPOSITION 2128
302#define SCI_GETCOLUMN 2129
303#define SCI_SETHSCROLLBAR 2130
304#define SCI_GETHSCROLLBAR 2131
7e0c58e9
RD
305#define SC_IV_NONE 0
306#define SC_IV_REAL 1
307#define SC_IV_LOOKFORWARD 2
308#define SC_IV_LOOKBOTH 3
d134f170
RD
309#define SCI_SETINDENTATIONGUIDES 2132
310#define SCI_GETINDENTATIONGUIDES 2133
311#define SCI_SETHIGHLIGHTGUIDE 2134
312#define SCI_GETHIGHLIGHTGUIDE 2135
313#define SCI_GETLINEENDPOSITION 2136
314#define SCI_GETCODEPAGE 2137
315#define SCI_GETCARETFORE 2138
316#define SCI_GETUSEPALETTE 2139
317#define SCI_GETREADONLY 2140
318#define SCI_SETCURRENTPOS 2141
319#define SCI_SETSELECTIONSTART 2142
320#define SCI_GETSELECTIONSTART 2143
321#define SCI_SETSELECTIONEND 2144
322#define SCI_GETSELECTIONEND 2145
323#define SCI_SETPRINTMAGNIFICATION 2146
324#define SCI_GETPRINTMAGNIFICATION 2147
325#define SC_PRINT_NORMAL 0
326#define SC_PRINT_INVERTLIGHT 1
327#define SC_PRINT_BLACKONWHITE 2
65ec6247
RD
328#define SC_PRINT_COLOURONWHITE 3
329#define SC_PRINT_COLOURONWHITEDEFAULTBG 4
d134f170
RD
330#define SCI_SETPRINTCOLOURMODE 2148
331#define SCI_GETPRINTCOLOURMODE 2149
d134f170
RD
332#define SCFIND_WHOLEWORD 2
333#define SCFIND_MATCHCASE 4
334#define SCFIND_WORDSTART 0x00100000
335#define SCFIND_REGEXP 0x00200000
9e730a78 336#define SCFIND_POSIX 0x00400000
d134f170
RD
337#define SCI_FINDTEXT 2150
338#define SCI_FORMATRANGE 2151
339#define SCI_GETFIRSTVISIBLELINE 2152
340#define SCI_GETLINE 2153
341#define SCI_GETLINECOUNT 2154
342#define SCI_SETMARGINLEFT 2155
343#define SCI_GETMARGINLEFT 2156
344#define SCI_SETMARGINRIGHT 2157
345#define SCI_GETMARGINRIGHT 2158
346#define SCI_GETMODIFY 2159
347#define SCI_SETSEL 2160
348#define SCI_GETSELTEXT 2161
349#define SCI_GETTEXTRANGE 2162
350#define SCI_HIDESELECTION 2163
351#define SCI_POINTXFROMPOSITION 2164
352#define SCI_POINTYFROMPOSITION 2165
353#define SCI_LINEFROMPOSITION 2166
354#define SCI_POSITIONFROMLINE 2167
355#define SCI_LINESCROLL 2168
356#define SCI_SCROLLCARET 2169
357#define SCI_REPLACESEL 2170
358#define SCI_SETREADONLY 2171
359#define SCI_NULL 2172
360#define SCI_CANPASTE 2173
361#define SCI_CANUNDO 2174
362#define SCI_EMPTYUNDOBUFFER 2175
363#define SCI_UNDO 2176
364#define SCI_CUT 2177
365#define SCI_COPY 2178
366#define SCI_PASTE 2179
367#define SCI_CLEAR 2180
368#define SCI_SETTEXT 2181
369#define SCI_GETTEXT 2182
370#define SCI_GETTEXTLENGTH 2183
371#define SCI_GETDIRECTFUNCTION 2184
372#define SCI_GETDIRECTPOINTER 2185
373#define SCI_SETOVERTYPE 2186
374#define SCI_GETOVERTYPE 2187
65ec6247
RD
375#define SCI_SETCARETWIDTH 2188
376#define SCI_GETCARETWIDTH 2189
377#define SCI_SETTARGETSTART 2190
378#define SCI_GETTARGETSTART 2191
379#define SCI_SETTARGETEND 2192
380#define SCI_GETTARGETEND 2193
381#define SCI_REPLACETARGET 2194
382#define SCI_REPLACETARGETRE 2195
383#define SCI_SEARCHINTARGET 2197
384#define SCI_SETSEARCHFLAGS 2198
385#define SCI_GETSEARCHFLAGS 2199
d134f170
RD
386#define SCI_CALLTIPSHOW 2200
387#define SCI_CALLTIPCANCEL 2201
388#define SCI_CALLTIPACTIVE 2202
389#define SCI_CALLTIPPOSSTART 2203
390#define SCI_CALLTIPSETHLT 2204
391#define SCI_CALLTIPSETBACK 2205
9e730a78
RD
392#define SCI_CALLTIPSETFORE 2206
393#define SCI_CALLTIPSETFOREHLT 2207
b8193d80 394#define SCI_CALLTIPUSESTYLE 2212
d134f170
RD
395#define SCI_VISIBLEFROMDOCLINE 2220
396#define SCI_DOCLINEFROMVISIBLE 2221
1e9bafca 397#define SCI_WRAPCOUNT 2235
9ce192d4
RD
398#define SC_FOLDLEVELBASE 0x400
399#define SC_FOLDLEVELWHITEFLAG 0x1000
400#define SC_FOLDLEVELHEADERFLAG 0x2000
9e730a78
RD
401#define SC_FOLDLEVELBOXHEADERFLAG 0x4000
402#define SC_FOLDLEVELBOXFOOTERFLAG 0x8000
403#define SC_FOLDLEVELCONTRACTED 0x10000
404#define SC_FOLDLEVELUNINDENT 0x20000
9ce192d4 405#define SC_FOLDLEVELNUMBERMASK 0x0FFF
d134f170
RD
406#define SCI_SETFOLDLEVEL 2222
407#define SCI_GETFOLDLEVEL 2223
408#define SCI_GETLASTCHILD 2224
409#define SCI_GETFOLDPARENT 2225
410#define SCI_SHOWLINES 2226
411#define SCI_HIDELINES 2227
412#define SCI_GETLINEVISIBLE 2228
413#define SCI_SETFOLDEXPANDED 2229
414#define SCI_GETFOLDEXPANDED 2230
415#define SCI_TOGGLEFOLD 2231
416#define SCI_ENSUREVISIBLE 2232
9e730a78
RD
417#define SC_FOLDFLAG_LINEBEFORE_EXPANDED 0x0002
418#define SC_FOLDFLAG_LINEBEFORE_CONTRACTED 0x0004
419#define SC_FOLDFLAG_LINEAFTER_EXPANDED 0x0008
420#define SC_FOLDFLAG_LINEAFTER_CONTRACTED 0x0010
421#define SC_FOLDFLAG_LEVELNUMBERS 0x0040
422#define SC_FOLDFLAG_BOX 0x0001
d134f170 423#define SCI_SETFOLDFLAGS 2233
65ec6247
RD
424#define SCI_ENSUREVISIBLEENFORCEPOLICY 2234
425#define SCI_SETTABINDENTS 2260
426#define SCI_GETTABINDENTS 2261
427#define SCI_SETBACKSPACEUNINDENTS 2262
428#define SCI_GETBACKSPACEUNINDENTS 2263
429#define SC_TIME_FOREVER 10000000
430#define SCI_SETMOUSEDWELLTIME 2264
431#define SCI_GETMOUSEDWELLTIME 2265
1a2fb4cd
RD
432#define SCI_WORDSTARTPOSITION 2266
433#define SCI_WORDENDPOSITION 2267
434#define SC_WRAP_NONE 0
435#define SC_WRAP_WORD 1
1e9bafca 436#define SC_WRAP_CHAR 2
1a2fb4cd
RD
437#define SCI_SETWRAPMODE 2268
438#define SCI_GETWRAPMODE 2269
591d01be
RD
439#define SC_WRAPVISUALFLAG_NONE 0x0000
440#define SC_WRAPVISUALFLAG_END 0x0001
441#define SC_WRAPVISUALFLAG_START 0x0002
442#define SCI_SETWRAPVISUALFLAGS 2460
443#define SCI_GETWRAPVISUALFLAGS 2461
444#define SC_WRAPVISUALFLAGLOC_DEFAULT 0x0000
445#define SC_WRAPVISUALFLAGLOC_END_BY_TEXT 0x0001
446#define SC_WRAPVISUALFLAGLOC_START_BY_TEXT 0x0002
447#define SCI_SETWRAPVISUALFLAGSLOCATION 2462
448#define SCI_GETWRAPVISUALFLAGSLOCATION 2463
449#define SCI_SETWRAPSTARTINDENT 2464
450#define SCI_GETWRAPSTARTINDENT 2465
1a2fb4cd
RD
451#define SC_CACHE_NONE 0
452#define SC_CACHE_CARET 1
453#define SC_CACHE_PAGE 2
454#define SC_CACHE_DOCUMENT 3
455#define SCI_SETLAYOUTCACHE 2272
456#define SCI_GETLAYOUTCACHE 2273
a834585d
RD
457#define SCI_SETSCROLLWIDTH 2274
458#define SCI_GETSCROLLWIDTH 2275
7e0c58e9
RD
459#define SCI_SETSCROLLWIDTHTRACKING 2516
460#define SCI_GETSCROLLWIDTHTRACKING 2517
a834585d
RD
461#define SCI_TEXTWIDTH 2276
462#define SCI_SETENDATLASTLINE 2277
463#define SCI_GETENDATLASTLINE 2278
464#define SCI_TEXTHEIGHT 2279
9e730a78
RD
465#define SCI_SETVSCROLLBAR 2280
466#define SCI_GETVSCROLLBAR 2281
467#define SCI_APPENDTEXT 2282
468#define SCI_GETTWOPHASEDRAW 2283
469#define SCI_SETTWOPHASEDRAW 2284
470#define SCI_TARGETFROMSELECTION 2287
471#define SCI_LINESJOIN 2288
472#define SCI_LINESSPLIT 2289
473#define SCI_SETFOLDMARGINCOLOUR 2290
474#define SCI_SETFOLDMARGINHICOLOUR 2291
d134f170
RD
475#define SCI_LINEDOWN 2300
476#define SCI_LINEDOWNEXTEND 2301
477#define SCI_LINEUP 2302
478#define SCI_LINEUPEXTEND 2303
479#define SCI_CHARLEFT 2304
480#define SCI_CHARLEFTEXTEND 2305
481#define SCI_CHARRIGHT 2306
482#define SCI_CHARRIGHTEXTEND 2307
483#define SCI_WORDLEFT 2308
484#define SCI_WORDLEFTEXTEND 2309
485#define SCI_WORDRIGHT 2310
486#define SCI_WORDRIGHTEXTEND 2311
487#define SCI_HOME 2312
488#define SCI_HOMEEXTEND 2313
489#define SCI_LINEEND 2314
490#define SCI_LINEENDEXTEND 2315
491#define SCI_DOCUMENTSTART 2316
492#define SCI_DOCUMENTSTARTEXTEND 2317
493#define SCI_DOCUMENTEND 2318
494#define SCI_DOCUMENTENDEXTEND 2319
495#define SCI_PAGEUP 2320
496#define SCI_PAGEUPEXTEND 2321
497#define SCI_PAGEDOWN 2322
498#define SCI_PAGEDOWNEXTEND 2323
499#define SCI_EDITTOGGLEOVERTYPE 2324
500#define SCI_CANCEL 2325
501#define SCI_DELETEBACK 2326
502#define SCI_TAB 2327
503#define SCI_BACKTAB 2328
504#define SCI_NEWLINE 2329
505#define SCI_FORMFEED 2330
506#define SCI_VCHOME 2331
507#define SCI_VCHOMEEXTEND 2332
508#define SCI_ZOOMIN 2333
509#define SCI_ZOOMOUT 2334
510#define SCI_DELWORDLEFT 2335
511#define SCI_DELWORDRIGHT 2336
7e0c58e9 512#define SCI_DELWORDRIGHTEND 2518
d134f170
RD
513#define SCI_LINECUT 2337
514#define SCI_LINEDELETE 2338
515#define SCI_LINETRANSPOSE 2339
9e730a78 516#define SCI_LINEDUPLICATE 2404
d134f170
RD
517#define SCI_LOWERCASE 2340
518#define SCI_UPPERCASE 2341
519#define SCI_LINESCROLLDOWN 2342
520#define SCI_LINESCROLLUP 2343
1a2fb4cd 521#define SCI_DELETEBACKNOTLINE 2344
f114b858
RD
522#define SCI_HOMEDISPLAY 2345
523#define SCI_HOMEDISPLAYEXTEND 2346
524#define SCI_LINEENDDISPLAY 2347
525#define SCI_LINEENDDISPLAYEXTEND 2348
9e730a78
RD
526#define SCI_HOMEWRAP 2349
527#define SCI_HOMEWRAPEXTEND 2450
528#define SCI_LINEENDWRAP 2451
529#define SCI_LINEENDWRAPEXTEND 2452
530#define SCI_VCHOMEWRAP 2453
531#define SCI_VCHOMEWRAPEXTEND 2454
e14d10b0 532#define SCI_LINECOPY 2455
65ec6247 533#define SCI_MOVECARETINSIDEVIEW 2401
d134f170
RD
534#define SCI_LINELENGTH 2350
535#define SCI_BRACEHIGHLIGHT 2351
536#define SCI_BRACEBADLIGHT 2352
537#define SCI_BRACEMATCH 2353
538#define SCI_GETVIEWEOL 2355
539#define SCI_SETVIEWEOL 2356
540#define SCI_GETDOCPOINTER 2357
541#define SCI_SETDOCPOINTER 2358
542#define SCI_SETMODEVENTMASK 2359
9ce192d4
RD
543#define EDGE_NONE 0
544#define EDGE_LINE 1
545#define EDGE_BACKGROUND 2
d134f170
RD
546#define SCI_GETEDGECOLUMN 2360
547#define SCI_SETEDGECOLUMN 2361
548#define SCI_GETEDGEMODE 2362
549#define SCI_SETEDGEMODE 2363
550#define SCI_GETEDGECOLOUR 2364
551#define SCI_SETEDGECOLOUR 2365
552#define SCI_SEARCHANCHOR 2366
553#define SCI_SEARCHNEXT 2367
554#define SCI_SEARCHPREV 2368
d134f170
RD
555#define SCI_LINESONSCREEN 2370
556#define SCI_USEPOPUP 2371
557#define SCI_SELECTIONISRECTANGLE 2372
558#define SCI_SETZOOM 2373
559#define SCI_GETZOOM 2374
560#define SCI_CREATEDOCUMENT 2375
561#define SCI_ADDREFDOCUMENT 2376
562#define SCI_RELEASEDOCUMENT 2377
563#define SCI_GETMODEVENTMASK 2378
65ec6247
RD
564#define SCI_SETFOCUS 2380
565#define SCI_GETFOCUS 2381
566#define SCI_SETSTATUS 2382
567#define SCI_GETSTATUS 2383
568#define SCI_SETMOUSEDOWNCAPTURES 2384
569#define SCI_GETMOUSEDOWNCAPTURES 2385
570#define SC_CURSORNORMAL -1
9e730a78 571#define SC_CURSORWAIT 4
65ec6247
RD
572#define SCI_SETCURSOR 2386
573#define SCI_GETCURSOR 2387
1a2fb4cd
RD
574#define SCI_SETCONTROLCHARSYMBOL 2388
575#define SCI_GETCONTROLCHARSYMBOL 2389
65ec6247
RD
576#define SCI_WORDPARTLEFT 2390
577#define SCI_WORDPARTLEFTEXTEND 2391
578#define SCI_WORDPARTRIGHT 2392
579#define SCI_WORDPARTRIGHTEXTEND 2393
580#define VISIBLE_SLOP 0x01
581#define VISIBLE_STRICT 0x04
582#define SCI_SETVISIBLEPOLICY 2394
583#define SCI_DELLINELEFT 2395
584#define SCI_DELLINERIGHT 2396
1a2fb4cd
RD
585#define SCI_SETXOFFSET 2397
586#define SCI_GETXOFFSET 2398
9e730a78 587#define SCI_CHOOSECARETX 2399
d134f170 588#define SCI_GRABFOCUS 2400
a834585d
RD
589#define CARET_SLOP 0x01
590#define CARET_STRICT 0x04
591#define CARET_JUMPS 0x10
592#define CARET_EVEN 0x08
593#define SCI_SETXCARETPOLICY 2402
594#define SCI_SETYCARETPOLICY 2403
9e730a78
RD
595#define SCI_SETPRINTWRAPMODE 2406
596#define SCI_GETPRINTWRAPMODE 2407
597#define SCI_SETHOTSPOTACTIVEFORE 2410
7e0c58e9 598#define SCI_GETHOTSPOTACTIVEFORE 2494
9e730a78 599#define SCI_SETHOTSPOTACTIVEBACK 2411
7e0c58e9 600#define SCI_GETHOTSPOTACTIVEBACK 2495
9e730a78 601#define SCI_SETHOTSPOTACTIVEUNDERLINE 2412
7e0c58e9 602#define SCI_GETHOTSPOTACTIVEUNDERLINE 2496
8e54aaed 603#define SCI_SETHOTSPOTSINGLELINE 2421
7e0c58e9 604#define SCI_GETHOTSPOTSINGLELINE 2497
9e730a78
RD
605#define SCI_PARADOWN 2413
606#define SCI_PARADOWNEXTEND 2414
607#define SCI_PARAUP 2415
608#define SCI_PARAUPEXTEND 2416
e14d10b0
RD
609#define SCI_POSITIONBEFORE 2417
610#define SCI_POSITIONAFTER 2418
611#define SCI_COPYRANGE 2419
612#define SCI_COPYTEXT 2420
8e54aaed
RD
613#define SC_SEL_STREAM 0
614#define SC_SEL_RECTANGLE 1
615#define SC_SEL_LINES 2
616#define SCI_SETSELECTIONMODE 2422
617#define SCI_GETSELECTIONMODE 2423
618#define SCI_GETLINESELSTARTPOSITION 2424
619#define SCI_GETLINESELENDPOSITION 2425
620#define SCI_LINEDOWNRECTEXTEND 2426
621#define SCI_LINEUPRECTEXTEND 2427
622#define SCI_CHARLEFTRECTEXTEND 2428
623#define SCI_CHARRIGHTRECTEXTEND 2429
624#define SCI_HOMERECTEXTEND 2430
625#define SCI_VCHOMERECTEXTEND 2431
626#define SCI_LINEENDRECTEXTEND 2432
627#define SCI_PAGEUPRECTEXTEND 2433
628#define SCI_PAGEDOWNRECTEXTEND 2434
629#define SCI_STUTTEREDPAGEUP 2435
630#define SCI_STUTTEREDPAGEUPEXTEND 2436
631#define SCI_STUTTEREDPAGEDOWN 2437
632#define SCI_STUTTEREDPAGEDOWNEXTEND 2438
633#define SCI_WORDLEFTEND 2439
634#define SCI_WORDLEFTENDEXTEND 2440
635#define SCI_WORDRIGHTEND 2441
636#define SCI_WORDRIGHTENDEXTEND 2442
637#define SCI_SETWHITESPACECHARS 2443
638#define SCI_SETCHARSDEFAULT 2444
639#define SCI_AUTOCGETCURRENT 2445
591d01be 640#define SCI_ALLOCATE 2446
a33203cb
RD
641#define SCI_TARGETASUTF8 2447
642#define SCI_SETLENGTHFORENCODE 2448
643#define SCI_ENCODEDFROMUTF8 2449
644#define SCI_FINDCOLUMN 2456
1e9bafca
RD
645#define SCI_GETCARETSTICKY 2457
646#define SCI_SETCARETSTICKY 2458
647#define SCI_TOGGLECARETSTICKY 2459
648#define SCI_SETPASTECONVERTENDINGS 2467
649#define SCI_GETPASTECONVERTENDINGS 2468
650#define SCI_SELECTIONDUPLICATE 2469
b8193d80
RD
651#define SC_ALPHA_TRANSPARENT 0
652#define SC_ALPHA_OPAQUE 255
653#define SC_ALPHA_NOALPHA 256
654#define SCI_SETCARETLINEBACKALPHA 2470
655#define SCI_GETCARETLINEBACKALPHA 2471
7e0c58e9
RD
656#define CARETSTYLE_INVISIBLE 0
657#define CARETSTYLE_LINE 1
658#define CARETSTYLE_BLOCK 2
659#define SCI_SETCARETSTYLE 2512
660#define SCI_GETCARETSTYLE 2513
661#define SCI_SETINDICATORCURRENT 2500
662#define SCI_GETINDICATORCURRENT 2501
663#define SCI_SETINDICATORVALUE 2502
664#define SCI_GETINDICATORVALUE 2503
665#define SCI_INDICATORFILLRANGE 2504
666#define SCI_INDICATORCLEARRANGE 2505
667#define SCI_INDICATORALLONFOR 2506
668#define SCI_INDICATORVALUEAT 2507
669#define SCI_INDICATORSTART 2508
670#define SCI_INDICATOREND 2509
671#define SCI_SETPOSITIONCACHE 2514
672#define SCI_GETPOSITIONCACHE 2515
d134f170
RD
673#define SCI_STARTRECORD 3001
674#define SCI_STOPRECORD 3002
675#define SCI_SETLEXER 4001
676#define SCI_GETLEXER 4002
677#define SCI_COLOURISE 4003
678#define SCI_SETPROPERTY 4004
88a8b04e 679#define KEYWORDSET_MAX 8
d134f170 680#define SCI_SETKEYWORDS 4005
65ec6247 681#define SCI_SETLEXERLANGUAGE 4006
9e730a78 682#define SCI_LOADLEXERLIBRARY 4007
1e9bafca
RD
683#define SCI_GETPROPERTY 4008
684#define SCI_GETPROPERTYEXPANDED 4009
685#define SCI_GETPROPERTYINT 4010
686#define SCI_GETSTYLEBITSNEEDED 4011
9ce192d4
RD
687#define SC_MOD_INSERTTEXT 0x1
688#define SC_MOD_DELETETEXT 0x2
689#define SC_MOD_CHANGESTYLE 0x4
690#define SC_MOD_CHANGEFOLD 0x8
691#define SC_PERFORMED_USER 0x10
692#define SC_PERFORMED_UNDO 0x20
693#define SC_PERFORMED_REDO 0x40
1e9bafca 694#define SC_MULTISTEPUNDOREDO 0x80
9ce192d4 695#define SC_LASTSTEPINUNDOREDO 0x100
f6bcfd97
BP
696#define SC_MOD_CHANGEMARKER 0x200
697#define SC_MOD_BEFOREINSERT 0x400
698#define SC_MOD_BEFOREDELETE 0x800
1e9bafca 699#define SC_MULTILINEUNDOREDO 0x1000
7e0c58e9
RD
700#define SC_STARTACTION 0x2000
701#define SC_MOD_CHANGEINDICATOR 0x4000
702#define SC_MOD_CHANGELINESTATE 0x8000
703#define SC_MODEVENTMASKALL 0xFFFF
d134f170
RD
704#define SCEN_CHANGE 768
705#define SCEN_SETFOCUS 512
706#define SCEN_KILLFOCUS 256
707#define SCK_DOWN 300
708#define SCK_UP 301
709#define SCK_LEFT 302
710#define SCK_RIGHT 303
711#define SCK_HOME 304
712#define SCK_END 305
713#define SCK_PRIOR 306
714#define SCK_NEXT 307
715#define SCK_DELETE 308
716#define SCK_INSERT 309
717#define SCK_ESCAPE 7
718#define SCK_BACK 8
719#define SCK_TAB 9
720#define SCK_RETURN 13
721#define SCK_ADD 310
722#define SCK_SUBTRACT 311
723#define SCK_DIVIDE 312
7e0c58e9
RD
724#define SCK_WIN 313
725#define SCK_RWIN 314
726#define SCK_MENU 315
1e9bafca 727#define SCMOD_NORM 0
d134f170
RD
728#define SCMOD_SHIFT 1
729#define SCMOD_CTRL 2
730#define SCMOD_ALT 4
731#define SCN_STYLENEEDED 2000
732#define SCN_CHARADDED 2001
733#define SCN_SAVEPOINTREACHED 2002
734#define SCN_SAVEPOINTLEFT 2003
735#define SCN_MODIFYATTEMPTRO 2004
736#define SCN_KEY 2005
737#define SCN_DOUBLECLICK 2006
738#define SCN_UPDATEUI 2007
d134f170
RD
739#define SCN_MODIFIED 2008
740#define SCN_MACRORECORD 2009
741#define SCN_MARGINCLICK 2010
742#define SCN_NEEDSHOWN 2011
65ec6247
RD
743#define SCN_PAINTED 2013
744#define SCN_USERLISTSELECTION 2014
745#define SCN_URIDROPPED 2015
746#define SCN_DWELLSTART 2016
747#define SCN_DWELLEND 2017
a834585d 748#define SCN_ZOOM 2018
9e730a78
RD
749#define SCN_HOTSPOTCLICK 2019
750#define SCN_HOTSPOTDOUBLECLICK 2020
751#define SCN_CALLTIPCLICK 2021
1e9bafca 752#define SCN_AUTOCSELECTION 2022
7e0c58e9
RD
753#define SCN_INDICATORCLICK 2023
754#define SCN_INDICATORRELEASE 2024
d134f170
RD
755//--Autogenerated -- end of section automatically generated from Scintilla.iface
756
d134f170
RD
757// These structures are defined to be exactly the same shape as the Win32
758// CHARRANGE, TEXTRANGE, FINDTEXTEX, FORMATRANGE, and NMHDR structs.
759// So older code that treats Scintilla as a RichEdit will work.
760
7e0c58e9
RD
761#ifdef SCI_NAMESPACE
762namespace Scintilla {
763#endif
764
d134f170
RD
765struct CharacterRange {
766 long cpMin;
767 long cpMax;
768};
769
770struct TextRange {
65ec6247 771 struct CharacterRange chrg;
d134f170
RD
772 char *lpstrText;
773};
774
775struct TextToFind {
65ec6247 776 struct CharacterRange chrg;
d134f170 777 char *lpstrText;
65ec6247 778 struct CharacterRange chrgText;
d134f170
RD
779};
780
781#ifdef PLATFORM_H
782
1a2fb4cd 783// This structure is used in printing and requires some of the graphics types
d134f170
RD
784// from Platform.h. Not needed by most client code.
785
786struct RangeToFormat {
787 SurfaceID hdc;
788 SurfaceID hdcTarget;
789 PRectangle rc;
790 PRectangle rcPage;
791 CharacterRange chrg;
792};
793
794#endif
795
796struct NotifyHeader {
1e9bafca
RD
797 // Compatible with Windows NMHDR.
798 // hwndFrom is really an environment specific window handle or pointer
65ec6247 799 // but most clients of Scintilla.h do not have this type visible.
1a2fb4cd 800 void *hwndFrom;
1e9bafca 801 uptr_t idFrom;
d134f170
RD
802 unsigned int code;
803};
9ce192d4
RD
804
805struct SCNotification {
65ec6247
RD
806 struct NotifyHeader nmhdr;
807 int position; // SCN_STYLENEEDED, SCN_MODIFIED, SCN_DWELLSTART, SCN_DWELLEND
808 int ch; // SCN_CHARADDED, SCN_KEY
809 int modifiers; // SCN_KEY
810 int modificationType; // SCN_MODIFIED
1e9bafca 811 const char *text; // SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION
65ec6247
RD
812 int length; // SCN_MODIFIED
813 int linesAdded; // SCN_MODIFIED
9ce192d4 814 int message; // SCN_MACRORECORD
65ec6247 815 uptr_t wParam; // SCN_MACRORECORD
b8b0e402 816 sptr_t lParam; // SCN_MACRORECORD
65ec6247 817 int line; // SCN_MODIFIED
9ce192d4
RD
818 int foldLevelNow; // SCN_MODIFIED
819 int foldLevelPrev; // SCN_MODIFIED
65ec6247
RD
820 int margin; // SCN_MARGINCLICK
821 int listType; // SCN_USERLISTSELECTION
822 int x; // SCN_DWELLSTART, SCN_DWELLEND
823 int y; // SCN_DWELLSTART, SCN_DWELLEND
9ce192d4
RD
824};
825
7e0c58e9
RD
826#ifdef SCI_NAMESPACE
827}
828#endif
829
9ce192d4
RD
830// Deprecation section listing all API features that are deprecated and will
831// will be removed completely in a future version.
832// To enable these features define INCLUDE_DEPRECATED_FEATURES
833
834#ifdef INCLUDE_DEPRECATED_FEATURES
835
a834585d
RD
836#define SCI_SETCARETPOLICY 2369
837#define CARET_CENTER 0x02
838#define CARET_XEVEN 0x08
839#define CARET_XJUMPS 0x10
840
1a2fb4cd
RD
841#define SCN_POSCHANGED 2012
842#define SCN_CHECKBRACE 2007
843
9ce192d4
RD
844#endif
845
846#endif