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