1 ////////////////////////////////////////////////////////////////////////////
2 // Name: wx/stc/stc.h
3 // Purpose: A wxWidgets implementation of Scintilla. This class is the
4 // one meant to be used directly by wx applications. It does not
5 // derive directly from the Scintilla classes, and in fact there
6 // is no mention of Scintilla classes at all in this header.
7 // This class delegates all method calls and events to the
8 // Scintilla objects and so forth. This allows the use of
9 // Scintilla without polluting the namespace with all the
10 // classes and identifiers from Scintilla.
11 //
12 // Author: Robin Dunn
13 //
14 // Created: 13-Jan-2000
15 // Copyright: (c) 2000 by Total Control Software
16 // Licence: wxWindows licence
17 /////////////////////////////////////////////////////////////////////////////
18
19 /*
20 IMPORTANT: include/wx/stc/stc.h is generated by src/stc/gen_iface.py from
21 src/stc/stc.h.in, don't edit stc.h file as your changes will be
22 lost after the next regeneration, edit stc.h.in and rerun the
23 gen_iface.py script instead!
24
25 Parts of this file generated by the script are found in between
26 the special "{{{" and "}}}" markers, the rest of it is copied
27 verbatim from src.h.in.
28 */
29
30 #ifndef __WXSCINTILLA_H__
31 #define __WXSCINTILLA_H__
32
33 #include <wx/defs.h>
34
35 /* C::B -> Don't forget to change version number here and in wxscintilla.cpp at the bottom */
36 #define wxSCINTILLA_VERSION _T("3.75.0")
37
38 #include <wx/control.h>
39 #include <wx/dnd.h>
40 #include <wx/stopwatch.h>
41 /* C::B begin */
42 #include <wx/scrolbar.h>
43 #if wxCHECK_VERSION(3, 0, 0)
44 #include <wx/versioninfo.h>
45 #endif
46
47 #ifdef WXMAKINGDLL_SCI
48 #define WXDLLIMPEXP_SCI WXEXPORT
49 #elif defined(WXUSINGDLL_SCI) || defined(WXUSINGDLL)
50 #define WXDLLIMPEXP_SCI WXIMPORT
51 #else // not making nor using DLL
52 #define WXDLLIMPEXP_SCI
53 #endif
54 /* C::B end */
55
56 class WXDLLIMPEXP_FWD_CORE wxScrollBar;
57
58 // SWIG can't handle "#if" type of conditionals, only "#ifdef"
59 #ifdef SWIG
60 #define SCI_USE_DND 1
61 #else
62 #if wxUSE_DRAG_AND_DROP
63 #define SCI_USE_DND 1
64 #endif
65 #endif
66
67 //----------------------------------------------------------------------
68 // SCI constants generated section {{{
69
70 #define wxSCI_INVALID_POSITION -1
71
72 /// Define start of Scintilla messages to be greater than all Windows edit (EM_*) messages
73 /// as many EM_ messages can be used although that use is deprecated.
74 #define wxSCI_START 2000
75 #define wxSCI_OPTIONAL_START 3000
76 #define wxSCI_LEXER_START 4000
77 #define wxSCI_WS_INVISIBLE 0
78 #define wxSCI_WS_VISIBLEALWAYS 1
79 #define wxSCI_WS_VISIBLEAFTERINDENT 2
80 #define wxSCI_WS_VISIBLEONLYININDENT 3
81 #define wxSCI_TD_LONGARROW 0
82 #define wxSCI_TD_STRIKEOUT 1
83 #define wxSCI_EOL_CRLF 0
84 #define wxSCI_EOL_CR 1
85 #define wxSCI_EOL_LF 2
86
87 /// The SC_CP_UTF8 value can be used to enter Unicode mode.
88 /// This is the same value as CP_UTF8 in Windows
89 #define wxSCI_CP_UTF8 65001
90 #define wxSCI_IME_WINDOWED 0
91 #define wxSCI_IME_INLINE 1
92 #define wxSCI_MARKER_MAX 31
93 #define wxSCI_MARK_CIRCLE 0
94 #define wxSCI_MARK_ROUNDRECT 1
95 #define wxSCI_MARK_ARROW 2
96 #define wxSCI_MARK_SMALLRECT 3
97 #define wxSCI_MARK_SHORTARROW 4
98 #define wxSCI_MARK_EMPTY 5
99 #define wxSCI_MARK_ARROWDOWN 6
100 #define wxSCI_MARK_MINUS 7
101 #define wxSCI_MARK_PLUS 8
102
103 /// Shapes used for outlining column.
104 #define wxSCI_MARK_VLINE 9
105 #define wxSCI_MARK_LCORNER 10
106 #define wxSCI_MARK_TCORNER 11
107 #define wxSCI_MARK_BOXPLUS 12
108 #define wxSCI_MARK_BOXPLUSCONNECTED 13
109 #define wxSCI_MARK_BOXMINUS 14
110 #define wxSCI_MARK_BOXMINUSCONNECTED 15
111 #define wxSCI_MARK_LCORNERCURVE 16
112 #define wxSCI_MARK_TCORNERCURVE 17
113 #define wxSCI_MARK_CIRCLEPLUS 18
114 #define wxSCI_MARK_CIRCLEPLUSCONNECTED 19
115 #define wxSCI_MARK_CIRCLEMINUS 20
116 #define wxSCI_MARK_CIRCLEMINUSCONNECTED 21
117
118 /// Invisible mark that only sets the line background colour.
119 #define wxSCI_MARK_BACKGROUND 22
120 #define wxSCI_MARK_DOTDOTDOT 23
121 #define wxSCI_MARK_ARROWS 24
122 #define wxSCI_MARK_PIXMAP 25
123 #define wxSCI_MARK_FULLRECT 26
124 #define wxSCI_MARK_LEFTRECT 27
125 #define wxSCI_MARK_AVAILABLE 28
126 #define wxSCI_MARK_UNDERLINE 29
127 #define wxSCI_MARK_RGBAIMAGE 30
128 #define wxSCI_MARK_BOOKMARK 31
129 #define wxSCI_MARK_CHARACTER 10000
130
131 /* C::B begin */
132 #define wxSCI_MARKNUM_LASTUNUSED 22
133 /* C::B end */
134 /* CHANGEBAR begin */
135 // Markers used for outlining and changed column.
136 #define wxSCI_MARKNUM_CHANGEUNSAVED 23
137 #define wxSCI_MARKNUM_CHANGESAVED 24
138 /* CHANGEBAR end */
139 #define wxSCI_MARKNUM_FOLDEREND 25
140 #define wxSCI_MARKNUM_FOLDEROPENMID 26
141 #define wxSCI_MARKNUM_FOLDERMIDTAIL 27
142 #define wxSCI_MARKNUM_FOLDERTAIL 28
143 #define wxSCI_MARKNUM_FOLDERSUB 29
144 #define wxSCI_MARKNUM_FOLDER 30
145 #define wxSCI_MARKNUM_FOLDEROPEN 31
146 /* CHANGEBAR begin */
147 #define wxSCI_MASK_FOLDERS 0xFF800000
148 /* CHANGEBAR end */
149 #define wxSCI_MAX_MARGIN 4
150 #define wxSCI_MARGIN_SYMBOL 0
151 #define wxSCI_MARGIN_NUMBER 1
152 #define wxSCI_MARGIN_BACK 2
153 #define wxSCI_MARGIN_FORE 3
154 #define wxSCI_MARGIN_TEXT 4
155 #define wxSCI_MARGIN_RTEXT 5
156 #define wxSCI_MARGIN_COLOUR 6
157 /* CHANGEBAR begin */
158 #define wxSCI_MARGIN_CHANGED 7
159 /* CHANGEBAR end */
160
161 /// Styles in range 32..38 are predefined for parts of the UI and are not used as normal styles.
162 /// Style 39 is for future use.
163 #define wxSCI_STYLE_DEFAULT 32
164 #define wxSCI_STYLE_LINENUMBER 33
165 #define wxSCI_STYLE_BRACELIGHT 34
166 #define wxSCI_STYLE_BRACEBAD 35
167 #define wxSCI_STYLE_CONTROLCHAR 36
168 #define wxSCI_STYLE_INDENTGUIDE 37
169 #define wxSCI_STYLE_CALLTIP 38
170 #define wxSCI_STYLE_FOLDDISPLAYTEXT 39
171 #define wxSCI_STYLE_LASTPREDEFINED 39
172 #define wxSCI_STYLE_MAX 255
173
174 /// Character set identifiers are used in StyleSetCharacterSet.
175 /// The values are the same as the Windows *_CHARSET values.
176 #define wxSCI_CHARSET_ANSI 0
177 #define wxSCI_CHARSET_DEFAULT 1
178 #define wxSCI_CHARSET_BALTIC 186
179 #define wxSCI_CHARSET_CHINESEBIG5 136
180 #define wxSCI_CHARSET_EASTEUROPE 238
181 #define wxSCI_CHARSET_GB2312 134
182 #define wxSCI_CHARSET_GREEK 161
183 #define wxSCI_CHARSET_HANGUL 129
184 #define wxSCI_CHARSET_MAC 77
185 #define wxSCI_CHARSET_OEM 255
186 #define wxSCI_CHARSET_RUSSIAN 204
187 #define wxSCI_CHARSET_OEM866 866
188 #define wxSCI_CHARSET_CYRILLIC 1251
189 #define wxSCI_CHARSET_SHIFTJIS 128
190 #define wxSCI_CHARSET_SYMBOL 2
191 #define wxSCI_CHARSET_TURKISH 162
192 #define wxSCI_CHARSET_JOHAB 130
193 #define wxSCI_CHARSET_HEBREW 177
194 #define wxSCI_CHARSET_ARABIC 178
195 #define wxSCI_CHARSET_VIETNAMESE 163
196 #define wxSCI_CHARSET_THAI 222
197 #define wxSCI_CHARSET_8859_15 1000
198 #define wxSCI_CASE_MIXED 0
199 #define wxSCI_CASE_UPPER 1
200 #define wxSCI_CASE_LOWER 2
201 #define wxSCI_CASE_CAMEL 3
202 #define wxSCI_FONT_SIZE_MULTIPLIER 100
203 #define wxSCI_WEIGHT_NORMAL 400
204 #define wxSCI_WEIGHT_SEMIBOLD 600
205 #define wxSCI_WEIGHT_BOLD 700
206
207 /// Indicator style enumeration and some constants
208 #define wxSCI_INDIC_PLAIN 0
209 #define wxSCI_INDIC_SQUIGGLE 1
210 #define wxSCI_INDIC_TT 2
211 #define wxSCI_INDIC_DIAGONAL 3
212 #define wxSCI_INDIC_STRIKE 4
213 #define wxSCI_INDIC_HIDDEN 5
214 #define wxSCI_INDIC_BOX 6
215 #define wxSCI_INDIC_ROUNDBOX 7
216 #define wxSCI_INDIC_STRAIGHTBOX 8
217 #define wxSCI_INDIC_DASH 9
218 #define wxSCI_INDIC_DOTS 10
219 #define wxSCI_INDIC_SQUIGGLELOW 11
220 #define wxSCI_INDIC_DOTBOX 12
221 #define wxSCI_INDIC_SQUIGGLEPIXMAP 13
222 #define wxSCI_INDIC_COMPOSITIONTHICK 14
223 #define wxSCI_INDIC_COMPOSITIONTHIN 15
224 #define wxSCI_INDIC_FULLBOX 16
225 #define wxSCI_INDIC_TEXTFORE 17
226 #define wxSCI_INDIC_POINT 18
227 #define wxSCI_INDIC_POINTCHARACTER 19
228 /* C::B begin INDIC_HIGHLIGHT */
229 #define wxSCI_INDIC_HIGHLIGHT 31 // please change also in wxscintilla.h !!
230 /* C::B end */
231 #define wxSCI_INDIC_IME 32
232 #define wxSCI_INDIC_IME_MAX 35
233 #define wxSCI_INDIC_MAX 35
234 #define wxSCI_INDIC_CONTAINER 8
235 #define wxSCI_INDICVALUEBIT 0x1000000
236 #define wxSCI_INDICVALUEMASK 0xFFFFFF
237 #define wxSCI_INDICFLAG_VALUEFORE 1
238 #define wxSCI_IV_NONE 0
239 #define wxSCI_IV_REAL 1
240 #define wxSCI_IV_LOOKFORWARD 2
241 #define wxSCI_IV_LOOKBOTH 3
242
243 /// PrintColourMode - use same colours as screen.
244 #define wxSCI_PRINT_NORMAL 0
245
246 /// PrintColourMode - invert the light value of each style for printing.
247 #define wxSCI_PRINT_INVERTLIGHT 1
248
249 /// PrintColourMode - force black text on white background for printing.
250 #define wxSCI_PRINT_BLACKONWHITE 2
251
252 /// PrintColourMode - text stays coloured, but all background is forced to be white for printing.
253 #define wxSCI_PRINT_COLOURONWHITE 3
254
255 /// PrintColourMode - only the default-background is forced to be white for printing.
256 #define wxSCI_PRINT_COLOURONWHITEDEFAULTBG 4
257 #define wxSCI_FIND_WHOLEWORD 0x2
258 #define wxSCI_FIND_MATCHCASE 0x4
259 #define wxSCI_FIND_WORDSTART 0x00100000
260 #define wxSCI_FIND_REGEXP 0x00200000
261 #define wxSCI_FIND_POSIX 0x00400000
262 #define wxSCI_FIND_CXX11REGEX 0x00800000
263 #define wxSCI_FOLDLEVELBASE 0x400
264 #define wxSCI_FOLDLEVELWHITEFLAG 0x1000
265 #define wxSCI_FOLDLEVELHEADERFLAG 0x2000
266 #define wxSCI_FOLDLEVELNUMBERMASK 0x0FFF
267 #define wxSCI_FOLDDISPLAYTEXT_HIDDEN 0
268 #define wxSCI_FOLDDISPLAYTEXT_STANDARD 1
269 #define wxSCI_FOLDDISPLAYTEXT_BOXED 2
270 #define wxSCI_FOLDACTION_CONTRACT 0
271 #define wxSCI_FOLDACTION_EXPAND 1
272 #define wxSCI_FOLDACTION_TOGGLE 2
273 #define wxSCI_AUTOMATICFOLD_SHOW 0x0001
274 #define wxSCI_AUTOMATICFOLD_CLICK 0x0002
275 #define wxSCI_AUTOMATICFOLD_CHANGE 0x0004
276 #define wxSCI_FOLDFLAG_LINEBEFORE_EXPANDED 0x0002
277 #define wxSCI_FOLDFLAG_LINEBEFORE_CONTRACTED 0x0004
278 #define wxSCI_FOLDFLAG_LINEAFTER_EXPANDED 0x0008
279 #define wxSCI_FOLDFLAG_LINEAFTER_CONTRACTED 0x0010
280 #define wxSCI_FOLDFLAG_LEVELNUMBERS 0x0040
281 #define wxSCI_FOLDFLAG_LINESTATE 0x0080
282 #define wxSCI_TIME_FOREVER 10000000
283 #define wxSCI_IDLESTYLING_NONE 0
284 #define wxSCI_IDLESTYLING_TOVISIBLE 1
285 #define wxSCI_IDLESTYLING_AFTERVISIBLE 2
286 #define wxSCI_IDLESTYLING_ALL 3
287 #define wxSCI_WRAP_NONE 0
288 #define wxSCI_WRAP_WORD 1
289 #define wxSCI_WRAP_CHAR 2
290 #define wxSCI_WRAP_WHITESPACE 3
291 #define wxSCI_WRAPVISUALFLAG_NONE 0x0000
292 #define wxSCI_WRAPVISUALFLAG_END 0x0001
293 #define wxSCI_WRAPVISUALFLAG_START 0x0002
294 #define wxSCI_WRAPVISUALFLAG_MARGIN 0x0004
295 #define wxSCI_WRAPVISUALFLAGLOC_DEFAULT 0x0000
296 #define wxSCI_WRAPVISUALFLAGLOC_END_BY_TEXT 0x0001
297 #define wxSCI_WRAPVISUALFLAGLOC_START_BY_TEXT 0x0002
298 #define wxSCI_WRAPINDENT_FIXED 0
299 #define wxSCI_WRAPINDENT_SAME 1
300 #define wxSCI_WRAPINDENT_INDENT 2
301 #define wxSCI_CACHE_NONE 0
302 #define wxSCI_CACHE_CARET 1
303 #define wxSCI_CACHE_PAGE 2
304 #define wxSCI_CACHE_DOCUMENT 3
305 #define wxSCI_PHASES_ONE 0
306 #define wxSCI_PHASES_TWO 1
307 #define wxSCI_PHASES_MULTIPLE 2
308
309 /// Control font anti-aliasing.
310 #define wxSCI_EFF_QUALITY_MASK 0xF
311 #define wxSCI_EFF_QUALITY_DEFAULT 0
312 #define wxSCI_EFF_QUALITY_NON_ANTIALIASED 1
313 #define wxSCI_EFF_QUALITY_ANTIALIASED 2
314 #define wxSCI_EFF_QUALITY_LCD_OPTIMIZED 3
315 #define wxSCI_MULTIPASTE_ONCE 0
316 #define wxSCI_MULTIPASTE_EACH 1
317 #define wxSCI_EDGE_NONE 0
318 #define wxSCI_EDGE_LINE 1
319 #define wxSCI_EDGE_BACKGROUND 2
320 #define wxSCI_EDGE_MULTILINE 3
321 #define wxSCI_POPUP_NEVER 0
322 #define wxSCI_POPUP_ALL 1
323 #define wxSCI_POPUP_TEXT 2
324 #define wxSCI_STATUS_OK 0
325 #define wxSCI_STATUS_FAILURE 1
326 #define wxSCI_STATUS_BADALLOC 2
327 #define wxSCI_STATUS_WARN_START 1000
328 #define wxSCI_STATUS_WARN_REGEX 1001
329 #define wxSCI_CURSORNORMAL -1
330 #define wxSCI_CURSORARROW 2
331 #define wxSCI_CURSORWAIT 4
332 #define wxSCI_CURSORREVERSEARROW 7
333
334 /// Constants for use with SetVisiblePolicy, similar to SetCaretPolicy.
335 #define wxSCI_VISIBLE_SLOP 0x01
336 #define wxSCI_VISIBLE_STRICT 0x04
337
338 /// Caret policy, used by SetXCaretPolicy and SetYCaretPolicy.
339 /// If CARET_SLOP is set, we can define a slop value: caretSlop.
340 /// This value defines an unwanted zone (UZ) where the caret is... unwanted.
341 /// This zone is defined as a number of pixels near the vertical margins,
342 /// and as a number of lines near the horizontal margins.
343 /// By keeping the caret away from the edges, it is seen within its context,
344 /// so it is likely that the identifier that the caret is on can be completely seen,
345 /// and that the current line is seen with some of the lines following it which are
346 /// often dependent on that line.
347 #define wxSCI_CARET_SLOP 0x01
348
349 /// If CARET_STRICT is set, the policy is enforced... strictly.
350 /// The caret is centred on the display if slop is not set,
351 /// and cannot go in the UZ if slop is set.
352 #define wxSCI_CARET_STRICT 0x04
353
354 /// If CARET_JUMPS is set, the display is moved more energetically
355 /// so the caret can move in the same direction longer before the policy is applied again.
356 #define wxSCI_CARET_JUMPS 0x10
357
358 /// If CARET_EVEN is not set, instead of having symmetrical UZs,
359 /// the left and bottom UZs are extended up to right and top UZs respectively.
360 /// This way, we favour the displaying of useful information: the beginning of lines,
361 /// where most code reside, and the lines after the caret, eg. the body of a function.
362 #define wxSCI_CARET_EVEN 0x08
363 #define wxSCI_SEL_STREAM 0
364 #define wxSCI_SEL_RECTANGLE 1
365 #define wxSCI_SEL_LINES 2
366 #define wxSCI_SEL_THIN 3
367 #define wxSCI_CASEINSENSITIVEBEHAVIOUR_RESPECTCASE 0
368 #define wxSCI_CASEINSENSITIVEBEHAVIOUR_IGNORECASE 1
369 #define wxSCI_MULTIAUTOC_ONCE 0
370 #define wxSCI_MULTIAUTOC_EACH 1
371 #define wxSCI_ORDER_PRESORTED 0
372 #define wxSCI_ORDER_PERFORMSORT 1
373 #define wxSCI_ORDER_CUSTOM 2
374 #define wxSCI_CARETSTICKY_OFF 0
375 #define wxSCI_CARETSTICKY_ON 1
376 #define wxSCI_CARETSTICKY_WHITESPACE 2
377 #define wxSCI_ALPHA_TRANSPARENT 0
378 #define wxSCI_ALPHA_OPAQUE 255
379 #define wxSCI_ALPHA_NOALPHA 256
380 #define wxSCI_CARETSTYLE_INVISIBLE 0
381 #define wxSCI_CARETSTYLE_LINE 1
382 #define wxSCI_CARETSTYLE_BLOCK 2
383 #define wxSCI_MARGINOPTION_NONE 0
384 #define wxSCI_MARGINOPTION_SUBLINESELECT 1
385 #define wxSCI_ANNOTATION_HIDDEN 0
386 #define wxSCI_ANNOTATION_STANDARD 1
387 #define wxSCI_ANNOTATION_BOXED 2
388 #define wxSCI_ANNOTATION_INDENTED 3
389 #define wxSCI_UNDO_MAY_COALESCE 1
390 #define wxSCI_VS_NONE 0
391 #define wxSCI_VS_RECTANGULARSELECTION 1
392 #define wxSCI_VS_USERACCESSIBLE 2
393 #define wxSCI_VS_NOWRAPLINESTART 4
394 #define wxSCI_TECHNOLOGY_DEFAULT 0
395 #define wxSCI_TECHNOLOGY_DIRECTWRITE 1
396
397 /// Line end types which may be used in addition to LF, CR, and CRLF
398 /// SC_LINE_END_TYPE_UNICODE includes U+2028 Line Separator,
399 /// U+2029 Paragraph Separator, and U+0085 Next Line
400 #define wxSCI_LINE_END_TYPE_DEFAULT 0
401 #define wxSCI_LINE_END_TYPE_UNICODE 1
402
403 /// Maximum value of keywordSet parameter of SetKeyWords.
404 #define wxSCI_KEYWORDSET_MAX 8
405 #define wxSCI_TYPE_BOOLEAN 0
406 #define wxSCI_TYPE_INTEGER 1
407 #define wxSCI_TYPE_STRING 2
408
409 /// Notifications
410 /// Type of modification and the action which caused the modification.
411 /// These are defined as a bit mask to make it easy to specify which notifications are wanted.
412 /// One bit is set from each of SC_MOD_* and SC_PERFORMED_*.
413 #define wxSCI_MOD_INSERTTEXT 0x1
414 #define wxSCI_MOD_DELETETEXT 0x2
415 #define wxSCI_MOD_CHANGESTYLE 0x4
416 #define wxSCI_MOD_CHANGEFOLD 0x8
417 #define wxSCI_PERFORMED_USER 0x10
418 #define wxSCI_PERFORMED_UNDO 0x20
419 #define wxSCI_PERFORMED_REDO 0x40
420 #define wxSCI_MULTISTEPUNDOREDO 0x80
421 #define wxSCI_LASTSTEPINUNDOREDO 0x100
422 #define wxSCI_MOD_CHANGEMARKER 0x200
423 #define wxSCI_MOD_BEFOREINSERT 0x400
424 #define wxSCI_MOD_BEFOREDELETE 0x800
425 #define wxSCI_MULTILINEUNDOREDO 0x1000
426 #define wxSCI_STARTACTION 0x2000
427 #define wxSCI_MOD_CHANGEINDICATOR 0x4000
428 #define wxSCI_MOD_CHANGELINESTATE 0x8000
429 #define wxSCI_MOD_CHANGEMARGIN 0x10000
430 #define wxSCI_MOD_CHANGEANNOTATION 0x20000
431 #define wxSCI_MOD_CONTAINER 0x40000
432 #define wxSCI_MOD_LEXERSTATE 0x80000
433 #define wxSCI_MOD_INSERTCHECK 0x100000
434 #define wxSCI_MOD_CHANGETABSTOPS 0x200000
435 #define wxSCI_MODEVENTMASKALL 0x3FFFFF
436 #define wxSCI_UPDATE_CONTENT 0x1
437 #define wxSCI_UPDATE_SELECTION 0x2
438 #define wxSCI_UPDATE_V_SCROLL 0x4
439 #define wxSCI_UPDATE_H_SCROLL 0x8
440
441 /// Symbolic key codes and modifier flags.
442 /// ASCII and other printable characters below 256.
443 /// Extended keys above 300.
444 #define wxSCI_KEY_DOWN 300
445 #define wxSCI_KEY_UP 301
446 #define wxSCI_KEY_LEFT 302
447 #define wxSCI_KEY_RIGHT 303
448 #define wxSCI_KEY_HOME 304
449 #define wxSCI_KEY_END 305
450 #define wxSCI_KEY_PRIOR 306
451 #define wxSCI_KEY_NEXT 307
452 #define wxSCI_KEY_DELETE 308
453 #define wxSCI_KEY_INSERT 309
454 #define wxSCI_KEY_ESCAPE 7
455 #define wxSCI_KEY_BACK 8
456 #define wxSCI_KEY_TAB 9
457 #define wxSCI_KEY_RETURN 13
458 #define wxSCI_KEY_ADD 310
459 #define wxSCI_KEY_SUBTRACT 311
460 #define wxSCI_KEY_DIVIDE 312
461 #define wxSCI_KEY_WIN 313
462 #define wxSCI_KEY_RWIN 314
463 #define wxSCI_KEY_MENU 315
464 #define wxSCI_KEYMOD_NORM 0
465 #define wxSCI_KEYMOD_SHIFT 1
466 #define wxSCI_KEYMOD_CTRL 2
467 #define wxSCI_KEYMOD_ALT 4
468 #define wxSCI_KEYMOD_SUPER 8
469 #define wxSCI_KEYMOD_META 16
470 #define wxSCI_AC_FILLUP 1
471 #define wxSCI_AC_DOUBLECLICK 2
472 #define wxSCI_AC_TAB 3
473 #define wxSCI_AC_NEWLINE 4
474 #define wxSCI_AC_COMMAND 5
475
476 /// For SciLexer.h
477 #define wxSCI_LEX_CONTAINER 0
478 #define wxSCI_LEX_NULL 1
479 #define wxSCI_LEX_PYTHON 2
480 #define wxSCI_LEX_CPP 3
481 #define wxSCI_LEX_HTML 4
482 #define wxSCI_LEX_XML 5
483 #define wxSCI_LEX_PERL 6
484 #define wxSCI_LEX_SQL 7
485 #define wxSCI_LEX_VB 8
486 #define wxSCI_LEX_PROPERTIES 9
487 #define wxSCI_LEX_ERRORLIST 10
488 #define wxSCI_LEX_MAKEFILE 11
489 #define wxSCI_LEX_BATCH 12
490 #define wxSCI_LEX_XCODE 13
491 #define wxSCI_LEX_LATEX 14
492 #define wxSCI_LEX_LUA 15
493 #define wxSCI_LEX_DIFF 16
494 #define wxSCI_LEX_CONF 17
495 #define wxSCI_LEX_PASCAL 18
496 #define wxSCI_LEX_AVE 19
497 #define wxSCI_LEX_ADA 20
498 #define wxSCI_LEX_LISP 21
499 #define wxSCI_LEX_RUBY 22
500 #define wxSCI_LEX_EIFFEL 23
501 #define wxSCI_LEX_EIFFELKW 24
502 #define wxSCI_LEX_TCL 25
503 #define wxSCI_LEX_NNCRONTAB 26
504 #define wxSCI_LEX_BULLANT 27
505 #define wxSCI_LEX_VBSCRIPT 28
506 #define wxSCI_LEX_BAAN 31
507 #define wxSCI_LEX_MATLAB 32
508 #define wxSCI_LEX_SCRIPTOL 33
509 #define wxSCI_LEX_ASM 34
510 #define wxSCI_LEX_CPPNOCASE 35
511 #define wxSCI_LEX_FORTRAN 36
512 #define wxSCI_LEX_F77 37
513 #define wxSCI_LEX_CSS 38
514 #define wxSCI_LEX_POV 39
515 #define wxSCI_LEX_LOUT 40
516 #define wxSCI_LEX_ESCRIPT 41
517 #define wxSCI_LEX_PS 42
518 #define wxSCI_LEX_NSIS 43
519 #define wxSCI_LEX_MMIXAL 44
520 #define wxSCI_LEX_CLW 45
521 #define wxSCI_LEX_CLWNOCASE 46
522 #define wxSCI_LEX_LOT 47
523 #define wxSCI_LEX_YAML 48
524 #define wxSCI_LEX_TEX 49
525 #define wxSCI_LEX_METAPOST 50
526 #define wxSCI_LEX_POWERBASIC 51
527 #define wxSCI_LEX_FORTH 52
528 #define wxSCI_LEX_ERLANG 53
529 #define wxSCI_LEX_OCTAVE 54
530 #define wxSCI_LEX_MSSQL 55
531 #define wxSCI_LEX_VERILOG 56
532 #define wxSCI_LEX_KIX 57
533 #define wxSCI_LEX_GUI4CLI 58
534 #define wxSCI_LEX_SPECMAN 59
535 #define wxSCI_LEX_AU3 60
536 #define wxSCI_LEX_APDL 61
537 #define wxSCI_LEX_BASH 62
538 #define wxSCI_LEX_ASN1 63
539 #define wxSCI_LEX_VHDL 64
540 #define wxSCI_LEX_CAML 65
541 #define wxSCI_LEX_BLITZBASIC 66
542 #define wxSCI_LEX_PUREBASIC 67
543 #define wxSCI_LEX_HASKELL 68
544 #define wxSCI_LEX_PHPSCRIPT 69
545 #define wxSCI_LEX_TADS3 70
546 #define wxSCI_LEX_REBOL 71
547 #define wxSCI_LEX_SMALLTALK 72
548 #define wxSCI_LEX_FLAGSHIP 73
549 #define wxSCI_LEX_CSOUND 74
550 #define wxSCI_LEX_FREEBASIC 75
551 #define wxSCI_LEX_INNOSETUP 76
552 #define wxSCI_LEX_OPAL 77
553 #define wxSCI_LEX_SPICE 78
554 #define wxSCI_LEX_D 79
555 #define wxSCI_LEX_CMAKE 80
556 #define wxSCI_LEX_GAP 81
557 #define wxSCI_LEX_PLM 82
558 #define wxSCI_LEX_PROGRESS 83
559 #define wxSCI_LEX_ABAQUS 84
560 #define wxSCI_LEX_ASYMPTOTE 85
561 #define wxSCI_LEX_R 86
562 #define wxSCI_LEX_MAGIK 87
563 #define wxSCI_LEX_POWERSHELL 88
564 #define wxSCI_LEX_MYSQL 89
565 #define wxSCI_LEX_PO 90
566 #define wxSCI_LEX_TAL 91
567 #define wxSCI_LEX_COBOL 92
568 #define wxSCI_LEX_TACL 93
569 #define wxSCI_LEX_SORCUS 94
570 #define wxSCI_LEX_POWERPRO 95
571 #define wxSCI_LEX_NIMROD 96
572 #define wxSCI_LEX_SML 97
573 #define wxSCI_LEX_MARKDOWN 98
574 #define wxSCI_LEX_TXT2TAGS 99
575 #define wxSCI_LEX_A68K 100
576 #define wxSCI_LEX_MODULA 101
577 #define wxSCI_LEX_COFFEESCRIPT 102
578 #define wxSCI_LEX_TCMD 103
579 #define wxSCI_LEX_AVS 104
580 #define wxSCI_LEX_ECL 105
581 #define wxSCI_LEX_OSCRIPT 106
582 #define wxSCI_LEX_VISUALPROLOG 107
583 #define wxSCI_LEX_LITERATEHASKELL 108
584 #define wxSCI_LEX_STTXT 109
585 #define wxSCI_LEX_KVIRC 110
586 #define wxSCI_LEX_RUST 111
587 #define wxSCI_LEX_DMAP 112
588 #define wxSCI_LEX_AS 113
589 #define wxSCI_LEX_DMIS 114
590 #define wxSCI_LEX_REGISTRY 115
591 #define wxSCI_LEX_BIBTEX 116
592 #define wxSCI_LEX_SREC 117
593 #define wxSCI_LEX_IHEX 118
594 #define wxSCI_LEX_TEHEX 119
595 #define wxSCI_LEX_JSON 120
596 #define wxSCI_LEX_EDIFACT 121
597 #define wxSCI_LEX_INDENT 122
598 /* C::B begin */
599 #define wxSCI_LEX_LAST wxSCI_LEX_INDENT // update if the above gets extended!
600 /* C::B end */
601
602 /// When a lexer specifies its language as SCLEX_AUTOMATIC it receives a
603 /// value assigned in sequence from SCLEX_AUTOMATIC+1.
604 #define wxSCI_LEX_AUTOMATIC 1000
605
606 /// Lexical states for SCLEX_PYTHON
607 #define wxSCI_P_DEFAULT 0
608 #define wxSCI_P_COMMENTLINE 1
609 #define wxSCI_P_NUMBER 2
610 #define wxSCI_P_STRING 3
611 #define wxSCI_P_CHARACTER 4
612 #define wxSCI_P_WORD 5
613 #define wxSCI_P_TRIPLE 6
614 #define wxSCI_P_TRIPLEDOUBLE 7
615 #define wxSCI_P_CLASSNAME 8
616 #define wxSCI_P_DEFNAME 9
617 #define wxSCI_P_OPERATOR 10
618 #define wxSCI_P_IDENTIFIER 11
619 #define wxSCI_P_COMMENTBLOCK 12
620 #define wxSCI_P_STRINGEOL 13
621 #define wxSCI_P_WORD2 14
622 #define wxSCI_P_DECORATOR 15
623 #define wxSCI_P_FSTRING 16
624 #define wxSCI_P_FCHARACTER 17
625 #define wxSCI_P_FTRIPLE 18
626 #define wxSCI_P_FTRIPLEDOUBLE 19
627
628 /// Lexical states for SCLEX_CPP, SCLEX_BULLANT, SCLEX_COBOL, SCLEX_TACL, SCLEX_TAL
629 #define wxSCI_C_DEFAULT 0
630 #define wxSCI_C_COMMENT 1
631 #define wxSCI_C_COMMENTLINE 2
632 #define wxSCI_C_COMMENTDOC 3
633 #define wxSCI_C_NUMBER 4
634 #define wxSCI_C_WORD 5
635 #define wxSCI_C_STRING 6
636 #define wxSCI_C_CHARACTER 7
637 #define wxSCI_C_UUID 8
638 #define wxSCI_C_PREPROCESSOR 9
639 #define wxSCI_C_OPERATOR 10
640 #define wxSCI_C_IDENTIFIER 11
641 #define wxSCI_C_STRINGEOL 12
642 #define wxSCI_C_VERBATIM 13
643 #define wxSCI_C_REGEX 14
644 #define wxSCI_C_COMMENTLINEDOC 15
645 #define wxSCI_C_WORD2 16
646 #define wxSCI_C_COMMENTDOCKEYWORD 17
647 #define wxSCI_C_COMMENTDOCKEYWORDERROR 18
648 #define wxSCI_C_GLOBALCLASS 19
649 #define wxSCI_C_STRINGRAW 20
650 #define wxSCI_C_TRIPLEVERBATIM 21
651 #define wxSCI_C_HASHQUOTEDSTRING 22
652 #define wxSCI_C_PREPROCESSORCOMMENT 23
653 #define wxSCI_C_PREPROCESSORCOMMENTDOC 24
654 #define wxSCI_C_USERLITERAL 25
655 #define wxSCI_C_TASKMARKER 26
656 #define wxSCI_C_ESCAPESEQUENCE 27
657
658 /// WXSMITH begin #
659 /// Keep in sync with wxscinilla.h -> wxSCI_C_WXSMITH
660 /// Keep in sync with SciLexer.h -> SCE_C_WXSMITH
661 /// Keep in sync with lexer_cpp.xml -> Style name="wxSmith-generated code"
662 /// Notice that due to the "activeFlag" in LexCPP.cxx, the index must be < 64 (0x40).
663 #define wxSCI_C_WXSMITH 50
664
665 /// WXSMITH end #
666 /// Lexical states for SCLEX_D
667 #define wxSCI_D_DEFAULT 0
668 #define wxSCI_D_COMMENT 1
669 #define wxSCI_D_COMMENTLINE 2
670 #define wxSCI_D_COMMENTDOC 3
671 #define wxSCI_D_COMMENTNESTED 4
672 #define wxSCI_D_NUMBER 5
673 #define wxSCI_D_WORD 6
674 #define wxSCI_D_WORD2 7
675 #define wxSCI_D_WORD3 8
676 #define wxSCI_D_TYPEDEF 9
677 #define wxSCI_D_STRING 10
678 #define wxSCI_D_STRINGEOL 11
679 #define wxSCI_D_CHARACTER 12
680 #define wxSCI_D_OPERATOR 13
681 #define wxSCI_D_IDENTIFIER 14
682 #define wxSCI_D_COMMENTLINEDOC 15
683 #define wxSCI_D_COMMENTDOCKEYWORD 16
684 #define wxSCI_D_COMMENTDOCKEYWORDERROR 17
685 #define wxSCI_D_STRINGB 18
686 #define wxSCI_D_STRINGR 19
687 #define wxSCI_D_WORD5 20
688 #define wxSCI_D_WORD6 21
689 #define wxSCI_D_WORD7 22
690
691 /// Lexical states for SCLEX_TCL
692 #define wxSCI_TCL_DEFAULT 0
693 #define wxSCI_TCL_COMMENT 1
694 #define wxSCI_TCL_COMMENTLINE 2
695 #define wxSCI_TCL_NUMBER 3
696 #define wxSCI_TCL_WORD_IN_QUOTE 4
697 #define wxSCI_TCL_IN_QUOTE 5
698 #define wxSCI_TCL_OPERATOR 6
699 #define wxSCI_TCL_IDENTIFIER 7
700 #define wxSCI_TCL_SUBSTITUTION 8
701 #define wxSCI_TCL_SUB_BRACE 9
702 #define wxSCI_TCL_MODIFIER 10
703 #define wxSCI_TCL_EXPAND 11
704 #define wxSCI_TCL_WORD 12
705 #define wxSCI_TCL_WORD2 13
706 #define wxSCI_TCL_WORD3 14
707 #define wxSCI_TCL_WORD4 15
708 #define wxSCI_TCL_WORD5 16
709 #define wxSCI_TCL_WORD6 17
710 #define wxSCI_TCL_WORD7 18
711 #define wxSCI_TCL_WORD8 19
712 #define wxSCI_TCL_COMMENT_BOX 20
713 #define wxSCI_TCL_BLOCK_COMMENT 21
714
715 /// Lexical states for SCLEX_HTML, SCLEX_XML
716 #define wxSCI_H_DEFAULT 0
717 #define wxSCI_H_TAG 1
718 #define wxSCI_H_TAGUNKNOWN 2
719 #define wxSCI_H_ATTRIBUTE 3
720 #define wxSCI_H_ATTRIBUTEUNKNOWN 4
721 #define wxSCI_H_NUMBER 5
722 #define wxSCI_H_DOUBLESTRING 6
723 #define wxSCI_H_SINGLESTRING 7
724 #define wxSCI_H_OTHER 8
725 #define wxSCI_H_COMMENT 9
726 #define wxSCI_H_ENTITY 10
727
728 /// XML and ASP
729 #define wxSCI_H_TAGEND 11
730 #define wxSCI_H_XMLSTART 12
731 #define wxSCI_H_XMLEND 13
732 #define wxSCI_H_SCRIPT 14
733 #define wxSCI_H_ASP 15
734 #define wxSCI_H_ASPAT 16
735 #define wxSCI_H_CDATA 17
736 #define wxSCI_H_QUESTION 18
737
738 /// More HTML
739 #define wxSCI_H_VALUE 19
740
741 /// X-Code
742 #define wxSCI_H_XCCOMMENT 20
743
744 /// SGML
745 #define wxSCI_H_SGML_DEFAULT 21
746 #define wxSCI_H_SGML_COMMAND 22
747 #define wxSCI_H_SGML_1ST_PARAM 23
748 #define wxSCI_H_SGML_DOUBLESTRING 24
749 #define wxSCI_H_SGML_SIMPLESTRING 25
750 #define wxSCI_H_SGML_ERROR 26
751 #define wxSCI_H_SGML_SPECIAL 27
752 #define wxSCI_H_SGML_ENTITY 28
753 #define wxSCI_H_SGML_COMMENT 29
754 #define wxSCI_H_SGML_1ST_PARAM_COMMENT 30
755 #define wxSCI_H_SGML_BLOCK_DEFAULT 31
756
757 /// Embedded Javascript
758 #define wxSCI_HJ_START 40
759 #define wxSCI_HJ_DEFAULT 41
760 #define wxSCI_HJ_COMMENT 42
761 #define wxSCI_HJ_COMMENTLINE 43
762 #define wxSCI_HJ_COMMENTDOC 44
763 #define wxSCI_HJ_NUMBER 45
764 #define wxSCI_HJ_WORD 46
765 #define wxSCI_HJ_KEYWORD 47
766 #define wxSCI_HJ_DOUBLESTRING 48
767 #define wxSCI_HJ_SINGLESTRING 49
768 #define wxSCI_HJ_SYMBOLS 50
769 #define wxSCI_HJ_STRINGEOL 51
770 #define wxSCI_HJ_REGEX 52
771
772 /// ASP Javascript
773 #define wxSCI_HJA_START 55
774 #define wxSCI_HJA_DEFAULT 56
775 #define wxSCI_HJA_COMMENT 57
776 #define wxSCI_HJA_COMMENTLINE 58
777 #define wxSCI_HJA_COMMENTDOC 59
778 #define wxSCI_HJA_NUMBER 60
779 #define wxSCI_HJA_WORD 61
780 #define wxSCI_HJA_KEYWORD 62
781 #define wxSCI_HJA_DOUBLESTRING 63
782 #define wxSCI_HJA_SINGLESTRING 64
783 #define wxSCI_HJA_SYMBOLS 65
784 #define wxSCI_HJA_STRINGEOL 66
785 #define wxSCI_HJA_REGEX 67
786
787 /// Embedded VBScript
788 #define wxSCI_HB_START 70
789 #define wxSCI_HB_DEFAULT 71
790 #define wxSCI_HB_COMMENTLINE 72
791 #define wxSCI_HB_NUMBER 73
792 #define wxSCI_HB_WORD 74
793 #define wxSCI_HB_STRING 75
794 #define wxSCI_HB_IDENTIFIER 76
795 #define wxSCI_HB_STRINGEOL 77
796
797 /// ASP VBScript
798 #define wxSCI_HBA_START 80
799 #define wxSCI_HBA_DEFAULT 81
800 #define wxSCI_HBA_COMMENTLINE 82
801 #define wxSCI_HBA_NUMBER 83
802 #define wxSCI_HBA_WORD 84
803 #define wxSCI_HBA_STRING 85
804 #define wxSCI_HBA_IDENTIFIER 86
805 #define wxSCI_HBA_STRINGEOL 87
806
807 /// Embedded Python
808 #define wxSCI_HP_START 90
809 #define wxSCI_HP_DEFAULT 91
810 #define wxSCI_HP_COMMENTLINE 92
811 #define wxSCI_HP_NUMBER 93
812 #define wxSCI_HP_STRING 94
813 #define wxSCI_HP_CHARACTER 95
814 #define wxSCI_HP_WORD 96
815 #define wxSCI_HP_TRIPLE 97
816 #define wxSCI_HP_TRIPLEDOUBLE 98
817 #define wxSCI_HP_CLASSNAME 99
818 #define wxSCI_HP_DEFNAME 100
819 #define wxSCI_HP_OPERATOR 101
820 #define wxSCI_HP_IDENTIFIER 102
821
822 /// PHP
823 #define wxSCI_HPHP_COMPLEX_VARIABLE 104
824
825 /// ASP Python
826 #define wxSCI_HPA_START 105
827 #define wxSCI_HPA_DEFAULT 106
828 #define wxSCI_HPA_COMMENTLINE 107
829 #define wxSCI_HPA_NUMBER 108
830 #define wxSCI_HPA_STRING 109
831 #define wxSCI_HPA_CHARACTER 110
832 #define wxSCI_HPA_WORD 111
833 #define wxSCI_HPA_TRIPLE 112
834 #define wxSCI_HPA_TRIPLEDOUBLE 113
835 #define wxSCI_HPA_CLASSNAME 114
836 #define wxSCI_HPA_DEFNAME 115
837 #define wxSCI_HPA_OPERATOR 116
838 #define wxSCI_HPA_IDENTIFIER 117
839
840 /// PHP
841 #define wxSCI_HPHP_DEFAULT 118
842 #define wxSCI_HPHP_HSTRING 119
843 #define wxSCI_HPHP_SIMPLESTRING 120
844 #define wxSCI_HPHP_WORD 121
845 #define wxSCI_HPHP_NUMBER 122
846 #define wxSCI_HPHP_VARIABLE 123
847 #define wxSCI_HPHP_COMMENT 124
848 #define wxSCI_HPHP_COMMENTLINE 125
849 #define wxSCI_HPHP_HSTRING_VARIABLE 126
850 #define wxSCI_HPHP_OPERATOR 127
851
852 /// Lexical states for SCLEX_PERL
853 #define wxSCI_PL_DEFAULT 0
854 #define wxSCI_PL_ERROR 1
855 #define wxSCI_PL_COMMENTLINE 2
856 #define wxSCI_PL_POD 3
857 #define wxSCI_PL_NUMBER 4
858 #define wxSCI_PL_WORD 5
859 #define wxSCI_PL_STRING 6
860 #define wxSCI_PL_CHARACTER 7
861 #define wxSCI_PL_PUNCTUATION 8
862 #define wxSCI_PL_PREPROCESSOR 9
863 #define wxSCI_PL_OPERATOR 10
864 #define wxSCI_PL_IDENTIFIER 11
865 #define wxSCI_PL_SCALAR 12
866 #define wxSCI_PL_ARRAY 13
867 #define wxSCI_PL_HASH 14
868 #define wxSCI_PL_SYMBOLTABLE 15
869 #define wxSCI_PL_VARIABLE_INDEXER 16
870 #define wxSCI_PL_REGEX 17
871 #define wxSCI_PL_REGSUBST 18
872 #define wxSCI_PL_LONGQUOTE 19
873 #define wxSCI_PL_BACKTICKS 20
874 #define wxSCI_PL_DATASECTION 21
875 #define wxSCI_PL_HERE_DELIM 22
876 #define wxSCI_PL_HERE_Q 23
877 #define wxSCI_PL_HERE_QQ 24
878 #define wxSCI_PL_HERE_QX 25
879 #define wxSCI_PL_STRING_Q 26
880 #define wxSCI_PL_STRING_QQ 27
881 #define wxSCI_PL_STRING_QX 28
882 #define wxSCI_PL_STRING_QR 29
883 #define wxSCI_PL_STRING_QW 30
884 #define wxSCI_PL_POD_VERB 31
885 #define wxSCI_PL_SUB_PROTOTYPE 40
886 #define wxSCI_PL_FORMAT_IDENT 41
887 #define wxSCI_PL_FORMAT 42
888 #define wxSCI_PL_STRING_VAR 43
889 #define wxSCI_PL_XLAT 44
890 #define wxSCI_PL_REGEX_VAR 54
891 #define wxSCI_PL_REGSUBST_VAR 55
892 #define wxSCI_PL_BACKTICKS_VAR 57
893 #define wxSCI_PL_HERE_QQ_VAR 61
894 #define wxSCI_PL_HERE_QX_VAR 62
895 #define wxSCI_PL_STRING_QQ_VAR 64
896 #define wxSCI_PL_STRING_QX_VAR 65
897 #define wxSCI_PL_STRING_QR_VAR 66
898
899 /// Lexical states for SCLEX_RUBY
900 #define wxSCI_RB_DEFAULT 0
901 #define wxSCI_RB_ERROR 1
902 #define wxSCI_RB_COMMENTLINE 2
903 #define wxSCI_RB_POD 3
904 #define wxSCI_RB_NUMBER 4
905 #define wxSCI_RB_WORD 5
906 #define wxSCI_RB_STRING 6
907 #define wxSCI_RB_CHARACTER 7
908 #define wxSCI_RB_CLASSNAME 8
909 #define wxSCI_RB_DEFNAME 9
910 #define wxSCI_RB_OPERATOR 10
911 #define wxSCI_RB_IDENTIFIER 11
912 #define wxSCI_RB_REGEX 12
913 #define wxSCI_RB_GLOBAL 13
914 #define wxSCI_RB_SYMBOL 14
915 #define wxSCI_RB_MODULE_NAME 15
916 #define wxSCI_RB_INSTANCE_VAR 16
917 #define wxSCI_RB_CLASS_VAR 17
918 #define wxSCI_RB_BACKTICKS 18
919 #define wxSCI_RB_DATASECTION 19
920 #define wxSCI_RB_HERE_DELIM 20
921 #define wxSCI_RB_HERE_Q 21
922 #define wxSCI_RB_HERE_QQ 22
923 #define wxSCI_RB_HERE_QX 23
924 #define wxSCI_RB_STRING_Q 24
925 #define wxSCI_RB_STRING_QQ 25
926 #define wxSCI_RB_STRING_QX 26
927 #define wxSCI_RB_STRING_QR 27
928 #define wxSCI_RB_STRING_QW 28
929 #define wxSCI_RB_WORD_DEMOTED 29
930 #define wxSCI_RB_STDIN 30
931 #define wxSCI_RB_STDOUT 31
932 #define wxSCI_RB_STDERR 40
933 #define wxSCI_RB_UPPER_BOUND 41
934
935 /// Lexical states for SCLEX_VB, SCLEX_VBSCRIPT, SCLEX_POWERBASIC, SCLEX_BLITZBASIC, SCLEX_PUREBASIC, SCLEX_FREEBASIC
936 #define wxSCI_B_DEFAULT 0
937 #define wxSCI_B_COMMENT 1
938 #define wxSCI_B_NUMBER 2
939 #define wxSCI_B_KEYWORD 3
940 #define wxSCI_B_STRING 4
941 #define wxSCI_B_PREPROCESSOR 5
942 #define wxSCI_B_OPERATOR 6
943 #define wxSCI_B_IDENTIFIER 7
944 #define wxSCI_B_DATE 8
945 #define wxSCI_B_STRINGEOL 9
946 #define wxSCI_B_KEYWORD2 10
947 #define wxSCI_B_KEYWORD3 11
948 #define wxSCI_B_KEYWORD4 12
949 #define wxSCI_B_CONSTANT 13
950 #define wxSCI_B_ASM 14
951 #define wxSCI_B_LABEL 15
952 #define wxSCI_B_ERROR 16
953 #define wxSCI_B_HEXNUMBER 17
954 #define wxSCI_B_BINNUMBER 18
955 #define wxSCI_B_COMMENTBLOCK 19
956 #define wxSCI_B_DOCLINE 20
957 #define wxSCI_B_DOCBLOCK 21
958 #define wxSCI_B_DOCKEYWORD 22
959
960 /// Lexical states for SCLEX_PROPERTIES
961 #define wxSCI_PROPS_DEFAULT 0
962 #define wxSCI_PROPS_COMMENT 1
963 #define wxSCI_PROPS_SECTION 2
964 #define wxSCI_PROPS_ASSIGNMENT 3
965 #define wxSCI_PROPS_DEFVAL 4
966 #define wxSCI_PROPS_KEY 5
967
968 /// Lexical states for SCLEX_LATEX
969 #define wxSCI_L_DEFAULT 0
970 #define wxSCI_L_COMMAND 1
971 #define wxSCI_L_TAG 2
972 #define wxSCI_L_MATH 3
973 #define wxSCI_L_COMMENT 4
974 #define wxSCI_L_TAG2 5
975 #define wxSCI_L_MATH2 6
976 #define wxSCI_L_COMMENT2 7
977 #define wxSCI_L_VERBATIM 8
978 #define wxSCI_L_SHORTCMD 9
979 #define wxSCI_L_SPECIAL 10
980 #define wxSCI_L_CMDOPT 11
981 #define wxSCI_L_ERROR 12
982
983 /// Lexical states for SCLEX_LUA
984 #define wxSCI_LUA_DEFAULT 0
985 #define wxSCI_LUA_COMMENT 1
986 #define wxSCI_LUA_COMMENTLINE 2
987 #define wxSCI_LUA_COMMENTDOC 3
988 #define wxSCI_LUA_NUMBER 4
989 #define wxSCI_LUA_WORD 5
990 #define wxSCI_LUA_STRING 6
991 #define wxSCI_LUA_CHARACTER 7
992 #define wxSCI_LUA_LITERALSTRING 8
993 #define wxSCI_LUA_PREPROCESSOR 9
994 #define wxSCI_LUA_OPERATOR 10
995 #define wxSCI_LUA_IDENTIFIER 11
996 #define wxSCI_LUA_STRINGEOL 12
997 #define wxSCI_LUA_WORD2 13
998 #define wxSCI_LUA_WORD3 14
999 #define wxSCI_LUA_WORD4 15
1000 #define wxSCI_LUA_WORD5 16
1001 #define wxSCI_LUA_WORD6 17
1002 #define wxSCI_LUA_WORD7 18
1003 #define wxSCI_LUA_WORD8 19
1004 #define wxSCI_LUA_LABEL 20
1005
1006 /// Lexical states for SCLEX_ERRORLIST
1007 #define wxSCI_ERR_DEFAULT 0
1008 #define wxSCI_ERR_PYTHON 1
1009 #define wxSCI_ERR_GCC 2
1010 #define wxSCI_ERR_MS 3
1011 #define wxSCI_ERR_CMD 4
1012 #define wxSCI_ERR_BORLAND 5
1013 #define wxSCI_ERR_PERL 6
1014 #define wxSCI_ERR_NET 7
1015 #define wxSCI_ERR_LUA 8
1016 #define wxSCI_ERR_CTAG 9
1017 #define wxSCI_ERR_DIFF_CHANGED 10
1018 #define wxSCI_ERR_DIFF_ADDITION 11
1019 #define wxSCI_ERR_DIFF_DELETION 12
1020 #define wxSCI_ERR_DIFF_MESSAGE 13
1021 #define wxSCI_ERR_PHP 14
1022 #define wxSCI_ERR_ELF 15
1023 #define wxSCI_ERR_IFC 16
1024 #define wxSCI_ERR_IFORT 17
1025 #define wxSCI_ERR_ABSF 18
1026 #define wxSCI_ERR_TIDY 19
1027 #define wxSCI_ERR_JAVA_STACK 20
1028 #define wxSCI_ERR_VALUE 21
1029 #define wxSCI_ERR_GCC_INCLUDED_FROM 22
1030 #define wxSCI_ERR_ESCSEQ 23
1031 #define wxSCI_ERR_ESCSEQ_UNKNOWN 24
1032 #define wxSCI_ERR_ES_BLACK 40
1033 #define wxSCI_ERR_ES_RED 41
1034 #define wxSCI_ERR_ES_GREEN 42
1035 #define wxSCI_ERR_ES_BROWN 43
1036 #define wxSCI_ERR_ES_BLUE 44
1037 #define wxSCI_ERR_ES_MAGENTA 45
1038 #define wxSCI_ERR_ES_CYAN 46
1039 #define wxSCI_ERR_ES_GRAY 47
1040 #define wxSCI_ERR_ES_DARK_GRAY 48
1041 #define wxSCI_ERR_ES_BRIGHT_RED 49
1042 #define wxSCI_ERR_ES_BRIGHT_GREEN 50
1043 #define wxSCI_ERR_ES_YELLOW 51
1044 #define wxSCI_ERR_ES_BRIGHT_BLUE 52
1045 #define wxSCI_ERR_ES_BRIGHT_MAGENTA 53
1046 #define wxSCI_ERR_ES_BRIGHT_CYAN 54
1047 #define wxSCI_ERR_ES_WHITE 55
1048
1049 /// Lexical states for SCLEX_BATCH
1050 #define wxSCI_BAT_DEFAULT 0
1051 #define wxSCI_BAT_COMMENT 1
1052 #define wxSCI_BAT_WORD 2
1053 #define wxSCI_BAT_LABEL 3
1054 #define wxSCI_BAT_HIDE 4
1055 #define wxSCI_BAT_COMMAND 5
1056 #define wxSCI_BAT_IDENTIFIER 6
1057 #define wxSCI_BAT_OPERATOR 7
1058
1059 /// Lexical states for SCLEX_TCMD
1060 #define wxSCI_TCMD_DEFAULT 0
1061 #define wxSCI_TCMD_COMMENT 1
1062 #define wxSCI_TCMD_WORD 2
1063 #define wxSCI_TCMD_LABEL 3
1064 #define wxSCI_TCMD_HIDE 4
1065 #define wxSCI_TCMD_COMMAND 5
1066 #define wxSCI_TCMD_IDENTIFIER 6
1067 #define wxSCI_TCMD_OPERATOR 7
1068 #define wxSCI_TCMD_ENVIRONMENT 8
1069 #define wxSCI_TCMD_EXPANSION 9
1070 #define wxSCI_TCMD_CLABEL 10
1071
1072 /// Lexical states for SCLEX_MAKEFILE
1073 #define wxSCI_MAKE_DEFAULT 0
1074 #define wxSCI_MAKE_COMMENT 1
1075 #define wxSCI_MAKE_PREPROCESSOR 2
1076 #define wxSCI_MAKE_IDENTIFIER 3
1077 #define wxSCI_MAKE_OPERATOR 4
1078 #define wxSCI_MAKE_TARGET 5
1079 #define wxSCI_MAKE_IDEOL 9
1080
1081 /// Lexical states for SCLEX_DIFF
1082 #define wxSCI_DIFF_DEFAULT 0
1083 #define wxSCI_DIFF_COMMENT 1
1084 #define wxSCI_DIFF_COMMAND 2
1085 #define wxSCI_DIFF_HEADER 3
1086 #define wxSCI_DIFF_POSITION 4
1087 #define wxSCI_DIFF_DELETED 5
1088 #define wxSCI_DIFF_ADDED 6
1089 #define wxSCI_DIFF_CHANGED 7
1090
1091 /// Lexical states for SCLEX_CONF (Apache Configuration Files Lexer)
1092 #define wxSCI_CONF_DEFAULT 0
1093 #define wxSCI_CONF_COMMENT 1
1094 #define wxSCI_CONF_NUMBER 2
1095 #define wxSCI_CONF_IDENTIFIER 3
1096 #define wxSCI_CONF_EXTENSION 4
1097 #define wxSCI_CONF_PARAMETER 5
1098 #define wxSCI_CONF_STRING 6
1099 #define wxSCI_CONF_OPERATOR 7
1100 #define wxSCI_CONF_IP 8
1101 #define wxSCI_CONF_DIRECTIVE 9
1102
1103 /// Lexical states for SCLEX_AVE, Avenue
1104 #define wxSCI_AVE_DEFAULT 0
1105 #define wxSCI_AVE_COMMENT 1
1106 #define wxSCI_AVE_NUMBER 2
1107 #define wxSCI_AVE_WORD 3
1108 #define wxSCI_AVE_STRING 6
1109 #define wxSCI_AVE_ENUM 7
1110 #define wxSCI_AVE_STRINGEOL 8
1111 #define wxSCI_AVE_IDENTIFIER 9
1112 #define wxSCI_AVE_OPERATOR 10
1113 #define wxSCI_AVE_WORD1 11
1114 #define wxSCI_AVE_WORD2 12
1115 #define wxSCI_AVE_WORD3 13
1116 #define wxSCI_AVE_WORD4 14
1117 #define wxSCI_AVE_WORD5 15
1118 #define wxSCI_AVE_WORD6 16
1119
1120 /// Lexical states for SCLEX_ADA
1121 #define wxSCI_ADA_DEFAULT 0
1122 #define wxSCI_ADA_WORD 1
1123 #define wxSCI_ADA_IDENTIFIER 2
1124 #define wxSCI_ADA_NUMBER 3
1125 #define wxSCI_ADA_DELIMITER 4
1126 #define wxSCI_ADA_CHARACTER 5
1127 #define wxSCI_ADA_CHARACTEREOL 6
1128 #define wxSCI_ADA_STRING 7
1129 #define wxSCI_ADA_STRINGEOL 8
1130 #define wxSCI_ADA_LABEL 9
1131 #define wxSCI_ADA_COMMENTLINE 10
1132 #define wxSCI_ADA_ILLEGAL 11
1133
1134 /// Lexical states for SCLEX_BAAN
1135 #define wxSCI_BAAN_DEFAULT 0
1136 #define wxSCI_BAAN_COMMENT 1
1137 #define wxSCI_BAAN_COMMENTDOC 2
1138 #define wxSCI_BAAN_NUMBER 3
1139 #define wxSCI_BAAN_WORD 4
1140 #define wxSCI_BAAN_STRING 5
1141 #define wxSCI_BAAN_PREPROCESSOR 6
1142 #define wxSCI_BAAN_OPERATOR 7
1143 #define wxSCI_BAAN_IDENTIFIER 8
1144 #define wxSCI_BAAN_STRINGEOL 9
1145 #define wxSCI_BAAN_WORD2 10
1146 #define wxSCI_BAAN_WORD3 11
1147 #define wxSCI_BAAN_WORD4 12
1148 #define wxSCI_BAAN_WORD5 13
1149 #define wxSCI_BAAN_WORD6 14
1150 #define wxSCI_BAAN_WORD7 15
1151 #define wxSCI_BAAN_WORD8 16
1152 #define wxSCI_BAAN_WORD9 17
1153 #define wxSCI_BAAN_TABLEDEF 18
1154 #define wxSCI_BAAN_TABLESQL 19
1155 #define wxSCI_BAAN_FUNCTION 20
1156 #define wxSCI_BAAN_DOMDEF 21
1157 #define wxSCI_BAAN_FUNCDEF 22
1158 #define wxSCI_BAAN_OBJECTDEF 23
1159 #define wxSCI_BAAN_DEFINEDEF 24
1160
1161 /// Lexical states for SCLEX_LISP
1162 #define wxSCI_LISP_DEFAULT 0
1163 #define wxSCI_LISP_COMMENT 1
1164 #define wxSCI_LISP_NUMBER 2
1165 #define wxSCI_LISP_KEYWORD 3
1166 #define wxSCI_LISP_KEYWORD_KW 4
1167 #define wxSCI_LISP_SYMBOL 5
1168 #define wxSCI_LISP_STRING 6
1169 #define wxSCI_LISP_STRINGEOL 8
1170 #define wxSCI_LISP_IDENTIFIER 9
1171 #define wxSCI_LISP_OPERATOR 10
1172 #define wxSCI_LISP_SPECIAL 11
1173 #define wxSCI_LISP_MULTI_COMMENT 12
1174
1175 /// Lexical states for SCLEX_EIFFEL and SCLEX_EIFFELKW
1176 #define wxSCI_EIFFEL_DEFAULT 0
1177 #define wxSCI_EIFFEL_COMMENTLINE 1
1178 #define wxSCI_EIFFEL_NUMBER 2
1179 #define wxSCI_EIFFEL_WORD 3
1180 #define wxSCI_EIFFEL_STRING 4
1181 #define wxSCI_EIFFEL_CHARACTER 5
1182 #define wxSCI_EIFFEL_OPERATOR 6
1183 #define wxSCI_EIFFEL_IDENTIFIER 7
1184 #define wxSCI_EIFFEL_STRINGEOL 8
1185
1186 /// Lexical states for SCLEX_NNCRONTAB (nnCron crontab Lexer)
1187 #define wxSCI_NNCRONTAB_DEFAULT 0
1188 #define wxSCI_NNCRONTAB_COMMENT 1
1189 #define wxSCI_NNCRONTAB_TASK 2
1190 #define wxSCI_NNCRONTAB_SECTION 3
1191 #define wxSCI_NNCRONTAB_KEYWORD 4
1192 #define wxSCI_NNCRONTAB_MODIFIER 5
1193 #define wxSCI_NNCRONTAB_ASTERISK 6
1194 #define wxSCI_NNCRONTAB_NUMBER 7
1195 #define wxSCI_NNCRONTAB_STRING 8
1196 #define wxSCI_NNCRONTAB_ENVIRONMENT 9
1197 #define wxSCI_NNCRONTAB_IDENTIFIER 10
1198
1199 /// Lexical states for SCLEX_FORTH (Forth Lexer)
1200 #define wxSCI_FORTH_DEFAULT 0
1201 #define wxSCI_FORTH_COMMENT 1
1202 #define wxSCI_FORTH_COMMENT_ML 2
1203 #define wxSCI_FORTH_IDENTIFIER 3
1204 #define wxSCI_FORTH_CONTROL 4
1205 #define wxSCI_FORTH_KEYWORD 5
1206 #define wxSCI_FORTH_DEFWORD 6
1207 #define wxSCI_FORTH_PREWORD1 7
1208 #define wxSCI_FORTH_PREWORD2 8
1209 #define wxSCI_FORTH_NUMBER 9
1210 #define wxSCI_FORTH_STRING 10
1211 #define wxSCI_FORTH_LOCALE 11
1212
1213 /// Lexical states for SCLEX_MATLAB
1214 #define wxSCI_MATLAB_DEFAULT 0
1215 #define wxSCI_MATLAB_COMMENT 1
1216 #define wxSCI_MATLAB_COMMAND 2
1217 #define wxSCI_MATLAB_NUMBER 3
1218 #define wxSCI_MATLAB_KEYWORD 4
1219
1220 /// single quoted string
1221 #define wxSCI_MATLAB_STRING 5
1222 #define wxSCI_MATLAB_OPERATOR 6
1223 #define wxSCI_MATLAB_IDENTIFIER 7
1224 #define wxSCI_MATLAB_DOUBLEQUOTESTRING 8
1225
1226 /// Lexical states for SCLEX_SCRIPTOL
1227 #define wxSCI_SCRIPTOL_DEFAULT 0
1228 #define wxSCI_SCRIPTOL_WHITE 1
1229 #define wxSCI_SCRIPTOL_COMMENTLINE 2
1230 #define wxSCI_SCRIPTOL_PERSISTENT 3
1231 #define wxSCI_SCRIPTOL_CSTYLE 4
1232 #define wxSCI_SCRIPTOL_COMMENTBLOCK 5
1233 #define wxSCI_SCRIPTOL_NUMBER 6
1234 #define wxSCI_SCRIPTOL_STRING 7
1235 #define wxSCI_SCRIPTOL_CHARACTER 8
1236 #define wxSCI_SCRIPTOL_STRINGEOL 9
1237 #define wxSCI_SCRIPTOL_KEYWORD 10
1238 #define wxSCI_SCRIPTOL_OPERATOR 11
1239 #define wxSCI_SCRIPTOL_IDENTIFIER 12
1240 #define wxSCI_SCRIPTOL_TRIPLE 13
1241 #define wxSCI_SCRIPTOL_CLASSNAME 14
1242 #define wxSCI_SCRIPTOL_PREPROCESSOR 15
1243
1244 /// Lexical states for SCLEX_ASM, SCLEX_AS
1245 #define wxSCI_ASM_DEFAULT 0
1246 #define wxSCI_ASM_COMMENT 1
1247 #define wxSCI_ASM_NUMBER 2
1248 #define wxSCI_ASM_STRING 3
1249 #define wxSCI_ASM_OPERATOR 4
1250 #define wxSCI_ASM_IDENTIFIER 5
1251 #define wxSCI_ASM_CPUINSTRUCTION 6
1252 #define wxSCI_ASM_MATHINSTRUCTION 7
1253 #define wxSCI_ASM_REGISTER 8
1254 #define wxSCI_ASM_DIRECTIVE 9
1255 #define wxSCI_ASM_DIRECTIVEOPERAND 10
1256 #define wxSCI_ASM_COMMENTBLOCK 11
1257 #define wxSCI_ASM_CHARACTER 12
1258 #define wxSCI_ASM_STRINGEOL 13
1259 #define wxSCI_ASM_EXTINSTRUCTION 14
1260 #define wxSCI_ASM_COMMENTDIRECTIVE 15
1261
1262 /// Lexical states for SCLEX_FORTRAN
1263 #define wxSCI_F_DEFAULT 0
1264 #define wxSCI_F_COMMENT 1
1265 #define wxSCI_F_NUMBER 2
1266 #define wxSCI_F_STRING1 3
1267 #define wxSCI_F_STRING2 4
1268 #define wxSCI_F_STRINGEOL 5
1269 #define wxSCI_F_OPERATOR 6
1270 #define wxSCI_F_IDENTIFIER 7
1271 #define wxSCI_F_WORD 8
1272 #define wxSCI_F_WORD2 9
1273 #define wxSCI_F_WORD3 10
1274 #define wxSCI_F_PREPROCESSOR 11
1275 #define wxSCI_F_OPERATOR2 12
1276 #define wxSCI_F_LABEL 13
1277 #define wxSCI_F_CONTINUATION 14
1278
1279 /// Lexical states for SCLEX_CSS
1280 #define wxSCI_CSS_DEFAULT 0
1281 #define wxSCI_CSS_TAG 1
1282 #define wxSCI_CSS_CLASS 2
1283 #define wxSCI_CSS_PSEUDOCLASS 3
1284 #define wxSCI_CSS_UNKNOWN_PSEUDOCLASS 4
1285 #define wxSCI_CSS_OPERATOR 5
1286 #define wxSCI_CSS_IDENTIFIER 6
1287 #define wxSCI_CSS_UNKNOWN_IDENTIFIER 7
1288 #define wxSCI_CSS_VALUE 8
1289 #define wxSCI_CSS_COMMENT 9
1290 #define wxSCI_CSS_ID 10
1291 #define wxSCI_CSS_IMPORTANT 11
1292 #define wxSCI_CSS_DIRECTIVE 12
1293 #define wxSCI_CSS_DOUBLESTRING 13
1294 #define wxSCI_CSS_SINGLESTRING 14
1295 #define wxSCI_CSS_IDENTIFIER2 15
1296 #define wxSCI_CSS_ATTRIBUTE 16
1297 #define wxSCI_CSS_IDENTIFIER3 17
1298 #define wxSCI_CSS_PSEUDOELEMENT 18
1299 #define wxSCI_CSS_EXTENDED_IDENTIFIER 19
1300 #define wxSCI_CSS_EXTENDED_PSEUDOCLASS 20
1301 #define wxSCI_CSS_EXTENDED_PSEUDOELEMENT 21
1302 #define wxSCI_CSS_MEDIA 22
1303 #define wxSCI_CSS_VARIABLE 23
1304
1305 /// Lexical states for SCLEX_POV
1306 #define wxSCI_POV_DEFAULT 0
1307 #define wxSCI_POV_COMMENT 1
1308 #define wxSCI_POV_COMMENTLINE 2
1309 #define wxSCI_POV_NUMBER 3
1310 #define wxSCI_POV_OPERATOR 4
1311 #define wxSCI_POV_IDENTIFIER 5
1312 #define wxSCI_POV_STRING 6
1313 #define wxSCI_POV_STRINGEOL 7
1314 #define wxSCI_POV_DIRECTIVE 8
1315 #define wxSCI_POV_BADDIRECTIVE 9
1316 #define wxSCI_POV_WORD2 10
1317 #define wxSCI_POV_WORD3 11
1318 #define wxSCI_POV_WORD4 12
1319 #define wxSCI_POV_WORD5 13
1320 #define wxSCI_POV_WORD6 14
1321 #define wxSCI_POV_WORD7 15
1322 #define wxSCI_POV_WORD8 16
1323
1324 /// Lexical states for SCLEX_LOUT
1325 #define wxSCI_LOUT_DEFAULT 0
1326 #define wxSCI_LOUT_COMMENT 1
1327 #define wxSCI_LOUT_NUMBER 2
1328 #define wxSCI_LOUT_WORD 3
1329 #define wxSCI_LOUT_WORD2 4
1330 #define wxSCI_LOUT_WORD3 5
1331 #define wxSCI_LOUT_WORD4 6
1332 #define wxSCI_LOUT_STRING 7
1333 #define wxSCI_LOUT_OPERATOR 8
1334 #define wxSCI_LOUT_IDENTIFIER 9
1335 #define wxSCI_LOUT_STRINGEOL 10
1336
1337 /// Lexical states for SCLEX_ESCRIPT
1338 #define wxSCI_ESCRIPT_DEFAULT 0
1339 #define wxSCI_ESCRIPT_COMMENT 1
1340 #define wxSCI_ESCRIPT_COMMENTLINE 2
1341 #define wxSCI_ESCRIPT_COMMENTDOC 3
1342 #define wxSCI_ESCRIPT_NUMBER 4
1343 #define wxSCI_ESCRIPT_WORD 5
1344 #define wxSCI_ESCRIPT_STRING 6
1345 #define wxSCI_ESCRIPT_OPERATOR 7
1346 #define wxSCI_ESCRIPT_IDENTIFIER 8
1347 #define wxSCI_ESCRIPT_BRACE 9
1348 #define wxSCI_ESCRIPT_WORD2 10
1349 #define wxSCI_ESCRIPT_WORD3 11
1350
1351 /// Lexical states for SCLEX_PS
1352 #define wxSCI_PS_DEFAULT 0
1353 #define wxSCI_PS_COMMENT 1
1354 #define wxSCI_PS_DSC_COMMENT 2
1355 #define wxSCI_PS_DSC_VALUE 3
1356 #define wxSCI_PS_NUMBER 4
1357 #define wxSCI_PS_NAME 5
1358 #define wxSCI_PS_KEYWORD 6
1359 #define wxSCI_PS_LITERAL 7
1360 #define wxSCI_PS_IMMEVAL 8
1361 #define wxSCI_PS_PAREN_ARRAY 9
1362 #define wxSCI_PS_PAREN_DICT 10
1363 #define wxSCI_PS_PAREN_PROC 11
1364 #define wxSCI_PS_TEXT 12
1365 #define wxSCI_PS_HEXSTRING 13
1366 #define wxSCI_PS_BASE85STRING 14
1367 #define wxSCI_PS_BADSTRINGCHAR 15
1368
1369 /// Lexical states for SCLEX_NSIS
1370 #define wxSCI_NSIS_DEFAULT 0
1371 #define wxSCI_NSIS_COMMENT 1
1372 #define wxSCI_NSIS_STRINGDQ 2
1373 #define wxSCI_NSIS_STRINGLQ 3
1374 #define wxSCI_NSIS_STRINGRQ 4
1375 #define wxSCI_NSIS_FUNCTION 5
1376 #define wxSCI_NSIS_VARIABLE 6
1377 #define wxSCI_NSIS_LABEL 7
1378 #define wxSCI_NSIS_USERDEFINED 8
1379 #define wxSCI_NSIS_SECTIONDEF 9
1380 #define wxSCI_NSIS_SUBSECTIONDEF 10
1381 #define wxSCI_NSIS_IFDEFINEDEF 11
1382 #define wxSCI_NSIS_MACRODEF 12
1383 #define wxSCI_NSIS_STRINGVAR 13
1384 #define wxSCI_NSIS_NUMBER 14
1385 #define wxSCI_NSIS_SECTIONGROUP 15
1386 #define wxSCI_NSIS_PAGEEX 16
1387 #define wxSCI_NSIS_FUNCTIONDEF 17
1388 #define wxSCI_NSIS_COMMENTBOX 18
1389
1390 /// Lexical states for SCLEX_MMIXAL
1391 #define wxSCI_MMIXAL_LEADWS 0
1392 #define wxSCI_MMIXAL_COMMENT 1
1393 #define wxSCI_MMIXAL_LABEL 2
1394 #define wxSCI_MMIXAL_OPCODE 3
1395 #define wxSCI_MMIXAL_OPCODE_PRE 4
1396 #define wxSCI_MMIXAL_OPCODE_VALID 5
1397 #define wxSCI_MMIXAL_OPCODE_UNKNOWN 6
1398 #define wxSCI_MMIXAL_OPCODE_POST 7
1399 #define wxSCI_MMIXAL_OPERANDS 8
1400 #define wxSCI_MMIXAL_NUMBER 9
1401 #define wxSCI_MMIXAL_REF 10
1402 #define wxSCI_MMIXAL_CHAR 11
1403 #define wxSCI_MMIXAL_STRING 12
1404 #define wxSCI_MMIXAL_REGISTER 13
1405 #define wxSCI_MMIXAL_HEX 14
1406 #define wxSCI_MMIXAL_OPERATOR 15
1407 #define wxSCI_MMIXAL_SYMBOL 16
1408 #define wxSCI_MMIXAL_INCLUDE 17
1409
1410 /// Lexical states for SCLEX_CLW
1411 #define wxSCI_CLW_DEFAULT 0
1412 #define wxSCI_CLW_LABEL 1
1413 #define wxSCI_CLW_COMMENT 2
1414 #define wxSCI_CLW_STRING 3
1415 #define wxSCI_CLW_USER_IDENTIFIER 4
1416 #define wxSCI_CLW_INTEGER_CONSTANT 5
1417 #define wxSCI_CLW_REAL_CONSTANT 6
1418 #define wxSCI_CLW_PICTURE_STRING 7
1419 #define wxSCI_CLW_KEYWORD 8
1420 #define wxSCI_CLW_COMPILER_DIRECTIVE 9
1421 #define wxSCI_CLW_RUNTIME_EXPRESSIONS 10
1422 #define wxSCI_CLW_BUILTIN_PROCEDURES_FUNCTION 11
1423 #define wxSCI_CLW_STRUCTURE_DATA_TYPE 12
1424 #define wxSCI_CLW_ATTRIBUTE 13
1425 #define wxSCI_CLW_STANDARD_EQUATE 14
1426 #define wxSCI_CLW_ERROR 15
1427 #define wxSCI_CLW_DEPRECATED 16
1428
1429 /// Lexical states for SCLEX_LOT
1430 #define wxSCI_LOT_DEFAULT 0
1431 #define wxSCI_LOT_HEADER 1
1432 #define wxSCI_LOT_BREAK 2
1433 #define wxSCI_LOT_SET 3
1434 #define wxSCI_LOT_PASS 4
1435 #define wxSCI_LOT_FAIL 5
1436 #define wxSCI_LOT_ABORT 6
1437
1438 /// Lexical states for SCLEX_YAML
1439 #define wxSCI_YAML_DEFAULT 0
1440 #define wxSCI_YAML_COMMENT 1
1441 #define wxSCI_YAML_IDENTIFIER 2
1442 #define wxSCI_YAML_KEYWORD 3
1443 #define wxSCI_YAML_NUMBER 4
1444 #define wxSCI_YAML_REFERENCE 5
1445 #define wxSCI_YAML_DOCUMENT 6
1446 #define wxSCI_YAML_TEXT 7
1447 #define wxSCI_YAML_ERROR 8
1448 #define wxSCI_YAML_OPERATOR 9
1449
1450 /// Lexical states for SCLEX_TEX
1451 #define wxSCI_TEX_DEFAULT 0
1452 #define wxSCI_TEX_SPECIAL 1
1453 #define wxSCI_TEX_GROUP 2
1454 #define wxSCI_TEX_SYMBOL 3
1455 #define wxSCI_TEX_COMMAND 4
1456 #define wxSCI_TEX_TEXT 5
1457 #define wxSCI_METAPOST_DEFAULT 0
1458 #define wxSCI_METAPOST_SPECIAL 1
1459 #define wxSCI_METAPOST_GROUP 2
1460 #define wxSCI_METAPOST_SYMBOL 3
1461 #define wxSCI_METAPOST_COMMAND 4
1462 #define wxSCI_METAPOST_TEXT 5
1463 #define wxSCI_METAPOST_EXTRA 6
1464
1465 /// Lexical states for SCLEX_ERLANG
1466 #define wxSCI_ERLANG_DEFAULT 0
1467 #define wxSCI_ERLANG_COMMENT 1
1468 #define wxSCI_ERLANG_VARIABLE 2
1469 #define wxSCI_ERLANG_NUMBER 3
1470 #define wxSCI_ERLANG_KEYWORD 4
1471 #define wxSCI_ERLANG_STRING 5
1472 #define wxSCI_ERLANG_OPERATOR 6
1473 #define wxSCI_ERLANG_ATOM 7
1474 #define wxSCI_ERLANG_FUNCTION_NAME 8
1475 #define wxSCI_ERLANG_CHARACTER 9
1476 #define wxSCI_ERLANG_MACRO 10
1477 #define wxSCI_ERLANG_RECORD 11
1478 #define wxSCI_ERLANG_PREPROC 12
1479 #define wxSCI_ERLANG_NODE_NAME 13
1480 #define wxSCI_ERLANG_COMMENT_FUNCTION 14
1481 #define wxSCI_ERLANG_COMMENT_MODULE 15
1482 #define wxSCI_ERLANG_COMMENT_DOC 16
1483 #define wxSCI_ERLANG_COMMENT_DOC_MACRO 17
1484 #define wxSCI_ERLANG_ATOM_QUOTED 18
1485 #define wxSCI_ERLANG_MACRO_QUOTED 19
1486 #define wxSCI_ERLANG_RECORD_QUOTED 20
1487 #define wxSCI_ERLANG_NODE_NAME_QUOTED 21
1488 #define wxSCI_ERLANG_BIFS 22
1489 #define wxSCI_ERLANG_MODULES 23
1490 #define wxSCI_ERLANG_MODULES_ATT 24
1491 #define wxSCI_ERLANG_UNKNOWN 31
1492
1493 /// Lexical states for SCLEX_OCTAVE are identical to MatLab
1494 /// Lexical states for SCLEX_MSSQL
1495 #define wxSCI_MSSQL_DEFAULT 0
1496 #define wxSCI_MSSQL_COMMENT 1
1497 #define wxSCI_MSSQL_LINE_COMMENT 2
1498 #define wxSCI_MSSQL_NUMBER 3
1499 #define wxSCI_MSSQL_STRING 4
1500 #define wxSCI_MSSQL_OPERATOR 5
1501 #define wxSCI_MSSQL_IDENTIFIER 6
1502 #define wxSCI_MSSQL_VARIABLE 7
1503 #define wxSCI_MSSQL_COLUMN_NAME 8
1504 #define wxSCI_MSSQL_STATEMENT 9
1505 #define wxSCI_MSSQL_DATATYPE 10
1506 #define wxSCI_MSSQL_SYSTABLE 11
1507 #define wxSCI_MSSQL_GLOBAL_VARIABLE 12
1508 #define wxSCI_MSSQL_FUNCTION 13
1509 #define wxSCI_MSSQL_STORED_PROCEDURE 14
1510 #define wxSCI_MSSQL_DEFAULT_PREF_DATATYPE 15
1511 #define wxSCI_MSSQL_COLUMN_NAME_2 16
1512
1513 /// Lexical states for SCLEX_VERILOG
1514 #define wxSCI_V_DEFAULT 0
1515 #define wxSCI_V_COMMENT 1
1516 #define wxSCI_V_COMMENTLINE 2
1517 #define wxSCI_V_COMMENTLINEBANG 3
1518 #define wxSCI_V_NUMBER 4
1519 #define wxSCI_V_WORD 5
1520 #define wxSCI_V_STRING 6
1521 #define wxSCI_V_WORD2 7
1522 #define wxSCI_V_WORD3 8
1523 #define wxSCI_V_PREPROCESSOR 9
1524 #define wxSCI_V_OPERATOR 10
1525 #define wxSCI_V_IDENTIFIER 11
1526 #define wxSCI_V_STRINGEOL 12
1527 #define wxSCI_V_USER 19
1528 #define wxSCI_V_COMMENT_WORD 20
1529 #define wxSCI_V_INPUT 21
1530 #define wxSCI_V_OUTPUT 22
1531 #define wxSCI_V_INOUT 23
1532 #define wxSCI_V_PORT_CONNECT 24
1533
1534 /// Lexical states for SCLEX_KIX
1535 #define wxSCI_KIX_DEFAULT 0
1536 #define wxSCI_KIX_COMMENT 1
1537 #define wxSCI_KIX_STRING1 2
1538 #define wxSCI_KIX_STRING2 3
1539 #define wxSCI_KIX_NUMBER 4
1540 #define wxSCI_KIX_VAR 5
1541 #define wxSCI_KIX_MACRO 6
1542 #define wxSCI_KIX_KEYWORD 7
1543 #define wxSCI_KIX_FUNCTIONS 8
1544 #define wxSCI_KIX_OPERATOR 9
1545 #define wxSCI_KIX_COMMENTSTREAM 10
1546 #define wxSCI_KIX_IDENTIFIER 31
1547
1548 /// Lexical states for SCLEX_GUI4CLI
1549 #define wxSCI_GC_DEFAULT 0
1550 #define wxSCI_GC_COMMENTLINE 1
1551 #define wxSCI_GC_COMMENTBLOCK 2
1552 #define wxSCI_GC_GLOBAL 3
1553 #define wxSCI_GC_EVENT 4
1554 #define wxSCI_GC_ATTRIBUTE 5
1555 #define wxSCI_GC_CONTROL 6
1556 #define wxSCI_GC_COMMAND 7
1557 #define wxSCI_GC_STRING 8
1558 #define wxSCI_GC_OPERATOR 9
1559
1560 /// Lexical states for SCLEX_SPECMAN
1561 #define wxSCI_SN_DEFAULT 0
1562 #define wxSCI_SN_CODE 1
1563 #define wxSCI_SN_COMMENTLINE 2
1564 #define wxSCI_SN_COMMENTLINEBANG 3
1565 #define wxSCI_SN_NUMBER 4
1566 #define wxSCI_SN_WORD 5
1567 #define wxSCI_SN_STRING 6
1568 #define wxSCI_SN_WORD2 7
1569 #define wxSCI_SN_WORD3 8
1570 #define wxSCI_SN_PREPROCESSOR 9
1571 #define wxSCI_SN_OPERATOR 10
1572 #define wxSCI_SN_IDENTIFIER 11
1573 #define wxSCI_SN_STRINGEOL 12
1574 #define wxSCI_SN_REGEXTAG 13
1575 #define wxSCI_SN_SIGNAL 14
1576 #define wxSCI_SN_USER 19
1577
1578 /// Lexical states for SCLEX_AU3
1579 #define wxSCI_AU3_DEFAULT 0
1580 #define wxSCI_AU3_COMMENT 1
1581 #define wxSCI_AU3_COMMENTBLOCK 2
1582 #define wxSCI_AU3_NUMBER 3
1583 #define wxSCI_AU3_FUNCTION 4
1584 #define wxSCI_AU3_KEYWORD 5
1585 #define wxSCI_AU3_MACRO 6
1586 #define wxSCI_AU3_STRING 7
1587 #define wxSCI_AU3_OPERATOR 8
1588 #define wxSCI_AU3_VARIABLE 9
1589 #define wxSCI_AU3_SENT 10
1590 #define wxSCI_AU3_PREPROCESSOR 11
1591 #define wxSCI_AU3_SPECIAL 12
1592 #define wxSCI_AU3_EXPAND 13
1593 #define wxSCI_AU3_COMOBJ 14
1594 #define wxSCI_AU3_UDF 15
1595
1596 /// Lexical states for SCLEX_APDL
1597 #define wxSCI_APDL_DEFAULT 0
1598 #define wxSCI_APDL_COMMENT 1
1599 #define wxSCI_APDL_COMMENTBLOCK 2
1600 #define wxSCI_APDL_NUMBER 3
1601 #define wxSCI_APDL_STRING 4
1602 #define wxSCI_APDL_OPERATOR 5
1603 #define wxSCI_APDL_WORD 6
1604 #define wxSCI_APDL_PROCESSOR 7
1605 #define wxSCI_APDL_COMMAND 8
1606 #define wxSCI_APDL_SLASHCOMMAND 9
1607 #define wxSCI_APDL_STARCOMMAND 10
1608 #define wxSCI_APDL_ARGUMENT 11
1609 #define wxSCI_APDL_FUNCTION 12
1610
1611 /// Lexical states for SCLEX_BASH
1612 #define wxSCI_SH_DEFAULT 0
1613 #define wxSCI_SH_ERROR 1
1614 #define wxSCI_SH_COMMENTLINE 2
1615 #define wxSCI_SH_NUMBER 3
1616 #define wxSCI_SH_WORD 4
1617 #define wxSCI_SH_STRING 5
1618 #define wxSCI_SH_CHARACTER 6
1619 #define wxSCI_SH_OPERATOR 7
1620 #define wxSCI_SH_IDENTIFIER 8
1621 #define wxSCI_SH_SCALAR 9
1622 #define wxSCI_SH_PARAM 10
1623 #define wxSCI_SH_BACKTICKS 11
1624 #define wxSCI_SH_HERE_DELIM 12
1625 #define wxSCI_SH_HERE_Q 13
1626
1627 /// Lexical states for SCLEX_ASN1
1628 #define wxSCI_ASN1_DEFAULT 0
1629 #define wxSCI_ASN1_COMMENT 1
1630 #define wxSCI_ASN1_IDENTIFIER 2
1631 #define wxSCI_ASN1_STRING 3
1632 #define wxSCI_ASN1_OID 4
1633 #define wxSCI_ASN1_SCALAR 5
1634 #define wxSCI_ASN1_KEYWORD 6
1635 #define wxSCI_ASN1_ATTRIBUTE 7
1636 #define wxSCI_ASN1_DESCRIPTOR 8
1637 #define wxSCI_ASN1_TYPE 9
1638 #define wxSCI_ASN1_OPERATOR 10
1639
1640 /// Lexical states for SCLEX_VHDL
1641 #define wxSCI_VHDL_DEFAULT 0
1642 #define wxSCI_VHDL_COMMENT 1
1643 #define wxSCI_VHDL_COMMENTLINEBANG 2
1644 #define wxSCI_VHDL_NUMBER 3
1645 #define wxSCI_VHDL_STRING 4
1646 #define wxSCI_VHDL_OPERATOR 5
1647 #define wxSCI_VHDL_IDENTIFIER 6
1648 #define wxSCI_VHDL_STRINGEOL 7
1649 #define wxSCI_VHDL_KEYWORD 8
1650 #define wxSCI_VHDL_STDOPERATOR 9
1651 #define wxSCI_VHDL_ATTRIBUTE 10
1652 #define wxSCI_VHDL_STDFUNCTION 11
1653 #define wxSCI_VHDL_STDPACKAGE 12
1654 #define wxSCI_VHDL_STDTYPE 13
1655 #define wxSCI_VHDL_USERWORD 14
1656 #define wxSCI_VHDL_BLOCK_COMMENT 15
1657
1658 /// Lexical states for SCLEX_CAML
1659 #define wxSCI_CAML_DEFAULT 0
1660 #define wxSCI_CAML_IDENTIFIER 1
1661 #define wxSCI_CAML_TAGNAME 2
1662 #define wxSCI_CAML_KEYWORD 3
1663 #define wxSCI_CAML_KEYWORD2 4
1664 #define wxSCI_CAML_KEYWORD3 5
1665 #define wxSCI_CAML_LINENUM 6
1666 #define wxSCI_CAML_OPERATOR 7
1667 #define wxSCI_CAML_NUMBER 8
1668 #define wxSCI_CAML_CHAR 9
1669 #define wxSCI_CAML_WHITE 10
1670 #define wxSCI_CAML_STRING 11
1671 #define wxSCI_CAML_COMMENT 12
1672 #define wxSCI_CAML_COMMENT1 13
1673 #define wxSCI_CAML_COMMENT2 14
1674 #define wxSCI_CAML_COMMENT3 15
1675
1676 /// Lexical states for SCLEX_HASKELL
1677 #define wxSCI_HA_DEFAULT 0
1678 #define wxSCI_HA_IDENTIFIER 1
1679 #define wxSCI_HA_KEYWORD 2
1680 #define wxSCI_HA_NUMBER 3
1681 #define wxSCI_HA_STRING 4
1682 #define wxSCI_HA_CHARACTER 5
1683 #define wxSCI_HA_CLASS 6
1684 #define wxSCI_HA_MODULE 7
1685 #define wxSCI_HA_CAPITAL 8
1686 #define wxSCI_HA_DATA 9
1687 #define wxSCI_HA_IMPORT 10
1688 #define wxSCI_HA_OPERATOR 11
1689 #define wxSCI_HA_INSTANCE 12
1690 #define wxSCI_HA_COMMENTLINE 13
1691 #define wxSCI_HA_COMMENTBLOCK 14
1692 #define wxSCI_HA_COMMENTBLOCK2 15
1693 #define wxSCI_HA_COMMENTBLOCK3 16
1694 #define wxSCI_HA_PRAGMA 17
1695 #define wxSCI_HA_PREPROCESSOR 18
1696 #define wxSCI_HA_STRINGEOL 19
1697 #define wxSCI_HA_RESERVED_OPERATOR 20
1698 #define wxSCI_HA_LITERATE_COMMENT 21
1699 #define wxSCI_HA_LITERATE_CODEDELIM 22
1700
1701 /// Lexical states of SCLEX_TADS3
1702 #define wxSCI_T3_DEFAULT 0
1703 #define wxSCI_T3_X_DEFAULT 1
1704 #define wxSCI_T3_PREPROCESSOR 2
1705 #define wxSCI_T3_BLOCK_COMMENT 3
1706 #define wxSCI_T3_LINE_COMMENT 4
1707 #define wxSCI_T3_OPERATOR 5
1708 #define wxSCI_T3_KEYWORD 6
1709 #define wxSCI_T3_NUMBER 7
1710 #define wxSCI_T3_IDENTIFIER 8
1711 #define wxSCI_T3_S_STRING 9
1712 #define wxSCI_T3_D_STRING 10
1713 #define wxSCI_T3_X_STRING 11
1714 #define wxSCI_T3_LIB_DIRECTIVE 12
1715 #define wxSCI_T3_MSG_PARAM 13
1716 #define wxSCI_T3_HTML_TAG 14
1717 #define wxSCI_T3_HTML_DEFAULT 15
1718 #define wxSCI_T3_HTML_STRING 16
1719 #define wxSCI_T3_USER1 17
1720 #define wxSCI_T3_USER2 18
1721 #define wxSCI_T3_USER3 19
1722 #define wxSCI_T3_BRACE 20
1723
1724 /// Lexical states for SCLEX_REBOL
1725 #define wxSCI_REBOL_DEFAULT 0
1726 #define wxSCI_REBOL_COMMENTLINE 1
1727 #define wxSCI_REBOL_COMMENTBLOCK 2
1728 #define wxSCI_REBOL_PREFACE 3
1729 #define wxSCI_REBOL_OPERATOR 4
1730 #define wxSCI_REBOL_CHARACTER 5
1731 #define wxSCI_REBOL_QUOTEDSTRING 6
1732 #define wxSCI_REBOL_BRACEDSTRING 7
1733 #define wxSCI_REBOL_NUMBER 8
1734 #define wxSCI_REBOL_PAIR 9
1735 #define wxSCI_REBOL_TUPLE 10
1736 #define wxSCI_REBOL_BINARY 11
1737 #define wxSCI_REBOL_MONEY 12
1738 #define wxSCI_REBOL_ISSUE 13
1739 #define wxSCI_REBOL_TAG 14
1740 #define wxSCI_REBOL_FILE 15
1741 #define wxSCI_REBOL_EMAIL 16
1742 #define wxSCI_REBOL_URL 17
1743 #define wxSCI_REBOL_DATE 18
1744 #define wxSCI_REBOL_TIME 19
1745 #define wxSCI_REBOL_IDENTIFIER 20
1746 #define wxSCI_REBOL_WORD 21
1747 #define wxSCI_REBOL_WORD2 22
1748 #define wxSCI_REBOL_WORD3 23
1749 #define wxSCI_REBOL_WORD4 24
1750 #define wxSCI_REBOL_WORD5 25
1751 #define wxSCI_REBOL_WORD6 26
1752 #define wxSCI_REBOL_WORD7 27
1753 #define wxSCI_REBOL_WORD8 28
1754
1755 /// Lexical states for SCLEX_SQL
1756 #define wxSCI_SQL_DEFAULT 0
1757 #define wxSCI_SQL_COMMENT 1
1758 #define wxSCI_SQL_COMMENTLINE 2
1759 #define wxSCI_SQL_COMMENTDOC 3
1760 #define wxSCI_SQL_NUMBER 4
1761 #define wxSCI_SQL_WORD 5
1762 #define wxSCI_SQL_STRING 6
1763 #define wxSCI_SQL_CHARACTER 7
1764 #define wxSCI_SQL_SQLPLUS 8
1765 #define wxSCI_SQL_SQLPLUS_PROMPT 9
1766 #define wxSCI_SQL_OPERATOR 10
1767 #define wxSCI_SQL_IDENTIFIER 11
1768 #define wxSCI_SQL_SQLPLUS_COMMENT 13
1769 #define wxSCI_SQL_COMMENTLINEDOC 15
1770 #define wxSCI_SQL_WORD2 16
1771 #define wxSCI_SQL_COMMENTDOCKEYWORD 17
1772 #define wxSCI_SQL_COMMENTDOCKEYWORDERROR 18
1773 #define wxSCI_SQL_USER1 19
1774 #define wxSCI_SQL_USER2 20
1775 #define wxSCI_SQL_USER3 21
1776 #define wxSCI_SQL_USER4 22
1777 #define wxSCI_SQL_QUOTEDIDENTIFIER 23
1778 #define wxSCI_SQL_QOPERATOR 24
1779
1780 /// Lexical states for SCLEX_SMALLTALK
1781 #define wxSCI_ST_DEFAULT 0
1782 #define wxSCI_ST_STRING 1
1783 #define wxSCI_ST_NUMBER 2
1784 #define wxSCI_ST_COMMENT 3
1785 #define wxSCI_ST_SYMBOL 4
1786 #define wxSCI_ST_BINARY 5
1787 #define wxSCI_ST_BOOL 6
1788 #define wxSCI_ST_SELF 7
1789 #define wxSCI_ST_SUPER 8
1790 #define wxSCI_ST_NIL 9
1791 #define wxSCI_ST_GLOBAL 10
1792 #define wxSCI_ST_RETURN 11
1793 #define wxSCI_ST_SPECIAL 12
1794 #define wxSCI_ST_KWSEND 13
1795 #define wxSCI_ST_ASSIGN 14
1796 #define wxSCI_ST_CHARACTER 15
1797 #define wxSCI_ST_SPEC_SEL 16
1798
1799 /// Lexical states for SCLEX_FLAGSHIP (clipper)
1800 #define wxSCI_FS_DEFAULT 0
1801 #define wxSCI_FS_COMMENT 1
1802 #define wxSCI_FS_COMMENTLINE 2
1803 #define wxSCI_FS_COMMENTDOC 3
1804 #define wxSCI_FS_COMMENTLINEDOC 4
1805 #define wxSCI_FS_COMMENTDOCKEYWORD 5
1806 #define wxSCI_FS_COMMENTDOCKEYWORDERROR 6
1807 #define wxSCI_FS_KEYWORD 7
1808 #define wxSCI_FS_KEYWORD2 8
1809 #define wxSCI_FS_KEYWORD3 9
1810 #define wxSCI_FS_KEYWORD4 10
1811 #define wxSCI_FS_NUMBER 11
1812 #define wxSCI_FS_STRING 12
1813 #define wxSCI_FS_PREPROCESSOR 13
1814 #define wxSCI_FS_OPERATOR 14
1815 #define wxSCI_FS_IDENTIFIER 15
1816 #define wxSCI_FS_DATE 16
1817 #define wxSCI_FS_STRINGEOL 17
1818 #define wxSCI_FS_CONSTANT 18
1819 #define wxSCI_FS_WORDOPERATOR 19
1820 #define wxSCI_FS_DISABLEDCODE 20
1821 #define wxSCI_FS_DEFAULT_C 21
1822 #define wxSCI_FS_COMMENTDOC_C 22
1823 #define wxSCI_FS_COMMENTLINEDOC_C 23
1824 #define wxSCI_FS_KEYWORD_C 24
1825 #define wxSCI_FS_KEYWORD2_C 25
1826 #define wxSCI_FS_NUMBER_C 26
1827 #define wxSCI_FS_STRING_C 27
1828 #define wxSCI_FS_PREPROCESSOR_C 28
1829 #define wxSCI_FS_OPERATOR_C 29
1830 #define wxSCI_FS_IDENTIFIER_C 30
1831 #define wxSCI_FS_STRINGEOL_C 31
1832
1833 /// Lexical states for SCLEX_CSOUND
1834 #define wxSCI_CSOUND_DEFAULT 0
1835 #define wxSCI_CSOUND_COMMENT 1
1836 #define wxSCI_CSOUND_NUMBER 2
1837 #define wxSCI_CSOUND_OPERATOR 3
1838 #define wxSCI_CSOUND_INSTR 4
1839 #define wxSCI_CSOUND_IDENTIFIER 5
1840 #define wxSCI_CSOUND_OPCODE 6
1841 #define wxSCI_CSOUND_HEADERSTMT 7
1842 #define wxSCI_CSOUND_USERKEYWORD 8
1843 #define wxSCI_CSOUND_COMMENTBLOCK 9
1844 #define wxSCI_CSOUND_PARAM 10
1845 #define wxSCI_CSOUND_ARATE_VAR 11
1846 #define wxSCI_CSOUND_KRATE_VAR 12
1847 #define wxSCI_CSOUND_IRATE_VAR 13
1848 #define wxSCI_CSOUND_GLOBAL_VAR 14
1849 #define wxSCI_CSOUND_STRINGEOL 15
1850
1851 /// Lexical states for SCLEX_INNOSETUP
1852 #define wxSCI_INNO_DEFAULT 0
1853 #define wxSCI_INNO_COMMENT 1
1854 #define wxSCI_INNO_KEYWORD 2
1855 #define wxSCI_INNO_PARAMETER 3
1856 #define wxSCI_INNO_SECTION 4
1857 #define wxSCI_INNO_PREPROC 5
1858 #define wxSCI_INNO_INLINE_EXPANSION 6
1859 #define wxSCI_INNO_COMMENT_PASCAL 7
1860 #define wxSCI_INNO_KEYWORD_PASCAL 8
1861 #define wxSCI_INNO_KEYWORD_USER 9
1862 #define wxSCI_INNO_STRING_DOUBLE 10
1863 #define wxSCI_INNO_STRING_SINGLE 11
1864 #define wxSCI_INNO_IDENTIFIER 12
1865
1866 /// Lexical states for SCLEX_OPAL
1867 #define wxSCI_OPAL_SPACE 0
1868 #define wxSCI_OPAL_COMMENT_BLOCK 1
1869 #define wxSCI_OPAL_COMMENT_LINE 2
1870 #define wxSCI_OPAL_INTEGER 3
1871 #define wxSCI_OPAL_KEYWORD 4
1872 #define wxSCI_OPAL_SORT 5
1873 #define wxSCI_OPAL_STRING 6
1874 #define wxSCI_OPAL_PAR 7
1875 #define wxSCI_OPAL_BOOL_CONST 8
1876 #define wxSCI_OPAL_DEFAULT 32
1877
1878 /// Lexical states for SCLEX_SPICE
1879 #define wxSCI_SPICE_DEFAULT 0
1880 #define wxSCI_SPICE_IDENTIFIER 1
1881 #define wxSCI_SPICE_KEYWORD 2
1882 #define wxSCI_SPICE_KEYWORD2 3
1883 #define wxSCI_SPICE_KEYWORD3 4
1884 #define wxSCI_SPICE_NUMBER 5
1885 #define wxSCI_SPICE_DELIMITER 6
1886 #define wxSCI_SPICE_VALUE 7
1887 #define wxSCI_SPICE_COMMENTLINE 8
1888
1889 /// Lexical states for SCLEX_CMAKE
1890 #define wxSCI_CMAKE_DEFAULT 0
1891 #define wxSCI_CMAKE_COMMENT 1
1892 #define wxSCI_CMAKE_STRINGDQ 2
1893 #define wxSCI_CMAKE_STRINGLQ 3
1894 #define wxSCI_CMAKE_STRINGRQ 4
1895 #define wxSCI_CMAKE_COMMANDS 5
1896 #define wxSCI_CMAKE_PARAMETERS 6
1897 #define wxSCI_CMAKE_VARIABLE 7
1898 #define wxSCI_CMAKE_USERDEFINED 8
1899 #define wxSCI_CMAKE_WHILEDEF 9
1900 #define wxSCI_CMAKE_FOREACHDEF 10
1901 #define wxSCI_CMAKE_IFDEFINEDEF 11
1902 #define wxSCI_CMAKE_MACRODEF 12
1903 #define wxSCI_CMAKE_STRINGVAR 13
1904 #define wxSCI_CMAKE_NUMBER 14
1905
1906 /// Lexical states for SCLEX_GAP
1907 #define wxSCI_GAP_DEFAULT 0
1908 #define wxSCI_GAP_IDENTIFIER 1
1909 #define wxSCI_GAP_KEYWORD 2
1910 #define wxSCI_GAP_KEYWORD2 3
1911 #define wxSCI_GAP_KEYWORD3 4
1912 #define wxSCI_GAP_KEYWORD4 5
1913 #define wxSCI_GAP_STRING 6
1914 #define wxSCI_GAP_CHAR 7
1915 #define wxSCI_GAP_OPERATOR 8
1916 #define wxSCI_GAP_COMMENT 9
1917 #define wxSCI_GAP_NUMBER 10
1918 #define wxSCI_GAP_STRINGEOL 11
1919
1920 /// Lexical state for SCLEX_PLM
1921 #define wxSCI_PLM_DEFAULT 0
1922 #define wxSCI_PLM_COMMENT 1
1923 #define wxSCI_PLM_STRING 2
1924 #define wxSCI_PLM_NUMBER 3
1925 #define wxSCI_PLM_IDENTIFIER 4
1926 #define wxSCI_PLM_OPERATOR 5
1927 #define wxSCI_PLM_CONTROL 6
1928 #define wxSCI_PLM_KEYWORD 7
1929
1930 /// Lexical state for SCLEX_PROGRESS
1931 #define wxSCI_ABL_DEFAULT 0
1932 #define wxSCI_ABL_NUMBER 1
1933 #define wxSCI_ABL_WORD 2
1934 #define wxSCI_ABL_STRING 3
1935 #define wxSCI_ABL_CHARACTER 4
1936 #define wxSCI_ABL_PREPROCESSOR 5
1937 #define wxSCI_ABL_OPERATOR 6
1938 #define wxSCI_ABL_IDENTIFIER 7
1939 #define wxSCI_ABL_BLOCK 8
1940 #define wxSCI_ABL_END 9
1941 #define wxSCI_ABL_COMMENT 10
1942 #define wxSCI_ABL_TASKMARKER 11
1943 #define wxSCI_ABL_LINECOMMENT 12
1944
1945 /// Lexical states for SCLEX_ABAQUS
1946 #define wxSCI_ABAQUS_DEFAULT 0
1947 #define wxSCI_ABAQUS_COMMENT 1
1948 #define wxSCI_ABAQUS_COMMENTBLOCK 2
1949 #define wxSCI_ABAQUS_NUMBER 3
1950 #define wxSCI_ABAQUS_STRING 4
1951 #define wxSCI_ABAQUS_OPERATOR 5
1952 #define wxSCI_ABAQUS_WORD 6
1953 #define wxSCI_ABAQUS_PROCESSOR 7
1954 #define wxSCI_ABAQUS_COMMAND 8
1955 #define wxSCI_ABAQUS_SLASHCOMMAND 9
1956 #define wxSCI_ABAQUS_STARCOMMAND 10
1957 #define wxSCI_ABAQUS_ARGUMENT 11
1958 #define wxSCI_ABAQUS_FUNCTION 12
1959
1960 /// Lexical states for SCLEX_ASYMPTOTE
1961 #define wxSCI_ASY_DEFAULT 0
1962 #define wxSCI_ASY_COMMENT 1
1963 #define wxSCI_ASY_COMMENTLINE 2
1964 #define wxSCI_ASY_NUMBER 3
1965 #define wxSCI_ASY_WORD 4
1966 #define wxSCI_ASY_STRING 5
1967 #define wxSCI_ASY_CHARACTER 6
1968 #define wxSCI_ASY_OPERATOR 7
1969 #define wxSCI_ASY_IDENTIFIER 8
1970 #define wxSCI_ASY_STRINGEOL 9
1971 #define wxSCI_ASY_COMMENTLINEDOC 10
1972 #define wxSCI_ASY_WORD2 11
1973
1974 /// Lexical states for SCLEX_R
1975 #define wxSCI_R_DEFAULT 0
1976 #define wxSCI_R_COMMENT 1
1977 #define wxSCI_R_KWORD 2
1978 #define wxSCI_R_BASEKWORD 3
1979 #define wxSCI_R_OTHERKWORD 4
1980 #define wxSCI_R_NUMBER 5
1981 #define wxSCI_R_STRING 6
1982 #define wxSCI_R_STRING2 7
1983 #define wxSCI_R_OPERATOR 8
1984 #define wxSCI_R_IDENTIFIER 9
1985 #define wxSCI_R_INFIX 10
1986 #define wxSCI_R_INFIXEOL 11
1987
1988 /// Lexical state for SCLEX_MAGIK
1989 #define wxSCI_MAGIK_DEFAULT 0
1990 #define wxSCI_MAGIK_COMMENT 1
1991 #define wxSCI_MAGIK_HYPER_COMMENT 16
1992 #define wxSCI_MAGIK_STRING 2
1993 #define wxSCI_MAGIK_CHARACTER 3
1994 #define wxSCI_MAGIK_NUMBER 4
1995 #define wxSCI_MAGIK_IDENTIFIER 5
1996 #define wxSCI_MAGIK_OPERATOR 6
1997 #define wxSCI_MAGIK_FLOW 7
1998 #define wxSCI_MAGIK_CONTAINER 8
1999 #define wxSCI_MAGIK_BRACKET_BLOCK 9
2000 #define wxSCI_MAGIK_BRACE_BLOCK 10
2001 #define wxSCI_MAGIK_SQBRACKET_BLOCK 11
2002 #define wxSCI_MAGIK_UNKNOWN_KEYWORD 12
2003 #define wxSCI_MAGIK_KEYWORD 13
2004 #define wxSCI_MAGIK_PRAGMA 14
2005 #define wxSCI_MAGIK_SYMBOL 15
2006
2007 /// Lexical state for SCLEX_POWERSHELL
2008 #define wxSCI_POWERSHELL_DEFAULT 0
2009 #define wxSCI_POWERSHELL_COMMENT 1
2010 #define wxSCI_POWERSHELL_STRING 2
2011 #define wxSCI_POWERSHELL_CHARACTER 3
2012 #define wxSCI_POWERSHELL_NUMBER 4
2013 #define wxSCI_POWERSHELL_VARIABLE 5
2014 #define wxSCI_POWERSHELL_OPERATOR 6
2015 #define wxSCI_POWERSHELL_IDENTIFIER 7
2016 #define wxSCI_POWERSHELL_KEYWORD 8
2017 #define wxSCI_POWERSHELL_CMDLET 9
2018 #define wxSCI_POWERSHELL_ALIAS 10
2019 #define wxSCI_POWERSHELL_FUNCTION 11
2020 #define wxSCI_POWERSHELL_USER1 12
2021 #define wxSCI_POWERSHELL_COMMENTSTREAM 13
2022 #define wxSCI_POWERSHELL_HERE_STRING 14
2023 #define wxSCI_POWERSHELL_HERE_CHARACTER 15
2024 #define wxSCI_POWERSHELL_COMMENTDOCKEYWORD 16
2025
2026 /// Lexical state for SCLEX_MYSQL
2027 #define wxSCI_MYSQL_DEFAULT 0
2028 #define wxSCI_MYSQL_COMMENT 1
2029 #define wxSCI_MYSQL_COMMENTLINE 2
2030 #define wxSCI_MYSQL_VARIABLE 3
2031 #define wxSCI_MYSQL_SYSTEMVARIABLE 4
2032 #define wxSCI_MYSQL_KNOWNSYSTEMVARIABLE 5
2033 #define wxSCI_MYSQL_NUMBER 6
2034 #define wxSCI_MYSQL_MAJORKEYWORD 7
2035 #define wxSCI_MYSQL_KEYWORD 8
2036 #define wxSCI_MYSQL_DATABASEOBJECT 9
2037 #define wxSCI_MYSQL_PROCEDUREKEYWORD 10
2038 #define wxSCI_MYSQL_STRING 11
2039 #define wxSCI_MYSQL_SQSTRING 12
2040 #define wxSCI_MYSQL_DQSTRING 13
2041 #define wxSCI_MYSQL_OPERATOR 14
2042 #define wxSCI_MYSQL_FUNCTION 15
2043 #define wxSCI_MYSQL_IDENTIFIER 16
2044 #define wxSCI_MYSQL_QUOTEDIDENTIFIER 17
2045 #define wxSCI_MYSQL_USER1 18
2046 #define wxSCI_MYSQL_USER2 19
2047 #define wxSCI_MYSQL_USER3 20
2048 #define wxSCI_MYSQL_HIDDENCOMMAND 21
2049 #define wxSCI_MYSQL_PLACEHOLDER 22
2050
2051 /// Lexical state for SCLEX_PO
2052 #define wxSCI_PO_DEFAULT 0
2053 #define wxSCI_PO_COMMENT 1
2054 #define wxSCI_PO_MSGID 2
2055 #define wxSCI_PO_MSGID_TEXT 3
2056 #define wxSCI_PO_MSGSTR 4
2057 #define wxSCI_PO_MSGSTR_TEXT 5
2058 #define wxSCI_PO_MSGCTXT 6
2059 #define wxSCI_PO_MSGCTXT_TEXT 7
2060 #define wxSCI_PO_FUZZY 8
2061 #define wxSCI_PO_PROGRAMMER_COMMENT 9
2062 #define wxSCI_PO_REFERENCE 10
2063 #define wxSCI_PO_FLAGS 11
2064 #define wxSCI_PO_MSGID_TEXT_EOL 12
2065 #define wxSCI_PO_MSGSTR_TEXT_EOL 13
2066 #define wxSCI_PO_MSGCTXT_TEXT_EOL 14
2067 #define wxSCI_PO_ERROR 15
2068
2069 /// Lexical states for SCLEX_PASCAL
2070 #define wxSCI_PAS_DEFAULT 0
2071 #define wxSCI_PAS_IDENTIFIER 1
2072 #define wxSCI_PAS_COMMENT 2
2073 #define wxSCI_PAS_COMMENT2 3
2074 #define wxSCI_PAS_COMMENTLINE 4
2075 #define wxSCI_PAS_PREPROCESSOR 5
2076 #define wxSCI_PAS_PREPROCESSOR2 6
2077 #define wxSCI_PAS_NUMBER 7
2078 #define wxSCI_PAS_HEXNUMBER 8
2079 #define wxSCI_PAS_WORD 9
2080 #define wxSCI_PAS_STRING 10
2081 #define wxSCI_PAS_STRINGEOL 11
2082 #define wxSCI_PAS_CHARACTER 12
2083 #define wxSCI_PAS_OPERATOR 13
2084 #define wxSCI_PAS_ASM 14
2085
2086 /// Lexical state for SCLEX_SORCUS
2087 #define wxSCI_SORCUS_DEFAULT 0
2088 #define wxSCI_SORCUS_COMMAND 1
2089 #define wxSCI_SORCUS_PARAMETER 2
2090 #define wxSCI_SORCUS_COMMENTLINE 3
2091 #define wxSCI_SORCUS_STRING 4
2092 #define wxSCI_SORCUS_STRINGEOL 5
2093 #define wxSCI_SORCUS_IDENTIFIER 6
2094 #define wxSCI_SORCUS_OPERATOR 7
2095 #define wxSCI_SORCUS_NUMBER 8
2096 #define wxSCI_SORCUS_CONSTANT 9
2097
2098 /// Lexical state for SCLEX_POWERPRO
2099 #define wxSCI_POWERPRO_DEFAULT 0
2100 #define wxSCI_POWERPRO_COMMENTBLOCK 1
2101 #define wxSCI_POWERPRO_COMMENTLINE 2
2102 #define wxSCI_POWERPRO_NUMBER 3
2103 #define wxSCI_POWERPRO_WORD 4
2104 #define wxSCI_POWERPRO_WORD2 5
2105 #define wxSCI_POWERPRO_WORD3 6
2106 #define wxSCI_POWERPRO_WORD4 7
2107 #define wxSCI_POWERPRO_DOUBLEQUOTEDSTRING 8
2108 #define wxSCI_POWERPRO_SINGLEQUOTEDSTRING 9
2109 #define wxSCI_POWERPRO_LINECONTINUE 10
2110 #define wxSCI_POWERPRO_OPERATOR 11
2111 #define wxSCI_POWERPRO_IDENTIFIER 12
2112 #define wxSCI_POWERPRO_STRINGEOL 13
2113 #define wxSCI_POWERPRO_VERBATIM 14
2114 #define wxSCI_POWERPRO_ALTQUOTE 15
2115 #define wxSCI_POWERPRO_FUNCTION 16
2116
2117 /// Lexical states for SCLEX_SML
2118 #define wxSCI_SML_DEFAULT 0
2119 #define wxSCI_SML_IDENTIFIER 1
2120 #define wxSCI_SML_TAGNAME 2
2121 #define wxSCI_SML_KEYWORD 3
2122 #define wxSCI_SML_KEYWORD2 4
2123 #define wxSCI_SML_KEYWORD3 5
2124 #define wxSCI_SML_LINENUM 6
2125 #define wxSCI_SML_OPERATOR 7
2126 #define wxSCI_SML_NUMBER 8
2127 #define wxSCI_SML_CHAR 9
2128 #define wxSCI_SML_STRING 11
2129 #define wxSCI_SML_COMMENT 12
2130 #define wxSCI_SML_COMMENT1 13
2131 #define wxSCI_SML_COMMENT2 14
2132 #define wxSCI_SML_COMMENT3 15
2133
2134 /// Lexical state for SCLEX_MARKDOWN
2135 #define wxSCI_MARKDOWN_DEFAULT 0
2136 #define wxSCI_MARKDOWN_LINE_BEGIN 1
2137 #define wxSCI_MARKDOWN_STRONG1 2
2138 #define wxSCI_MARKDOWN_STRONG2 3
2139 #define wxSCI_MARKDOWN_EM1 4
2140 #define wxSCI_MARKDOWN_EM2 5
2141 #define wxSCI_MARKDOWN_HEADER1 6
2142 #define wxSCI_MARKDOWN_HEADER2 7
2143 #define wxSCI_MARKDOWN_HEADER3 8
2144 #define wxSCI_MARKDOWN_HEADER4 9
2145 #define wxSCI_MARKDOWN_HEADER5 10
2146 #define wxSCI_MARKDOWN_HEADER6 11
2147 #define wxSCI_MARKDOWN_PRECHAR 12
2148 #define wxSCI_MARKDOWN_ULIST_ITEM 13
2149 #define wxSCI_MARKDOWN_OLIST_ITEM 14
2150 #define wxSCI_MARKDOWN_BLOCKQUOTE 15
2151 #define wxSCI_MARKDOWN_STRIKEOUT 16
2152 #define wxSCI_MARKDOWN_HRULE 17
2153 #define wxSCI_MARKDOWN_LINK 18
2154 #define wxSCI_MARKDOWN_CODE 19
2155 #define wxSCI_MARKDOWN_CODE2 20
2156 #define wxSCI_MARKDOWN_CODEBK 21
2157
2158 /// Lexical state for SCLEX_TXT2TAGS
2159 #define wxSCI_TXT2TAGS_DEFAULT 0
2160 #define wxSCI_TXT2TAGS_LINE_BEGIN 1
2161 #define wxSCI_TXT2TAGS_STRONG1 2
2162 #define wxSCI_TXT2TAGS_STRONG2 3
2163 #define wxSCI_TXT2TAGS_EM1 4
2164 #define wxSCI_TXT2TAGS_EM2 5
2165 #define wxSCI_TXT2TAGS_HEADER1 6
2166 #define wxSCI_TXT2TAGS_HEADER2 7
2167 #define wxSCI_TXT2TAGS_HEADER3 8
2168 #define wxSCI_TXT2TAGS_HEADER4 9
2169 #define wxSCI_TXT2TAGS_HEADER5 10
2170 #define wxSCI_TXT2TAGS_HEADER6 11
2171 #define wxSCI_TXT2TAGS_PRECHAR 12
2172 #define wxSCI_TXT2TAGS_ULIST_ITEM 13
2173 #define wxSCI_TXT2TAGS_OLIST_ITEM 14
2174 #define wxSCI_TXT2TAGS_BLOCKQUOTE 15
2175 #define wxSCI_TXT2TAGS_STRIKEOUT 16
2176 #define wxSCI_TXT2TAGS_HRULE 17
2177 #define wxSCI_TXT2TAGS_LINK 18
2178 #define wxSCI_TXT2TAGS_CODE 19
2179 #define wxSCI_TXT2TAGS_CODE2 20
2180 #define wxSCI_TXT2TAGS_CODEBK 21
2181 #define wxSCI_TXT2TAGS_COMMENT 22
2182 #define wxSCI_TXT2TAGS_OPTION 23
2183 #define wxSCI_TXT2TAGS_PREPROC 24
2184 #define wxSCI_TXT2TAGS_POSTPROC 25
2185
2186 /// Lexical states for SCLEX_A68K
2187 #define wxSCI_A68K_DEFAULT 0
2188 #define wxSCI_A68K_COMMENT 1
2189 #define wxSCI_A68K_NUMBER_DEC 2
2190 #define wxSCI_A68K_NUMBER_BIN 3
2191 #define wxSCI_A68K_NUMBER_HEX 4
2192 #define wxSCI_A68K_STRING1 5
2193 #define wxSCI_A68K_OPERATOR 6
2194 #define wxSCI_A68K_CPUINSTRUCTION 7
2195 #define wxSCI_A68K_EXTINSTRUCTION 8
2196 #define wxSCI_A68K_REGISTER 9
2197 #define wxSCI_A68K_DIRECTIVE 10
2198 #define wxSCI_A68K_MACRO_ARG 11
2199 #define wxSCI_A68K_LABEL 12
2200 #define wxSCI_A68K_STRING2 13
2201 #define wxSCI_A68K_IDENTIFIER 14
2202 #define wxSCI_A68K_MACRO_DECLARATION 15
2203 #define wxSCI_A68K_COMMENT_WORD 16
2204 #define wxSCI_A68K_COMMENT_SPECIAL 17
2205 #define wxSCI_A68K_COMMENT_DOXYGEN 18
2206
2207 /// Lexical states for SCLEX_MODULA
2208 #define wxSCI_MODULA_DEFAULT 0
2209 #define wxSCI_MODULA_COMMENT 1
2210 #define wxSCI_MODULA_DOXYCOMM 2
2211 #define wxSCI_MODULA_DOXYKEY 3
2212 #define wxSCI_MODULA_KEYWORD 4
2213 #define wxSCI_MODULA_RESERVED 5
2214 #define wxSCI_MODULA_NUMBER 6
2215 #define wxSCI_MODULA_BASENUM 7
2216 #define wxSCI_MODULA_FLOAT 8
2217 #define wxSCI_MODULA_STRING 9
2218 #define wxSCI_MODULA_STRSPEC 10
2219 #define wxSCI_MODULA_CHAR 11
2220 #define wxSCI_MODULA_CHARSPEC 12
2221 #define wxSCI_MODULA_PROC 13
2222 #define wxSCI_MODULA_PRAGMA 14
2223 #define wxSCI_MODULA_PRGKEY 15
2224 #define wxSCI_MODULA_OPERATOR 16
2225 #define wxSCI_MODULA_BADSTR 17
2226
2227 /// Lexical states for SCLEX_COFFEESCRIPT
2228 #define wxSCI_COFFEESCRIPT_DEFAULT 0
2229 #define wxSCI_COFFEESCRIPT_COMMENT 1
2230 #define wxSCI_COFFEESCRIPT_COMMENTLINE 2
2231 #define wxSCI_COFFEESCRIPT_COMMENTDOC 3
2232 #define wxSCI_COFFEESCRIPT_NUMBER 4
2233 #define wxSCI_COFFEESCRIPT_WORD 5
2234 #define wxSCI_COFFEESCRIPT_STRING 6
2235 #define wxSCI_COFFEESCRIPT_CHARACTER 7
2236 #define wxSCI_COFFEESCRIPT_UUID 8
2237 #define wxSCI_COFFEESCRIPT_PREPROCESSOR 9
2238 #define wxSCI_COFFEESCRIPT_OPERATOR 10
2239 #define wxSCI_COFFEESCRIPT_IDENTIFIER 11
2240 #define wxSCI_COFFEESCRIPT_STRINGEOL 12
2241 #define wxSCI_COFFEESCRIPT_VERBATIM 13
2242 #define wxSCI_COFFEESCRIPT_REGEX 14
2243 #define wxSCI_COFFEESCRIPT_COMMENTLINEDOC 15
2244 #define wxSCI_COFFEESCRIPT_WORD2 16
2245 #define wxSCI_COFFEESCRIPT_COMMENTDOCKEYWORD 17
2246 #define wxSCI_COFFEESCRIPT_COMMENTDOCKEYWORDERROR 18
2247 #define wxSCI_COFFEESCRIPT_GLOBALCLASS 19
2248 #define wxSCI_COFFEESCRIPT_STRINGRAW 20
2249 #define wxSCI_COFFEESCRIPT_TRIPLEVERBATIM 21
2250 #define wxSCI_COFFEESCRIPT_COMMENTBLOCK 22
2251 #define wxSCI_COFFEESCRIPT_VERBOSE_REGEX 23
2252 #define wxSCI_COFFEESCRIPT_VERBOSE_REGEX_COMMENT 24
2253 #define wxSCI_COFFEESCRIPT_INSTANCEPROPERTY 25
2254
2255 /// Lexical states for SCLEX_AVS
2256 #define wxSCI_AVS_DEFAULT 0
2257 #define wxSCI_AVS_COMMENTBLOCK 1
2258 #define wxSCI_AVS_COMMENTBLOCKN 2
2259 #define wxSCI_AVS_COMMENTLINE 3
2260 #define wxSCI_AVS_NUMBER 4
2261 #define wxSCI_AVS_OPERATOR 5
2262 #define wxSCI_AVS_IDENTIFIER 6
2263 #define wxSCI_AVS_STRING 7
2264 #define wxSCI_AVS_TRIPLESTRING 8
2265 #define wxSCI_AVS_KEYWORD 9
2266 #define wxSCI_AVS_FILTER 10
2267 #define wxSCI_AVS_PLUGIN 11
2268 #define wxSCI_AVS_FUNCTION 12
2269 #define wxSCI_AVS_CLIPPROP 13
2270 #define wxSCI_AVS_USERDFN 14
2271
2272 /// Lexical states for SCLEX_ECL
2273 #define wxSCI_ECL_DEFAULT 0
2274 #define wxSCI_ECL_COMMENT 1
2275 #define wxSCI_ECL_COMMENTLINE 2
2276 #define wxSCI_ECL_NUMBER 3
2277 #define wxSCI_ECL_STRING 4
2278 #define wxSCI_ECL_WORD0 5
2279 #define wxSCI_ECL_OPERATOR 6
2280 #define wxSCI_ECL_CHARACTER 7
2281 #define wxSCI_ECL_UUID 8
2282 #define wxSCI_ECL_PREPROCESSOR 9
2283 #define wxSCI_ECL_UNKNOWN 10
2284 #define wxSCI_ECL_IDENTIFIER 11
2285 #define wxSCI_ECL_STRINGEOL 12
2286 #define wxSCI_ECL_VERBATIM 13
2287 #define wxSCI_ECL_REGEX 14
2288 #define wxSCI_ECL_COMMENTLINEDOC 15
2289 #define wxSCI_ECL_WORD1 16
2290 #define wxSCI_ECL_COMMENTDOCKEYWORD 17
2291 #define wxSCI_ECL_COMMENTDOCKEYWORDERROR 18
2292 #define wxSCI_ECL_WORD2 19
2293 #define wxSCI_ECL_WORD3 20
2294 #define wxSCI_ECL_WORD4 21
2295 #define wxSCI_ECL_WORD5 22
2296 #define wxSCI_ECL_COMMENTDOC 23
2297 #define wxSCI_ECL_ADDED 24
2298 #define wxSCI_ECL_DELETED 25
2299 #define wxSCI_ECL_CHANGED 26
2300 #define wxSCI_ECL_MOVED 27
2301
2302 /// Lexical states for SCLEX_OSCRIPT
2303 #define wxSCI_OSCRIPT_DEFAULT 0
2304 #define wxSCI_OSCRIPT_LINE_COMMENT 1
2305 #define wxSCI_OSCRIPT_BLOCK_COMMENT 2
2306 #define wxSCI_OSCRIPT_DOC_COMMENT 3
2307 #define wxSCI_OSCRIPT_PREPROCESSOR 4
2308 #define wxSCI_OSCRIPT_NUMBER 5
2309 #define wxSCI_OSCRIPT_SINGLEQUOTE_STRING 6
2310 #define wxSCI_OSCRIPT_DOUBLEQUOTE_STRING 7
2311 #define wxSCI_OSCRIPT_CONSTANT 8
2312 #define wxSCI_OSCRIPT_IDENTIFIER 9
2313 #define wxSCI_OSCRIPT_GLOBAL 10
2314 #define wxSCI_OSCRIPT_KEYWORD 11
2315 #define wxSCI_OSCRIPT_OPERATOR 12
2316 #define wxSCI_OSCRIPT_LABEL 13
2317 #define wxSCI_OSCRIPT_TYPE 14
2318 #define wxSCI_OSCRIPT_FUNCTION 15
2319 #define wxSCI_OSCRIPT_OBJECT 16
2320 #define wxSCI_OSCRIPT_PROPERTY 17
2321 #define wxSCI_OSCRIPT_METHOD 18
2322
2323 /// Lexical states for SCLEX_VISUALPROLOG
2324 #define wxSCI_VISUALPROLOG_DEFAULT 0
2325 #define wxSCI_VISUALPROLOG_KEY_MAJOR 1
2326 #define wxSCI_VISUALPROLOG_KEY_MINOR 2
2327 #define wxSCI_VISUALPROLOG_KEY_DIRECTIVE 3
2328 #define wxSCI_VISUALPROLOG_COMMENT_BLOCK 4
2329 #define wxSCI_VISUALPROLOG_COMMENT_LINE 5
2330 #define wxSCI_VISUALPROLOG_COMMENT_KEY 6
2331 #define wxSCI_VISUALPROLOG_COMMENT_KEY_ERROR 7
2332 #define wxSCI_VISUALPROLOG_IDENTIFIER 8
2333 #define wxSCI_VISUALPROLOG_VARIABLE 9
2334 #define wxSCI_VISUALPROLOG_ANONYMOUS 10
2335 #define wxSCI_VISUALPROLOG_NUMBER 11
2336 #define wxSCI_VISUALPROLOG_OPERATOR 12
2337 #define wxSCI_VISUALPROLOG_CHARACTER 13
2338 #define wxSCI_VISUALPROLOG_CHARACTER_TOO_MANY 14
2339 #define wxSCI_VISUALPROLOG_CHARACTER_ESCAPE_ERROR 15
2340 #define wxSCI_VISUALPROLOG_STRING 16
2341 #define wxSCI_VISUALPROLOG_STRING_ESCAPE 17
2342 #define wxSCI_VISUALPROLOG_STRING_ESCAPE_ERROR 18
2343 #define wxSCI_VISUALPROLOG_STRING_EOL_OPEN 19
2344 #define wxSCI_VISUALPROLOG_STRING_VERBATIM 20
2345 #define wxSCI_VISUALPROLOG_STRING_VERBATIM_SPECIAL 21
2346 #define wxSCI_VISUALPROLOG_STRING_VERBATIM_EOL 22
2347
2348 /// Lexical states for SCLEX_STTXT
2349 #define wxSCI_STTXT_DEFAULT 0
2350 #define wxSCI_STTXT_COMMENT 1
2351 #define wxSCI_STTXT_COMMENTLINE 2
2352 #define wxSCI_STTXT_KEYWORD 3
2353 #define wxSCI_STTXT_TYPE 4
2354 #define wxSCI_STTXT_FUNCTION 5
2355 #define wxSCI_STTXT_FB 6
2356 #define wxSCI_STTXT_NUMBER 7
2357 #define wxSCI_STTXT_HEXNUMBER 8
2358 #define wxSCI_STTXT_PRAGMA 9
2359 #define wxSCI_STTXT_OPERATOR 10
2360 #define wxSCI_STTXT_CHARACTER 11
2361 #define wxSCI_STTXT_STRING1 12
2362 #define wxSCI_STTXT_STRING2 13
2363 #define wxSCI_STTXT_STRINGEOL 14
2364 #define wxSCI_STTXT_IDENTIFIER 15
2365 #define wxSCI_STTXT_DATETIME 16
2366 #define wxSCI_STTXT_VARS 17
2367 #define wxSCI_STTXT_PRAGMAS 18
2368
2369 /// Lexical states for SCLEX_KVIRC
2370 #define wxSCI_KVIRC_DEFAULT 0
2371 #define wxSCI_KVIRC_COMMENT 1
2372 #define wxSCI_KVIRC_COMMENTBLOCK 2
2373 #define wxSCI_KVIRC_STRING 3
2374 #define wxSCI_KVIRC_WORD 4
2375 #define wxSCI_KVIRC_KEYWORD 5
2376 #define wxSCI_KVIRC_FUNCTION_KEYWORD 6
2377 #define wxSCI_KVIRC_FUNCTION 7
2378 #define wxSCI_KVIRC_VARIABLE 8
2379 #define wxSCI_KVIRC_NUMBER 9
2380 #define wxSCI_KVIRC_OPERATOR 10
2381 #define wxSCI_KVIRC_STRING_FUNCTION 11
2382 #define wxSCI_KVIRC_STRING_VARIABLE 12
2383
2384 /// Lexical states for SCLEX_RUST
2385 #define wxSCI_RUST_DEFAULT 0
2386 #define wxSCI_RUST_COMMENTBLOCK 1
2387 #define wxSCI_RUST_COMMENTLINE 2
2388 #define wxSCI_RUST_COMMENTBLOCKDOC 3
2389 #define wxSCI_RUST_COMMENTLINEDOC 4
2390 #define wxSCI_RUST_NUMBER 5
2391 #define wxSCI_RUST_WORD 6
2392 #define wxSCI_RUST_WORD2 7
2393 #define wxSCI_RUST_WORD3 8
2394 #define wxSCI_RUST_WORD4 9
2395 #define wxSCI_RUST_WORD5 10
2396 #define wxSCI_RUST_WORD6 11
2397 #define wxSCI_RUST_WORD7 12
2398 #define wxSCI_RUST_STRING 13
2399 #define wxSCI_RUST_STRINGR 14
2400 #define wxSCI_RUST_CHARACTER 15
2401 #define wxSCI_RUST_OPERATOR 16
2402 #define wxSCI_RUST_IDENTIFIER 17
2403 #define wxSCI_RUST_LIFETIME 18
2404 #define wxSCI_RUST_MACRO 19
2405 #define wxSCI_RUST_LEXERROR 20
2406 #define wxSCI_RUST_BYTESTRING 21
2407 #define wxSCI_RUST_BYTESTRINGR 22
2408 #define wxSCI_RUST_BYTECHARACTER 23
2409
2410 /// Lexical states for SCLEX_DMAP
2411 #define wxSCI_DMAP_DEFAULT 0
2412 #define wxSCI_DMAP_COMMENT 1
2413 #define wxSCI_DMAP_NUMBER 2
2414 #define wxSCI_DMAP_STRING1 3
2415 #define wxSCI_DMAP_STRING2 4
2416 #define wxSCI_DMAP_STRINGEOL 5
2417 #define wxSCI_DMAP_OPERATOR 6
2418 #define wxSCI_DMAP_IDENTIFIER 7
2419 #define wxSCI_DMAP_WORD 8
2420 #define wxSCI_DMAP_WORD2 9
2421 #define wxSCI_DMAP_WORD3 10
2422
2423 /// Lexical states for SCLEX_DMIS
2424 #define wxSCI_DMIS_DEFAULT 0
2425 #define wxSCI_DMIS_COMMENT 1
2426 #define wxSCI_DMIS_STRING 2
2427 #define wxSCI_DMIS_NUMBER 3
2428 #define wxSCI_DMIS_KEYWORD 4
2429 #define wxSCI_DMIS_MAJORWORD 5
2430 #define wxSCI_DMIS_MINORWORD 6
2431 #define wxSCI_DMIS_UNSUPPORTED_MAJOR 7
2432 #define wxSCI_DMIS_UNSUPPORTED_MINOR 8
2433 #define wxSCI_DMIS_LABEL 9
2434
2435 /// Lexical states for SCLEX_REGISTRY
2436 #define wxSCI_REG_DEFAULT 0
2437 #define wxSCI_REG_COMMENT 1
2438 #define wxSCI_REG_VALUENAME 2
2439 #define wxSCI_REG_STRING 3
2440 #define wxSCI_REG_HEXDIGIT 4
2441 #define wxSCI_REG_VALUETYPE 5
2442 #define wxSCI_REG_ADDEDKEY 6
2443 #define wxSCI_REG_DELETEDKEY 7
2444 #define wxSCI_REG_ESCAPED 8
2445 #define wxSCI_REG_KEYPATH_GUID 9
2446 #define wxSCI_REG_STRING_GUID 10
2447 #define wxSCI_REG_PARAMETER 11
2448 #define wxSCI_REG_OPERATOR 12
2449
2450 /// Lexical state for SCLEX_BIBTEX
2451 #define wxSCI_BIBTEX_DEFAULT 0
2452 #define wxSCI_BIBTEX_ENTRY 1
2453 #define wxSCI_BIBTEX_UNKNOWN_ENTRY 2
2454 #define wxSCI_BIBTEX_KEY 3
2455 #define wxSCI_BIBTEX_PARAMETER 4
2456 #define wxSCI_BIBTEX_VALUE 5
2457 #define wxSCI_BIBTEX_COMMENT 6
2458
2459 /// Lexical state for SCLEX_SREC
2460 #define wxSCI_HEX_DEFAULT 0
2461 #define wxSCI_HEX_RECSTART 1
2462 #define wxSCI_HEX_RECTYPE 2
2463 #define wxSCI_HEX_RECTYPE_UNKNOWN 3
2464 #define wxSCI_HEX_BYTECOUNT 4
2465 #define wxSCI_HEX_BYTECOUNT_WRONG 5
2466 #define wxSCI_HEX_NOADDRESS 6
2467 #define wxSCI_HEX_DATAADDRESS 7
2468 #define wxSCI_HEX_RECCOUNT 8
2469 #define wxSCI_HEX_STARTADDRESS 9
2470 #define wxSCI_HEX_ADDRESSFIELD_UNKNOWN 10
2471 #define wxSCI_HEX_EXTENDEDADDRESS 11
2472 #define wxSCI_HEX_DATA_ODD 12
2473 #define wxSCI_HEX_DATA_EVEN 13
2474 #define wxSCI_HEX_DATA_UNKNOWN 14
2475 #define wxSCI_HEX_DATA_EMPTY 15
2476 #define wxSCI_HEX_CHECKSUM 16
2477 #define wxSCI_HEX_CHECKSUM_WRONG 17
2478 #define wxSCI_HEX_GARBAGE 18
2479
2480 /// Lexical state for SCLEX_IHEX (shared with Srec)
2481 /// Lexical state for SCLEX_TEHEX (shared with Srec)
2482 /// Lexical states for SCLEX_JSON
2483 #define wxSCI_JSON_DEFAULT 0
2484 #define wxSCI_JSON_NUMBER 1
2485 #define wxSCI_JSON_STRING 2
2486 #define wxSCI_JSON_STRINGEOL 3
2487 #define wxSCI_JSON_PROPERTYNAME 4
2488 #define wxSCI_JSON_ESCAPESEQUENCE 5
2489 #define wxSCI_JSON_LINECOMMENT 6
2490 #define wxSCI_JSON_BLOCKCOMMENT 7
2491 #define wxSCI_JSON_OPERATOR 8
2492 #define wxSCI_JSON_URI 9
2493 #define wxSCI_JSON_COMPACTIRI 10
2494 #define wxSCI_JSON_KEYWORD 11
2495 #define wxSCI_JSON_LDKEYWORD 12
2496 #define wxSCI_JSON_ERROR 13
2497 #define wxSCI_EDI_DEFAULT 0
2498 #define wxSCI_EDI_SEGMENTSTART 1
2499 #define wxSCI_EDI_SEGMENTEND 2
2500 #define wxSCI_EDI_SEP_ELEMENT 3
2501 #define wxSCI_EDI_SEP_COMPOSITE 4
2502 #define wxSCI_EDI_SEP_RELEASE 5
2503 #define wxSCI_EDI_UNA 6
2504 #define wxSCI_EDI_UNH 7
2505 #define wxSCI_EDI_BADSEGMENT 8
2506
2507 //}}}
2508 //----------------------------------------------------------------------
2509
2510
2511 #if defined(__clang__) || wxCHECK_GCC_VERSION(4, 5)
2512 #define wxSCI_STRINGIFY(X) #X
2513 #define wxSCI_DEPRECATED_MACRO_VALUE(value,msg) \
2514 _Pragma(wxSCI_STRINGIFY(GCC warning msg)) value
2515 #else
2516 #define wxSCI_DEPRECATED_MACRO_VALUE(value,msg) value
2517 #endif
2518
2519 //----------------------------------------------------------------------
2520 // Commands that can be bound to keystrokes section {{{
2521
2522
2523 /// Redoes the next action on the undo history.
2524 #define wxSCI_CMD_REDO 2011
2525
2526 /// Select all the text in the document.
2527 #define wxSCI_CMD_SELECTALL 2013
2528
2529 /// Undo one action in the undo history.
2530 #define wxSCI_CMD_UNDO 2176
2531
2532 /// Cut the selection to the clipboard.
2533 #define wxSCI_CMD_CUT 2177
2534
2535 /// Copy the selection to the clipboard.
2536 #define wxSCI_CMD_COPY 2178
2537
2538 /// Paste the contents of the clipboard into the document replacing the selection.
2539 #define wxSCI_CMD_PASTE 2179
2540
2541 /// Clear the selection.
2542 #define wxSCI_CMD_CLEAR 2180
2543
2544 /// Move caret down one line.
2545 #define wxSCI_CMD_LINEDOWN 2300
2546
2547 /// Move caret down one line extending selection to new caret position.
2548 #define wxSCI_CMD_LINEDOWNEXTEND 2301
2549
2550 /// Move caret up one line.
2551 #define wxSCI_CMD_LINEUP 2302
2552
2553 /// Move caret up one line extending selection to new caret position.
2554 #define wxSCI_CMD_LINEUPEXTEND 2303
2555
2556 /// Move caret left one character.
2557 #define wxSCI_CMD_CHARLEFT 2304
2558
2559 /// Move caret left one character extending selection to new caret position.
2560 #define wxSCI_CMD_CHARLEFTEXTEND 2305
2561
2562 /// Move caret right one character.
2563 #define wxSCI_CMD_CHARRIGHT 2306
2564
2565 /// Move caret right one character extending selection to new caret position.
2566 #define wxSCI_CMD_CHARRIGHTEXTEND 2307
2567
2568 /// Move caret left one word.
2569 #define wxSCI_CMD_WORDLEFT 2308
2570
2571 /// Move caret left one word extending selection to new caret position.
2572 #define wxSCI_CMD_WORDLEFTEXTEND 2309
2573
2574 /// Move caret right one word.
2575 #define wxSCI_CMD_WORDRIGHT 2310
2576
2577 /// Move caret right one word extending selection to new caret position.
2578 #define wxSCI_CMD_WORDRIGHTEXTEND 2311
2579
2580 /// Move caret to first position on line.
2581 #define wxSCI_CMD_HOME 2312
2582
2583 /// Move caret to first position on line extending selection to new caret position.
2584 #define wxSCI_CMD_HOMEEXTEND 2313
2585
2586 /// Move caret to last position on line.
2587 #define wxSCI_CMD_LINEEND 2314
2588
2589 /// Move caret to last position on line extending selection to new caret position.
2590 #define wxSCI_CMD_LINEENDEXTEND 2315
2591
2592 /// Move caret to first position in document.
2593 #define wxSCI_CMD_DOCUMENTSTART 2316
2594
2595 /// Move caret to first position in document extending selection to new caret position.
2596 #define wxSCI_CMD_DOCUMENTSTARTEXTEND 2317
2597
2598 /// Move caret to last position in document.
2599 #define wxSCI_CMD_DOCUMENTEND 2318
2600
2601 /// Move caret to last position in document extending selection to new caret position.
2602 #define wxSCI_CMD_DOCUMENTENDEXTEND 2319
2603
2604 /// Move caret one page up.
2605 #define wxSCI_CMD_PAGEUP 2320
2606
2607 /// Move caret one page up extending selection to new caret position.
2608 #define wxSCI_CMD_PAGEUPEXTEND 2321
2609
2610 /// Move caret one page down.
2611 #define wxSCI_CMD_PAGEDOWN 2322
2612
2613 /// Move caret one page down extending selection to new caret position.
2614 #define wxSCI_CMD_PAGEDOWNEXTEND 2323
2615
2616 /// Switch from insert to overtype mode or the reverse.
2617 #define wxSCI_CMD_EDITTOGGLEOVERTYPE 2324
2618
2619 /// Cancel any modes such as call tip or auto-completion list display.
2620 #define wxSCI_CMD_CANCEL 2325
2621
2622 /// Delete the selection or if no selection, the character before the caret.
2623 #define wxSCI_CMD_DELETEBACK 2326
2624
2625 /// If selection is empty or all on one line replace the selection with a tab character.
2626 /// If more than one line selected, indent the lines.
2627 #define wxSCI_CMD_TAB 2327
2628
2629 /// Dedent the selected lines.
2630 #define wxSCI_CMD_BACKTAB 2328
2631
2632 /// Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
2633 #define wxSCI_CMD_NEWLINE 2329
2634
2635 /// Insert a Form Feed character.
2636 #define wxSCI_CMD_FORMFEED 2330
2637
2638 /// Move caret to before first visible character on line.
2639 /// If already there move to first character on line.
2640 #define wxSCI_CMD_VCHOME 2331
2641
2642 /// Like VCHome but extending selection to new caret position.
2643 #define wxSCI_CMD_VCHOMEEXTEND 2332
2644
2645 /// Magnify the displayed text by increasing the sizes by 1 point.
2646 #define wxSCI_CMD_ZOOMIN 2333
2647
2648 /// Make the displayed text smaller by decreasing the sizes by 1 point.
2649 #define wxSCI_CMD_ZOOMOUT 2334
2650
2651 /// Delete the word to the left of the caret.
2652 #define wxSCI_CMD_DELWORDLEFT 2335
2653
2654 /// Delete the word to the right of the caret.
2655 #define wxSCI_CMD_DELWORDRIGHT 2336
2656
2657 /// Delete the word to the right of the caret, but not the trailing non-word characters.
2658 #define wxSCI_CMD_DELWORDRIGHTEND 2518
2659
2660 /// Cut the line containing the caret.
2661 #define wxSCI_CMD_LINECUT 2337
2662
2663 /// Delete the line containing the caret.
2664 #define wxSCI_CMD_LINEDELETE 2338
2665
2666 /// Switch the current line with the previous.
2667 #define wxSCI_CMD_LINETRANSPOSE 2339
2668
2669 /// Duplicate the current line.
2670 #define wxSCI_CMD_LINEDUPLICATE 2404
2671
2672 /// Transform the selection to lower case.
2673 #define wxSCI_CMD_LOWERCASE 2340
2674
2675 /// Transform the selection to upper case.
2676 #define wxSCI_CMD_UPPERCASE 2341
2677
2678 /// Scroll the document down, keeping the caret visible.
2679 #define wxSCI_CMD_LINESCROLLDOWN 2342
2680
2681 /// Scroll the document up, keeping the caret visible.
2682 #define wxSCI_CMD_LINESCROLLUP 2343
2683
2684 /// Delete the selection or if no selection, the character before the caret.
2685 /// Will not delete the character before at the start of a line.
2686 #define wxSCI_CMD_DELETEBACKNOTLINE 2344
2687
2688 /// Move caret to first position on display line.
2689 #define wxSCI_CMD_HOMEDISPLAY 2345
2690
2691 /// Move caret to first position on display line extending selection to
2692 /// new caret position.
2693 #define wxSCI_CMD_HOMEDISPLAYEXTEND 2346
2694
2695 /// Move caret to last position on display line.
2696 #define wxSCI_CMD_LINEENDDISPLAY 2347
2697
2698 /// Move caret to last position on display line extending selection to new
2699 /// caret position.
2700 #define wxSCI_CMD_LINEENDDISPLAYEXTEND 2348
2701
2702 /// Like Home but when word-wrap is enabled goes first to start of display line
2703 /// HomeDisplay, then to start of document line Home.
2704 #define wxSCI_CMD_HOMEWRAP 2349
2705
2706 /// Like HomeExtend but when word-wrap is enabled extends first to start of display line
2707 /// HomeDisplayExtend, then to start of document line HomeExtend.
2708 #define wxSCI_CMD_HOMEWRAPEXTEND 2450
2709
2710 /// Like LineEnd but when word-wrap is enabled goes first to end of display line
2711 /// LineEndDisplay, then to start of document line LineEnd.
2712 #define wxSCI_CMD_LINEENDWRAP 2451
2713
2714 /// Like LineEndExtend but when word-wrap is enabled extends first to end of display line
2715 /// LineEndDisplayExtend, then to start of document line LineEndExtend.
2716 #define wxSCI_CMD_LINEENDWRAPEXTEND 2452
2717
2718 /// Like VCHome but when word-wrap is enabled goes first to start of display line
2719 /// VCHomeDisplay, then behaves like VCHome.
2720 #define wxSCI_CMD_VCHOMEWRAP 2453
2721
2722 /// Like VCHomeExtend but when word-wrap is enabled extends first to start of display line
2723 /// VCHomeDisplayExtend, then behaves like VCHomeExtend.
2724 #define wxSCI_CMD_VCHOMEWRAPEXTEND 2454
2725
2726 /// Copy the line containing the caret.
2727 #define wxSCI_CMD_LINECOPY 2455
2728
2729 /// Move to the previous change in capitalisation.
2730 #define wxSCI_CMD_WORDPARTLEFT 2390
2731
2732 /// Move to the previous change in capitalisation extending selection
2733 /// to new caret position.
2734 #define wxSCI_CMD_WORDPARTLEFTEXTEND 2391
2735
2736 /// Move to the change next in capitalisation.
2737 #define wxSCI_CMD_WORDPARTRIGHT 2392
2738
2739 /// Move to the next change in capitalisation extending selection
2740 /// to new caret position.
2741 #define wxSCI_CMD_WORDPARTRIGHTEXTEND 2393
2742
2743 /// Delete back from the current position to the start of the line.
2744 #define wxSCI_CMD_DELLINELEFT 2395
2745
2746 /// Delete forwards from the current position to the end of the line.
2747 #define wxSCI_CMD_DELLINERIGHT 2396
2748
2749 /// Move caret down one paragraph (delimited by empty lines).
2750 #define wxSCI_CMD_PARADOWN 2413
2751
2752 /// Extend selection down one paragraph (delimited by empty lines).
2753 #define wxSCI_CMD_PARADOWNEXTEND 2414
2754
2755 /// Move caret up one paragraph (delimited by empty lines).
2756 #define wxSCI_CMD_PARAUP 2415
2757
2758 /// Extend selection up one paragraph (delimited by empty lines).
2759 #define wxSCI_CMD_PARAUPEXTEND 2416
2760
2761 /// Move caret down one line, extending rectangular selection to new caret position.
2762 #define wxSCI_CMD_LINEDOWNRECTEXTEND 2426
2763
2764 /// Move caret up one line, extending rectangular selection to new caret position.
2765 #define wxSCI_CMD_LINEUPRECTEXTEND 2427
2766
2767 /// Move caret left one character, extending rectangular selection to new caret position.
2768 #define wxSCI_CMD_CHARLEFTRECTEXTEND 2428
2769
2770 /// Move caret right one character, extending rectangular selection to new caret position.
2771 #define wxSCI_CMD_CHARRIGHTRECTEXTEND 2429
2772
2773 /// Move caret to first position on line, extending rectangular selection to new caret position.
2774 #define wxSCI_CMD_HOMERECTEXTEND 2430
2775
2776 /// Move caret to before first visible character on line.
2777 /// If already there move to first character on line.
2778 /// In either case, extend rectangular selection to new caret position.
2779 #define wxSCI_CMD_VCHOMERECTEXTEND 2431
2780
2781 /// Move caret to last position on line, extending rectangular selection to new caret position.
2782 #define wxSCI_CMD_LINEENDRECTEXTEND 2432
2783
2784 /// Move caret one page up, extending rectangular selection to new caret position.
2785 #define wxSCI_CMD_PAGEUPRECTEXTEND 2433
2786
2787 /// Move caret one page down, extending rectangular selection to new caret position.
2788 #define wxSCI_CMD_PAGEDOWNRECTEXTEND 2434
2789
2790 /// Move caret to top of page, or one page up if already at top of page.
2791 #define wxSCI_CMD_STUTTEREDPAGEUP 2435
2792
2793 /// Move caret to top of page, or one page up if already at top of page, extending selection to new caret position.
2794 #define wxSCI_CMD_STUTTEREDPAGEUPEXTEND 2436
2795
2796 /// Move caret to bottom of page, or one page down if already at bottom of page.
2797 #define wxSCI_CMD_STUTTEREDPAGEDOWN 2437
2798
2799 /// Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position.
2800 #define wxSCI_CMD_STUTTEREDPAGEDOWNEXTEND 2438
2801
2802 /// Move caret left one word, position cursor at end of word.
2803 #define wxSCI_CMD_WORDLEFTEND 2439
2804
2805 /// Move caret left one word, position cursor at end of word, extending selection to new caret position.
2806 #define wxSCI_CMD_WORDLEFTENDEXTEND 2440
2807
2808 /// Move caret right one word, position cursor at end of word.
2809 #define wxSCI_CMD_WORDRIGHTEND 2441
2810
2811 /// Move caret right one word, position cursor at end of word, extending selection to new caret position.
2812 #define wxSCI_CMD_WORDRIGHTENDEXTEND 2442
2813
2814 /// Centre current line in window.
2815 #define wxSCI_CMD_VERTICALCENTRECARET 2619
2816
2817 /// Move the selected lines up one line, shifting the line above after the selection
2818 #define wxSCI_CMD_MOVESELECTEDLINESUP 2620
2819
2820 /// Move the selected lines down one line, shifting the line below before the selection
2821 #define wxSCI_CMD_MOVESELECTEDLINESDOWN 2621
2822
2823 /// Scroll to start of document.
2824 #define wxSCI_CMD_SCROLLTOSTART 2628
2825
2826 /// Scroll to end of document.
2827 #define wxSCI_CMD_SCROLLTOEND 2629
2828
2829 /// Move caret to before first visible character on display line.
2830 /// If already there move to first character on display line.
2831 #define wxSCI_CMD_VCHOMEDISPLAY 2652
2832
2833 /// Like VCHomeDisplay but extending selection to new caret position.
2834 #define wxSCI_CMD_VCHOMEDISPLAYEXTEND 2653
2835
2836 //}}}
2837 //----------------------------------------------------------------------
2838
2839 class ScintillaWX; // forward declare
2840 class WordList;
2841
2842 #ifdef SCI_NAMESPACE
2843 #ifndef SCI_NAMESPACE_PREFIX
2844 #define SCI_NAMESPACE_PREFIX( x ) Scintilla::x
2845 #endif
2846 namespace Scintilla {
2847 #else
2848 #ifndef SCI_NAMESPACE_PREFIX
2849 #define SCI_NAMESPACE_PREFIX( x ) x
2850 #endif
2851 #endif
2852 struct SCNotification;
2853 #ifdef SCI_NAMESPACE
2854 }
2855 #endif
2856
2857 #ifndef SWIG
2858 extern WXDLLIMPEXP_SCI const wxChar wxSCINameStr[];
2859 class WXDLLIMPEXP_SCI wxScintilla;
2860 class WXDLLIMPEXP_SCI wxScintillaEvent;
2861 #endif
2862
2863 //----------------------------------------------------------------------
2864
2865 class WXDLLIMPEXP_SCI wxScintilla : public wxControl {
2866 public:
2867
2868 #ifdef SWIG
2869 %pythonAppend wxScintilla "self._setOORInfo(self)"
2870 %pythonAppend wxScintilla() ""
2871
2872 wxScintilla (wxWindow *parent, wxWindowID id=wxID_ANY,
2873 const wxPoint& pos = wxDefaultPosition,
2874 const wxSize& size = wxDefaultSize, long style = 0,
2875 const wxString& name = wxPySCINameStr);
2876 %RenameCtor(PreScintilla, wxScintilla());
2877
2878 #else
2879 wxScintilla (wxWindow *parent, wxWindowID id=wxID_ANY,
2880 const wxPoint& pos = wxDefaultPosition,
2881 const wxSize& size = wxDefaultSize, long style = 0,
2882 const wxString& name = wxSCINameStr);
2883 wxScintilla() { m_swx = NULL; }
2884 ~wxScintilla();
2885
2886 #endif
2887
2888 bool Create(wxWindow *parent, wxWindowID id=wxID_ANY,
2889 const wxPoint& pos = wxDefaultPosition,
2890 const wxSize& size = wxDefaultSize, long style = 0,
2891 const wxString& name = wxSCINameStr);
2892
2893
2894 //----------------------------------------------------------------------
2895 // Generated method declaration section {{{
2896
2897
2898 // Add text to the document at current position.
2899 void AddText(const wxString& text);
2900
2901 // Add array of cells to document.
2902 void AddStyledText(const wxMemoryBuffer& data);
2903
2904 // Insert string at a position.
2905 void InsertText(int pos, const wxString& text);
2906
2907 // Change the text that is being inserted in response to wxSCI_MOD_INSERTCHECK
2908 void ChangeInsertion(int length, const wxString& text);
2909
2910 // Delete all text in the document.
2911 void ClearAll();
2912
2913 // Delete a range of text in the document.
2914 void DeleteRange(int start, int lengthDelete);
2915
2916 // Set all style bytes to 0, remove all folding information.
2917 void ClearDocumentStyle();
2918
2919 // Returns the number of bytes in the document.
2920 int GetLength() const;
2921
2922 // Returns the character byte at the position.
2923 int GetCharAt(int pos) const;
2924
2925 // Returns the position of the caret.
2926 int GetCurrentPos() const;
2927
2928 // Returns the position of the opposite end of the selection to the caret.
2929 int GetAnchor() const;
2930
2931 // Returns the style byte at the position.
2932 int GetStyleAt(int pos) const;
2933
2934 // Redoes the next action on the undo history.
2935 void Redo();
2936
2937 // Choose between collecting actions into the undo
2938 // history and discarding them.
2939 void SetUndoCollection(bool collectUndo);
2940
2941 /* CHANGEBAR begin */
2942 // Choose between collecting actions into the changes
2943 // history and discarding them.
2944 void SetChangeCollection(bool collectChange);
2945
2946 // Find a changed line, if fromLine > toLine search is performed backwards.
2947 int FindChangedLine (const int fromLine, const int toLine) const;
2948 /* CHANGEBAR end */
2949
2950 // Select all the text in the document.
2951 void SelectAll();
2952
2953 // Remember the current position in the undo history as the position
2954 // at which the document was saved.
2955 void SetSavePoint();
2956
2957 // Retrieve a buffer of cells.
2958 wxMemoryBuffer GetStyledText(int startPos, int endPos);
2959
2960 // Are there any redoable actions in the undo history?
2961 bool CanRedo() const;
2962
2963 // Retrieve the line number at which a particular marker is located.
2964 int MarkerLineFromHandle(int markerHandle);
2965
2966 // Delete a marker.
2967 void MarkerDeleteHandle(int markerHandle);
2968
2969 // Is undo history being collected?
2970 bool GetUndoCollection() const;
2971
2972 // Are white space characters currently visible?
2973 // Returns one of wxSCI_WS_* constants.
2974 int GetViewWhiteSpace() const;
2975
2976 // Make white space characters invisible, always visible or visible outside indentation.
2977 void SetViewWhiteSpace(int viewWS);
2978
2979 // Retrieve the current tab draw mode.
2980 // Returns one of wxSCI_TD_* constants.
2981 int GetTabDrawMode() const;
2982
2983 // Set how tabs are drawn when visible.
2984 void SetTabDrawMode(int tabDrawMode);
2985
2986 // Find the position from a point within the window.
2987 int PositionFromPoint(wxPoint pt) const;
2988
2989 // Find the position from a point within the window but return
2990 // wxSCI_INVALID_POSITION if not close to text.
2991 int PositionFromPointClose(int x, int y);
2992
2993 // Set caret to start of a line and ensure it is visible.
2994 void GotoLine(int line);
2995
2996 // Set caret to a position and ensure it is visible.
2997 void GotoPos(int caret);
2998
2999 // Set the selection anchor to a position. The anchor is the opposite
3000 // end of the selection from the caret.
3001 void SetAnchor(int anchor);
3002
3003 // Retrieve the text of the line containing the caret.
3004 #ifdef SWIG
3005 wxString GetCurLine(int* OUTPUT);
3006 #else
3007 wxString GetCurLine(int* linePos=NULL);
3008 #endif
3009
3010 // Retrieve the position of the last correctly styled character.
3011 int GetEndStyled() const;
3012
3013 // Convert all line endings in the document to one mode.
3014 void ConvertEOLs(int eolMode);
3015
3016 // Retrieve the current end of line mode - one of wxSCI_EOL_CRLF, wxSCI_EOL_CR, or wxSCI_EOL_LF.
3017 int GetEOLMode() const;
3018
3019 // Set the current end of line mode.
3020 void SetEOLMode(int eolMode);
3021
3022 // Set the current styling position to start.
3023 void StartStyling(int start);
3024
3025 // Change style from current styling position for length characters to a style
3026 // and move the current styling position to after this newly styled segment.
3027 void SetStyling(int length, int style);
3028
3029 // Is drawing done first into a buffer or direct to the screen?
3030 bool GetBufferedDraw() const;
3031
3032 // If drawing is buffered then each line of text is drawn into a bitmap buffer
3033 // before drawing it to the screen to avoid flicker.
3034 void SetBufferedDraw(bool buffered);
3035
3036 // Change the visible size of a tab to be a multiple of the width of a space character.
3037 void SetTabWidth(int tabWidth);
3038
3039 // Retrieve the visible size of a tab.
3040 int GetTabWidth() const;
3041
3042 // Clear explicit tabstops on a line.
3043 void ClearTabStops(int line);
3044
3045 // Add an explicit tab stop for a line.
3046 void AddTabStop(int line, int x);
3047
3048 // Find the next explicit tab stop position on a line after a position.
3049 int GetNextTabStop(int line, int x);
3050
3051 // Set the code page used to interpret the bytes of the document as characters.
3052 void SetCodePage(int codePage);
3053
3054 // Is the IME displayed in a window or inline?
3055 int GetIMEInteraction() const;
3056
3057 // Choose to display the the IME in a winow or inline.
3058 void SetIMEInteraction(int imeInteraction);
3059
3060 // Set the symbol used for a particular marker number,
3061 // and optionally the fore and background colours.
3062 void MarkerDefine(int markerNumber, int markerSymbol,
3063 const wxColour& foreground = wxNullColour,
3064 const wxColour& background = wxNullColour);
3065
3066 // Set the foreground colour used for a particular marker number.
3067 void MarkerSetForeground(int markerNumber, const wxColour& fore);
3068
3069 // Set the background colour used for a particular marker number.
3070 void MarkerSetBackground(int markerNumber, const wxColour& back);
3071
3072 // Set the background colour used for a particular marker number when its folding block is selected.
3073 void MarkerSetBackgroundSelected(int markerNumber, const wxColour& back);
3074
3075 // Enable/disable highlight for current folding bloc (smallest one that contains the caret)
3076 void MarkerEnableHighlight(bool enabled);
3077
3078 // Add a marker to a line, returning an ID which can be used to find or delete the marker.
3079 int MarkerAdd(int line, int markerNumber);
3080
3081 // Delete a marker from a line.
3082 void MarkerDelete(int line, int markerNumber);
3083
3084 // Delete all markers with a particular number from all lines.
3085 void MarkerDeleteAll(int markerNumber);
3086
3087 // Get a bit mask of all the markers set on a line.
3088 int MarkerGet(int line);
3089
3090 // Find the next line at or after lineStart that includes a marker in mask.
3091 // Return -1 when no more lines.
3092 int MarkerNext(int lineStart, int markerMask);
3093
3094 // Find the previous line before lineStart that includes a marker in mask.
3095 int MarkerPrevious(int lineStart, int markerMask);
3096
3097 // Define a marker from a bitmap
3098 void MarkerDefinePixmap(int markerNumber, const char* const* xpmData);
3099
3100 // Add a set of markers to a line.
3101 void MarkerAddSet(int line, int markerSet);
3102
3103 // Set the alpha used for a marker that is drawn in the text area, not the margin.
3104 void MarkerSetAlpha(int markerNumber, int alpha);
3105
3106 // Set a margin to be either numeric or symbolic.
3107 void SetMarginType(int margin, int marginType);
3108
3109 // Retrieve the type of a margin.
3110 int GetMarginType(int margin) const;
3111
3112 // Set the width of a margin to a width expressed in pixels.
3113 void SetMarginWidth(int margin, int pixelWidth);
3114
3115 // Retrieve the width of a margin in pixels.
3116 int GetMarginWidth(int margin) const;
3117
3118 // Set a mask that determines which markers are displayed in a margin.
3119 void SetMarginMask(int margin, int mask);
3120
3121 // Retrieve the marker mask of a margin.
3122 int GetMarginMask(int margin) const;
3123
3124 // Make a margin sensitive or insensitive to mouse clicks.
3125 void SetMarginSensitive(int margin, bool sensitive);
3126
3127 // Retrieve the mouse click sensitivity of a margin.
3128 bool GetMarginSensitive(int margin) const;
3129
3130 // Set the cursor shown when the mouse is inside a margin.
3131 void SetMarginCursor(int margin, int cursor);
3132
3133 // Retrieve the cursor shown in a margin.
3134 int GetMarginCursor(int margin) const;
3135
3136 // Set the background colour of a margin. Only visible for wxSCI_MARGIN_COLOUR.
3137 void SetMarginBackground(int margin, const wxColour& back);
3138
3139 // Retrieve the background colour of a margin
3140 wxColour GetMarginBackground(int margin) const;
3141
3142 // Allocate a non-standard number of margins.
3143 void SetMarginCount(int margins);
3144
3145 // How many margins are there?.
3146 int GetMarginCount() const;
3147
3148 // Clear all the styles and make equivalent to the global default style.
3149 void StyleClearAll();
3150
3151 // Set the foreground colour of a style.
3152 void StyleSetForeground(int style, const wxColour& fore);
3153
3154 // Set the background colour of a style.
3155 void StyleSetBackground(int style, const wxColour& back);
3156
3157 // Set a style to be bold or not.
3158 void StyleSetBold(int style, bool bold);
3159
3160 // Set a style to be italic or not.
3161 void StyleSetItalic(int style, bool italic);
3162
3163 // Set the size of characters of a style.
3164 void StyleSetSize(int style, int sizePoints);
3165
3166 // Set the font of a style.
3167 void StyleSetFaceName(int style, const wxString& fontName);
3168
3169 // Set a style to have its end of line filled or not.
3170 void StyleSetEOLFilled(int style, bool eolFilled);
3171
3172 // Reset the default style to its state at startup
3173 void StyleResetDefault();
3174
3175 // Set a style to be underlined or not.
3176 void StyleSetUnderline(int style, bool underline);
3177
3178 // Get the foreground colour of a style.
3179 wxColour StyleGetForeground(int style) const;
3180
3181 // Get the background colour of a style.
3182 wxColour StyleGetBackground(int style) const;
3183
3184 // Get is a style bold or not.
3185 bool StyleGetBold(int style) const;
3186
3187 // Get is a style italic or not.
3188 bool StyleGetItalic(int style) const;
3189
3190 // Get the size of characters of a style.
3191 int StyleGetSize(int style) const;
3192
3193 // Get the font facename of a style
3194 wxString StyleGetFaceName(int style);
3195
3196 // Get is a style to have its end of line filled or not.
3197 bool StyleGetEOLFilled(int style) const;
3198
3199 // Get is a style underlined or not.
3200 bool StyleGetUnderline(int style) const;
3201
3202 // Get is a style mixed case, or to force upper or lower case.
3203 int StyleGetCase(int style) const;
3204
3205 // Get the character get of the font in a style.
3206 int StyleGetCharacterSet(int style) const;
3207
3208 // Get is a style visible or not.
3209 bool StyleGetVisible(int style) const;
3210
3211 // Get is a style changeable or not (read only).
3212 // Experimental feature, currently buggy.
3213 bool StyleGetChangeable(int style) const;
3214
3215 // Get is a style a hotspot or not.
3216 bool StyleGetHotSpot(int style) const;
3217
3218 // Set a style to be mixed case, or to force upper or lower case.
3219 void StyleSetCase(int style, int caseVisible);
3220
3221 // Set the size of characters of a style. Size is in points multiplied by 100.
3222 void StyleSetSizeFractional(int style, int sizeHundredthPoints);
3223
3224 // Get the size of characters of a style in points multiplied by 100
3225 int StyleGetSizeFractional(int style) const;
3226
3227 // Set the weight of characters of a style.
3228 void StyleSetWeight(int style, int weight);
3229
3230 // Get the weight of characters of a style.
3231 int StyleGetWeight(int style) const;
3232
3233 // Set the character set of the font in a style.
3234 void StyleSetCharacterSet(int style, int characterSet);
3235
3236 // Set a style to be a hotspot or not.
3237 void StyleSetHotSpot(int style, bool hotspot);
3238
3239 // Set the foreground colour of the main and additional selections and whether to use this setting.
3240 void SetSelForeground(bool useSetting, const wxColour& fore);
3241
3242 // Set the background colour of the main and additional selections and whether to use this setting.
3243 void SetSelBackground(bool useSetting, const wxColour& back);
3244
3245 // Get the alpha of the selection.
3246 int GetSelAlpha() const;
3247
3248 // Set the alpha of the selection.
3249 void SetSelAlpha(int alpha);
3250
3251 // Is the selection end of line filled?
3252 bool GetSelEOLFilled() const;
3253
3254 // Set the selection to have its end of line filled or not.
3255 void SetSelEOLFilled(bool filled);
3256
3257 // Set the foreground colour of the caret.
3258 void SetCaretForeground(const wxColour& fore);
3259
3260 // When key+modifier combination keyDefinition is pressed perform sciCommand.
3261 void CmdKeyAssign(int key, int modifiers, int cmd);
3262
3263 // When key+modifier combination keyDefinition is pressed do nothing.
3264 void CmdKeyClear(int key, int modifiers);
3265
3266 // Drop all key mappings.
3267 void CmdKeyClearAll();
3268
3269 // Set the styles for a segment of the document.
3270 void SetStyleBytes(int length, char* styleBytes);
3271
3272 // Set a style to be visible or not.
3273 void StyleSetVisible(int style, bool visible);
3274
3275 // Get the time in milliseconds that the caret is on and off.
3276 int GetCaretPeriod() const;
3277
3278 // Get the time in milliseconds that the caret is on and off. 0 = steady on.
3279 void SetCaretPeriod(int periodMilliseconds);
3280
3281 // Set the set of characters making up words for when moving or selecting by word.
3282 // First sets defaults like SetCharsDefault.
3283 void SetWordChars(const wxString& characters);
3284
3285 // Get the set of characters making up words for when moving or selecting by word.
3286 wxString GetWordChars() const;
3287
3288 // Start a sequence of actions that is undone and redone as a unit.
3289 // May be nested.
3290 void BeginUndoAction();
3291
3292 // End a sequence of actions that is undone and redone as a unit.
3293 void EndUndoAction();
3294
3295 // Set an indicator to plain, squiggle or TT.
3296 void IndicatorSetStyle(int indicator, int indicatorStyle);
3297
3298 // Retrieve the style of an indicator.
3299 int IndicatorGetStyle(int indicator) const;
3300
3301 // Set the foreground colour of an indicator.
3302 void IndicatorSetForeground(int indicator, const wxColour& fore);
3303
3304 // Retrieve the foreground colour of an indicator.
3305 wxColour IndicatorGetForeground(int indicator) const;
3306
3307 // Set an indicator to draw under text or over(default).
3308 void IndicatorSetUnder(int indicator, bool under);
3309
3310 // Retrieve whether indicator drawn under or over text.
3311 bool IndicatorGetUnder(int indicator) const;
3312
3313 // Set a hover indicator to plain, squiggle or TT.
3314 void IndicatorSetHoverStyle(int indicator, int indicatorStyle);
3315
3316 // Retrieve the hover style of an indicator.
3317 int IndicatorGetHoverStyle(int indicator) const;
3318
3319 // Set the foreground hover colour of an indicator.
3320 void IndicatorSetHoverForeground(int indicator, const wxColour& fore);
3321
3322 // Retrieve the foreground hover colour of an indicator.
3323 wxColour IndicatorGetHoverForeground(int indicator) const;
3324
3325 // Set the attributes of an indicator.
3326 void IndicatorSetFlags(int indicator, int flags);
3327
3328 // Retrieve the attributes of an indicator.
3329 int IndicatorGetFlags(int indicator) const;
3330
3331 // Set the foreground colour of all whitespace and whether to use this setting.
3332 void SetWhitespaceForeground(bool useSetting, const wxColour& fore);
3333
3334 // Set the background colour of all whitespace and whether to use this setting.
3335 void SetWhitespaceBackground(bool useSetting, const wxColour& back);
3336
3337 // Set the size of the dots used to mark space characters.
3338 void SetWhitespaceSize(int size);
3339
3340 // Get the size of the dots used to mark space characters.
3341 int GetWhitespaceSize() const;
3342
3343 // Divide each styling byte into lexical class bits (default: 5) and indicator
3344 // bits (default: 3). If a lexer requires more than 32 lexical states, then this
3345 // is used to expand the possible states.
3346 #if wxCHECK_VERSION(3, 0, 0)
3347 wxDEPRECATED_MSG( "This method uses a function deprecated in the Scintilla library." )
3348 #endif // wxCHECK_VERSION
3349 void SetStyleBits(int bits);
3350
3351 // Retrieve number of bits in style bytes used to hold the lexical state.
3352 #if wxCHECK_VERSION(3, 0, 0)
3353 wxDEPRECATED_MSG( "This method uses a function deprecated in the Scintilla library." )
3354 #endif // wxCHECK_VERSION
3355 int GetStyleBits() const;
3356
3357 // Used to hold extra styling information for each line.
3358 void SetLineState(int line, int state);
3359
3360 // Retrieve the extra styling information for a line.
3361 int GetLineState(int line) const;
3362
3363 // Retrieve the last line number that has line state.
3364 int GetMaxLineState() const;
3365
3366 // Is the background of the line containing the caret in a different colour?
3367 bool GetCaretLineVisible() const;
3368
3369 // Display the background of the line containing the caret in a different colour.
3370 void SetCaretLineVisible(bool show);
3371
3372 // Get the colour of the background of the line containing the caret.
3373 wxColour GetCaretLineBackground() const;
3374
3375 // Set the colour of the background of the line containing the caret.
3376 void SetCaretLineBackground(const wxColour& back);
3377
3378 // Set a style to be changeable or not (read only).
3379 // Experimental feature, currently buggy.
3380 void StyleSetChangeable(int style, bool changeable);
3381
3382 // Display a auto-completion list.
3383 // The lengthEntered parameter indicates how many characters before
3384 // the caret should be used to provide context.
3385 void AutoCompShow(int lengthEntered, const wxString& itemList);
3386
3387 // Remove the auto-completion list from the screen.
3388 void AutoCompCancel();
3389
3390 // Is there an auto-completion list visible?
3391 bool AutoCompActive();
3392
3393 // Retrieve the position of the caret when the auto-completion list was displayed.
3394 int AutoCompPosStart();
3395
3396 // User has selected an item so remove the list and insert the selection.
3397 void AutoCompComplete();
3398
3399 // Define a set of character that when typed cancel the auto-completion list.
3400 void AutoCompStops(const wxString& characterSet);
3401
3402 // Change the separator character in the string setting up an auto-completion list.
3403 // Default is space but can be changed if items contain space.
3404 void AutoCompSetSeparator(int separatorCharacter);
3405
3406 // Retrieve the auto-completion list separator character.
3407 int AutoCompGetSeparator() const;
3408
3409 // Select the item in the auto-completion list that starts with a string.
3410 void AutoCompSelect(const wxString& select);
3411
3412 // Should the auto-completion list be cancelled if the user backspaces to a
3413 // position before where the box was created.
3414 void AutoCompSetCancelAtStart(bool cancel);
3415
3416 // Retrieve whether auto-completion cancelled by backspacing before start.
3417 bool AutoCompGetCancelAtStart() const;
3418
3419 // Define a set of characters that when typed will cause the autocompletion to
3420 // choose the selected item.
3421 void AutoCompSetFillUps(const wxString& characterSet);
3422
3423 // Should a single item auto-completion list automatically choose the item.
3424 void AutoCompSetChooseSingle(bool chooseSingle);
3425
3426 // Retrieve whether a single item auto-completion list automatically choose the item.
3427 bool AutoCompGetChooseSingle() const;
3428
3429 // Set whether case is significant when performing auto-completion searches.
3430 void AutoCompSetIgnoreCase(bool ignoreCase);
3431
3432 // Retrieve state of ignore case flag.
3433 bool AutoCompGetIgnoreCase() const;
3434
3435 // Display a list of strings and send notification when user chooses one.
3436 void UserListShow(int listType, const wxString& itemList);
3437
3438 // Set whether or not autocompletion is hidden automatically when nothing matches.
3439 void AutoCompSetAutoHide(bool autoHide);
3440
3441 // Retrieve whether or not autocompletion is hidden automatically when nothing matches.
3442 bool AutoCompGetAutoHide() const;
3443
3444 // Set whether or not autocompletion deletes any word characters
3445 // after the inserted text upon completion.
3446 void AutoCompSetDropRestOfWord(bool dropRestOfWord);
3447
3448 // Retrieve whether or not autocompletion deletes any word characters
3449 // after the inserted text upon completion.
3450 bool AutoCompGetDropRestOfWord() const;
3451
3452 // Register an image for use in autocompletion lists.
3453 void RegisterImage(int type, const char* const* xpmData);
3454
3455 // Clear all the registered images.
3456 void ClearRegisteredImages();
3457
3458 // Retrieve the auto-completion list type-separator character.
3459 int AutoCompGetTypeSeparator() const;
3460
3461 // Change the type-separator character in the string setting up an auto-completion list.
3462 // Default is '?' but can be changed if items contain '?'.
3463 void AutoCompSetTypeSeparator(int separatorCharacter);
3464
3465 // Set the maximum width, in characters, of auto-completion and user lists.
3466 // Set to 0 to autosize to fit longest item, which is the default.
3467 void AutoCompSetMaxWidth(int characterCount);
3468
3469 // Get the maximum width, in characters, of auto-completion and user lists.
3470 int AutoCompGetMaxWidth() const;
3471
3472 // Set the maximum height, in rows, of auto-completion and user lists.
3473 // The default is 5 rows.
3474 void AutoCompSetMaxHeight(int rowCount);
3475
3476 // Set the maximum height, in rows, of auto-completion and user lists.
3477 int AutoCompGetMaxHeight() const;
3478
3479 // Set the number of spaces used for one level of indentation.
3480 void SetIndent(int indentSize);
3481
3482 // Retrieve indentation size.
3483 int GetIndent() const;
3484
3485 // Indentation will only use space characters if useTabs is false, otherwise
3486 // it will use a combination of tabs and spaces.
3487 void SetUseTabs(bool useTabs);
3488
3489 // Retrieve whether tabs will be used in indentation.
3490 bool GetUseTabs() const;
3491
3492 // Change the indentation of a line to a number of columns.
3493 void SetLineIndentation(int line, int indentation);
3494
3495 // Retrieve the number of columns that a line is indented.
3496 int GetLineIndentation(int line) const;
3497
3498 // Retrieve the position before the first non indentation character on a line.
3499 int GetLineIndentPosition(int line) const;
3500
3501 // Retrieve the column number of a position, taking tab width into account.
3502 int GetColumn(int pos) const;
3503
3504 // Count characters between two positions.
3505 int CountCharacters(int start, int end);
3506
3507 // Show or hide the horizontal scroll bar.
3508 void SetUseHorizontalScrollBar(bool visible);
3509
3510 // Is the horizontal scroll bar visible?
3511 bool GetUseHorizontalScrollBar() const;
3512
3513 // Show or hide indentation guides.
3514 void SetIndentationGuides(int indentView);
3515
3516 // Are the indentation guides visible?
3517 int GetIndentationGuides() const;
3518
3519 // Set the highlighted indentation guide column.
3520 // 0 = no highlighted guide.
3521 void SetHighlightGuide(int column);
3522
3523 // Get the highlighted indentation guide column.
3524 int GetHighlightGuide() const;
3525
3526 // Get the position after the last visible characters on a line.
3527 int GetLineEndPosition(int line) const;
3528
3529 // Get the code page used to interpret the bytes of the document as characters.
3530 int GetCodePage() const;
3531
3532 // Get the foreground colour of the caret.
3533 wxColour GetCaretForeground() const;
3534
3535 // In read-only mode?
3536 bool GetReadOnly() const;
3537
3538 // Sets the position of the caret.
3539 void SetCurrentPos(int caret);
3540
3541 // Sets the position that starts the selection - this becomes the anchor.
3542 void SetSelectionStart(int anchor);
3543
3544 // Returns the position at the start of the selection.
3545 int GetSelectionStart() const;
3546
3547 // Sets the position that ends the selection - this becomes the caret.
3548 void SetSelectionEnd(int caret);
3549
3550 // Returns the position at the end of the selection.
3551 int GetSelectionEnd() const;
3552
3553 // Set caret to a position, while removing any existing selection.
3554 void SetEmptySelection(int caret);
3555
3556 // Sets the print magnification added to the point size of each style for printing.
3557 void SetPrintMagnification(int magnification);
3558
3559 // Returns the print magnification.
3560 int GetPrintMagnification() const;
3561
3562 // Modify colours when printing for clearer printed text.
3563 void SetPrintColourMode(int mode);
3564
3565 // Returns the print colour mode.
3566 int GetPrintColourMode() const;
3567
3568 // Find some text in the document.
3569 int FindText(int minPos, int maxPos, const wxString& text, int flags=0,
3570 int* findEnd=NULL);
3571
3572 // On Windows, will draw the document into a display context such as a printer.
3573 int FormatRange(bool doDraw,
3574 int startPos,
3575 int endPos,
3576 wxDC* draw,
3577 wxDC* target,
3578 wxRect renderRect,
3579 wxRect pageRect);
3580
3581 // Retrieve the display line at the top of the display.
3582 int GetFirstVisibleLine() const;
3583
3584 // Retrieve the contents of a line.
3585 wxString GetLine(int line) const;
3586
3587 // Returns the number of lines in the document. There is always at least one.
3588 int GetLineCount() const;
3589
3590 // Sets the size in pixels of the left margin.
3591 void SetMarginLeft(int pixelWidth);
3592
3593 // Returns the size in pixels of the left margin.
3594 int GetMarginLeft() const;
3595
3596 // Sets the size in pixels of the right margin.
3597 void SetMarginRight(int pixelWidth);
3598
3599 // Returns the size in pixels of the right margin.
3600 int GetMarginRight() const;
3601
3602 // Is the document different from when it was last saved?
3603 bool GetModify() const;
3604
3605 // Retrieve the selected text.
3606 wxString GetSelectedText();
3607
3608 // Retrieve a range of text.
3609 wxString GetTextRange(int startPos, int endPos);
3610
3611 // Draw the selection in normal style or with selection highlighted.
3612 void HideSelection(bool hide);
3613
3614 // Retrieve the point in the window where a position is displayed.
3615 wxPoint PointFromPosition(int pos);
3616
3617 // Retrieve the line containing a position.
3618 int LineFromPosition(int pos) const;
3619
3620 // Retrieve the position at the start of a line.
3621 int PositionFromLine(int line) const;
3622
3623 // Scroll horizontally and vertically.
3624 void LineScroll(int columns, int lines);
3625
3626 // Ensure the caret is visible.
3627 void EnsureCaretVisible();
3628
3629 // Scroll the argument positions and the range between them into view giving
3630 // priority to the primary position then the secondary position.
3631 // This may be used to make a search match visible.
3632 void ScrollRange(int secondary, int primary);
3633
3634 // Replace the selected text with the argument text.
3635 void ReplaceSelection(const wxString& text);
3636
3637 // Set to read only or read write.
3638 void SetReadOnly(bool readOnly);
3639
3640 // Will a paste succeed?
3641 bool CanPaste() const;
3642
3643 // Are there any undoable actions in the undo history?
3644 bool CanUndo() const;
3645
3646 // Delete the undo history.
3647 /* CHANGEBAR begin */
3648 void EmptyUndoBuffer(bool collectChangeHistory=false);
3649 /* CHANGEBAR end */
3650
3651 // Undo one action in the undo history.
3652 void Undo();
3653
3654 // Cut the selection to the clipboard.
3655 void Cut();
3656
3657 // Copy the selection to the clipboard.
3658 void Copy();
3659
3660 // Paste the contents of the clipboard into the document replacing the selection.
3661 void Paste();
3662
3663 // Clear the selection.
3664 void Clear();
3665
3666 // Replace the contents of the document with the argument text.
3667 void SetText(const wxString& text);
3668
3669 // Retrieve all the text in the document.
3670 wxString GetText() const;
3671
3672 // Retrieve the number of characters in the document.
3673 int GetTextLength() const;
3674
3675 // Retrieve a pointer to a function that processes messages for this Scintilla.
3676 void* GetDirectFunction() const;
3677
3678 // Retrieve a pointer value to use as the first argument when calling
3679 // the function returned by GetDirectFunction.
3680 void* GetDirectPointer() const;
3681
3682 // Set to overtype (true) or insert mode.
3683 void SetOvertype(bool overType);
3684
3685 // Returns true if overtype mode is active otherwise false is returned.
3686 bool GetOvertype() const;
3687
3688 // Set the width of the insert mode caret.
3689 void SetCaretWidth(int pixelWidth);
3690
3691 // Returns the width of the insert mode caret.
3692 int GetCaretWidth() const;
3693
3694 // Sets the position that starts the target which is used for updating the
3695 // document without affecting the scroll position.
3696 void SetTargetStart(int start);
3697
3698 // Get the position that starts the target.
3699 int GetTargetStart() const;
3700
3701 // Sets the position that ends the target which is used for updating the
3702 // document without affecting the scroll position.
3703 void SetTargetEnd(int end);
3704
3705 // Get the position that ends the target.
3706 int GetTargetEnd() const;
3707
3708 // Sets both the start and end of the target in one call.
3709 void SetTargetRange(int start, int end);
3710
3711 // Retrieve the text in the target.
3712 wxString GetTargetText() const;
3713
3714 // Make the target range start and end be the same as the selection range start and end.
3715 void TargetFromSelection();
3716
3717 // Sets the target to the whole document.
3718 void TargetWholeDocument();
3719
3720 // Replace the target text with the argument text.
3721 // Text is counted so it can contain NULs.
3722 // Returns the length of the replacement text.
3723 int ReplaceTarget(const wxString& text);
3724
3725 // Replace the target text with the argument text after \\d processing.
3726 // Text is counted so it can contain NULs.
3727 // Looks for \\d where d is between 1 and 9 and replaces these with the strings
3728 // matched in the last search operation which were surrounded by \\( and \\).
3729 // Returns the length of the replacement text including any change
3730 // caused by processing the \\d patterns.
3731 int ReplaceTargetRE(const wxString& text);
3732
3733 // Search for a counted string in the target and set the target to the found
3734 // range. Text is counted so it can contain NULs.
3735 // Returns length of range or -1 for failure in which case target is not moved.
3736 int SearchInTarget(const wxString& text);
3737
3738 // Set the search flags used by SearchInTarget.
3739 void SetSearchFlags(int searchFlags);
3740
3741 // Get the search flags used by SearchInTarget.
3742 int GetSearchFlags() const;
3743
3744 // Show a call tip containing a definition near position pos.
3745 void CallTipShow(int pos, const wxString& definition);
3746
3747 // Remove the call tip from the screen.
3748 void CallTipCancel();
3749
3750 // Is there an active call tip?
3751 bool CallTipActive();
3752
3753 // Retrieve the position where the caret was before displaying the call tip.
3754 int CallTipPosAtStart();
3755
3756 // Set the start position in order to change when backspacing removes the calltip.
3757 void CallTipSetPosAtStart(int posStart);
3758
3759 // Highlight a segment of the definition.
3760 void CallTipSetHighlight(int highlightStart, int highlightEnd);
3761
3762 // Set the background colour for the call tip.
3763 void CallTipSetBackground(const wxColour& back);
3764
3765 // Set the foreground colour for the call tip.
3766 void CallTipSetForeground(const wxColour& fore);
3767
3768 // Set the foreground colour for the highlighted part of the call tip.
3769 void CallTipSetForegroundHighlight(const wxColour& fore);
3770
3771 // Enable use of wxSCI_STYLE_CALLTIP and set call tip tab size in pixels.
3772 void CallTipUseStyle(int tabSize);
3773
3774 // Set position of calltip, above or below text.
3775 void CallTipSetPosition(bool above);
3776
3777 // Find the display line of a document line taking hidden lines into account.
3778 int VisibleFromDocLine(int docLine);
3779
3780 // Find the document line of a display line taking hidden lines into account.
3781 int DocLineFromVisible(int displayLine);
3782
3783 // The number of display lines needed to wrap a document line
3784 int WrapCount(int docLine);
3785
3786 // Set the fold level of a line.
3787 // This encodes an integer level along with flags indicating whether the
3788 // line is a header and whether it is effectively white space.
3789 void SetFoldLevel(int line, int level);
3790
3791 // Retrieve the fold level of a line.
3792 int GetFoldLevel(int line) const;
3793
3794 // Find the last child line of a header line.
3795 int GetLastChild(int line, int level) const;
3796
3797 // Find the parent line of a child line.
3798 int GetFoldParent(int line) const;
3799
3800 // Make a range of lines visible.
3801 void ShowLines(int lineStart, int lineEnd);
3802
3803 // Make a range of lines invisible.
3804 void HideLines(int lineStart, int lineEnd);
3805
3806 // Is a line visible?
3807 bool GetLineVisible(int line) const;
3808
3809 // Are all lines visible?
3810 bool GetAllLinesVisible() const;
3811
3812 // Show the children of a header line.
3813 void SetFoldExpanded(int line, bool expanded);
3814
3815 // Is a header line expanded?
3816 bool GetFoldExpanded(int line) const;
3817
3818 // Switch a header line between expanded and contracted.
3819 void ToggleFold(int line);
3820
3821 // Switch a header line between expanded and contracted and show some text after the line.
3822 void ToggleFoldShowText(int line, const wxString& text);
3823
3824 // Set the style of fold display text
3825 void FoldDisplayTextSetStyle(int style);
3826
3827 // Expand or contract a fold header.
3828 void FoldLine(int line, int action);
3829
3830 // Expand or contract a fold header and its children.
3831 void FoldChildren(int line, int action);
3832
3833 // Expand a fold header and all children. Use the level argument instead of the line's current level.
3834 void ExpandChildren(int line, int level);
3835
3836 // Expand or contract all fold headers.
3837 void FoldAll(int action);
3838
3839 // Ensure a particular line is visible by expanding any header line hiding it.
3840 void EnsureVisible(int line);
3841
3842 // Set automatic folding behaviours.
3843 void SetAutomaticFold(int automaticFold);
3844
3845 // Get automatic folding behaviours.
3846 int GetAutomaticFold() const;
3847
3848 // Set some style options for folding.
3849 void SetFoldFlags(int flags);
3850
3851 // Ensure a particular line is visible by expanding any header line hiding it.
3852 // Use the currently set visibility policy to determine which range to display.
3853 void EnsureVisibleEnforcePolicy(int line);
3854
3855 // Sets whether a tab pressed when caret is within indentation indents.
3856 void SetTabIndents(bool tabIndents);
3857
3858 // Does a tab pressed when caret is within indentation indent?
3859 bool GetTabIndents() const;
3860
3861 // Sets whether a backspace pressed when caret is within indentation unindents.
3862 void SetBackSpaceUnIndents(bool bsUnIndents);
3863
3864 // Does a backspace pressed when caret is within indentation unindent?
3865 bool GetBackSpaceUnIndents() const;
3866
3867 // Sets the time the mouse must sit still to generate a mouse dwell event.
3868 void SetMouseDwellTime(int periodMilliseconds);
3869
3870 // Retrieve the time the mouse must sit still to generate a mouse dwell event.
3871 int GetMouseDwellTime() const;
3872
3873 // Get position of start of word.
3874 int WordStartPosition(int pos, bool onlyWordCharacters);
3875
3876 // Get position of end of word.
3877 int WordEndPosition(int pos, bool onlyWordCharacters);
3878
3879 // Is the range start..end considered a word?
3880 bool IsRangeWord(int start, int end);
3881
3882 // Sets limits to idle styling.
3883 void SetIdleStyling(int idleStyling);
3884
3885 // Retrieve the limits to idle styling.
3886 int GetIdleStyling() const;
3887
3888 // Sets whether text is word wrapped.
3889 void SetWrapMode(int wrapMode);
3890
3891 // Retrieve whether text is word wrapped.
3892 int GetWrapMode() const;
3893
3894 // Set the display mode of visual flags for wrapped lines.
3895 void SetWrapVisualFlags(int wrapVisualFlags);
3896
3897 // Retrieve the display mode of visual flags for wrapped lines.
3898 int GetWrapVisualFlags() const;
3899
3900 // Set the location of visual flags for wrapped lines.
3901 void SetWrapVisualFlagsLocation(int wrapVisualFlagsLocation);
3902
3903 // Retrieve the location of visual flags for wrapped lines.
3904 int GetWrapVisualFlagsLocation() const;
3905
3906 // Set the start indent for wrapped lines.
3907 void SetWrapStartIndent(int indent);
3908
3909 // Retrieve the start indent for wrapped lines.
3910 int GetWrapStartIndent() const;
3911
3912 // Sets how wrapped sublines are placed. Default is wxSCI_WRAPINDENT_FIXED.
3913 void SetWrapIndentMode(int wrapIndentMode);
3914
3915 // Retrieve how wrapped sublines are placed. Default is wxSCI_WRAPINDENT_FIXED.
3916 int GetWrapIndentMode() const;
3917
3918 // Sets the degree of caching of layout information.
3919 void SetLayoutCache(int cacheMode);
3920
3921 // Retrieve the degree of caching of layout information.
3922 int GetLayoutCache() const;
3923
3924 // Sets the document width assumed for scrolling.
3925 void SetScrollWidth(int pixelWidth);
3926
3927 // Retrieve the document width assumed for scrolling.
3928 int GetScrollWidth() const;
3929
3930 // Sets whether the maximum width line displayed is used to set scroll width.
3931 void SetScrollWidthTracking(bool tracking);
3932
3933 // Retrieve whether the scroll width tracks wide lines.
3934 bool GetScrollWidthTracking() const;
3935
3936 // Measure the pixel width of some text in a particular style.
3937 // Does not handle tab or control characters.
3938 int TextWidth(int style, const wxString& text);
3939
3940 // Sets the scroll range so that maximum scroll position has
3941 // the last line at the bottom of the view (default).
3942 // Setting this to false allows scrolling one page below the last line.
3943 void SetEndAtLastLine(bool endAtLastLine);
3944
3945 // Retrieve whether the maximum scroll position has the last
3946 // line at the bottom of the view.
3947 bool GetEndAtLastLine() const;
3948
3949 // Retrieve the height of a particular line of text in pixels.
3950 int TextHeight(int line);
3951
3952 // Show or hide the vertical scroll bar.
3953 void SetUseVerticalScrollBar(bool visible);
3954
3955 // Is the vertical scroll bar visible?
3956 bool GetUseVerticalScrollBar() const;
3957
3958 // Append a string to the end of the document without changing the selection.
3959 void AppendText(const wxString& text);
3960
3961 // Is drawing done in two phases with backgrounds drawn before foregrounds?
3962 bool GetTwoPhaseDraw() const;
3963
3964 // In twoPhaseDraw mode, drawing is performed in two phases, first the background
3965 // and then the foreground. This avoids chopping off characters that overlap the next run.
3966 void SetTwoPhaseDraw(bool twoPhase);
3967
3968 // How many phases is drawing done in?
3969 int GetPhasesDraw() const;
3970
3971 // In one phase draw, text is drawn in a series of rectangular blocks with no overlap.
3972 // In two phase draw, text is drawn in a series of lines allowing runs to overlap horizontally.
3973 // In multiple phase draw, each element is drawn over the whole drawing area, allowing text
3974 // to overlap from one line to the next.
3975 void SetPhasesDraw(int phases);
3976
3977 // Choose the quality level for text.
3978 void SetFontQuality(int fontQuality);
3979
3980 // Retrieve the quality level for text.
3981 int GetFontQuality() const;
3982
3983 // Scroll so that a display line is at the top of the display.
3984 void SetFirstVisibleLine(int displayLine);
3985
3986 // Change the effect of pasting when there are multiple selections.
3987 void SetMultiPaste(int multiPaste);
3988
3989 // Retrieve the effect of pasting when there are multiple selections.
3990 int GetMultiPaste() const;
3991
3992 // Retrieve the value of a tag from a regular expression search.
3993 wxString GetTag(int tagNumber) const;
3994
3995 // Join the lines in the target.
3996 void LinesJoin();
3997
3998 // Split the lines in the target into lines that are less wide than pixelWidth
3999 // where possible.
4000 void LinesSplit(int pixelWidth);
4001
4002 // Set one of the colours used as a chequerboard pattern in the fold margin
4003 void SetFoldMarginColour(bool useSetting, const wxColour& back);
4004
4005 // Set the other colour used as a chequerboard pattern in the fold margin
4006 void SetFoldMarginHiColour(bool useSetting, const wxColour& fore);
4007
4008 // Move caret down one line.
4009 void LineDown();
4010
4011 // Move caret down one line extending selection to new caret position.
4012 void LineDownExtend();
4013
4014 // Move caret up one line.
4015 void LineUp();
4016
4017 // Move caret up one line extending selection to new caret position.
4018 void LineUpExtend();
4019
4020 // Move caret left one character.
4021 void CharLeft();
4022
4023 // Move caret left one character extending selection to new caret position.
4024 void CharLeftExtend();
4025
4026 // Move caret right one character.
4027 void CharRight();
4028
4029 // Move caret right one character extending selection to new caret position.
4030 void CharRightExtend();
4031
4032 // Move caret left one word.
4033 void WordLeft();
4034
4035 // Move caret left one word extending selection to new caret position.
4036 void WordLeftExtend();
4037
4038 // Move caret right one word.
4039 void WordRight();
4040
4041 // Move caret right one word extending selection to new caret position.
4042 void WordRightExtend();
4043
4044 // Move caret to first position on line.
4045 void Home();
4046
4047 // Move caret to first position on line extending selection to new caret position.
4048 void HomeExtend();
4049
4050 // Move caret to last position on line.
4051 void LineEnd();
4052
4053 // Move caret to last position on line extending selection to new caret position.
4054 void LineEndExtend();
4055
4056 // Move caret to first position in document.
4057 void DocumentStart();
4058
4059 // Move caret to first position in document extending selection to new caret position.
4060 void DocumentStartExtend();
4061
4062 // Move caret to last position in document.
4063 void DocumentEnd();
4064
4065 // Move caret to last position in document extending selection to new caret position.
4066 void DocumentEndExtend();
4067
4068 // Move caret one page up.
4069 void PageUp();
4070
4071 // Move caret one page up extending selection to new caret position.
4072 void PageUpExtend();
4073
4074 // Move caret one page down.
4075 void PageDown();
4076
4077 // Move caret one page down extending selection to new caret position.
4078 void PageDownExtend();
4079
4080 // Switch from insert to overtype mode or the reverse.
4081 void EditToggleOvertype();
4082
4083 // Cancel any modes such as call tip or auto-completion list display.
4084 void Cancel();
4085
4086 // Delete the selection or if no selection, the character before the caret.
4087 void DeleteBack();
4088
4089 // If selection is empty or all on one line replace the selection with a tab character.
4090 // If more than one line selected, indent the lines.
4091 void Tab();
4092
4093 // Dedent the selected lines.
4094 void BackTab();
4095
4096 // Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
4097 void NewLine();
4098
4099 // Insert a Form Feed character.
4100 void FormFeed();
4101
4102 // Move caret to before first visible character on line.
4103 // If already there move to first character on line.
4104 void VCHome();
4105
4106 // Like VCHome but extending selection to new caret position.
4107 void VCHomeExtend();
4108
4109 // Magnify the displayed text by increasing the sizes by 1 point.
4110 void ZoomIn();
4111
4112 // Make the displayed text smaller by decreasing the sizes by 1 point.
4113 void ZoomOut();
4114
4115 // Delete the word to the left of the caret.
4116 void DelWordLeft();
4117
4118 // Delete the word to the right of the caret.
4119 void DelWordRight();
4120
4121 // Delete the word to the right of the caret, but not the trailing non-word characters.
4122 void DelWordRightEnd();
4123
4124 // Cut the line containing the caret.
4125 void LineCut();
4126
4127 // Delete the line containing the caret.
4128 void LineDelete();
4129
4130 // Switch the current line with the previous.
4131 void LineTranspose();
4132
4133 // Duplicate the current line.
4134 void LineDuplicate();
4135
4136 // Transform the selection to lower case.
4137 void LowerCase();
4138
4139 // Transform the selection to upper case.
4140 void UpperCase();
4141
4142 // Scroll the document down, keeping the caret visible.
4143 void LineScrollDown();
4144
4145 // Scroll the document up, keeping the caret visible.
4146 void LineScrollUp();
4147
4148 // Delete the selection or if no selection, the character before the caret.
4149 // Will not delete the character before at the start of a line.
4150 void DeleteBackNotLine();
4151
4152 // Move caret to first position on display line.
4153 void HomeDisplay();
4154
4155 // Move caret to first position on display line extending selection to
4156 // new caret position.
4157 void HomeDisplayExtend();
4158
4159 // Move caret to last position on display line.
4160 void LineEndDisplay();
4161
4162 // Move caret to last position on display line extending selection to new
4163 // caret position.
4164 void LineEndDisplayExtend();
4165
4166 // Like Home but when word-wrap is enabled goes first to start of display line
4167 // HomeDisplay, then to start of document line Home.
4168 void HomeWrap();
4169
4170 // Like HomeExtend but when word-wrap is enabled extends first to start of display line
4171 // HomeDisplayExtend, then to start of document line HomeExtend.
4172 void HomeWrapExtend();
4173
4174 // Like LineEnd but when word-wrap is enabled goes first to end of display line
4175 // LineEndDisplay, then to start of document line LineEnd.
4176 void LineEndWrap();
4177
4178 // Like LineEndExtend but when word-wrap is enabled extends first to end of display line
4179 // LineEndDisplayExtend, then to start of document line LineEndExtend.
4180 void LineEndWrapExtend();
4181
4182 // Like VCHome but when word-wrap is enabled goes first to start of display line
4183 // VCHomeDisplay, then behaves like VCHome.
4184 void VCHomeWrap();
4185
4186 // Like VCHomeExtend but when word-wrap is enabled extends first to start of display line
4187 // VCHomeDisplayExtend, then behaves like VCHomeExtend.
4188 void VCHomeWrapExtend();
4189
4190 // Copy the line containing the caret.
4191 void LineCopy();
4192
4193 // Move the caret inside current view if it's not there already.
4194 void MoveCaretInsideView();
4195
4196 // How many characters are on a line, including end of line characters?
4197 int LineLength(int line) const;
4198
4199 // Highlight the characters at two positions.
4200 void BraceHighlight(int posA, int posB);
4201
4202 // Use specified indicator to highlight matching braces instead of changing their style.
4203 void BraceHighlightIndicator(bool useSetting, int indicator);
4204
4205 // Highlight the character at a position indicating there is no matching brace.
4206 void BraceBadLight(int pos);
4207
4208 // Use specified indicator to highlight non matching brace instead of changing its style.
4209 void BraceBadLightIndicator(bool useSetting, int indicator);
4210
4211 // Find the position of a matching brace or wxSCI_INVALID_POSITION if no match.
4212 // The maxReStyle must be 0 for now. It may be defined in a future release.
4213 int BraceMatch(int pos, int maxReStyle=0);
4214
4215 // Are the end of line characters visible?
4216 bool GetViewEOL() const;
4217
4218 // Make the end of line characters visible or invisible.
4219 void SetViewEOL(bool visible);
4220
4221 // Retrieve a pointer to the document object.
4222 void* GetDocPointer();
4223
4224 // Change the document object used.
4225 void SetDocPointer(void* docPointer);
4226
4227 // Set which document modification events are sent to the container.
4228 void SetModEventMask(int eventMask);
4229
4230 // Retrieve the column number which text should be kept within.
4231 int GetEdgeColumn() const;
4232
4233 // Set the column number of the edge.
4234 // If text goes past the edge then it is highlighted.
4235 void SetEdgeColumn(int column);
4236
4237 // Retrieve the edge highlight mode.
4238 int GetEdgeMode() const;
4239
4240 // The edge may be displayed by a line (wxSCI_EDGE_LINE/wxSCI_EDGE_MULTILINE) or by highlighting text that
4241 // goes beyond it (wxSCI_EDGE_BACKGROUND) or not displayed at all (wxSCI_EDGE_NONE).
4242 void SetEdgeMode(int edgeMode);
4243
4244 // Retrieve the colour used in edge indication.
4245 wxColour GetEdgeColour() const;
4246
4247 // Change the colour used in edge indication.
4248 void SetEdgeColour(const wxColour& edgeColour);
4249
4250 // Add a new vertical edge to the view.
4251 void MultiEdgeAddLine(int column, const wxColour& edgeColour);
4252
4253 // Clear all vertical edges.
4254 void MultiEdgeClearAll();
4255
4256 // Sets the current caret position to be the search anchor.
4257 void SearchAnchor();
4258
4259 // Find some text starting at the search anchor.
4260 // Does not ensure the selection is visible.
4261 int SearchNext(int searchFlags, const wxString& text);
4262
4263 // Find some text starting at the search anchor and moving backwards.
4264 // Does not ensure the selection is visible.
4265 int SearchPrev(int searchFlags, const wxString& text);
4266
4267 // Retrieves the number of lines completely visible.
4268 int LinesOnScreen() const;
4269
4270 // Set whether a pop up menu is displayed automatically when the user presses
4271 // the wrong mouse button on certain areas.
4272 void UsePopUp(int popUpMode);
4273
4274 // Is the selection rectangular? The alternative is the more common stream selection.
4275 bool SelectionIsRectangle() const;
4276
4277 // Set the zoom level. This number of points is added to the size of all fonts.
4278 // It may be positive to magnify or negative to reduce.
4279 void SetZoom(int zoomInPoints);
4280
4281 // Retrieve the zoom level.
4282 int GetZoom() const;
4283
4284 // Create a new document object.
4285 // Starts with reference count of 1 and not selected into editor.
4286 void* CreateDocument();
4287
4288 // Extend life of document.
4289 void AddRefDocument(void* docPointer);
4290
4291 // Release a reference to the document, deleting document if it fades to black.
4292 void ReleaseDocument(void* docPointer);
4293
4294 // Get which document modification events are sent to the container.
4295 int GetModEventMask() const;
4296
4297 // Change internal focus flag.
4298 void SetSCIFocus(bool focus);
4299
4300 // Get internal focus flag.
4301 bool GetSCIFocus() const;
4302
4303 // Change error status - 0 = OK.
4304 void SetStatus(int status);
4305
4306 // Get error status.
4307 int GetStatus() const;
4308
4309 // Set whether the mouse is captured when its button is pressed.
4310 void SetMouseDownCaptures(bool captures);
4311
4312 // Get whether mouse gets captured.
4313 bool GetMouseDownCaptures() const;
4314
4315 // Set whether the mouse wheel can be active outside the window.
4316 void SetMouseWheelCaptures(bool captures);
4317
4318 // Get whether mouse wheel can be active outside the window.
4319 bool GetMouseWheelCaptures() const;
4320
4321 // Sets the cursor to one of the wxSCI_CURSOR* values.
4322 void SetSCICursor(int cursorType);
4323
4324 // Get cursor type.
4325 int GetSCICursor() const;
4326
4327 // Change the way control characters are displayed:
4328 // If symbol is < 32, keep the drawn way, else, use the given character.
4329 void SetControlCharSymbol(int symbol);
4330
4331 // Get the way control characters are displayed.
4332 int GetControlCharSymbol() const;
4333
4334 // Move to the previous change in capitalisation.
4335 void WordPartLeft();
4336
4337 // Move to the previous change in capitalisation extending selection
4338 // to new caret position.
4339 void WordPartLeftExtend();
4340
4341 // Move to the change next in capitalisation.
4342 void WordPartRight();
4343
4344 // Move to the next change in capitalisation extending selection
4345 // to new caret position.
4346 void WordPartRightExtend();
4347
4348 // Set the way the display area is determined when a particular line
4349 // is to be moved to by Find, FindNext, GotoLine, etc.
4350 void SetVisiblePolicy(int visiblePolicy, int visibleSlop);
4351
4352 // Delete back from the current position to the start of the line.
4353 void DelLineLeft();
4354
4355 // Delete forwards from the current position to the end of the line.
4356 void DelLineRight();
4357
4358 // Set the xOffset (ie, horizontal scroll position).
4359 void SetXOffset(int xOffset);
4360
4361 // Get the xOffset (ie, horizontal scroll position).
4362 int GetXOffset() const;
4363
4364 // Set the last x chosen value to be the caret x position.
4365 void ChooseCaretX();
4366
4367 // Set the way the caret is kept visible when going sideways.
4368 // The exclusion zone is given in pixels.
4369 void SetXCaretPolicy(int caretPolicy, int caretSlop);
4370
4371 // Set the way the line the caret is on is kept visible.
4372 // The exclusion zone is given in lines.
4373 void SetYCaretPolicy(int caretPolicy, int caretSlop);
4374
4375 // Set printing to line wrapped (wxSCI_WRAP_WORD) or not line wrapped (wxSCI_WRAP_NONE).
4376 void SetPrintWrapMode(int wrapMode);
4377
4378 // Is printing line wrapped?
4379 int GetPrintWrapMode() const;
4380
4381 // Set a fore colour for active hotspots.
4382 void SetHotspotActiveForeground(bool useSetting, const wxColour& fore);
4383
4384 // Get the fore colour for active hotspots.
4385 wxColour GetHotspotActiveForeground() const;
4386
4387 // Set a back colour for active hotspots.
4388 void SetHotspotActiveBackground(bool useSetting, const wxColour& back);
4389
4390 // Get the back colour for active hotspots.
4391 wxColour GetHotspotActiveBackground() const;
4392
4393 // Enable / Disable underlining active hotspots.
4394 void SetHotspotActiveUnderline(bool underline);
4395
4396 // Get whether underlining for active hotspots.
4397 bool GetHotspotActiveUnderline() const;
4398
4399 // Limit hotspots to single line so hotspots on two lines don't merge.
4400 void SetHotspotSingleLine(bool singleLine);
4401
4402 // Get the HotspotSingleLine property
4403 bool GetHotspotSingleLine() const;
4404
4405 // Move caret down one paragraph (delimited by empty lines).
4406 void ParaDown();
4407
4408 // Extend selection down one paragraph (delimited by empty lines).
4409 void ParaDownExtend();
4410
4411 // Move caret up one paragraph (delimited by empty lines).
4412 void ParaUp();
4413
4414 // Extend selection up one paragraph (delimited by empty lines).
4415 void ParaUpExtend();
4416
4417 // Given a valid document position, return the previous position taking code
4418 // page into account. Returns 0 if passed 0.
4419 int PositionBefore(int pos);
4420
4421 // Given a valid document position, return the next position taking code
4422 // page into account. Maximum value returned is the last position in the document.
4423 int PositionAfter(int pos);
4424
4425 // Given a valid document position, return a position that differs in a number
4426 // of characters. Returned value is always between 0 and last position in document.
4427 int PositionRelative(int pos, int relative);
4428
4429 // Copy a range of text to the clipboard. Positions are clipped into the document.
4430 void CopyRange(int start, int end);
4431
4432 // Copy argument text to the clipboard.
4433 void CopyText(int length, const wxString& text);
4434
4435 // Set the selection mode to stream (wxSCI_SEL_STREAM) or rectangular (wxSCI_SEL_RECTANGLE/wxSCI_SEL_THIN) or
4436 // by lines (wxSCI_SEL_LINES).
4437 void SetSelectionMode(int selectionMode);
4438
4439 // Get the mode of the current selection.
4440 int GetSelectionMode() const;
4441
4442 // Retrieve the position of the start of the selection at the given line (wxSCI_INVALID_POSITION if no selection on this line).
4443 int GetLineSelStartPosition(int line);
4444
4445 // Retrieve the position of the end of the selection at the given line (wxSCI_INVALID_POSITION if no selection on this line).
4446 int GetLineSelEndPosition(int line);
4447
4448 // Move caret down one line, extending rectangular selection to new caret position.
4449 void LineDownRectExtend();
4450
4451 // Move caret up one line, extending rectangular selection to new caret position.
4452 void LineUpRectExtend();
4453
4454 // Move caret left one character, extending rectangular selection to new caret position.
4455 void CharLeftRectExtend();
4456
4457 // Move caret right one character, extending rectangular selection to new caret position.
4458 void CharRightRectExtend();
4459
4460 // Move caret to first position on line, extending rectangular selection to new caret position.
4461 void HomeRectExtend();
4462
4463 // Move caret to before first visible character on line.
4464 // If already there move to first character on line.
4465 // In either case, extend rectangular selection to new caret position.
4466 void VCHomeRectExtend();
4467
4468 // Move caret to last position on line, extending rectangular selection to new caret position.
4469 void LineEndRectExtend();
4470
4471 // Move caret one page up, extending rectangular selection to new caret position.
4472 void PageUpRectExtend();
4473
4474 // Move caret one page down, extending rectangular selection to new caret position.
4475 void PageDownRectExtend();
4476
4477 // Move caret to top of page, or one page up if already at top of page.
4478 void StutteredPageUp();
4479
4480 // Move caret to top of page, or one page up if already at top of page, extending selection to new caret position.
4481 void StutteredPageUpExtend();
4482
4483 // Move caret to bottom of page, or one page down if already at bottom of page.
4484 void StutteredPageDown();
4485
4486 // Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position.
4487 void StutteredPageDownExtend();
4488
4489 // Move caret left one word, position cursor at end of word.
4490 void WordLeftEnd();
4491
4492 // Move caret left one word, position cursor at end of word, extending selection to new caret position.
4493 void WordLeftEndExtend();
4494
4495 // Move caret right one word, position cursor at end of word.
4496 void WordRightEnd();
4497
4498 // Move caret right one word, position cursor at end of word, extending selection to new caret position.
4499 void WordRightEndExtend();
4500
4501 // Set the set of characters making up whitespace for when moving or selecting by word.
4502 // Should be called after SetWordChars.
4503 void SetWhitespaceChars(const wxString& characters);
4504
4505 // Get the set of characters making up whitespace for when moving or selecting by word.
4506 wxString GetWhitespaceChars() const;
4507
4508 // Set the set of characters making up punctuation characters
4509 // Should be called after SetWordChars.
4510 void SetPunctuationChars(const wxString& characters);
4511
4512 // Get the set of characters making up punctuation characters
4513 wxString GetPunctuationChars() const;
4514
4515 // Reset the set of characters for whitespace and word characters to the defaults.
4516 void SetCharsDefault();
4517
4518 // Get currently selected item position in the auto-completion list
4519 int AutoCompGetCurrent() const;
4520
4521 // Get currently selected item text in the auto-completion list
4522 wxString AutoCompGetCurrentText() const;
4523
4524 // Set auto-completion case insensitive behaviour to either prefer case-sensitive matches or have no preference.
4525 void AutoCompSetCaseInsensitiveBehaviour(int behaviour);
4526
4527 // Get auto-completion case insensitive behaviour.
4528 int AutoCompGetCaseInsensitiveBehaviour() const;
4529
4530 // Change the effect of autocompleting when there are multiple selections.
4531 void AutoCompSetMulti(int multi);
4532
4533 // Retrieve the effect of autocompleting when there are multiple selections.
4534 int AutoCompGetMulti() const;
4535
4536 // Set the way autocompletion lists are ordered.
4537 void AutoCompSetOrder(int order);
4538
4539 // Get the way autocompletion lists are ordered.
4540 int AutoCompGetOrder() const;
4541
4542 // Enlarge the document to a particular size of text bytes.
4543 void Allocate(int bytes);
4544
4545 // Find the position of a column on a line taking into account tabs and
4546 // multi-byte characters. If beyond end of line, return line end position.
4547 int FindColumn(int line, int column);
4548
4549 // Can the caret preferred x position only be changed by explicit movement commands?
4550 int GetCaretSticky() const;
4551
4552 // Stop the caret preferred x position changing when the user types.
4553 void SetCaretSticky(int useCaretStickyBehaviour);
4554
4555 // Switch between sticky and non-sticky: meant to be bound to a key.
4556 void ToggleCaretSticky();
4557
4558 // Enable/Disable convert-on-paste for line endings
4559 void SetPasteConvertEndings(bool convert);
4560
4561 // Get convert-on-paste setting
4562 bool GetPasteConvertEndings() const;
4563
4564 // Duplicate the selection. If selection empty duplicate the line containing the caret.
4565 void SelectionDuplicate();
4566
4567 // Set background alpha of the caret line.
4568 void SetCaretLineBackAlpha(int alpha);
4569
4570 // Get the background alpha of the caret line.
4571 int GetCaretLineBackAlpha() const;
4572
4573 // Set the style of the caret to be drawn.
4574 void SetCaretStyle(int caretStyle);
4575
4576 // Returns the current style of the caret.
4577 int GetCaretStyle() const;
4578
4579 // Set the indicator used for IndicatorFillRange and IndicatorClearRange
4580 void SetIndicatorCurrent(int indicator);
4581
4582 // Get the current indicator
4583 int GetIndicatorCurrent() const;
4584
4585 // Set the value used for IndicatorFillRange
4586 void SetIndicatorValue(int value);
4587
4588 // Get the current indicator value
4589 int GetIndicatorValue() const;
4590
4591 // Turn a indicator on over a range.
4592 void IndicatorFillRange(int start, int lengthFill);
4593
4594 // Turn a indicator off over a range.
4595 void IndicatorClearRange(int start, int lengthClear);
4596
4597 // Are any indicators present at pos?
4598 int IndicatorAllOnFor(int pos);
4599
4600 // What value does a particular indicator have at a position?
4601 int IndicatorValueAt(int indicator, int pos);
4602
4603 // Where does a particular indicator start?
4604 int IndicatorStart(int indicator, int pos);
4605
4606 // Where does a particular indicator end?
4607 int IndicatorEnd(int indicator, int pos);
4608
4609 // Set number of entries in position cache
4610 void SetPositionCacheSize(int size);
4611
4612 // How many entries are allocated to the position cache?
4613 int GetPositionCacheSize() const;
4614
4615 // Copy the selection, if selection empty copy the line with the caret
4616 void CopyAllowLine();
4617
4618 // Compact the document buffer and return a read-only pointer to the
4619 // characters in the document.
4620 const char* GetCharacterPointer() const;
4621
4622 // Return a read-only pointer to a range of characters in the document.
4623 // May move the gap so that the range is contiguous, but will only move up
4624 // to rangeLength bytes.
4625 const char* GetRangePointer(int position, int rangeLength) const;
4626
4627 // Return a position which, to avoid performance costs, should not be within
4628 // the range of a call to GetRangePointer.
4629 int GetGapPosition() const;
4630
4631 // Set the alpha fill colour of the given indicator.
4632 void IndicatorSetAlpha(int indicator, int alpha);
4633
4634 // Get the alpha fill colour of the given indicator.
4635 int IndicatorGetAlpha(int indicator) const;
4636
4637 // Set the alpha outline colour of the given indicator.
4638 void IndicatorSetOutlineAlpha(int indicator, int alpha);
4639
4640 // Get the alpha outline colour of the given indicator.
4641 int IndicatorGetOutlineAlpha(int indicator) const;
4642
4643 // Set extra ascent for each line
4644 void SetExtraAscent(int extraAscent);
4645
4646 // Get extra ascent for each line
4647 int GetExtraAscent() const;
4648
4649 // Set extra descent for each line
4650 void SetExtraDescent(int extraDescent);
4651
4652 // Get extra descent for each line
4653 int GetExtraDescent() const;
4654
4655 // Which symbol was defined for markerNumber with MarkerDefine
4656 int GetMarkerSymbolDefined(int markerNumber);
4657
4658 // Set the text in the text margin for a line
4659 void MarginSetText(int line, const wxString& text);
4660
4661 // Get the text in the text margin for a line
4662 wxString MarginGetText(int line) const;
4663
4664 // Set the style number for the text margin for a line
4665 void MarginSetStyle(int line, int style);
4666
4667 // Get the style number for the text margin for a line
4668 int MarginGetStyle(int line) const;
4669
4670 // Set the style in the text margin for a line
4671 void MarginSetStyles(int line, const wxString& styles);
4672
4673 // Get the styles in the text margin for a line
4674 wxString MarginGetStyles(int line) const;
4675
4676 // Clear the margin text on all lines
4677 void MarginTextClearAll();
4678
4679 // Get the start of the range of style numbers used for margin text
4680 void MarginSetStyleOffset(int style);
4681
4682 // Get the start of the range of style numbers used for margin text
4683 int MarginGetStyleOffset() const;
4684
4685 // Set the margin options.
4686 void SetMarginOptions(int marginOptions);
4687
4688 // Get the margin options.
4689 int GetMarginOptions() const;
4690
4691 // Set the annotation text for a line
4692 void AnnotationSetText(int line, const wxString& text);
4693
4694 // Get the annotation text for a line
4695 wxString AnnotationGetText(int line) const;
4696
4697 // Set the style number for the annotations for a line
4698 void AnnotationSetStyle(int line, int style);
4699
4700 // Get the style number for the annotations for a line
4701 int AnnotationGetStyle(int line) const;
4702
4703 // Set the annotation styles for a line
4704 void AnnotationSetStyles(int line, const wxString& styles);
4705
4706 // Get the annotation styles for a line
4707 wxString AnnotationGetStyles(int line) const;
4708
4709 // Get the number of annotation lines for a line
4710 int AnnotationGetLines(int line) const;
4711
4712 // Clear the annotations from all lines
4713 void AnnotationClearAll();
4714
4715 // Set the visibility for the annotations for a view
4716 void AnnotationSetVisible(int visible);
4717
4718 // Get the visibility for the annotations for a view
4719 int AnnotationGetVisible() const;
4720
4721 // Get the start of the range of style numbers used for annotations
4722 void AnnotationSetStyleOffset(int style);
4723
4724 // Get the start of the range of style numbers used for annotations
4725 int AnnotationGetStyleOffset() const;
4726
4727 // Release all extended (>255) style numbers
4728 void ReleaseAllExtendedStyles();
4729
4730 // Allocate some extended (>255) style numbers and return the start of the range
4731 int AllocateExtendedStyles(int numberStyles);
4732
4733 // Add a container action to the undo stack
4734 void AddUndoAction(int token, int flags);
4735
4736 // Find the position of a character from a point within the window.
4737 int CharPositionFromPoint(int x, int y);
4738
4739 // Find the position of a character from a point within the window.
4740 // Return wxSCI_INVALID_POSITION if not close to text.
4741 int CharPositionFromPointClose(int x, int y);
4742
4743 // Set whether switching to rectangular mode while selecting with the mouse is allowed.
4744 void SetMouseSelectionRectangularSwitch(bool mouseSelectionRectangularSwitch);
4745
4746 // Whether switching to rectangular mode while selecting with the mouse is allowed.
4747 bool GetMouseSelectionRectangularSwitch() const;
4748
4749 // Set whether multiple selections can be made
4750 void SetMultipleSelection(bool multipleSelection);
4751
4752 // Whether multiple selections can be made
4753 bool GetMultipleSelection() const;
4754
4755 // Set whether typing can be performed into multiple selections
4756 void SetAdditionalSelectionTyping(bool additionalSelectionTyping);
4757
4758 // Whether typing can be performed into multiple selections
4759 bool GetAdditionalSelectionTyping() const;
4760
4761 // Set whether additional carets will blink
4762 void SetAdditionalCaretsBlink(bool additionalCaretsBlink);
4763
4764 // Whether additional carets will blink
4765 bool GetAdditionalCaretsBlink() const;
4766
4767 // Set whether additional carets are visible
4768 void SetAdditionalCaretsVisible(bool additionalCaretsVisible);
4769
4770 // Whether additional carets are visible
4771 bool GetAdditionalCaretsVisible() const;
4772
4773 // How many selections are there?
4774 int GetSelections() const;
4775
4776 // Is every selected range empty?
4777 bool GetSelectionEmpty() const;
4778
4779 // Clear selections to a single empty stream selection
4780 void ClearSelections();
4781
4782 /* C::B begin */
4783 // Select a range of text.
4784 void SetSelectionVoid(int startPos, int endPos);
4785
4786 // Set a simple selection
4787 int SetSelectionInt(int caret, int anchor);
4788 /* C::B end */
4789
4790 // Add a selection
4791 int AddSelection(int caret, int anchor);
4792
4793 // Drop one selection
4794 void DropSelectionN(int selection);
4795
4796 // Set the main selection
4797 void SetMainSelection(int selection);
4798
4799 // Which selection is the main selection
4800 int GetMainSelection() const;
4801
4802 // Set the caret position of the nth selection.
4803 void SetSelectionNCaret(int selection, int caret);
4804
4805 // Return the caret position of the nth selection.
4806 int GetSelectionNCaret(int selection) const;
4807
4808 // Set the anchor position of the nth selection.
4809 void SetSelectionNAnchor(int selection, int anchor);
4810
4811 // Return the anchor position of the nth selection.
4812 int GetSelectionNAnchor(int selection) const;
4813
4814 // Set the virtual space of the caret of the nth selection.
4815 void SetSelectionNCaretVirtualSpace(int selection, int space);
4816
4817 // Return the virtual space of the caret of the nth selection.
4818 int GetSelectionNCaretVirtualSpace(int selection) const;
4819
4820 // Set the virtual space of the anchor of the nth selection.
4821 void SetSelectionNAnchorVirtualSpace(int selection, int space);
4822
4823 // Return the virtual space of the anchor of the nth selection.
4824 int GetSelectionNAnchorVirtualSpace(int selection) const;
4825
4826 // Sets the position that starts the selection - this becomes the anchor.
4827 void SetSelectionNStart(int selection, int anchor);
4828
4829 // Returns the position at the start of the selection.
4830 int GetSelectionNStart(int selection) const;
4831
4832 // Sets the position that ends the selection - this becomes the currentPosition.
4833 void SetSelectionNEnd(int selection, int caret);
4834
4835 // Returns the position at the end of the selection.
4836 int GetSelectionNEnd(int selection) const;
4837
4838 // Set the caret position of the rectangular selection.
4839 void SetRectangularSelectionCaret(int caret);
4840
4841 // Return the caret position of the rectangular selection.
4842 int GetRectangularSelectionCaret() const;
4843
4844 // Set the anchor position of the rectangular selection.
4845 void SetRectangularSelectionAnchor(int anchor);
4846
4847 // Return the anchor position of the rectangular selection.
4848 int GetRectangularSelectionAnchor() const;
4849
4850 // Set the virtual space of the caret of the rectangular selection.
4851 void SetRectangularSelectionCaretVirtualSpace(int space);
4852
4853 // Return the virtual space of the caret of the rectangular selection.
4854 int GetRectangularSelectionCaretVirtualSpace() const;
4855
4856 // Set the virtual space of the anchor of the rectangular selection.
4857 void SetRectangularSelectionAnchorVirtualSpace(int space);
4858
4859 // Return the virtual space of the anchor of the rectangular selection.
4860 int GetRectangularSelectionAnchorVirtualSpace() const;
4861
4862 // Set options for virtual space behaviour.
4863 void SetVirtualSpaceOptions(int virtualSpaceOptions);
4864
4865 // Return options for virtual space behaviour.
4866 int GetVirtualSpaceOptions() const;
4867
4868 // On GTK+, allow selecting the modifier key to use for mouse-based
4869 // rectangular selection. Often the window manager requires Alt+Mouse Drag
4870 // for moving windows.
4871 // Valid values are wxSCI_KEYMOD_CTRL (default), wxSCI_KEYMOD_ALT, or wxSCI_KEYMOD_SUPER.
4872 void SetRectangularSelectionModifier(int modifier);
4873
4874 // Get the modifier key used for rectangular selection.
4875 int GetRectangularSelectionModifier() const;
4876
4877 // Set the foreground colour of additional selections.
4878 // Must have previously called SetSelFore with non-zero first argument for this to have an effect.
4879 void SetAdditionalSelForeground(const wxColour& fore);
4880
4881 // Set the background colour of additional selections.
4882 // Must have previously called SetSelBack with non-zero first argument for this to have an effect.
4883 void SetAdditionalSelBackground(const wxColour& back);
4884
4885 // Set the alpha of the selection.
4886 void SetAdditionalSelAlpha(int alpha);
4887
4888 // Get the alpha of the selection.
4889 int GetAdditionalSelAlpha() const;
4890
4891 // Set the foreground colour of additional carets.
4892 void SetAdditionalCaretForeground(const wxColour& fore);
4893
4894 // Get the foreground colour of additional carets.
4895 wxColour GetAdditionalCaretForeground() const;
4896
4897 // Set the main selection to the next selection.
4898 void RotateSelection();
4899
4900 // Swap that caret and anchor of the main selection.
4901 void SwapMainAnchorCaret();
4902
4903 // Add the next occurrence of the main selection to the set of selections as main.
4904 // If the current selection is empty then select word around caret.
4905 void MultipleSelectAddNext();
4906
4907 // Add each occurrence of the main selection in the target to the set of selections.
4908 // If the current selection is empty then select word around caret.
4909 void MultipleSelectAddEach();
4910
4911 // Indicate that the internal state of a lexer has changed over a range and therefore
4912 // there may be a need to redraw.
4913 int ChangeLexerState(int start, int end);
4914
4915 // Find the next line at or after lineStart that is a contracted fold header line.
4916 // Return -1 when no more lines.
4917 int ContractedFoldNext(int lineStart);
4918
4919 // Centre current line in window.
4920 void VerticalCentreCaret();
4921
4922 // Move the selected lines up one line, shifting the line above after the selection
4923 void MoveSelectedLinesUp();
4924
4925 // Move the selected lines down one line, shifting the line below before the selection
4926 void MoveSelectedLinesDown();
4927
4928 // Set the identifier reported as idFrom in notification messages.
4929 void SetIdentifier(int identifier);
4930
4931 // Get the identifier.
4932 int GetIdentifier() const;
4933
4934 // Set the width for future RGBA image data.
4935 void RGBAImageSetWidth(int width);
4936
4937 // Set the height for future RGBA image data.
4938 void RGBAImageSetHeight(int height);
4939
4940 // Set the scale factor in percent for future RGBA image data.
4941 void RGBAImageSetScale(int scalePercent);
4942
4943 // Define a marker from RGBA data.
4944 // It has the width and height from RGBAImageSetWidth/Height
4945 void MarkerDefineRGBAImage(int markerNumber, const unsigned char* pixels);
4946
4947 // Register an RGBA image for use in autocompletion lists.
4948 // It has the width and height from RGBAImageSetWidth/Height
4949 void RegisterRGBAImage(int type, const unsigned char* pixels);
4950
4951 // Scroll to start of document.
4952 void ScrollToStart();
4953
4954 // Scroll to end of document.
4955 void ScrollToEnd();
4956
4957 // Set the technology used.
4958 void SetTechnology(int technology);
4959
4960 // Get the tech.
4961 int GetTechnology() const;
4962
4963 // Create an ILoader*.
4964 void* CreateLoader(int bytes) const;
4965
4966 // Move caret to before first visible character on display line.
4967 // If already there move to first character on display line.
4968 void VCHomeDisplay();
4969
4970 // Like VCHomeDisplay but extending selection to new caret position.
4971 void VCHomeDisplayExtend();
4972
4973 // Is the caret line always visible?
4974 bool GetCaretLineVisibleAlways() const;
4975
4976 // Sets the caret line to always visible.
4977 void SetCaretLineVisibleAlways(bool alwaysVisible);
4978
4979 // Set the line end types that the application wants to use. May not be used if incompatible with lexer or encoding.
4980 void SetLineEndTypesAllowed(int lineEndBitSet);
4981
4982 // Get the line end types currently allowed.
4983 int GetLineEndTypesAllowed() const;
4984
4985 // Get the line end types currently recognised. May be a subset of the allowed types due to lexer limitation.
4986 int GetLineEndTypesActive() const;
4987
4988 // Set the way a character is drawn.
4989 void SetRepresentation(const wxString& encodedCharacter, const wxString& representation);
4990
4991 // Set the way a character is drawn.
4992 wxString GetRepresentation(const wxString& encodedCharacter) const;
4993
4994 // Remove a character representation.
4995 void ClearRepresentation(const wxString& encodedCharacter);
4996
4997 // Start notifying the container of all key presses and commands.
4998 void StartRecord();
4999
5000 // Stop notifying the container of all key presses and commands.
5001 void StopRecord();
5002
5003 // Set the lexing language of the document.
5004 void SetLexer(int lexer);
5005
5006 // Retrieve the lexing language of the document.
5007 int GetLexer() const;
5008
5009 // Colourise a segment of the document using the current lexing language.
5010 void Colourise(int start, int end);
5011
5012 // Set up a value that may be used by a lexer for some optional feature.
5013 void SetProperty(const wxString& key, const wxString& value);
5014
5015 // Set up the key words used by the lexer.
5016 void SetKeyWords(int keyWordSet, const wxString& keyWords);
5017
5018 // Set the lexing language of the document based on string name.
5019 void SetLexerLanguage(const wxString& language);
5020
5021 // Load a lexer library (dll / so).
5022 void LoadLexerLibrary(const wxString& path);
5023
5024 // Retrieve a "property" value previously set with SetProperty.
5025 wxString GetProperty(const wxString& key);
5026
5027 // Retrieve a "property" value previously set with SetProperty,
5028 // with "$()" variable replacement on returned buffer.
5029 wxString GetPropertyExpanded(const wxString& key);
5030
5031 // Retrieve a "property" value previously set with SetProperty,
5032 // interpreted as an int AFTER any "$()" variable replacement.
5033 int GetPropertyInt(const wxString &key, int defaultValue=0) const;
5034
5035 // Retrieve the number of bits the current lexer needs for styling.
5036 #if wxCHECK_VERSION(3, 0, 0)
5037 wxDEPRECATED_MSG( "This method uses a function deprecated in the Scintilla library." )
5038 #endif // wxCHECK_VERSION
5039 int GetStyleBitsNeeded() const;
5040
5041 // Retrieve the lexing language of the document.
5042 wxString GetLexerLanguage() const;
5043
5044 // For private communication between an application and a known lexer.
5045 void* PrivateLexerCall(int operation, void* pointer);
5046
5047 // Retrieve a '\\n' separated list of properties understood by the current lexer.
5048 wxString PropertyNames() const;
5049
5050 // Retrieve the type of a property.
5051 int PropertyType(const wxString& name);
5052
5053 // Describe a property.
5054 wxString DescribeProperty(const wxString& name) const;
5055
5056 // Retrieve a '\\n' separated list of descriptions of the keyword sets understood by the current lexer.
5057 wxString DescribeKeyWordSets() const;
5058
5059 // Bit set of LineEndType enumertion for which line ends beyond the standard
5060 // LF, CR, and CRLF are supported by the lexer.
5061 int GetLineEndTypesSupported() const;
5062
5063 // Allocate a set of sub styles for a particular base style, returning start of range
5064 int AllocateSubStyles(int styleBase, int numberStyles);
5065
5066 // The starting style number for the sub styles associated with a base style
5067 int GetSubStylesStart(int styleBase) const;
5068
5069 // The number of sub styles associated with a base style
5070 int GetSubStylesLength(int styleBase) const;
5071
5072 // For a sub style, return the base style, else return the argument.
5073 int GetStyleFromSubStyle(int subStyle) const;
5074
5075 // For a secondary style, return the primary style, else return the argument.
5076 int GetPrimaryStyleFromStyle(int style) const;
5077
5078 // Free allocated sub styles
5079 void FreeSubStyles();
5080
5081 // Set the identifiers that are shown in a particular style
5082 void SetIdentifiers(int style, const wxString& identifiers);
5083
5084 // Where styles are duplicated by a feature such as active/inactive code
5085 // return the distance between the two types.
5086 int DistanceToSecondaryStyles() const;
5087
5088 // Get the set of base styles that can be extended with sub styles
5089 wxString GetSubStyleBases() const;
5090
5091 //}}}
5092 //----------------------------------------------------------------------
5093
5094 // Manually declared methods
5095
5096 // Returns the line number of the line with the caret.
5097 int GetCurrentLine();
5098
5099 // Extract style settings from a spec-string which is composed of one or
5100 // more of the following comma separated elements:
5101 //
5102 // bold turns on bold
5103 // italic turns on italics
5104 // fore:[name or #RRGGBB] sets the foreground colour
5105 // back:[name or #RRGGBB] sets the background colour
5106 // face:[facename] sets the font face name to use
5107 // size:[num] sets the font size in points
5108 // eol turns on eol filling
5109 // underline turns on underlining
5110 //
5111 void StyleSetSpec(int styleNum, const wxString& spec);
5112
5113
5114 // Get the font of a style.
5115 wxFont StyleGetFont(int style);
5116
5117
5118 // Set style size, face, bold, italic, and underline attributes from
5119 // a wxFont's attributes.
5120 void StyleSetFont(int styleNum, const wxFont& font);
5121
5122
5123
5124 // Set all font style attributes at once.
5125 void StyleSetFontAttr(int styleNum, int size,
5126 const wxString& faceName,
5127 bool bold, bool italic,
5128 bool underline,
5129 wxFontEncoding encoding=wxFONTENCODING_DEFAULT);
5130
5131
5132 // Set the font encoding to be used by a style.
5133 void StyleSetFontEncoding(int style, wxFontEncoding encoding);
5134
5135
5136 // Perform one of the operations defined by the wxSCI_CMD_* constants.
5137 void CmdKeyExecute(int cmd);
5138
5139
5140 // Set the left and right margin in the edit area, measured in pixels.
5141 void SetMargins(int left, int right);
5142
5143
5144 // Scroll enough to make the given line visible
5145 void ScrollToLine(int line);
5146
5147
5148 // Scroll enough to make the given column visible
5149 void ScrollToColumn(int column);
5150
5151
5152 // Send a message to Scintilla
5153 //
5154 // NB: this method is not really const as it can modify the control but it
5155 // has to be declared as such as it's called from both const and
5156 // non-const methods and we can't distinguish between the two
5157 wxIntPtr SendMsg(int msg, wxUIntPtr wp=0, wxIntPtr lp=0) const;
5158
5159
5160 // Set the vertical scrollbar to use instead of the one that's built-in.
5161 void SetVScrollBar(wxScrollBar* bar);
5162
5163
5164 // Set the horizontal scrollbar to use instead of the one that's built-in.
5165 void SetHScrollBar(wxScrollBar* bar);
5166
5167 // Can be used to prevent the EVT_CHAR handler from adding the char
GetLastKeydownProcessed()5168 bool GetLastKeydownProcessed() { return m_lastKeyDownConsumed; }
SetLastKeydownProcessed(bool val)5169 void SetLastKeydownProcessed(bool val) { m_lastKeyDownConsumed = val; }
5170
5171 /* C::B begin */
5172 // Write the contents of the editor to filename
5173 bool SaveFile(const wxString& filename);
5174
5175 // Load the contents of filename into the editor
5176 bool LoadFile(const wxString& filename);
5177 /* C::B end */
5178
5179 #ifdef SCI_USE_DND
5180 // Allow for simulating a DnD DragEnter
5181 wxDragResult DoDragEnter(wxCoord x, wxCoord y, wxDragResult def);
5182
5183 // Allow for simulating a DnD DragOver
5184 wxDragResult DoDragOver(wxCoord x, wxCoord y, wxDragResult def);
5185
5186 // Allow for simulating a DnD DragLeave
5187 void DoDragLeave();
5188
5189 // Allow for simulating a DnD DropText
5190 bool DoDropText(long x, long y, const wxString& data);
5191 #endif
5192
5193 // Specify whether anti-aliased fonts should be used. Will have no effect
5194 // on some platforms, but on some (wxMac for example) can greatly improve
5195 // performance.
5196 void SetUseAntiAliasing(bool useAA);
5197
5198 // Returns the current UseAntiAliasing setting.
5199 bool GetUseAntiAliasing();
5200
5201 // Clear annotations from the given line.
5202 void AnnotationClearLine(int line);
5203
5204 // Define a marker from a bitmap.
5205 void MarkerDefineBitmap(int markerNumber, const wxBitmap& bmp);
5206
5207 // Register an image for use in autocompletion lists.
5208 void RegisterImage(int type, const wxBitmap& bmp);
5209
5210
5211
5212 // The following methods are nearly equivalent to their similarly named
5213 // cousins above. The difference is that these methods bypass wxString
5214 // and always use a char* even if used in a unicode build of wxWidgets.
5215 // In that case the character data will be utf-8 encoded since that is
5216 // what is used internally by Scintilla in unicode builds.
5217
5218 // Add text to the document at current position.
5219 void AddTextRaw(const char* text, int length=-1);
5220
5221 // Insert string at a position.
5222 void InsertTextRaw(int pos, const char* text);
5223
5224 // Retrieve the text of the line containing the caret.
5225 // Returns the index of the caret on the line.
5226 #ifdef SWIG
5227 wxCharBuffer GetCurLineRaw(int* OUTPUT);
5228 #else
5229 wxCharBuffer GetCurLineRaw(int* linePos=NULL);
5230 #endif
5231
5232 // Retrieve the contents of a line.
5233 wxCharBuffer GetLineRaw(int line);
5234
5235 // Retrieve the selected text.
5236 wxCharBuffer GetSelectedTextRaw();
5237
5238 // Retrieve the target text.
5239 wxCharBuffer GetTargetTextRaw();
5240
5241 // Retrieve a range of text.
5242 wxCharBuffer GetTextRangeRaw(int startPos, int endPos);
5243
5244 // Replace the contents of the document with the argument text.
5245 void SetTextRaw(const char* text);
5246
5247 // Retrieve all the text in the document.
5248 wxCharBuffer GetTextRaw();
5249
5250 // Append a string to the end of the document without changing the selection.
5251 void AppendTextRaw(const char* text, int length=-1);
5252
5253 #ifdef SWIG
5254 %pythoncode "_SCI_utf8_methods.py"
5255 #endif
5256
5257
5258 // implement wxTextEntryBase pure virtual methods
5259 // ----------------------------------------------
5260
5261 virtual void WriteText(const wxString& text)
5262 {
5263 ReplaceSelection(text);
5264 }
5265
Remove(long from,long to)5266 virtual void Remove(long from, long to)
5267 {
5268 Replace(from, to, wxString());
5269 }
Replace(long from,long to,const wxString & text)5270 virtual void Replace(long from, long to, const wxString& text)
5271 {
5272 SetTargetStart((int)from);
5273 SetTargetEnd((int)to);
5274 ReplaceTarget(text);
5275 }
5276
5277 /*
5278 These functions are already declared in the generated section.
5279
5280 virtual void Copy();
5281 virtual void Cut();
5282 virtual void Paste();
5283
5284 virtual void Undo();
5285 virtual void Redo();
5286
5287 virtual bool CanUndo() const;
5288 virtual bool CanRedo() const;
5289
5290 */
5291
SetInsertionPoint(long pos)5292 virtual void SetInsertionPoint(long pos)
5293 {
5294 SetCurrentPos(int(pos == -1 ? GetLastPosition() : pos));
5295 }
GetInsertionPoint()5296 virtual long GetInsertionPoint() const { return GetCurrentPos(); }
GetLastPosition()5297 virtual long GetLastPosition() const { return GetTextLength(); }
5298
SetSelection(long from,long to)5299 virtual void SetSelection(long from, long to)
5300 {
5301 if ( from == -1 && to == -1 )
5302 {
5303 SelectAll();
5304 }
5305 else
5306 {
5307 SetSelectionStart((int)from);
5308 SetSelectionEnd((int)to);
5309 }
5310 }
5311
SelectNone()5312 virtual void SelectNone()
5313 {
5314 ClearSelections();
5315 }
5316
5317 #ifdef SWIG
5318 void GetSelection(long* OUTPUT, long* OUTPUT) const;
5319 #else
GetSelection(long * from,long * to)5320 virtual void GetSelection(long *from, long *to) const
5321 {
5322 if ( from )
5323 *from = GetSelectionStart();
5324 if ( to )
5325 *to = GetSelectionEnd();
5326 }
5327
5328 // kept for compatibility only
GetSelection(int * from,int * to)5329 void GetSelection(int *from, int *to)
5330 {
5331 long f, t;
5332 GetSelection(&f, &t);
5333 if ( from )
5334 *from = (int)f;
5335 if ( to )
5336 *to = (int)t;
5337 }
5338 #endif
5339
IsEditable()5340 virtual bool IsEditable() const { return !GetReadOnly(); }
SetEditable(bool editable)5341 virtual void SetEditable(bool editable) { SetReadOnly(!editable); }
5342
5343 /* C::B begin capture mouse assert fix */
5344 void SetMouseCapture(bool on);
5345 bool HaveMouseCapture() const;
5346 /* C::B end */
5347
5348 /* C::B begin */
5349 #if wxCHECK_VERSION(3, 0, 0)
5350 static wxVersionInfo GetLibraryVersionInfo();
5351 #endif
5352 /* C::B end */
5353
5354 protected:
5355 /* C::B begin */
GetValue()5356 wxString GetValue() const { return GetText(); }
SetValue(const wxString & text)5357 void SetValue(const wxString& text) { SetText(text); }
5358 /* C::B end */
5359 virtual void DoSetValue(const wxString& value, int flags);
DoGetValue()5360 virtual wxString DoGetValue() const { return GetText(); }
GetEditableWindow()5361 virtual wxWindow *GetEditableWindow() { return this; }
5362
5363 #ifndef SWIG
5364 virtual bool DoLoadFile(const wxString& file, int fileType);
5365 virtual bool DoSaveFile(const wxString& file, int fileType);
5366
5367 // Event handlers
5368 void OnPaint(wxPaintEvent& evt);
5369 void OnScrollWin(wxScrollWinEvent& evt);
5370 void OnScroll(wxScrollEvent& evt);
5371 void OnSize(wxSizeEvent& evt);
5372 void OnMouseLeftDown(wxMouseEvent& evt);
5373 void OnMouseRightDown(wxMouseEvent& evt);
5374 void OnMouseMove(wxMouseEvent& evt);
5375 void OnMouseLeftUp(wxMouseEvent& evt);
5376 void OnMouseRightUp(wxMouseEvent& evt);
5377 void OnMouseMiddleUp(wxMouseEvent& evt);
5378 void OnContextMenu(wxContextMenuEvent& evt);
5379 void OnMouseWheel(wxMouseEvent& evt);
5380 void OnChar(wxKeyEvent& evt);
5381 void OnKeyDown(wxKeyEvent& evt);
5382 void OnLoseFocus(wxFocusEvent& evt);
5383 void OnGainFocus(wxFocusEvent& evt);
5384 void OnSysColourChanged(wxSysColourChangedEvent& evt);
5385 void OnEraseBackground(wxEraseEvent& evt);
5386 void OnMenu(wxCommandEvent& evt);
5387 void OnListBox(wxCommandEvent& evt);
5388 void OnIdle(wxIdleEvent& evt);
5389 void OnMouseCaptureLost(wxMouseCaptureLostEvent& evt);
5390
5391 virtual wxSize DoGetBestSize() const override;
5392
5393 // Turn notifications from Scintilla into events
5394 void NotifyChange();
5395 void NotifyParent(SCNotification* scn);
5396
5397 private:
5398 DECLARE_EVENT_TABLE();
5399 DECLARE_DYNAMIC_CLASS(wxScintilla);
5400
5401 protected:
5402
5403 ScintillaWX* m_swx;
5404 wxStopWatch m_stopWatch;
5405 wxScrollBar* m_vScrollBar;
5406 wxScrollBar* m_hScrollBar;
5407
5408 bool m_lastKeyDownConsumed;
5409
5410 friend class ScintillaWX;
5411 friend class Platform;
5412 #endif // !SWIG
5413 };
5414
5415 //----------------------------------------------------------------------
5416
5417 class WXDLLIMPEXP_SCI wxScintillaEvent : public wxCommandEvent {
5418 public:
5419 wxScintillaEvent(wxEventType commandType=0, int id=0);
5420 #ifndef SWIG
5421 wxScintillaEvent(const wxScintillaEvent& event);
5422 #endif
~wxScintillaEvent()5423 ~wxScintillaEvent() {}
5424
SetPosition(int pos)5425 void SetPosition(int pos) { m_position = pos; }
SetKey(int k)5426 void SetKey(int k) { m_key = k; }
SetModifiers(int m)5427 void SetModifiers(int m) { m_modifiers = m; }
SetModificationType(int t)5428 void SetModificationType(int t) { m_modificationType = t; }
5429 // Kept for backwards compatibility, use SetString().
SetText(const wxString & t)5430 void SetText(const wxString& t) { SetString(t); }
SetLength(int len)5431 void SetLength(int len) { m_length = len; }
SetLinesAdded(int num)5432 void SetLinesAdded(int num) { m_linesAdded = num; }
SetLine(int val)5433 void SetLine(int val) { m_line = val; }
SetFoldLevelNow(int val)5434 void SetFoldLevelNow(int val) { m_foldLevelNow = val; }
SetFoldLevelPrev(int val)5435 void SetFoldLevelPrev(int val) { m_foldLevelPrev = val; }
SetMargin(int val)5436 void SetMargin(int val) { m_margin = val; }
SetMessage(int val)5437 void SetMessage(int val) { m_message = val; }
SetWParam(int val)5438 void SetWParam(int val) { m_wParam = val; }
SetLParam(int val)5439 void SetLParam(int val) { m_lParam = val; }
SetListType(int val)5440 void SetListType(int val) { m_listType = val; }
SetX(int val)5441 void SetX(int val) { m_x = val; }
SetY(int val)5442 void SetY(int val) { m_y = val; }
SetToken(int val)5443 void SetToken(int val) { m_token = val; }
SetAnnotationLinesAdded(int val)5444 void SetAnnotationLinesAdded(int val) { m_annotationLinesAdded = val; }
SetUpdated(int val)5445 void SetUpdated(int val) { m_updated = val; }
SetListCompletionMethod(int val)5446 void SetListCompletionMethod(int val) { m_listCompletionMethod = val; }
5447 #ifdef SCI_USE_DND
5448 // Kept for backwards compatibility, use SetString().
SetDragText(const wxString & val)5449 void SetDragText(const wxString& val) { SetString(val); }
SetDragFlags(int flags)5450 void SetDragFlags(int flags) { m_dragFlags = flags; }
SetDragResult(wxDragResult val)5451 void SetDragResult(wxDragResult val) { m_dragResult = val; }
5452
5453 // This method is kept mainly for backwards compatibility, use
5454 // SetDragFlags() in the new code.
SetDragAllowMove(bool allow)5455 void SetDragAllowMove(bool allow)
5456 {
5457 if ( allow )
5458 m_dragFlags |= wxDrag_AllowMove;
5459 else
5460 m_dragFlags &= ~(wxDrag_AllowMove | wxDrag_DefaultMove);
5461 }
5462 #endif
5463
GetPosition()5464 int GetPosition() const { return m_position; }
GetKey()5465 int GetKey() const { return m_key; }
GetModifiers()5466 int GetModifiers() const { return m_modifiers; }
GetModificationType()5467 int GetModificationType() const { return m_modificationType; }
5468 // Kept for backwards compatibility, use GetString().
GetText()5469 wxString GetText() const { return GetString(); }
GetLength()5470 int GetLength() const { return m_length; }
GetLinesAdded()5471 int GetLinesAdded() const { return m_linesAdded; }
GetLine()5472 int GetLine() const { return m_line; }
GetFoldLevelNow()5473 int GetFoldLevelNow() const { return m_foldLevelNow; }
GetFoldLevelPrev()5474 int GetFoldLevelPrev() const { return m_foldLevelPrev; }
GetMargin()5475 int GetMargin() const { return m_margin; }
GetMessage()5476 int GetMessage() const { return m_message; }
GetWParam()5477 int GetWParam() const { return m_wParam; }
GetLParam()5478 int GetLParam() const { return m_lParam; }
GetListType()5479 int GetListType() const { return m_listType; }
GetX()5480 int GetX() const { return m_x; }
GetY()5481 int GetY() const { return m_y; }
GetToken()5482 int GetToken() const { return m_token; }
GetAnnotationsLinesAdded()5483 int GetAnnotationsLinesAdded() const { return m_annotationLinesAdded; }
GetUpdated()5484 int GetUpdated() const { return m_updated; }
GetListCompletionMethod()5485 int GetListCompletionMethod() const { return m_listCompletionMethod; }
5486
5487 #ifdef SCI_USE_DND
5488 // Kept for backwards compatibility, use GetString().
GetDragText()5489 wxString GetDragText() { return GetString(); }
GetDragFlags()5490 int GetDragFlags() { return m_dragFlags; }
GetDragResult()5491 wxDragResult GetDragResult() { return m_dragResult; }
5492
GetDragAllowMove()5493 bool GetDragAllowMove() { return (GetDragFlags() & wxDrag_AllowMove) != 0; }
5494 #endif
5495
5496 bool GetShift() const;
5497 bool GetControl() const;
5498 bool GetAlt() const;
5499
Clone()5500 virtual wxEvent* Clone() const { return new wxScintillaEvent(*this); }
5501
5502 #ifndef SWIG
5503 private:
5504 DECLARE_DYNAMIC_CLASS(wxScintillaEvent)
5505
5506 int m_position;
5507 int m_key;
5508 int m_modifiers;
5509
5510 int m_modificationType; // wxEVT_SCI_MODIFIED
5511 int m_length;
5512 int m_linesAdded;
5513 int m_line;
5514 int m_foldLevelNow;
5515 int m_foldLevelPrev;
5516
5517 int m_margin; // wxEVT_SCI_MARGINCLICK
5518
5519 int m_message; // wxEVT_SCI_MACRORECORD
5520 int m_wParam;
5521 int m_lParam;
5522
5523 int m_listType;
5524 int m_x;
5525 int m_y;
5526
5527 int m_token; // wxEVT_SCI__MODIFIED with SC_MOD_CONTAINER
5528 int m_annotationLinesAdded; // wxEVT_SCI_MODIFIED with SC_MOD_CHANGEANNOTATION
5529 int m_updated; // wxEVT_SCI_UPDATEUI
5530 int m_listCompletionMethod;
5531
5532 #if wxUSE_DRAG_AND_DROP
5533 int m_dragFlags; // wxEVT_SCI_START_DRAG
5534 wxDragResult m_dragResult; // wxEVT_SCI_DRAG_OVER,wxEVT_SCI_DO_DROP
5535 #endif
5536 #endif
5537 };
5538
5539
5540
5541 #ifndef SWIG
5542 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_CHANGE, 1650)
5543 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_STYLENEEDED, 1651)
5544 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_CHARADDED, 1652)
5545 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_SAVEPOINTREACHED, 1653)
5546 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_SAVEPOINTLEFT, 1654)
5547 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_ROMODIFYATTEMPT, 1655)
5548 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_DOUBLECLICK, 1657)
5549 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_UPDATEUI, 1658)
5550 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_MODIFIED, 1659)
5551 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_MACRORECORD, 1660)
5552 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_MARGINCLICK, 1661)
5553 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_NEEDSHOWN, 1662)
5554 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_PAINTED, 1664)
5555 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_USERLISTSELECTION, 1665)
5556 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_DWELLSTART, 1667)
5557 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_DWELLEND, 1668)
5558 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_START_DRAG, 1669)
5559 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_DRAG_OVER, 1670)
5560 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_DO_DROP, 1671)
5561 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_ZOOM, 1672)
5562 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_HOTSPOT_CLICK, 1673)
5563 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_HOTSPOT_DCLICK, 1674)
5564 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_CALLTIP_CLICK, 1675)
5565 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_AUTOCOMP_SELECTION, 1676)
5566 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_INDICATOR_CLICK, 1677)
5567 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_INDICATOR_RELEASE, 1678)
5568 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_AUTOCOMP_CANCELLED, 1679)
5569 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_AUTOCOMP_CHAR_DELETED,1680)
5570 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_HOTSPOT_RELEASE_CLICK,1681)
5571 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_CLIPBOARD_COPY, 1681)
5572 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_CLIPBOARD_PASTE, 1682)
5573 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_AUTOCOMP_COMPLETED, 1683)
5574 DECLARE_EXPORTED_EVENT_TYPE (WXDLLIMPEXP_SCI, wxEVT_SCI_MARGIN_RIGHT_CLICK, 1684)
5575 END_DECLARE_EVENT_TYPES()
5576 #else
5577 enum {
5578 wxEVT_SCI_CHANGE,
5579 wxEVT_SCI_STYLENEEDED,
5580 wxEVT_SCI_CHARADDED,
5581 wxEVT_SCI_SAVEPOINTREACHED,
5582 wxEVT_SCI_SAVEPOINTLEFT,
5583 wxEVT_SCI_ROMODIFYATTEMPT,
5584 wxEVT_SCI_DOUBLECLICK,
5585 wxEVT_SCI_UPDATEUI,
5586 wxEVT_SCI_MODIFIED,
5587 wxEVT_SCI_MACRORECORD,
5588 wxEVT_SCI_MARGINCLICK,
5589 wxEVT_SCI_NEEDSHOWN,
5590 wxEVT_SCI_PAINTED,
5591 wxEVT_SCI_USERLISTSELECTION,
5592 wxEVT_SCI_DWELLSTART,
5593 wxEVT_SCI_DWELLEND,
5594 wxEVT_SCI_START_DRAG,
5595 wxEVT_SCI_DRAG_OVER,
5596 wxEVT_SCI_DO_DROP,
5597 wxEVT_SCI_ZOOM,
5598 wxEVT_SCI_HOTSPOT_CLICK,
5599 wxEVT_SCI_HOTSPOT_DCLICK,
5600 wxEVT_SCI_CALLTIP_CLICK,
5601 wxEVT_SCI_AUTOCOMP_SELECTION,
5602 wxEVT_SCI_INDICATOR_CLICK,
5603 wxEVT_SCI_INDICATOR_RELEASE,
5604 wxEVT_SCI_AUTOCOMP_CANCELLED,
5605 wxEVT_SCI_AUTOCOMP_CHAR_DELETED,
5606 wxEVT_SCI_HOTSPOT_RELEASE_CLICK,
5607 wxEVT_SCI_CLIPBOARD_COPY,
5608 wxEVT_SCI_CLIPBOARD_PASTE,
5609 wxEVT_SCI_AUTOCOMP_COMPLETED,
5610 wxEVT_SCI_MARGIN_RIGHT_CLICK
5611 };
5612 #endif
5613
5614
5615
5616 #ifndef SWIG
5617 typedef void (wxEvtHandler::*wxScintillaEventFunction)(wxScintillaEvent&);
5618
5619 /* C::B begin */
5620 #if !wxCHECK_VERSION(3, 0, 0)
5621 #define wxEVENT_HANDLER_CAST( functype, func ) \
5622 ( wxObjectEventFunction )( wxEventFunction )wxStaticCastEvent( functype, &func )
5623 #endif
5624 /* C::B end */
5625
5626 #define wxScintillaEventHandler( func ) \
5627 wxEVENT_HANDLER_CAST( wxScintillaEventFunction, func )
5628
5629 #define EVT_SCI_CHANGE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_CHANGE, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5630 #define EVT_SCI_STYLENEEDED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_STYLENEEDED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5631 #define EVT_SCI_CHARADDED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_CHARADDED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5632 #define EVT_SCI_SAVEPOINTREACHED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_SAVEPOINTREACHED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5633 #define EVT_SCI_SAVEPOINTLEFT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_SAVEPOINTLEFT, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5634 #define EVT_SCI_ROMODIFYATTEMPT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_ROMODIFYATTEMPT, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5635 #define EVT_SCI_KEY(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_KEY, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5636 #define EVT_SCI_DOUBLECLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_DOUBLECLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5637 #define EVT_SCI_UPDATEUI(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_UPDATEUI, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5638 #define EVT_SCI_MODIFIED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_MODIFIED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5639 #define EVT_SCI_MACRORECORD(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_MACRORECORD, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5640 #define EVT_SCI_MARGINCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_MARGINCLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5641 #define EVT_SCI_NEEDSHOWN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_NEEDSHOWN, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5642 #define EVT_SCI_PAINTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_PAINTED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5643 #define EVT_SCI_USERLISTSELECTION(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_USERLISTSELECTION, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5644 #define EVT_SCI_URIDROPPED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_URIDROPPED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5645 #define EVT_SCI_DWELLSTART(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_DWELLSTART, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5646 #define EVT_SCI_DWELLEND(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_DWELLEND, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5647 #define EVT_SCI_START_DRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_START_DRAG, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5648 #define EVT_SCI_DRAG_OVER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_DRAG_OVER, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5649 #define EVT_SCI_DO_DROP(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_DO_DROP, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5650 #define EVT_SCI_ZOOM(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_ZOOM, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5651 #define EVT_SCI_HOTSPOT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_HOTSPOT_CLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5652 #define EVT_SCI_HOTSPOT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_HOTSPOT_DCLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5653 #define EVT_SCI_CALLTIP_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_CALLTIP_CLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5654 #define EVT_SCI_AUTOCOMP_SELECTION(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_AUTOCOMP_SELECTION, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5655 #define EVT_SCI_INDICATOR_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_INDICATOR_CLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5656 #define EVT_SCI_INDICATOR_RELEASE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_INDICATOR_RELEASE, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5657 #define EVT_SCI_AUTOCOMP_CANCELLED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_AUTOCOMP_CANCELLED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5658 #define EVT_SCI_AUTOCOMP_CHAR_DELETED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_AUTOCOMP_CHAR_DELETED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5659 #define EVT_SCI_HOTSPOT_RELEASE_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_HOTSPOT_RELEASE_CLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5660 #define EVT_SCI_CLIPBOARD_COPY(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_CLIPBOARD_COPY, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5661 #define EVT_SCI_CLIPBOARD_PASTE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_CLIPBOARD_PASTE, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5662 #define EVT_SCI_AUTOCOMP_COMPLETED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_AUTOCOMP_COMPLETED, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5663 #define EVT_SCI_MARGIN_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_SCI_MARGIN_RIGHT_CLICK, id, wxID_ANY, wxScintillaEventHandler( fn ), (wxObject *) NULL ),
5664
5665 #endif
5666
5667
5668 //----------------------------------------------------------------------
5669 // Utility functions used within wxScintilla
5670
5671 #if wxUSE_UNICODE
5672
5673 extern wxString sci2wx(const char* str);
5674 extern wxString sci2wx(const char* str, size_t len);
5675 extern wxCharBuffer wx2sci(const wxString& str);
5676
5677 // This function takes both wxString and wxCharBuffer because it uses either
5678 // one or the other of them depending on the build mode. In Unicode it uses the
5679 // length of the already converted buffer to avoid doing the conversion again
5680 // just to compute the length.
wx2scilen(const wxString & WXUNUSED (str),const wxCharBuffer & buf)5681 inline size_t wx2scilen(const wxString& WXUNUSED(str), const wxCharBuffer& buf)
5682 {
5683 #if wxCHECK_VERSION(3, 0, 0)
5684 return buf.length();
5685 #else
5686 return strlen(buf);
5687 #endif // wxCHECK_VERSION
5688 }
5689
5690 #else // not UNICODE
5691
sci2wx(const char * str)5692 inline wxString sci2wx(const char* str) {
5693 return wxString(str);
5694 }
sci2wx(const char * str,size_t len)5695 inline wxString sci2wx(const char* str, size_t len) {
5696 return wxString(str, len);
5697 }
wx2sci(const wxString & str)5698 inline const char* wx2sci(const wxString& str) {
5699 return str.mbc_str();
5700 }
5701
5702 // As explained above, the buffer argument is only used in Unicode build.
wx2scilen(const wxString & str,const char * WXUNUSED (buf))5703 inline size_t wx2scilen(const wxString& str, const char* WXUNUSED(buf))
5704 {
5705 return str.length();
5706 }
5707
5708 #endif // UNICODE
5709
5710 #endif // __WXSCINTILLA_H__
5711