1//////////////////////////////////////////////////////////////////////////// 2// Name: 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 itentifiers from Scintilla. 11// 12// Author: Robin Dunn 13// 14// Created: 13-Jan-2000 15// RCS-ID: $Id: stc.h 66923 2011-02-16 22:37:48Z JS $ 16// Copyright: (c) 2000 by Total Control Software 17// Licence: wxWindows license 18///////////////////////////////////////////////////////////////////////////// 19 20#ifndef __stc_h__ 21#define __stc_h__ 22 23 24#include "wx/wx.h" 25#include "wx/dnd.h" 26 27 28#ifdef WXMAKINGDLL_STC 29 #define WXDLLIMPEXP_STC WXEXPORT 30#elif defined(WXUSINGDLL) 31 #define WXDLLIMPEXP_STC WXIMPORT 32#else // not making nor using DLL 33 #define WXDLLIMPEXP_STC 34#endif 35 36 37// SWIG can't handle "#if" type of conditionals, only "#ifdef" 38#ifdef SWIG 39#define STC_USE_DND 1 40#else 41#if wxUSE_DRAG_AND_DROP 42#define STC_USE_DND 1 43#endif 44#endif 45 46//---------------------------------------------------------------------- 47 48// Should a wxPopupWindow be used for the call tips and autocomplete windows? 49#ifndef wxSTC_USE_POPUP 50#define wxSTC_USE_POPUP 1 51#endif 52 53//---------------------------------------------------------------------- 54// BEGIN generated section. The following code is automatically generated 55// by gen_iface.py. Do not edit this file. Edit stc.h.in instead 56// and regenerate 57 58#define wxSTC_INVALID_POSITION -1 59 60// Define start of Scintilla messages to be greater than all Windows edit (EM_*) messages 61// as many EM_ messages can be used although that use is deprecated. 62#define wxSTC_START 2000 63#define wxSTC_OPTIONAL_START 3000 64#define wxSTC_LEXER_START 4000 65#define wxSTC_WS_INVISIBLE 0 66#define wxSTC_WS_VISIBLEALWAYS 1 67#define wxSTC_WS_VISIBLEAFTERINDENT 2 68#define wxSTC_EOL_CRLF 0 69#define wxSTC_EOL_CR 1 70#define wxSTC_EOL_LF 2 71 72// The SC_CP_UTF8 value can be used to enter Unicode mode. 73// This is the same value as CP_UTF8 in Windows 74#define wxSTC_CP_UTF8 65001 75 76// The SC_CP_DBCS value can be used to indicate a DBCS mode for GTK+. 77#define wxSTC_CP_DBCS 1 78#define wxSTC_MARKER_MAX 31 79#define wxSTC_MARK_CIRCLE 0 80#define wxSTC_MARK_ROUNDRECT 1 81#define wxSTC_MARK_ARROW 2 82#define wxSTC_MARK_SMALLRECT 3 83#define wxSTC_MARK_SHORTARROW 4 84#define wxSTC_MARK_EMPTY 5 85#define wxSTC_MARK_ARROWDOWN 6 86#define wxSTC_MARK_MINUS 7 87#define wxSTC_MARK_PLUS 8 88 89// Shapes used for outlining column. 90#define wxSTC_MARK_VLINE 9 91#define wxSTC_MARK_LCORNER 10 92#define wxSTC_MARK_TCORNER 11 93#define wxSTC_MARK_BOXPLUS 12 94#define wxSTC_MARK_BOXPLUSCONNECTED 13 95#define wxSTC_MARK_BOXMINUS 14 96#define wxSTC_MARK_BOXMINUSCONNECTED 15 97#define wxSTC_MARK_LCORNERCURVE 16 98#define wxSTC_MARK_TCORNERCURVE 17 99#define wxSTC_MARK_CIRCLEPLUS 18 100#define wxSTC_MARK_CIRCLEPLUSCONNECTED 19 101#define wxSTC_MARK_CIRCLEMINUS 20 102#define wxSTC_MARK_CIRCLEMINUSCONNECTED 21 103 104// Invisible mark that only sets the line background color. 105#define wxSTC_MARK_BACKGROUND 22 106#define wxSTC_MARK_DOTDOTDOT 23 107#define wxSTC_MARK_ARROWS 24 108#define wxSTC_MARK_PIXMAP 25 109#define wxSTC_MARK_FULLRECT 26 110#define wxSTC_MARK_CHARACTER 10000 111 112// Markers used for outlining column. 113#define wxSTC_MARKNUM_FOLDEREND 25 114#define wxSTC_MARKNUM_FOLDEROPENMID 26 115#define wxSTC_MARKNUM_FOLDERMIDTAIL 27 116#define wxSTC_MARKNUM_FOLDERTAIL 28 117#define wxSTC_MARKNUM_FOLDERSUB 29 118#define wxSTC_MARKNUM_FOLDER 30 119#define wxSTC_MARKNUM_FOLDEROPEN 31 120#define wxSTC_MASK_FOLDERS 0xFE000000 121#define wxSTC_MARGIN_SYMBOL 0 122#define wxSTC_MARGIN_NUMBER 1 123#define wxSTC_MARGIN_BACK 2 124#define wxSTC_MARGIN_FORE 3 125 126// Styles in range 32..38 are predefined for parts of the UI and are not used as normal styles. 127// Style 39 is for future use. 128#define wxSTC_STYLE_DEFAULT 32 129#define wxSTC_STYLE_LINENUMBER 33 130#define wxSTC_STYLE_BRACELIGHT 34 131#define wxSTC_STYLE_BRACEBAD 35 132#define wxSTC_STYLE_CONTROLCHAR 36 133#define wxSTC_STYLE_INDENTGUIDE 37 134#define wxSTC_STYLE_CALLTIP 38 135#define wxSTC_STYLE_LASTPREDEFINED 39 136#define wxSTC_STYLE_MAX 127 137 138// Character set identifiers are used in StyleSetCharacterSet. 139// The values are the same as the Windows *_CHARSET values. 140#define wxSTC_CHARSET_ANSI 0 141#define wxSTC_CHARSET_DEFAULT 1 142#define wxSTC_CHARSET_BALTIC 186 143#define wxSTC_CHARSET_CHINESEBIG5 136 144#define wxSTC_CHARSET_EASTEUROPE 238 145#define wxSTC_CHARSET_GB2312 134 146#define wxSTC_CHARSET_GREEK 161 147#define wxSTC_CHARSET_HANGUL 129 148#define wxSTC_CHARSET_MAC 77 149#define wxSTC_CHARSET_OEM 255 150#define wxSTC_CHARSET_RUSSIAN 204 151#define wxSTC_CHARSET_CYRILLIC 1251 152#define wxSTC_CHARSET_SHIFTJIS 128 153#define wxSTC_CHARSET_SYMBOL 2 154#define wxSTC_CHARSET_TURKISH 162 155#define wxSTC_CHARSET_JOHAB 130 156#define wxSTC_CHARSET_HEBREW 177 157#define wxSTC_CHARSET_ARABIC 178 158#define wxSTC_CHARSET_VIETNAMESE 163 159#define wxSTC_CHARSET_THAI 222 160#define wxSTC_CHARSET_8859_15 1000 161#define wxSTC_CASE_MIXED 0 162#define wxSTC_CASE_UPPER 1 163#define wxSTC_CASE_LOWER 2 164#define wxSTC_INDIC_MAX 7 165#define wxSTC_INDIC_PLAIN 0 166#define wxSTC_INDIC_SQUIGGLE 1 167#define wxSTC_INDIC_TT 2 168#define wxSTC_INDIC_DIAGONAL 3 169#define wxSTC_INDIC_STRIKE 4 170#define wxSTC_INDIC_HIDDEN 5 171#define wxSTC_INDIC_BOX 6 172#define wxSTC_INDIC_ROUNDBOX 7 173#define wxSTC_INDIC0_MASK 0x20 174#define wxSTC_INDIC1_MASK 0x40 175#define wxSTC_INDIC2_MASK 0x80 176#define wxSTC_INDICS_MASK 0xE0 177 178// PrintColourMode - use same colours as screen. 179#define wxSTC_PRINT_NORMAL 0 180 181// PrintColourMode - invert the light value of each style for printing. 182#define wxSTC_PRINT_INVERTLIGHT 1 183 184// PrintColourMode - force black text on white background for printing. 185#define wxSTC_PRINT_BLACKONWHITE 2 186 187// PrintColourMode - text stays coloured, but all background is forced to be white for printing. 188#define wxSTC_PRINT_COLOURONWHITE 3 189 190// PrintColourMode - only the default-background is forced to be white for printing. 191#define wxSTC_PRINT_COLOURONWHITEDEFAULTBG 4 192#define wxSTC_FIND_WHOLEWORD 2 193#define wxSTC_FIND_MATCHCASE 4 194#define wxSTC_FIND_WORDSTART 0x00100000 195#define wxSTC_FIND_REGEXP 0x00200000 196#define wxSTC_FIND_POSIX 0x00400000 197#define wxSTC_FOLDLEVELBASE 0x400 198#define wxSTC_FOLDLEVELWHITEFLAG 0x1000 199#define wxSTC_FOLDLEVELHEADERFLAG 0x2000 200#define wxSTC_FOLDLEVELBOXHEADERFLAG 0x4000 201#define wxSTC_FOLDLEVELBOXFOOTERFLAG 0x8000 202#define wxSTC_FOLDLEVELCONTRACTED 0x10000 203#define wxSTC_FOLDLEVELUNINDENT 0x20000 204#define wxSTC_FOLDLEVELNUMBERMASK 0x0FFF 205#define wxSTC_FOLDFLAG_LINEBEFORE_EXPANDED 0x0002 206#define wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED 0x0004 207#define wxSTC_FOLDFLAG_LINEAFTER_EXPANDED 0x0008 208#define wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED 0x0010 209#define wxSTC_FOLDFLAG_LEVELNUMBERS 0x0040 210#define wxSTC_FOLDFLAG_BOX 0x0001 211#define wxSTC_TIME_FOREVER 10000000 212#define wxSTC_WRAP_NONE 0 213#define wxSTC_WRAP_WORD 1 214#define wxSTC_WRAP_CHAR 2 215#define wxSTC_WRAPVISUALFLAG_NONE 0x0000 216#define wxSTC_WRAPVISUALFLAG_END 0x0001 217#define wxSTC_WRAPVISUALFLAG_START 0x0002 218#define wxSTC_WRAPVISUALFLAGLOC_DEFAULT 0x0000 219#define wxSTC_WRAPVISUALFLAGLOC_END_BY_TEXT 0x0001 220#define wxSTC_WRAPVISUALFLAGLOC_START_BY_TEXT 0x0002 221#define wxSTC_CACHE_NONE 0 222#define wxSTC_CACHE_CARET 1 223#define wxSTC_CACHE_PAGE 2 224#define wxSTC_CACHE_DOCUMENT 3 225#define wxSTC_EDGE_NONE 0 226#define wxSTC_EDGE_LINE 1 227#define wxSTC_EDGE_BACKGROUND 2 228#define wxSTC_CURSORNORMAL -1 229#define wxSTC_CURSORWAIT 4 230 231// Constants for use with SetVisiblePolicy, similar to SetCaretPolicy. 232#define wxSTC_VISIBLE_SLOP 0x01 233#define wxSTC_VISIBLE_STRICT 0x04 234 235// Caret policy, used by SetXCaretPolicy and SetYCaretPolicy. 236// If CARET_SLOP is set, we can define a slop value: caretSlop. 237// This value defines an unwanted zone (UZ) where the caret is... unwanted. 238// This zone is defined as a number of pixels near the vertical margins, 239// and as a number of lines near the horizontal margins. 240// By keeping the caret away from the edges, it is seen within its context, 241// so it is likely that the identifier that the caret is on can be completely seen, 242// and that the current line is seen with some of the lines following it which are 243// often dependent on that line. 244#define wxSTC_CARET_SLOP 0x01 245 246// If CARET_STRICT is set, the policy is enforced... strictly. 247// The caret is centred on the display if slop is not set, 248// and cannot go in the UZ if slop is set. 249#define wxSTC_CARET_STRICT 0x04 250 251// If CARET_JUMPS is set, the display is moved more energetically 252// so the caret can move in the same direction longer before the policy is applied again. 253#define wxSTC_CARET_JUMPS 0x10 254 255// If CARET_EVEN is not set, instead of having symmetrical UZs, 256// the left and bottom UZs are extended up to right and top UZs respectively. 257// This way, we favour the displaying of useful information: the begining of lines, 258// where most code reside, and the lines after the caret, eg. the body of a function. 259#define wxSTC_CARET_EVEN 0x08 260 261// Selection modes 262#define wxSTC_SEL_STREAM 0 263#define wxSTC_SEL_RECTANGLE 1 264#define wxSTC_SEL_LINES 2 265#define wxSTC_ALPHA_TRANSPARENT 0 266#define wxSTC_ALPHA_OPAQUE 255 267#define wxSTC_ALPHA_NOALPHA 256 268 269// Maximum value of keywordSet parameter of SetKeyWords. 270#define wxSTC_KEYWORDSET_MAX 8 271 272// Notifications 273// Type of modification and the action which caused the modification. 274// These are defined as a bit mask to make it easy to specify which notifications are wanted. 275// One bit is set from each of SC_MOD_* and SC_PERFORMED_*. 276#define wxSTC_MOD_INSERTTEXT 0x1 277#define wxSTC_MOD_DELETETEXT 0x2 278#define wxSTC_MOD_CHANGESTYLE 0x4 279#define wxSTC_MOD_CHANGEFOLD 0x8 280#define wxSTC_PERFORMED_USER 0x10 281#define wxSTC_PERFORMED_UNDO 0x20 282#define wxSTC_PERFORMED_REDO 0x40 283#define wxSTC_MULTISTEPUNDOREDO 0x80 284#define wxSTC_LASTSTEPINUNDOREDO 0x100 285#define wxSTC_MOD_CHANGEMARKER 0x200 286#define wxSTC_MOD_BEFOREINSERT 0x400 287#define wxSTC_MOD_BEFOREDELETE 0x800 288#define wxSTC_MULTILINEUNDOREDO 0x1000 289#define wxSTC_MODEVENTMASKALL 0x1FFF 290 291// Symbolic key codes and modifier flags. 292// ASCII and other printable characters below 256. 293// Extended keys above 300. 294#define wxSTC_KEY_DOWN 300 295#define wxSTC_KEY_UP 301 296#define wxSTC_KEY_LEFT 302 297#define wxSTC_KEY_RIGHT 303 298#define wxSTC_KEY_HOME 304 299#define wxSTC_KEY_END 305 300#define wxSTC_KEY_PRIOR 306 301#define wxSTC_KEY_NEXT 307 302#define wxSTC_KEY_DELETE 308 303#define wxSTC_KEY_INSERT 309 304#define wxSTC_KEY_ESCAPE 7 305#define wxSTC_KEY_BACK 8 306#define wxSTC_KEY_TAB 9 307#define wxSTC_KEY_RETURN 13 308#define wxSTC_KEY_ADD 310 309#define wxSTC_KEY_SUBTRACT 311 310#define wxSTC_KEY_DIVIDE 312 311#define wxSTC_SCMOD_NORM 0 312#define wxSTC_SCMOD_SHIFT 1 313#define wxSTC_SCMOD_CTRL 2 314#define wxSTC_SCMOD_ALT 4 315 316// For SciLexer.h 317#define wxSTC_LEX_CONTAINER 0 318#define wxSTC_LEX_NULL 1 319#define wxSTC_LEX_PYTHON 2 320#define wxSTC_LEX_CPP 3 321#define wxSTC_LEX_HTML 4 322#define wxSTC_LEX_XML 5 323#define wxSTC_LEX_PERL 6 324#define wxSTC_LEX_SQL 7 325#define wxSTC_LEX_VB 8 326#define wxSTC_LEX_PROPERTIES 9 327#define wxSTC_LEX_ERRORLIST 10 328#define wxSTC_LEX_MAKEFILE 11 329#define wxSTC_LEX_BATCH 12 330#define wxSTC_LEX_XCODE 13 331#define wxSTC_LEX_LATEX 14 332#define wxSTC_LEX_LUA 15 333#define wxSTC_LEX_DIFF 16 334#define wxSTC_LEX_CONF 17 335#define wxSTC_LEX_PASCAL 18 336#define wxSTC_LEX_AVE 19 337#define wxSTC_LEX_ADA 20 338#define wxSTC_LEX_LISP 21 339#define wxSTC_LEX_RUBY 22 340#define wxSTC_LEX_EIFFEL 23 341#define wxSTC_LEX_EIFFELKW 24 342#define wxSTC_LEX_TCL 25 343#define wxSTC_LEX_NNCRONTAB 26 344#define wxSTC_LEX_BULLANT 27 345#define wxSTC_LEX_VBSCRIPT 28 346#define wxSTC_LEX_BAAN 31 347#define wxSTC_LEX_MATLAB 32 348#define wxSTC_LEX_SCRIPTOL 33 349#define wxSTC_LEX_ASM 34 350#define wxSTC_LEX_CPPNOCASE 35 351#define wxSTC_LEX_FORTRAN 36 352#define wxSTC_LEX_F77 37 353#define wxSTC_LEX_CSS 38 354#define wxSTC_LEX_POV 39 355#define wxSTC_LEX_LOUT 40 356#define wxSTC_LEX_ESCRIPT 41 357#define wxSTC_LEX_PS 42 358#define wxSTC_LEX_NSIS 43 359#define wxSTC_LEX_MMIXAL 44 360#define wxSTC_LEX_CLW 45 361#define wxSTC_LEX_CLWNOCASE 46 362#define wxSTC_LEX_LOT 47 363#define wxSTC_LEX_YAML 48 364#define wxSTC_LEX_TEX 49 365#define wxSTC_LEX_METAPOST 50 366#define wxSTC_LEX_POWERBASIC 51 367#define wxSTC_LEX_FORTH 52 368#define wxSTC_LEX_ERLANG 53 369#define wxSTC_LEX_OCTAVE 54 370#define wxSTC_LEX_MSSQL 55 371#define wxSTC_LEX_VERILOG 56 372#define wxSTC_LEX_KIX 57 373#define wxSTC_LEX_GUI4CLI 58 374#define wxSTC_LEX_SPECMAN 59 375#define wxSTC_LEX_AU3 60 376#define wxSTC_LEX_APDL 61 377#define wxSTC_LEX_BASH 62 378#define wxSTC_LEX_ASN1 63 379#define wxSTC_LEX_VHDL 64 380#define wxSTC_LEX_CAML 65 381#define wxSTC_LEX_BLITZBASIC 66 382#define wxSTC_LEX_PUREBASIC 67 383#define wxSTC_LEX_HASKELL 68 384#define wxSTC_LEX_PHPSCRIPT 69 385#define wxSTC_LEX_TADS3 70 386#define wxSTC_LEX_REBOL 71 387#define wxSTC_LEX_SMALLTALK 72 388#define wxSTC_LEX_FLAGSHIP 73 389#define wxSTC_LEX_CSOUND 74 390#define wxSTC_LEX_FREEBASIC 75 391#define wxSTC_LEX_INNOSETUP 76 392#define wxSTC_LEX_OPAL 77 393#define wxSTC_LEX_SPICE 78 394 395// When a lexer specifies its language as SCLEX_AUTOMATIC it receives a 396// value assigned in sequence from SCLEX_AUTOMATIC+1. 397#define wxSTC_LEX_AUTOMATIC 1000 398 399// Lexical states for SCLEX_PYTHON 400#define wxSTC_P_DEFAULT 0 401#define wxSTC_P_COMMENTLINE 1 402#define wxSTC_P_NUMBER 2 403#define wxSTC_P_STRING 3 404#define wxSTC_P_CHARACTER 4 405#define wxSTC_P_WORD 5 406#define wxSTC_P_TRIPLE 6 407#define wxSTC_P_TRIPLEDOUBLE 7 408#define wxSTC_P_CLASSNAME 8 409#define wxSTC_P_DEFNAME 9 410#define wxSTC_P_OPERATOR 10 411#define wxSTC_P_IDENTIFIER 11 412#define wxSTC_P_COMMENTBLOCK 12 413#define wxSTC_P_STRINGEOL 13 414#define wxSTC_P_WORD2 14 415#define wxSTC_P_DECORATOR 15 416 417// Lexical states for SCLEX_CPP 418#define wxSTC_C_DEFAULT 0 419#define wxSTC_C_COMMENT 1 420#define wxSTC_C_COMMENTLINE 2 421#define wxSTC_C_COMMENTDOC 3 422#define wxSTC_C_NUMBER 4 423#define wxSTC_C_WORD 5 424#define wxSTC_C_STRING 6 425#define wxSTC_C_CHARACTER 7 426#define wxSTC_C_UUID 8 427#define wxSTC_C_PREPROCESSOR 9 428#define wxSTC_C_OPERATOR 10 429#define wxSTC_C_IDENTIFIER 11 430#define wxSTC_C_STRINGEOL 12 431#define wxSTC_C_VERBATIM 13 432#define wxSTC_C_REGEX 14 433#define wxSTC_C_COMMENTLINEDOC 15 434#define wxSTC_C_WORD2 16 435#define wxSTC_C_COMMENTDOCKEYWORD 17 436#define wxSTC_C_COMMENTDOCKEYWORDERROR 18 437#define wxSTC_C_GLOBALCLASS 19 438 439// Lexical states for SCLEX_TCL 440#define wxSTC_TCL_DEFAULT 0 441#define wxSTC_TCL_COMMENT 1 442#define wxSTC_TCL_COMMENTLINE 2 443#define wxSTC_TCL_NUMBER 3 444#define wxSTC_TCL_WORD_IN_QUOTE 4 445#define wxSTC_TCL_IN_QUOTE 5 446#define wxSTC_TCL_OPERATOR 6 447#define wxSTC_TCL_IDENTIFIER 7 448#define wxSTC_TCL_SUBSTITUTION 8 449#define wxSTC_TCL_SUB_BRACE 9 450#define wxSTC_TCL_MODIFIER 10 451#define wxSTC_TCL_EXPAND 11 452#define wxSTC_TCL_WORD 12 453#define wxSTC_TCL_WORD2 13 454#define wxSTC_TCL_WORD3 14 455#define wxSTC_TCL_WORD4 15 456#define wxSTC_TCL_WORD5 16 457#define wxSTC_TCL_WORD6 17 458#define wxSTC_TCL_WORD7 18 459#define wxSTC_TCL_WORD8 19 460#define wxSTC_TCL_COMMENT_BOX 20 461#define wxSTC_TCL_BLOCK_COMMENT 21 462 463// Lexical states for SCLEX_HTML, SCLEX_XML 464#define wxSTC_H_DEFAULT 0 465#define wxSTC_H_TAG 1 466#define wxSTC_H_TAGUNKNOWN 2 467#define wxSTC_H_ATTRIBUTE 3 468#define wxSTC_H_ATTRIBUTEUNKNOWN 4 469#define wxSTC_H_NUMBER 5 470#define wxSTC_H_DOUBLESTRING 6 471#define wxSTC_H_SINGLESTRING 7 472#define wxSTC_H_OTHER 8 473#define wxSTC_H_COMMENT 9 474#define wxSTC_H_ENTITY 10 475 476// XML and ASP 477#define wxSTC_H_TAGEND 11 478#define wxSTC_H_XMLSTART 12 479#define wxSTC_H_XMLEND 13 480#define wxSTC_H_SCRIPT 14 481#define wxSTC_H_ASP 15 482#define wxSTC_H_ASPAT 16 483#define wxSTC_H_CDATA 17 484#define wxSTC_H_QUESTION 18 485 486// More HTML 487#define wxSTC_H_VALUE 19 488 489// X-Code 490#define wxSTC_H_XCCOMMENT 20 491 492// SGML 493#define wxSTC_H_SGML_DEFAULT 21 494#define wxSTC_H_SGML_COMMAND 22 495#define wxSTC_H_SGML_1ST_PARAM 23 496#define wxSTC_H_SGML_DOUBLESTRING 24 497#define wxSTC_H_SGML_SIMPLESTRING 25 498#define wxSTC_H_SGML_ERROR 26 499#define wxSTC_H_SGML_SPECIAL 27 500#define wxSTC_H_SGML_ENTITY 28 501#define wxSTC_H_SGML_COMMENT 29 502#define wxSTC_H_SGML_1ST_PARAM_COMMENT 30 503#define wxSTC_H_SGML_BLOCK_DEFAULT 31 504 505// Embedded Javascript 506#define wxSTC_HJ_START 40 507#define wxSTC_HJ_DEFAULT 41 508#define wxSTC_HJ_COMMENT 42 509#define wxSTC_HJ_COMMENTLINE 43 510#define wxSTC_HJ_COMMENTDOC 44 511#define wxSTC_HJ_NUMBER 45 512#define wxSTC_HJ_WORD 46 513#define wxSTC_HJ_KEYWORD 47 514#define wxSTC_HJ_DOUBLESTRING 48 515#define wxSTC_HJ_SINGLESTRING 49 516#define wxSTC_HJ_SYMBOLS 50 517#define wxSTC_HJ_STRINGEOL 51 518#define wxSTC_HJ_REGEX 52 519 520// ASP Javascript 521#define wxSTC_HJA_START 55 522#define wxSTC_HJA_DEFAULT 56 523#define wxSTC_HJA_COMMENT 57 524#define wxSTC_HJA_COMMENTLINE 58 525#define wxSTC_HJA_COMMENTDOC 59 526#define wxSTC_HJA_NUMBER 60 527#define wxSTC_HJA_WORD 61 528#define wxSTC_HJA_KEYWORD 62 529#define wxSTC_HJA_DOUBLESTRING 63 530#define wxSTC_HJA_SINGLESTRING 64 531#define wxSTC_HJA_SYMBOLS 65 532#define wxSTC_HJA_STRINGEOL 66 533#define wxSTC_HJA_REGEX 67 534 535// Embedded VBScript 536#define wxSTC_HB_START 70 537#define wxSTC_HB_DEFAULT 71 538#define wxSTC_HB_COMMENTLINE 72 539#define wxSTC_HB_NUMBER 73 540#define wxSTC_HB_WORD 74 541#define wxSTC_HB_STRING 75 542#define wxSTC_HB_IDENTIFIER 76 543#define wxSTC_HB_STRINGEOL 77 544 545// ASP VBScript 546#define wxSTC_HBA_START 80 547#define wxSTC_HBA_DEFAULT 81 548#define wxSTC_HBA_COMMENTLINE 82 549#define wxSTC_HBA_NUMBER 83 550#define wxSTC_HBA_WORD 84 551#define wxSTC_HBA_STRING 85 552#define wxSTC_HBA_IDENTIFIER 86 553#define wxSTC_HBA_STRINGEOL 87 554 555// Embedded Python 556#define wxSTC_HP_START 90 557#define wxSTC_HP_DEFAULT 91 558#define wxSTC_HP_COMMENTLINE 92 559#define wxSTC_HP_NUMBER 93 560#define wxSTC_HP_STRING 94 561#define wxSTC_HP_CHARACTER 95 562#define wxSTC_HP_WORD 96 563#define wxSTC_HP_TRIPLE 97 564#define wxSTC_HP_TRIPLEDOUBLE 98 565#define wxSTC_HP_CLASSNAME 99 566#define wxSTC_HP_DEFNAME 100 567#define wxSTC_HP_OPERATOR 101 568#define wxSTC_HP_IDENTIFIER 102 569 570// PHP 571#define wxSTC_HPHP_COMPLEX_VARIABLE 104 572 573// ASP Python 574#define wxSTC_HPA_START 105 575#define wxSTC_HPA_DEFAULT 106 576#define wxSTC_HPA_COMMENTLINE 107 577#define wxSTC_HPA_NUMBER 108 578#define wxSTC_HPA_STRING 109 579#define wxSTC_HPA_CHARACTER 110 580#define wxSTC_HPA_WORD 111 581#define wxSTC_HPA_TRIPLE 112 582#define wxSTC_HPA_TRIPLEDOUBLE 113 583#define wxSTC_HPA_CLASSNAME 114 584#define wxSTC_HPA_DEFNAME 115 585#define wxSTC_HPA_OPERATOR 116 586#define wxSTC_HPA_IDENTIFIER 117 587 588// PHP 589#define wxSTC_HPHP_DEFAULT 118 590#define wxSTC_HPHP_HSTRING 119 591#define wxSTC_HPHP_SIMPLESTRING 120 592#define wxSTC_HPHP_WORD 121 593#define wxSTC_HPHP_NUMBER 122 594#define wxSTC_HPHP_VARIABLE 123 595#define wxSTC_HPHP_COMMENT 124 596#define wxSTC_HPHP_COMMENTLINE 125 597#define wxSTC_HPHP_HSTRING_VARIABLE 126 598#define wxSTC_HPHP_OPERATOR 127 599 600// Lexical states for SCLEX_PERL 601#define wxSTC_PL_DEFAULT 0 602#define wxSTC_PL_ERROR 1 603#define wxSTC_PL_COMMENTLINE 2 604#define wxSTC_PL_POD 3 605#define wxSTC_PL_NUMBER 4 606#define wxSTC_PL_WORD 5 607#define wxSTC_PL_STRING 6 608#define wxSTC_PL_CHARACTER 7 609#define wxSTC_PL_PUNCTUATION 8 610#define wxSTC_PL_PREPROCESSOR 9 611#define wxSTC_PL_OPERATOR 10 612#define wxSTC_PL_IDENTIFIER 11 613#define wxSTC_PL_SCALAR 12 614#define wxSTC_PL_ARRAY 13 615#define wxSTC_PL_HASH 14 616#define wxSTC_PL_SYMBOLTABLE 15 617#define wxSTC_PL_VARIABLE_INDEXER 16 618#define wxSTC_PL_REGEX 17 619#define wxSTC_PL_REGSUBST 18 620#define wxSTC_PL_LONGQUOTE 19 621#define wxSTC_PL_BACKTICKS 20 622#define wxSTC_PL_DATASECTION 21 623#define wxSTC_PL_HERE_DELIM 22 624#define wxSTC_PL_HERE_Q 23 625#define wxSTC_PL_HERE_QQ 24 626#define wxSTC_PL_HERE_QX 25 627#define wxSTC_PL_STRING_Q 26 628#define wxSTC_PL_STRING_QQ 27 629#define wxSTC_PL_STRING_QX 28 630#define wxSTC_PL_STRING_QR 29 631#define wxSTC_PL_STRING_QW 30 632#define wxSTC_PL_POD_VERB 31 633 634// Lexical states for SCLEX_RUBY 635#define wxSTC_RB_DEFAULT 0 636#define wxSTC_RB_ERROR 1 637#define wxSTC_RB_COMMENTLINE 2 638#define wxSTC_RB_POD 3 639#define wxSTC_RB_NUMBER 4 640#define wxSTC_RB_WORD 5 641#define wxSTC_RB_STRING 6 642#define wxSTC_RB_CHARACTER 7 643#define wxSTC_RB_CLASSNAME 8 644#define wxSTC_RB_DEFNAME 9 645#define wxSTC_RB_OPERATOR 10 646#define wxSTC_RB_IDENTIFIER 11 647#define wxSTC_RB_REGEX 12 648#define wxSTC_RB_GLOBAL 13 649#define wxSTC_RB_SYMBOL 14 650#define wxSTC_RB_MODULE_NAME 15 651#define wxSTC_RB_INSTANCE_VAR 16 652#define wxSTC_RB_CLASS_VAR 17 653#define wxSTC_RB_BACKTICKS 18 654#define wxSTC_RB_DATASECTION 19 655#define wxSTC_RB_HERE_DELIM 20 656#define wxSTC_RB_HERE_Q 21 657#define wxSTC_RB_HERE_QQ 22 658#define wxSTC_RB_HERE_QX 23 659#define wxSTC_RB_STRING_Q 24 660#define wxSTC_RB_STRING_QQ 25 661#define wxSTC_RB_STRING_QX 26 662#define wxSTC_RB_STRING_QR 27 663#define wxSTC_RB_STRING_QW 28 664#define wxSTC_RB_WORD_DEMOTED 29 665#define wxSTC_RB_STDIN 30 666#define wxSTC_RB_STDOUT 31 667#define wxSTC_RB_STDERR 40 668#define wxSTC_RB_UPPER_BOUND 41 669 670// Lexical states for SCLEX_VB, SCLEX_VBSCRIPT, SCLEX_POWERBASIC 671#define wxSTC_B_DEFAULT 0 672#define wxSTC_B_COMMENT 1 673#define wxSTC_B_NUMBER 2 674#define wxSTC_B_KEYWORD 3 675#define wxSTC_B_STRING 4 676#define wxSTC_B_PREPROCESSOR 5 677#define wxSTC_B_OPERATOR 6 678#define wxSTC_B_IDENTIFIER 7 679#define wxSTC_B_DATE 8 680#define wxSTC_B_STRINGEOL 9 681#define wxSTC_B_KEYWORD2 10 682#define wxSTC_B_KEYWORD3 11 683#define wxSTC_B_KEYWORD4 12 684#define wxSTC_B_CONSTANT 13 685#define wxSTC_B_ASM 14 686#define wxSTC_B_LABEL 15 687#define wxSTC_B_ERROR 16 688#define wxSTC_B_HEXNUMBER 17 689#define wxSTC_B_BINNUMBER 18 690 691// Lexical states for SCLEX_PROPERTIES 692#define wxSTC_PROPS_DEFAULT 0 693#define wxSTC_PROPS_COMMENT 1 694#define wxSTC_PROPS_SECTION 2 695#define wxSTC_PROPS_ASSIGNMENT 3 696#define wxSTC_PROPS_DEFVAL 4 697#define wxSTC_PROPS_KEY 5 698 699// Lexical states for SCLEX_LATEX 700#define wxSTC_L_DEFAULT 0 701#define wxSTC_L_COMMAND 1 702#define wxSTC_L_TAG 2 703#define wxSTC_L_MATH 3 704#define wxSTC_L_COMMENT 4 705 706// Lexical states for SCLEX_LUA 707#define wxSTC_LUA_DEFAULT 0 708#define wxSTC_LUA_COMMENT 1 709#define wxSTC_LUA_COMMENTLINE 2 710#define wxSTC_LUA_COMMENTDOC 3 711#define wxSTC_LUA_NUMBER 4 712#define wxSTC_LUA_WORD 5 713#define wxSTC_LUA_STRING 6 714#define wxSTC_LUA_CHARACTER 7 715#define wxSTC_LUA_LITERALSTRING 8 716#define wxSTC_LUA_PREPROCESSOR 9 717#define wxSTC_LUA_OPERATOR 10 718#define wxSTC_LUA_IDENTIFIER 11 719#define wxSTC_LUA_STRINGEOL 12 720#define wxSTC_LUA_WORD2 13 721#define wxSTC_LUA_WORD3 14 722#define wxSTC_LUA_WORD4 15 723#define wxSTC_LUA_WORD5 16 724#define wxSTC_LUA_WORD6 17 725#define wxSTC_LUA_WORD7 18 726#define wxSTC_LUA_WORD8 19 727 728// Lexical states for SCLEX_ERRORLIST 729#define wxSTC_ERR_DEFAULT 0 730#define wxSTC_ERR_PYTHON 1 731#define wxSTC_ERR_GCC 2 732#define wxSTC_ERR_MS 3 733#define wxSTC_ERR_CMD 4 734#define wxSTC_ERR_BORLAND 5 735#define wxSTC_ERR_PERL 6 736#define wxSTC_ERR_NET 7 737#define wxSTC_ERR_LUA 8 738#define wxSTC_ERR_CTAG 9 739#define wxSTC_ERR_DIFF_CHANGED 10 740#define wxSTC_ERR_DIFF_ADDITION 11 741#define wxSTC_ERR_DIFF_DELETION 12 742#define wxSTC_ERR_DIFF_MESSAGE 13 743#define wxSTC_ERR_PHP 14 744#define wxSTC_ERR_ELF 15 745#define wxSTC_ERR_IFC 16 746#define wxSTC_ERR_IFORT 17 747#define wxSTC_ERR_ABSF 18 748#define wxSTC_ERR_TIDY 19 749#define wxSTC_ERR_JAVA_STACK 20 750 751// Lexical states for SCLEX_BATCH 752#define wxSTC_BAT_DEFAULT 0 753#define wxSTC_BAT_COMMENT 1 754#define wxSTC_BAT_WORD 2 755#define wxSTC_BAT_LABEL 3 756#define wxSTC_BAT_HIDE 4 757#define wxSTC_BAT_COMMAND 5 758#define wxSTC_BAT_IDENTIFIER 6 759#define wxSTC_BAT_OPERATOR 7 760 761// Lexical states for SCLEX_MAKEFILE 762#define wxSTC_MAKE_DEFAULT 0 763#define wxSTC_MAKE_COMMENT 1 764#define wxSTC_MAKE_PREPROCESSOR 2 765#define wxSTC_MAKE_IDENTIFIER 3 766#define wxSTC_MAKE_OPERATOR 4 767#define wxSTC_MAKE_TARGET 5 768#define wxSTC_MAKE_IDEOL 9 769 770// Lexical states for SCLEX_DIFF 771#define wxSTC_DIFF_DEFAULT 0 772#define wxSTC_DIFF_COMMENT 1 773#define wxSTC_DIFF_COMMAND 2 774#define wxSTC_DIFF_HEADER 3 775#define wxSTC_DIFF_POSITION 4 776#define wxSTC_DIFF_DELETED 5 777#define wxSTC_DIFF_ADDED 6 778 779// Lexical states for SCLEX_CONF (Apache Configuration Files Lexer) 780#define wxSTC_CONF_DEFAULT 0 781#define wxSTC_CONF_COMMENT 1 782#define wxSTC_CONF_NUMBER 2 783#define wxSTC_CONF_IDENTIFIER 3 784#define wxSTC_CONF_EXTENSION 4 785#define wxSTC_CONF_PARAMETER 5 786#define wxSTC_CONF_STRING 6 787#define wxSTC_CONF_OPERATOR 7 788#define wxSTC_CONF_IP 8 789#define wxSTC_CONF_DIRECTIVE 9 790 791// Lexical states for SCLEX_AVE, Avenue 792#define wxSTC_AVE_DEFAULT 0 793#define wxSTC_AVE_COMMENT 1 794#define wxSTC_AVE_NUMBER 2 795#define wxSTC_AVE_WORD 3 796#define wxSTC_AVE_STRING 6 797#define wxSTC_AVE_ENUM 7 798#define wxSTC_AVE_STRINGEOL 8 799#define wxSTC_AVE_IDENTIFIER 9 800#define wxSTC_AVE_OPERATOR 10 801#define wxSTC_AVE_WORD1 11 802#define wxSTC_AVE_WORD2 12 803#define wxSTC_AVE_WORD3 13 804#define wxSTC_AVE_WORD4 14 805#define wxSTC_AVE_WORD5 15 806#define wxSTC_AVE_WORD6 16 807 808// Lexical states for SCLEX_ADA 809#define wxSTC_ADA_DEFAULT 0 810#define wxSTC_ADA_WORD 1 811#define wxSTC_ADA_IDENTIFIER 2 812#define wxSTC_ADA_NUMBER 3 813#define wxSTC_ADA_DELIMITER 4 814#define wxSTC_ADA_CHARACTER 5 815#define wxSTC_ADA_CHARACTEREOL 6 816#define wxSTC_ADA_STRING 7 817#define wxSTC_ADA_STRINGEOL 8 818#define wxSTC_ADA_LABEL 9 819#define wxSTC_ADA_COMMENTLINE 10 820#define wxSTC_ADA_ILLEGAL 11 821 822// Lexical states for SCLEX_BAAN 823#define wxSTC_BAAN_DEFAULT 0 824#define wxSTC_BAAN_COMMENT 1 825#define wxSTC_BAAN_COMMENTDOC 2 826#define wxSTC_BAAN_NUMBER 3 827#define wxSTC_BAAN_WORD 4 828#define wxSTC_BAAN_STRING 5 829#define wxSTC_BAAN_PREPROCESSOR 6 830#define wxSTC_BAAN_OPERATOR 7 831#define wxSTC_BAAN_IDENTIFIER 8 832#define wxSTC_BAAN_STRINGEOL 9 833#define wxSTC_BAAN_WORD2 10 834 835// Lexical states for SCLEX_LISP 836#define wxSTC_LISP_DEFAULT 0 837#define wxSTC_LISP_COMMENT 1 838#define wxSTC_LISP_NUMBER 2 839#define wxSTC_LISP_KEYWORD 3 840#define wxSTC_LISP_KEYWORD_KW 4 841#define wxSTC_LISP_SYMBOL 5 842#define wxSTC_LISP_STRING 6 843#define wxSTC_LISP_STRINGEOL 8 844#define wxSTC_LISP_IDENTIFIER 9 845#define wxSTC_LISP_OPERATOR 10 846#define wxSTC_LISP_SPECIAL 11 847#define wxSTC_LISP_MULTI_COMMENT 12 848 849// Lexical states for SCLEX_EIFFEL and SCLEX_EIFFELKW 850#define wxSTC_EIFFEL_DEFAULT 0 851#define wxSTC_EIFFEL_COMMENTLINE 1 852#define wxSTC_EIFFEL_NUMBER 2 853#define wxSTC_EIFFEL_WORD 3 854#define wxSTC_EIFFEL_STRING 4 855#define wxSTC_EIFFEL_CHARACTER 5 856#define wxSTC_EIFFEL_OPERATOR 6 857#define wxSTC_EIFFEL_IDENTIFIER 7 858#define wxSTC_EIFFEL_STRINGEOL 8 859 860// Lexical states for SCLEX_NNCRONTAB (nnCron crontab Lexer) 861#define wxSTC_NNCRONTAB_DEFAULT 0 862#define wxSTC_NNCRONTAB_COMMENT 1 863#define wxSTC_NNCRONTAB_TASK 2 864#define wxSTC_NNCRONTAB_SECTION 3 865#define wxSTC_NNCRONTAB_KEYWORD 4 866#define wxSTC_NNCRONTAB_MODIFIER 5 867#define wxSTC_NNCRONTAB_ASTERISK 6 868#define wxSTC_NNCRONTAB_NUMBER 7 869#define wxSTC_NNCRONTAB_STRING 8 870#define wxSTC_NNCRONTAB_ENVIRONMENT 9 871#define wxSTC_NNCRONTAB_IDENTIFIER 10 872 873// Lexical states for SCLEX_FORTH (Forth Lexer) 874#define wxSTC_FORTH_DEFAULT 0 875#define wxSTC_FORTH_COMMENT 1 876#define wxSTC_FORTH_COMMENT_ML 2 877#define wxSTC_FORTH_IDENTIFIER 3 878#define wxSTC_FORTH_CONTROL 4 879#define wxSTC_FORTH_KEYWORD 5 880#define wxSTC_FORTH_DEFWORD 6 881#define wxSTC_FORTH_PREWORD1 7 882#define wxSTC_FORTH_PREWORD2 8 883#define wxSTC_FORTH_NUMBER 9 884#define wxSTC_FORTH_STRING 10 885#define wxSTC_FORTH_LOCALE 11 886 887// Lexical states for SCLEX_MATLAB 888#define wxSTC_MATLAB_DEFAULT 0 889#define wxSTC_MATLAB_COMMENT 1 890#define wxSTC_MATLAB_COMMAND 2 891#define wxSTC_MATLAB_NUMBER 3 892#define wxSTC_MATLAB_KEYWORD 4 893 894// single quoted string 895#define wxSTC_MATLAB_STRING 5 896#define wxSTC_MATLAB_OPERATOR 6 897#define wxSTC_MATLAB_IDENTIFIER 7 898#define wxSTC_MATLAB_DOUBLEQUOTESTRING 8 899 900// Lexical states for SCLEX_SCRIPTOL 901#define wxSTC_SCRIPTOL_DEFAULT 0 902#define wxSTC_SCRIPTOL_WHITE 1 903#define wxSTC_SCRIPTOL_COMMENTLINE 2 904#define wxSTC_SCRIPTOL_PERSISTENT 3 905#define wxSTC_SCRIPTOL_CSTYLE 4 906#define wxSTC_SCRIPTOL_COMMENTBLOCK 5 907#define wxSTC_SCRIPTOL_NUMBER 6 908#define wxSTC_SCRIPTOL_STRING 7 909#define wxSTC_SCRIPTOL_CHARACTER 8 910#define wxSTC_SCRIPTOL_STRINGEOL 9 911#define wxSTC_SCRIPTOL_KEYWORD 10 912#define wxSTC_SCRIPTOL_OPERATOR 11 913#define wxSTC_SCRIPTOL_IDENTIFIER 12 914#define wxSTC_SCRIPTOL_TRIPLE 13 915#define wxSTC_SCRIPTOL_CLASSNAME 14 916#define wxSTC_SCRIPTOL_PREPROCESSOR 15 917 918// Lexical states for SCLEX_ASM 919#define wxSTC_ASM_DEFAULT 0 920#define wxSTC_ASM_COMMENT 1 921#define wxSTC_ASM_NUMBER 2 922#define wxSTC_ASM_STRING 3 923#define wxSTC_ASM_OPERATOR 4 924#define wxSTC_ASM_IDENTIFIER 5 925#define wxSTC_ASM_CPUINSTRUCTION 6 926#define wxSTC_ASM_MATHINSTRUCTION 7 927#define wxSTC_ASM_REGISTER 8 928#define wxSTC_ASM_DIRECTIVE 9 929#define wxSTC_ASM_DIRECTIVEOPERAND 10 930#define wxSTC_ASM_COMMENTBLOCK 11 931#define wxSTC_ASM_CHARACTER 12 932#define wxSTC_ASM_STRINGEOL 13 933#define wxSTC_ASM_EXTINSTRUCTION 14 934 935// Lexical states for SCLEX_FORTRAN 936#define wxSTC_F_DEFAULT 0 937#define wxSTC_F_COMMENT 1 938#define wxSTC_F_NUMBER 2 939#define wxSTC_F_STRING1 3 940#define wxSTC_F_STRING2 4 941#define wxSTC_F_STRINGEOL 5 942#define wxSTC_F_OPERATOR 6 943#define wxSTC_F_IDENTIFIER 7 944#define wxSTC_F_WORD 8 945#define wxSTC_F_WORD2 9 946#define wxSTC_F_WORD3 10 947#define wxSTC_F_PREPROCESSOR 11 948#define wxSTC_F_OPERATOR2 12 949#define wxSTC_F_LABEL 13 950#define wxSTC_F_CONTINUATION 14 951 952// Lexical states for SCLEX_CSS 953#define wxSTC_CSS_DEFAULT 0 954#define wxSTC_CSS_TAG 1 955#define wxSTC_CSS_CLASS 2 956#define wxSTC_CSS_PSEUDOCLASS 3 957#define wxSTC_CSS_UNKNOWN_PSEUDOCLASS 4 958#define wxSTC_CSS_OPERATOR 5 959#define wxSTC_CSS_IDENTIFIER 6 960#define wxSTC_CSS_UNKNOWN_IDENTIFIER 7 961#define wxSTC_CSS_VALUE 8 962#define wxSTC_CSS_COMMENT 9 963#define wxSTC_CSS_ID 10 964#define wxSTC_CSS_IMPORTANT 11 965#define wxSTC_CSS_DIRECTIVE 12 966#define wxSTC_CSS_DOUBLESTRING 13 967#define wxSTC_CSS_SINGLESTRING 14 968#define wxSTC_CSS_IDENTIFIER2 15 969#define wxSTC_CSS_ATTRIBUTE 16 970 971// Lexical states for SCLEX_POV 972#define wxSTC_POV_DEFAULT 0 973#define wxSTC_POV_COMMENT 1 974#define wxSTC_POV_COMMENTLINE 2 975#define wxSTC_POV_NUMBER 3 976#define wxSTC_POV_OPERATOR 4 977#define wxSTC_POV_IDENTIFIER 5 978#define wxSTC_POV_STRING 6 979#define wxSTC_POV_STRINGEOL 7 980#define wxSTC_POV_DIRECTIVE 8 981#define wxSTC_POV_BADDIRECTIVE 9 982#define wxSTC_POV_WORD2 10 983#define wxSTC_POV_WORD3 11 984#define wxSTC_POV_WORD4 12 985#define wxSTC_POV_WORD5 13 986#define wxSTC_POV_WORD6 14 987#define wxSTC_POV_WORD7 15 988#define wxSTC_POV_WORD8 16 989 990// Lexical states for SCLEX_LOUT 991#define wxSTC_LOUT_DEFAULT 0 992#define wxSTC_LOUT_COMMENT 1 993#define wxSTC_LOUT_NUMBER 2 994#define wxSTC_LOUT_WORD 3 995#define wxSTC_LOUT_WORD2 4 996#define wxSTC_LOUT_WORD3 5 997#define wxSTC_LOUT_WORD4 6 998#define wxSTC_LOUT_STRING 7 999#define wxSTC_LOUT_OPERATOR 8 1000#define wxSTC_LOUT_IDENTIFIER 9 1001#define wxSTC_LOUT_STRINGEOL 10 1002 1003// Lexical states for SCLEX_ESCRIPT 1004#define wxSTC_ESCRIPT_DEFAULT 0 1005#define wxSTC_ESCRIPT_COMMENT 1 1006#define wxSTC_ESCRIPT_COMMENTLINE 2 1007#define wxSTC_ESCRIPT_COMMENTDOC 3 1008#define wxSTC_ESCRIPT_NUMBER 4 1009#define wxSTC_ESCRIPT_WORD 5 1010#define wxSTC_ESCRIPT_STRING 6 1011#define wxSTC_ESCRIPT_OPERATOR 7 1012#define wxSTC_ESCRIPT_IDENTIFIER 8 1013#define wxSTC_ESCRIPT_BRACE 9 1014#define wxSTC_ESCRIPT_WORD2 10 1015#define wxSTC_ESCRIPT_WORD3 11 1016 1017// Lexical states for SCLEX_PS 1018#define wxSTC_PS_DEFAULT 0 1019#define wxSTC_PS_COMMENT 1 1020#define wxSTC_PS_DSC_COMMENT 2 1021#define wxSTC_PS_DSC_VALUE 3 1022#define wxSTC_PS_NUMBER 4 1023#define wxSTC_PS_NAME 5 1024#define wxSTC_PS_KEYWORD 6 1025#define wxSTC_PS_LITERAL 7 1026#define wxSTC_PS_IMMEVAL 8 1027#define wxSTC_PS_PAREN_ARRAY 9 1028#define wxSTC_PS_PAREN_DICT 10 1029#define wxSTC_PS_PAREN_PROC 11 1030#define wxSTC_PS_TEXT 12 1031#define wxSTC_PS_HEXSTRING 13 1032#define wxSTC_PS_BASE85STRING 14 1033#define wxSTC_PS_BADSTRINGCHAR 15 1034 1035// Lexical states for SCLEX_NSIS 1036#define wxSTC_NSIS_DEFAULT 0 1037#define wxSTC_NSIS_COMMENT 1 1038#define wxSTC_NSIS_STRINGDQ 2 1039#define wxSTC_NSIS_STRINGLQ 3 1040#define wxSTC_NSIS_STRINGRQ 4 1041#define wxSTC_NSIS_FUNCTION 5 1042#define wxSTC_NSIS_VARIABLE 6 1043#define wxSTC_NSIS_LABEL 7 1044#define wxSTC_NSIS_USERDEFINED 8 1045#define wxSTC_NSIS_SECTIONDEF 9 1046#define wxSTC_NSIS_SUBSECTIONDEF 10 1047#define wxSTC_NSIS_IFDEFINEDEF 11 1048#define wxSTC_NSIS_MACRODEF 12 1049#define wxSTC_NSIS_STRINGVAR 13 1050#define wxSTC_NSIS_NUMBER 14 1051#define wxSTC_NSIS_SECTIONGROUP 15 1052#define wxSTC_NSIS_PAGEEX 16 1053#define wxSTC_NSIS_FUNCTIONDEF 17 1054#define wxSTC_NSIS_COMMENTBOX 18 1055 1056// Lexical states for SCLEX_MMIXAL 1057#define wxSTC_MMIXAL_LEADWS 0 1058#define wxSTC_MMIXAL_COMMENT 1 1059#define wxSTC_MMIXAL_LABEL 2 1060#define wxSTC_MMIXAL_OPCODE 3 1061#define wxSTC_MMIXAL_OPCODE_PRE 4 1062#define wxSTC_MMIXAL_OPCODE_VALID 5 1063#define wxSTC_MMIXAL_OPCODE_UNKNOWN 6 1064#define wxSTC_MMIXAL_OPCODE_POST 7 1065#define wxSTC_MMIXAL_OPERANDS 8 1066#define wxSTC_MMIXAL_NUMBER 9 1067#define wxSTC_MMIXAL_REF 10 1068#define wxSTC_MMIXAL_CHAR 11 1069#define wxSTC_MMIXAL_STRING 12 1070#define wxSTC_MMIXAL_REGISTER 13 1071#define wxSTC_MMIXAL_HEX 14 1072#define wxSTC_MMIXAL_OPERATOR 15 1073#define wxSTC_MMIXAL_SYMBOL 16 1074#define wxSTC_MMIXAL_INCLUDE 17 1075 1076// Lexical states for SCLEX_CLW 1077#define wxSTC_CLW_DEFAULT 0 1078#define wxSTC_CLW_LABEL 1 1079#define wxSTC_CLW_COMMENT 2 1080#define wxSTC_CLW_STRING 3 1081#define wxSTC_CLW_USER_IDENTIFIER 4 1082#define wxSTC_CLW_INTEGER_CONSTANT 5 1083#define wxSTC_CLW_REAL_CONSTANT 6 1084#define wxSTC_CLW_PICTURE_STRING 7 1085#define wxSTC_CLW_KEYWORD 8 1086#define wxSTC_CLW_COMPILER_DIRECTIVE 9 1087#define wxSTC_CLW_RUNTIME_EXPRESSIONS 10 1088#define wxSTC_CLW_BUILTIN_PROCEDURES_FUNCTION 11 1089#define wxSTC_CLW_STRUCTURE_DATA_TYPE 12 1090#define wxSTC_CLW_ATTRIBUTE 13 1091#define wxSTC_CLW_STANDARD_EQUATE 14 1092#define wxSTC_CLW_ERROR 15 1093#define wxSTC_CLW_DEPRECATED 16 1094 1095// Lexical states for SCLEX_LOT 1096#define wxSTC_LOT_DEFAULT 0 1097#define wxSTC_LOT_HEADER 1 1098#define wxSTC_LOT_BREAK 2 1099#define wxSTC_LOT_SET 3 1100#define wxSTC_LOT_PASS 4 1101#define wxSTC_LOT_FAIL 5 1102#define wxSTC_LOT_ABORT 6 1103 1104// Lexical states for SCLEX_YAML 1105#define wxSTC_YAML_DEFAULT 0 1106#define wxSTC_YAML_COMMENT 1 1107#define wxSTC_YAML_IDENTIFIER 2 1108#define wxSTC_YAML_KEYWORD 3 1109#define wxSTC_YAML_NUMBER 4 1110#define wxSTC_YAML_REFERENCE 5 1111#define wxSTC_YAML_DOCUMENT 6 1112#define wxSTC_YAML_TEXT 7 1113#define wxSTC_YAML_ERROR 8 1114 1115// Lexical states for SCLEX_TEX 1116#define wxSTC_TEX_DEFAULT 0 1117#define wxSTC_TEX_SPECIAL 1 1118#define wxSTC_TEX_GROUP 2 1119#define wxSTC_TEX_SYMBOL 3 1120#define wxSTC_TEX_COMMAND 4 1121#define wxSTC_TEX_TEXT 5 1122#define wxSTC_METAPOST_DEFAULT 0 1123#define wxSTC_METAPOST_SPECIAL 1 1124#define wxSTC_METAPOST_GROUP 2 1125#define wxSTC_METAPOST_SYMBOL 3 1126#define wxSTC_METAPOST_COMMAND 4 1127#define wxSTC_METAPOST_TEXT 5 1128#define wxSTC_METAPOST_EXTRA 6 1129 1130// Lexical states for SCLEX_ERLANG 1131#define wxSTC_ERLANG_DEFAULT 0 1132#define wxSTC_ERLANG_COMMENT 1 1133#define wxSTC_ERLANG_VARIABLE 2 1134#define wxSTC_ERLANG_NUMBER 3 1135#define wxSTC_ERLANG_KEYWORD 4 1136#define wxSTC_ERLANG_STRING 5 1137#define wxSTC_ERLANG_OPERATOR 6 1138#define wxSTC_ERLANG_ATOM 7 1139#define wxSTC_ERLANG_FUNCTION_NAME 8 1140#define wxSTC_ERLANG_CHARACTER 9 1141#define wxSTC_ERLANG_MACRO 10 1142#define wxSTC_ERLANG_RECORD 11 1143#define wxSTC_ERLANG_SEPARATOR 12 1144#define wxSTC_ERLANG_NODE_NAME 13 1145#define wxSTC_ERLANG_UNKNOWN 31 1146 1147// Lexical states for SCLEX_OCTAVE are identical to MatLab 1148// Lexical states for SCLEX_MSSQL 1149#define wxSTC_MSSQL_DEFAULT 0 1150#define wxSTC_MSSQL_COMMENT 1 1151#define wxSTC_MSSQL_LINE_COMMENT 2 1152#define wxSTC_MSSQL_NUMBER 3 1153#define wxSTC_MSSQL_STRING 4 1154#define wxSTC_MSSQL_OPERATOR 5 1155#define wxSTC_MSSQL_IDENTIFIER 6 1156#define wxSTC_MSSQL_VARIABLE 7 1157#define wxSTC_MSSQL_COLUMN_NAME 8 1158#define wxSTC_MSSQL_STATEMENT 9 1159#define wxSTC_MSSQL_DATATYPE 10 1160#define wxSTC_MSSQL_SYSTABLE 11 1161#define wxSTC_MSSQL_GLOBAL_VARIABLE 12 1162#define wxSTC_MSSQL_FUNCTION 13 1163#define wxSTC_MSSQL_STORED_PROCEDURE 14 1164#define wxSTC_MSSQL_DEFAULT_PREF_DATATYPE 15 1165#define wxSTC_MSSQL_COLUMN_NAME_2 16 1166 1167// Lexical states for SCLEX_VERILOG 1168#define wxSTC_V_DEFAULT 0 1169#define wxSTC_V_COMMENT 1 1170#define wxSTC_V_COMMENTLINE 2 1171#define wxSTC_V_COMMENTLINEBANG 3 1172#define wxSTC_V_NUMBER 4 1173#define wxSTC_V_WORD 5 1174#define wxSTC_V_STRING 6 1175#define wxSTC_V_WORD2 7 1176#define wxSTC_V_WORD3 8 1177#define wxSTC_V_PREPROCESSOR 9 1178#define wxSTC_V_OPERATOR 10 1179#define wxSTC_V_IDENTIFIER 11 1180#define wxSTC_V_STRINGEOL 12 1181#define wxSTC_V_USER 19 1182 1183// Lexical states for SCLEX_KIX 1184#define wxSTC_KIX_DEFAULT 0 1185#define wxSTC_KIX_COMMENT 1 1186#define wxSTC_KIX_STRING1 2 1187#define wxSTC_KIX_STRING2 3 1188#define wxSTC_KIX_NUMBER 4 1189#define wxSTC_KIX_VAR 5 1190#define wxSTC_KIX_MACRO 6 1191#define wxSTC_KIX_KEYWORD 7 1192#define wxSTC_KIX_FUNCTIONS 8 1193#define wxSTC_KIX_OPERATOR 9 1194#define wxSTC_KIX_IDENTIFIER 31 1195 1196// Lexical states for SCLEX_GUI4CLI 1197#define wxSTC_GC_DEFAULT 0 1198#define wxSTC_GC_COMMENTLINE 1 1199#define wxSTC_GC_COMMENTBLOCK 2 1200#define wxSTC_GC_GLOBAL 3 1201#define wxSTC_GC_EVENT 4 1202#define wxSTC_GC_ATTRIBUTE 5 1203#define wxSTC_GC_CONTROL 6 1204#define wxSTC_GC_COMMAND 7 1205#define wxSTC_GC_STRING 8 1206#define wxSTC_GC_OPERATOR 9 1207 1208// Lexical states for SCLEX_SPECMAN 1209#define wxSTC_SN_DEFAULT 0 1210#define wxSTC_SN_CODE 1 1211#define wxSTC_SN_COMMENTLINE 2 1212#define wxSTC_SN_COMMENTLINEBANG 3 1213#define wxSTC_SN_NUMBER 4 1214#define wxSTC_SN_WORD 5 1215#define wxSTC_SN_STRING 6 1216#define wxSTC_SN_WORD2 7 1217#define wxSTC_SN_WORD3 8 1218#define wxSTC_SN_PREPROCESSOR 9 1219#define wxSTC_SN_OPERATOR 10 1220#define wxSTC_SN_IDENTIFIER 11 1221#define wxSTC_SN_STRINGEOL 12 1222#define wxSTC_SN_REGEXTAG 13 1223#define wxSTC_SN_SIGNAL 14 1224#define wxSTC_SN_USER 19 1225 1226// Lexical states for SCLEX_AU3 1227#define wxSTC_AU3_DEFAULT 0 1228#define wxSTC_AU3_COMMENT 1 1229#define wxSTC_AU3_COMMENTBLOCK 2 1230#define wxSTC_AU3_NUMBER 3 1231#define wxSTC_AU3_FUNCTION 4 1232#define wxSTC_AU3_KEYWORD 5 1233#define wxSTC_AU3_MACRO 6 1234#define wxSTC_AU3_STRING 7 1235#define wxSTC_AU3_OPERATOR 8 1236#define wxSTC_AU3_VARIABLE 9 1237#define wxSTC_AU3_SENT 10 1238#define wxSTC_AU3_PREPROCESSOR 11 1239#define wxSTC_AU3_SPECIAL 12 1240#define wxSTC_AU3_EXPAND 13 1241#define wxSTC_AU3_COMOBJ 14 1242#define wxSTC_AU3_UDF 15 1243 1244// Lexical states for SCLEX_APDL 1245#define wxSTC_APDL_DEFAULT 0 1246#define wxSTC_APDL_COMMENT 1 1247#define wxSTC_APDL_COMMENTBLOCK 2 1248#define wxSTC_APDL_NUMBER 3 1249#define wxSTC_APDL_STRING 4 1250#define wxSTC_APDL_OPERATOR 5 1251#define wxSTC_APDL_WORD 6 1252#define wxSTC_APDL_PROCESSOR 7 1253#define wxSTC_APDL_COMMAND 8 1254#define wxSTC_APDL_SLASHCOMMAND 9 1255#define wxSTC_APDL_STARCOMMAND 10 1256#define wxSTC_APDL_ARGUMENT 11 1257#define wxSTC_APDL_FUNCTION 12 1258 1259// Lexical states for SCLEX_BASH 1260#define wxSTC_SH_DEFAULT 0 1261#define wxSTC_SH_ERROR 1 1262#define wxSTC_SH_COMMENTLINE 2 1263#define wxSTC_SH_NUMBER 3 1264#define wxSTC_SH_WORD 4 1265#define wxSTC_SH_STRING 5 1266#define wxSTC_SH_CHARACTER 6 1267#define wxSTC_SH_OPERATOR 7 1268#define wxSTC_SH_IDENTIFIER 8 1269#define wxSTC_SH_SCALAR 9 1270#define wxSTC_SH_PARAM 10 1271#define wxSTC_SH_BACKTICKS 11 1272#define wxSTC_SH_HERE_DELIM 12 1273#define wxSTC_SH_HERE_Q 13 1274 1275// Lexical states for SCLEX_ASN1 1276#define wxSTC_ASN1_DEFAULT 0 1277#define wxSTC_ASN1_COMMENT 1 1278#define wxSTC_ASN1_IDENTIFIER 2 1279#define wxSTC_ASN1_STRING 3 1280#define wxSTC_ASN1_OID 4 1281#define wxSTC_ASN1_SCALAR 5 1282#define wxSTC_ASN1_KEYWORD 6 1283#define wxSTC_ASN1_ATTRIBUTE 7 1284#define wxSTC_ASN1_DESCRIPTOR 8 1285#define wxSTC_ASN1_TYPE 9 1286#define wxSTC_ASN1_OPERATOR 10 1287 1288// Lexical states for SCLEX_VHDL 1289#define wxSTC_VHDL_DEFAULT 0 1290#define wxSTC_VHDL_COMMENT 1 1291#define wxSTC_VHDL_COMMENTLINEBANG 2 1292#define wxSTC_VHDL_NUMBER 3 1293#define wxSTC_VHDL_STRING 4 1294#define wxSTC_VHDL_OPERATOR 5 1295#define wxSTC_VHDL_IDENTIFIER 6 1296#define wxSTC_VHDL_STRINGEOL 7 1297#define wxSTC_VHDL_KEYWORD 8 1298#define wxSTC_VHDL_STDOPERATOR 9 1299#define wxSTC_VHDL_ATTRIBUTE 10 1300#define wxSTC_VHDL_STDFUNCTION 11 1301#define wxSTC_VHDL_STDPACKAGE 12 1302#define wxSTC_VHDL_STDTYPE 13 1303#define wxSTC_VHDL_USERWORD 14 1304 1305// Lexical states for SCLEX_CAML 1306#define wxSTC_CAML_DEFAULT 0 1307#define wxSTC_CAML_IDENTIFIER 1 1308#define wxSTC_CAML_TAGNAME 2 1309#define wxSTC_CAML_KEYWORD 3 1310#define wxSTC_CAML_KEYWORD2 4 1311#define wxSTC_CAML_KEYWORD3 5 1312#define wxSTC_CAML_LINENUM 6 1313#define wxSTC_CAML_OPERATOR 7 1314#define wxSTC_CAML_NUMBER 8 1315#define wxSTC_CAML_CHAR 9 1316#define wxSTC_CAML_STRING 11 1317#define wxSTC_CAML_COMMENT 12 1318#define wxSTC_CAML_COMMENT1 13 1319#define wxSTC_CAML_COMMENT2 14 1320#define wxSTC_CAML_COMMENT3 15 1321 1322// Lexical states for SCLEX_HASKELL 1323#define wxSTC_HA_DEFAULT 0 1324#define wxSTC_HA_IDENTIFIER 1 1325#define wxSTC_HA_KEYWORD 2 1326#define wxSTC_HA_NUMBER 3 1327#define wxSTC_HA_STRING 4 1328#define wxSTC_HA_CHARACTER 5 1329#define wxSTC_HA_CLASS 6 1330#define wxSTC_HA_MODULE 7 1331#define wxSTC_HA_CAPITAL 8 1332#define wxSTC_HA_DATA 9 1333#define wxSTC_HA_IMPORT 10 1334#define wxSTC_HA_OPERATOR 11 1335#define wxSTC_HA_INSTANCE 12 1336#define wxSTC_HA_COMMENTLINE 13 1337#define wxSTC_HA_COMMENTBLOCK 14 1338#define wxSTC_HA_COMMENTBLOCK2 15 1339#define wxSTC_HA_COMMENTBLOCK3 16 1340 1341// Lexical states of SCLEX_TADS3 1342#define wxSTC_T3_DEFAULT 0 1343#define wxSTC_T3_X_DEFAULT 1 1344#define wxSTC_T3_PREPROCESSOR 2 1345#define wxSTC_T3_BLOCK_COMMENT 3 1346#define wxSTC_T3_LINE_COMMENT 4 1347#define wxSTC_T3_OPERATOR 5 1348#define wxSTC_T3_KEYWORD 6 1349#define wxSTC_T3_NUMBER 7 1350#define wxSTC_T3_IDENTIFIER 8 1351#define wxSTC_T3_S_STRING 9 1352#define wxSTC_T3_D_STRING 10 1353#define wxSTC_T3_X_STRING 11 1354#define wxSTC_T3_LIB_DIRECTIVE 12 1355#define wxSTC_T3_MSG_PARAM 13 1356#define wxSTC_T3_HTML_TAG 14 1357#define wxSTC_T3_HTML_DEFAULT 15 1358#define wxSTC_T3_HTML_STRING 16 1359#define wxSTC_T3_USER1 17 1360#define wxSTC_T3_USER2 18 1361#define wxSTC_T3_USER3 19 1362 1363// Lexical states for SCLEX_REBOL 1364#define wxSTC_REBOL_DEFAULT 0 1365#define wxSTC_REBOL_COMMENTLINE 1 1366#define wxSTC_REBOL_COMMENTBLOCK 2 1367#define wxSTC_REBOL_PREFACE 3 1368#define wxSTC_REBOL_OPERATOR 4 1369#define wxSTC_REBOL_CHARACTER 5 1370#define wxSTC_REBOL_QUOTEDSTRING 6 1371#define wxSTC_REBOL_BRACEDSTRING 7 1372#define wxSTC_REBOL_NUMBER 8 1373#define wxSTC_REBOL_PAIR 9 1374#define wxSTC_REBOL_TUPLE 10 1375#define wxSTC_REBOL_BINARY 11 1376#define wxSTC_REBOL_MONEY 12 1377#define wxSTC_REBOL_ISSUE 13 1378#define wxSTC_REBOL_TAG 14 1379#define wxSTC_REBOL_FILE 15 1380#define wxSTC_REBOL_EMAIL 16 1381#define wxSTC_REBOL_URL 17 1382#define wxSTC_REBOL_DATE 18 1383#define wxSTC_REBOL_TIME 19 1384#define wxSTC_REBOL_IDENTIFIER 20 1385#define wxSTC_REBOL_WORD 21 1386#define wxSTC_REBOL_WORD2 22 1387#define wxSTC_REBOL_WORD3 23 1388#define wxSTC_REBOL_WORD4 24 1389#define wxSTC_REBOL_WORD5 25 1390#define wxSTC_REBOL_WORD6 26 1391#define wxSTC_REBOL_WORD7 27 1392#define wxSTC_REBOL_WORD8 28 1393 1394// Lexical states for SCLEX_SQL 1395#define wxSTC_SQL_DEFAULT 0 1396#define wxSTC_SQL_COMMENT 1 1397#define wxSTC_SQL_COMMENTLINE 2 1398#define wxSTC_SQL_COMMENTDOC 3 1399#define wxSTC_SQL_NUMBER 4 1400#define wxSTC_SQL_WORD 5 1401#define wxSTC_SQL_STRING 6 1402#define wxSTC_SQL_CHARACTER 7 1403#define wxSTC_SQL_SQLPLUS 8 1404#define wxSTC_SQL_SQLPLUS_PROMPT 9 1405#define wxSTC_SQL_OPERATOR 10 1406#define wxSTC_SQL_IDENTIFIER 11 1407#define wxSTC_SQL_SQLPLUS_COMMENT 13 1408#define wxSTC_SQL_COMMENTLINEDOC 15 1409#define wxSTC_SQL_WORD2 16 1410#define wxSTC_SQL_COMMENTDOCKEYWORD 17 1411#define wxSTC_SQL_COMMENTDOCKEYWORDERROR 18 1412#define wxSTC_SQL_USER1 19 1413#define wxSTC_SQL_USER2 20 1414#define wxSTC_SQL_USER3 21 1415#define wxSTC_SQL_USER4 22 1416#define wxSTC_SQL_QUOTEDIDENTIFIER 23 1417 1418// Lexical states for SCLEX_SMALLTALK 1419#define wxSTC_ST_DEFAULT 0 1420#define wxSTC_ST_STRING 1 1421#define wxSTC_ST_NUMBER 2 1422#define wxSTC_ST_COMMENT 3 1423#define wxSTC_ST_SYMBOL 4 1424#define wxSTC_ST_BINARY 5 1425#define wxSTC_ST_BOOL 6 1426#define wxSTC_ST_SELF 7 1427#define wxSTC_ST_SUPER 8 1428#define wxSTC_ST_NIL 9 1429#define wxSTC_ST_GLOBAL 10 1430#define wxSTC_ST_RETURN 11 1431#define wxSTC_ST_SPECIAL 12 1432#define wxSTC_ST_KWSEND 13 1433#define wxSTC_ST_ASSIGN 14 1434#define wxSTC_ST_CHARACTER 15 1435#define wxSTC_ST_SPEC_SEL 16 1436 1437// Lexical states for SCLEX_FLAGSHIP (clipper) 1438#define wxSTC_FS_DEFAULT 0 1439#define wxSTC_FS_COMMENT 1 1440#define wxSTC_FS_COMMENTLINE 2 1441#define wxSTC_FS_COMMENTDOC 3 1442#define wxSTC_FS_COMMENTLINEDOC 4 1443#define wxSTC_FS_COMMENTDOCKEYWORD 5 1444#define wxSTC_FS_COMMENTDOCKEYWORDERROR 6 1445#define wxSTC_FS_KEYWORD 7 1446#define wxSTC_FS_KEYWORD2 8 1447#define wxSTC_FS_KEYWORD3 9 1448#define wxSTC_FS_KEYWORD4 10 1449#define wxSTC_FS_NUMBER 11 1450#define wxSTC_FS_STRING 12 1451#define wxSTC_FS_PREPROCESSOR 13 1452#define wxSTC_FS_OPERATOR 14 1453#define wxSTC_FS_IDENTIFIER 15 1454#define wxSTC_FS_DATE 16 1455#define wxSTC_FS_STRINGEOL 17 1456#define wxSTC_FS_CONSTANT 18 1457#define wxSTC_FS_ASM 19 1458#define wxSTC_FS_LABEL 20 1459#define wxSTC_FS_ERROR 21 1460#define wxSTC_FS_HEXNUMBER 22 1461#define wxSTC_FS_BINNUMBER 23 1462 1463// Lexical states for SCLEX_CSOUND 1464#define wxSTC_CSOUND_DEFAULT 0 1465#define wxSTC_CSOUND_COMMENT 1 1466#define wxSTC_CSOUND_NUMBER 2 1467#define wxSTC_CSOUND_OPERATOR 3 1468#define wxSTC_CSOUND_INSTR 4 1469#define wxSTC_CSOUND_IDENTIFIER 5 1470#define wxSTC_CSOUND_OPCODE 6 1471#define wxSTC_CSOUND_HEADERSTMT 7 1472#define wxSTC_CSOUND_USERKEYWORD 8 1473#define wxSTC_CSOUND_COMMENTBLOCK 9 1474#define wxSTC_CSOUND_PARAM 10 1475#define wxSTC_CSOUND_ARATE_VAR 11 1476#define wxSTC_CSOUND_KRATE_VAR 12 1477#define wxSTC_CSOUND_IRATE_VAR 13 1478#define wxSTC_CSOUND_GLOBAL_VAR 14 1479#define wxSTC_CSOUND_STRINGEOL 15 1480 1481// Lexical states for SCLEX_INNOSETUP 1482#define wxSTC_INNO_DEFAULT 0 1483#define wxSTC_INNO_COMMENT 1 1484#define wxSTC_INNO_KEYWORD 2 1485#define wxSTC_INNO_PARAMETER 3 1486#define wxSTC_INNO_SECTION 4 1487#define wxSTC_INNO_PREPROC 5 1488#define wxSTC_INNO_PREPROC_INLINE 6 1489#define wxSTC_INNO_COMMENT_PASCAL 7 1490#define wxSTC_INNO_KEYWORD_PASCAL 8 1491#define wxSTC_INNO_KEYWORD_USER 9 1492#define wxSTC_INNO_STRING_DOUBLE 10 1493#define wxSTC_INNO_STRING_SINGLE 11 1494#define wxSTC_INNO_IDENTIFIER 12 1495 1496// Lexical states for SCLEX_OPAL 1497#define wxSTC_OPAL_SPACE 0 1498#define wxSTC_OPAL_COMMENT_BLOCK 1 1499#define wxSTC_OPAL_COMMENT_LINE 2 1500#define wxSTC_OPAL_INTEGER 3 1501#define wxSTC_OPAL_KEYWORD 4 1502#define wxSTC_OPAL_SORT 5 1503#define wxSTC_OPAL_STRING 6 1504#define wxSTC_OPAL_PAR 7 1505#define wxSTC_OPAL_BOOL_CONST 8 1506#define wxSTC_OPAL_DEFAULT 32 1507 1508// Lexical states for SCLEX_SPICE 1509#define wxSTC_SPICE_DEFAULT 0 1510#define wxSTC_SPICE_IDENTIFIER 1 1511#define wxSTC_SPICE_KEYWORD 2 1512#define wxSTC_SPICE_KEYWORD2 3 1513#define wxSTC_SPICE_KEYWORD3 4 1514#define wxSTC_SPICE_NUMBER 5 1515#define wxSTC_SPICE_DELIMITER 6 1516#define wxSTC_SPICE_VALUE 7 1517#define wxSTC_SPICE_COMMENTLINE 8 1518 1519 1520//----------------------------------------- 1521// Commands that can be bound to keystrokes 1522 1523 1524// Redoes the next action on the undo history. 1525#define wxSTC_CMD_REDO 2011 1526 1527// Select all the text in the document. 1528#define wxSTC_CMD_SELECTALL 2013 1529 1530// Undo one action in the undo history. 1531#define wxSTC_CMD_UNDO 2176 1532 1533// Cut the selection to the clipboard. 1534#define wxSTC_CMD_CUT 2177 1535 1536// Copy the selection to the clipboard. 1537#define wxSTC_CMD_COPY 2178 1538 1539// Paste the contents of the clipboard into the document replacing the selection. 1540#define wxSTC_CMD_PASTE 2179 1541 1542// Clear the selection. 1543#define wxSTC_CMD_CLEAR 2180 1544 1545// Move caret down one line. 1546#define wxSTC_CMD_LINEDOWN 2300 1547 1548// Move caret down one line extending selection to new caret position. 1549#define wxSTC_CMD_LINEDOWNEXTEND 2301 1550 1551// Move caret up one line. 1552#define wxSTC_CMD_LINEUP 2302 1553 1554// Move caret up one line extending selection to new caret position. 1555#define wxSTC_CMD_LINEUPEXTEND 2303 1556 1557// Move caret left one character. 1558#define wxSTC_CMD_CHARLEFT 2304 1559 1560// Move caret left one character extending selection to new caret position. 1561#define wxSTC_CMD_CHARLEFTEXTEND 2305 1562 1563// Move caret right one character. 1564#define wxSTC_CMD_CHARRIGHT 2306 1565 1566// Move caret right one character extending selection to new caret position. 1567#define wxSTC_CMD_CHARRIGHTEXTEND 2307 1568 1569// Move caret left one word. 1570#define wxSTC_CMD_WORDLEFT 2308 1571 1572// Move caret left one word extending selection to new caret position. 1573#define wxSTC_CMD_WORDLEFTEXTEND 2309 1574 1575// Move caret right one word. 1576#define wxSTC_CMD_WORDRIGHT 2310 1577 1578// Move caret right one word extending selection to new caret position. 1579#define wxSTC_CMD_WORDRIGHTEXTEND 2311 1580 1581// Move caret to first position on line. 1582#define wxSTC_CMD_HOME 2312 1583 1584// Move caret to first position on line extending selection to new caret position. 1585#define wxSTC_CMD_HOMEEXTEND 2313 1586 1587// Move caret to last position on line. 1588#define wxSTC_CMD_LINEEND 2314 1589 1590// Move caret to last position on line extending selection to new caret position. 1591#define wxSTC_CMD_LINEENDEXTEND 2315 1592 1593// Move caret to first position in document. 1594#define wxSTC_CMD_DOCUMENTSTART 2316 1595 1596// Move caret to first position in document extending selection to new caret position. 1597#define wxSTC_CMD_DOCUMENTSTARTEXTEND 2317 1598 1599// Move caret to last position in document. 1600#define wxSTC_CMD_DOCUMENTEND 2318 1601 1602// Move caret to last position in document extending selection to new caret position. 1603#define wxSTC_CMD_DOCUMENTENDEXTEND 2319 1604 1605// Move caret one page up. 1606#define wxSTC_CMD_PAGEUP 2320 1607 1608// Move caret one page up extending selection to new caret position. 1609#define wxSTC_CMD_PAGEUPEXTEND 2321 1610 1611// Move caret one page down. 1612#define wxSTC_CMD_PAGEDOWN 2322 1613 1614// Move caret one page down extending selection to new caret position. 1615#define wxSTC_CMD_PAGEDOWNEXTEND 2323 1616 1617// Switch from insert to overtype mode or the reverse. 1618#define wxSTC_CMD_EDITTOGGLEOVERTYPE 2324 1619 1620// Cancel any modes such as call tip or auto-completion list display. 1621#define wxSTC_CMD_CANCEL 2325 1622 1623// Delete the selection or if no selection, the character before the caret. 1624#define wxSTC_CMD_DELETEBACK 2326 1625 1626// If selection is empty or all on one line replace the selection with a tab character. 1627// If more than one line selected, indent the lines. 1628#define wxSTC_CMD_TAB 2327 1629 1630// Dedent the selected lines. 1631#define wxSTC_CMD_BACKTAB 2328 1632 1633// Insert a new line, may use a CRLF, CR or LF depending on EOL mode. 1634#define wxSTC_CMD_NEWLINE 2329 1635 1636// Insert a Form Feed character. 1637#define wxSTC_CMD_FORMFEED 2330 1638 1639// Move caret to before first visible character on line. 1640// If already there move to first character on line. 1641#define wxSTC_CMD_VCHOME 2331 1642 1643// Like VCHome but extending selection to new caret position. 1644#define wxSTC_CMD_VCHOMEEXTEND 2332 1645 1646// Magnify the displayed text by increasing the sizes by 1 point. 1647#define wxSTC_CMD_ZOOMIN 2333 1648 1649// Make the displayed text smaller by decreasing the sizes by 1 point. 1650#define wxSTC_CMD_ZOOMOUT 2334 1651 1652// Delete the word to the left of the caret. 1653#define wxSTC_CMD_DELWORDLEFT 2335 1654 1655// Delete the word to the right of the caret. 1656#define wxSTC_CMD_DELWORDRIGHT 2336 1657 1658// Cut the line containing the caret. 1659#define wxSTC_CMD_LINECUT 2337 1660 1661// Delete the line containing the caret. 1662#define wxSTC_CMD_LINEDELETE 2338 1663 1664// Switch the current line with the previous. 1665#define wxSTC_CMD_LINETRANSPOSE 2339 1666 1667// Duplicate the current line. 1668#define wxSTC_CMD_LINEDUPLICATE 2404 1669 1670// Transform the selection to lower case. 1671#define wxSTC_CMD_LOWERCASE 2340 1672 1673// Transform the selection to upper case. 1674#define wxSTC_CMD_UPPERCASE 2341 1675 1676// Scroll the document down, keeping the caret visible. 1677#define wxSTC_CMD_LINESCROLLDOWN 2342 1678 1679// Scroll the document up, keeping the caret visible. 1680#define wxSTC_CMD_LINESCROLLUP 2343 1681 1682// Delete the selection or if no selection, the character before the caret. 1683// Will not delete the character before at the start of a line. 1684#define wxSTC_CMD_DELETEBACKNOTLINE 2344 1685 1686// Move caret to first position on display line. 1687#define wxSTC_CMD_HOMEDISPLAY 2345 1688 1689// Move caret to first position on display line extending selection to 1690// new caret position. 1691#define wxSTC_CMD_HOMEDISPLAYEXTEND 2346 1692 1693// Move caret to last position on display line. 1694#define wxSTC_CMD_LINEENDDISPLAY 2347 1695 1696// Move caret to last position on display line extending selection to new 1697// caret position. 1698#define wxSTC_CMD_LINEENDDISPLAYEXTEND 2348 1699 1700// These are like their namesakes Home(Extend)?, LineEnd(Extend)?, VCHome(Extend)? 1701// except they behave differently when word-wrap is enabled: 1702// They go first to the start / end of the display line, like (Home|LineEnd)Display 1703// The difference is that, the cursor is already at the point, it goes on to the start 1704// or end of the document line, as appropriate for (Home|LineEnd|VCHome)(Extend)?. 1705#define wxSTC_CMD_HOMEWRAP 2349 1706#define wxSTC_CMD_HOMEWRAPEXTEND 2450 1707#define wxSTC_CMD_LINEENDWRAP 2451 1708#define wxSTC_CMD_LINEENDWRAPEXTEND 2452 1709#define wxSTC_CMD_VCHOMEWRAP 2453 1710#define wxSTC_CMD_VCHOMEWRAPEXTEND 2454 1711 1712// Copy the line containing the caret. 1713#define wxSTC_CMD_LINECOPY 2455 1714 1715// Move to the previous change in capitalisation. 1716#define wxSTC_CMD_WORDPARTLEFT 2390 1717 1718// Move to the previous change in capitalisation extending selection 1719// to new caret position. 1720#define wxSTC_CMD_WORDPARTLEFTEXTEND 2391 1721 1722// Move to the change next in capitalisation. 1723#define wxSTC_CMD_WORDPARTRIGHT 2392 1724 1725// Move to the next change in capitalisation extending selection 1726// to new caret position. 1727#define wxSTC_CMD_WORDPARTRIGHTEXTEND 2393 1728 1729// Delete back from the current position to the start of the line. 1730#define wxSTC_CMD_DELLINELEFT 2395 1731 1732// Delete forwards from the current position to the end of the line. 1733#define wxSTC_CMD_DELLINERIGHT 2396 1734 1735// Move caret between paragraphs (delimited by empty lines). 1736#define wxSTC_CMD_PARADOWN 2413 1737#define wxSTC_CMD_PARADOWNEXTEND 2414 1738#define wxSTC_CMD_PARAUP 2415 1739#define wxSTC_CMD_PARAUPEXTEND 2416 1740 1741// Move caret down one line, extending rectangular selection to new caret position. 1742#define wxSTC_CMD_LINEDOWNRECTEXTEND 2426 1743 1744// Move caret up one line, extending rectangular selection to new caret position. 1745#define wxSTC_CMD_LINEUPRECTEXTEND 2427 1746 1747// Move caret left one character, extending rectangular selection to new caret position. 1748#define wxSTC_CMD_CHARLEFTRECTEXTEND 2428 1749 1750// Move caret right one character, extending rectangular selection to new caret position. 1751#define wxSTC_CMD_CHARRIGHTRECTEXTEND 2429 1752 1753// Move caret to first position on line, extending rectangular selection to new caret position. 1754#define wxSTC_CMD_HOMERECTEXTEND 2430 1755 1756// Move caret to before first visible character on line. 1757// If already there move to first character on line. 1758// In either case, extend rectangular selection to new caret position. 1759#define wxSTC_CMD_VCHOMERECTEXTEND 2431 1760 1761// Move caret to last position on line, extending rectangular selection to new caret position. 1762#define wxSTC_CMD_LINEENDRECTEXTEND 2432 1763 1764// Move caret one page up, extending rectangular selection to new caret position. 1765#define wxSTC_CMD_PAGEUPRECTEXTEND 2433 1766 1767// Move caret one page down, extending rectangular selection to new caret position. 1768#define wxSTC_CMD_PAGEDOWNRECTEXTEND 2434 1769 1770// Move caret to top of page, or one page up if already at top of page. 1771#define wxSTC_CMD_STUTTEREDPAGEUP 2435 1772 1773// Move caret to top of page, or one page up if already at top of page, extending selection to new caret position. 1774#define wxSTC_CMD_STUTTEREDPAGEUPEXTEND 2436 1775 1776// Move caret to bottom of page, or one page down if already at bottom of page. 1777#define wxSTC_CMD_STUTTEREDPAGEDOWN 2437 1778 1779// Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position. 1780#define wxSTC_CMD_STUTTEREDPAGEDOWNEXTEND 2438 1781 1782// Move caret left one word, position cursor at end of word. 1783#define wxSTC_CMD_WORDLEFTEND 2439 1784 1785// Move caret left one word, position cursor at end of word, extending selection to new caret position. 1786#define wxSTC_CMD_WORDLEFTENDEXTEND 2440 1787 1788// Move caret right one word, position cursor at end of word. 1789#define wxSTC_CMD_WORDRIGHTEND 2441 1790 1791// Move caret right one word, position cursor at end of word, extending selection to new caret position. 1792#define wxSTC_CMD_WORDRIGHTENDEXTEND 2442 1793 1794 1795// END of generated section 1796//---------------------------------------------------------------------- 1797 1798class ScintillaWX; // forward declare 1799class WordList; 1800struct SCNotification; 1801 1802#ifndef SWIG 1803extern WXDLLIMPEXP_STC const wxChar* wxSTCNameStr; 1804class WXDLLIMPEXP_STC wxStyledTextCtrl; 1805class WXDLLIMPEXP_STC wxStyledTextEvent; 1806#endif 1807 1808//---------------------------------------------------------------------- 1809 1810class WXDLLIMPEXP_STC wxStyledTextCtrl : public wxControl { 1811public: 1812 1813#ifdef SWIG 1814 %pythonAppend wxStyledTextCtrl "self._setOORInfo(self)" 1815 %pythonAppend wxStyledTextCtrl() "" 1816 1817 wxStyledTextCtrl(wxWindow *parent, wxWindowID id=wxID_ANY, 1818 const wxPoint& pos = wxDefaultPosition, 1819 const wxSize& size = wxDefaultSize, long style = 0, 1820 const wxString& name = wxPySTCNameStr); 1821 %RenameCtor(PreStyledTextCtrl, wxStyledTextCtrl()); 1822 1823#else 1824 wxStyledTextCtrl(wxWindow *parent, wxWindowID id=wxID_ANY, 1825 const wxPoint& pos = wxDefaultPosition, 1826 const wxSize& size = wxDefaultSize, long style = 0, 1827 const wxString& name = wxSTCNameStr); 1828 wxStyledTextCtrl() { m_swx = NULL; } 1829 ~wxStyledTextCtrl(); 1830 1831#endif 1832 1833 bool Create(wxWindow *parent, wxWindowID id=wxID_ANY, 1834 const wxPoint& pos = wxDefaultPosition, 1835 const wxSize& size = wxDefaultSize, long style = 0, 1836 const wxString& name = wxSTCNameStr); 1837 1838 1839//---------------------------------------------------------------------- 1840// BEGIN generated section. The following code is automatically generated 1841// by gen_iface.py. Do not edit this file. Edit stc.h.in instead 1842// and regenerate 1843 1844 1845 // Add text to the document at current position. 1846 void AddText(const wxString& text); 1847 1848 // Add array of cells to document. 1849 void AddStyledText(const wxMemoryBuffer& data); 1850 1851 // Insert string at a position. 1852 void InsertText(int pos, const wxString& text); 1853 1854 // Delete all text in the document. 1855 void ClearAll(); 1856 1857 // Set all style bytes to 0, remove all folding information. 1858 void ClearDocumentStyle(); 1859 1860 // Returns the number of characters in the document. 1861 int GetLength(); 1862 1863 // Returns the character byte at the position. 1864 int GetCharAt(int pos); 1865 1866 // Returns the position of the caret. 1867 int GetCurrentPos(); 1868 1869 // Returns the position of the opposite end of the selection to the caret. 1870 int GetAnchor(); 1871 1872 // Returns the style byte at the position. 1873 int GetStyleAt(int pos); 1874 1875 // Redoes the next action on the undo history. 1876 void Redo(); 1877 1878 // Choose between collecting actions into the undo 1879 // history and discarding them. 1880 void SetUndoCollection(bool collectUndo); 1881 1882 // Select all the text in the document. 1883 void SelectAll(); 1884 1885 // Remember the current position in the undo history as the position 1886 // at which the document was saved. 1887 void SetSavePoint(); 1888 1889 // Retrieve a buffer of cells. 1890 wxMemoryBuffer GetStyledText(int startPos, int endPos); 1891 1892 // Are there any redoable actions in the undo history? 1893 bool CanRedo(); 1894 1895 // Retrieve the line number at which a particular marker is located. 1896 int MarkerLineFromHandle(int handle); 1897 1898 // Delete a marker. 1899 void MarkerDeleteHandle(int handle); 1900 1901 // Is undo history being collected? 1902 bool GetUndoCollection(); 1903 1904 // Are white space characters currently visible? 1905 // Returns one of SCWS_* constants. 1906 int GetViewWhiteSpace(); 1907 1908 // Make white space characters invisible, always visible or visible outside indentation. 1909 void SetViewWhiteSpace(int viewWS); 1910 1911 // Find the position from a point within the window. 1912 int PositionFromPoint(wxPoint pt); 1913 1914 // Find the position from a point within the window but return 1915 // INVALID_POSITION if not close to text. 1916 int PositionFromPointClose(int x, int y); 1917 1918 // Set caret to start of a line and ensure it is visible. 1919 void GotoLine(int line); 1920 1921 // Set caret to a position and ensure it is visible. 1922 void GotoPos(int pos); 1923 1924 // Set the selection anchor to a position. The anchor is the opposite 1925 // end of the selection from the caret. 1926 void SetAnchor(int posAnchor); 1927 1928 // Retrieve the text of the line containing the caret. 1929 // Returns the index of the caret on the line. 1930 #ifdef SWIG 1931 wxString GetCurLine(int* OUTPUT); 1932#else 1933 wxString GetCurLine(int* linePos=NULL); 1934#endif 1935 1936 // Retrieve the position of the last correctly styled character. 1937 int GetEndStyled(); 1938 1939 // Convert all line endings in the document to one mode. 1940 void ConvertEOLs(int eolMode); 1941 1942 // Retrieve the current end of line mode - one of CRLF, CR, or LF. 1943 int GetEOLMode(); 1944 1945 // Set the current end of line mode. 1946 void SetEOLMode(int eolMode); 1947 1948 // Set the current styling position to pos and the styling mask to mask. 1949 // The styling mask can be used to protect some bits in each styling byte from modification. 1950 void StartStyling(int pos, int mask); 1951 1952 // Change style from current styling position for length characters to a style 1953 // and move the current styling position to after this newly styled segment. 1954 void SetStyling(int length, int style); 1955 1956 // Is drawing done first into a buffer or direct to the screen? 1957 bool GetBufferedDraw(); 1958 1959 // If drawing is buffered then each line of text is drawn into a bitmap buffer 1960 // before drawing it to the screen to avoid flicker. 1961 void SetBufferedDraw(bool buffered); 1962 1963 // Change the visible size of a tab to be a multiple of the width of a space character. 1964 void SetTabWidth(int tabWidth); 1965 1966 // Retrieve the visible size of a tab. 1967 int GetTabWidth(); 1968 1969 // Set the code page used to interpret the bytes of the document as characters. 1970 void SetCodePage(int codePage); 1971 1972 // Set the symbol used for a particular marker number, 1973 // and optionally the fore and background colours. 1974 void MarkerDefine(int markerNumber, int markerSymbol, 1975 const wxColour& foreground = wxNullColour, 1976 const wxColour& background = wxNullColour); 1977 1978 // Set the foreground colour used for a particular marker number. 1979 void MarkerSetForeground(int markerNumber, const wxColour& fore); 1980 1981 // Set the background colour used for a particular marker number. 1982 void MarkerSetBackground(int markerNumber, const wxColour& back); 1983 1984 // Add a marker to a line, returning an ID which can be used to find or delete the marker. 1985 int MarkerAdd(int line, int markerNumber); 1986 1987 // Delete a marker from a line. 1988 void MarkerDelete(int line, int markerNumber); 1989 1990 // Delete all markers with a particular number from all lines. 1991 void MarkerDeleteAll(int markerNumber); 1992 1993 // Get a bit mask of all the markers set on a line. 1994 int MarkerGet(int line); 1995 1996 // Find the next line after lineStart that includes a marker in mask. 1997 int MarkerNext(int lineStart, int markerMask); 1998 1999 // Find the previous line before lineStart that includes a marker in mask. 2000 int MarkerPrevious(int lineStart, int markerMask); 2001 2002 // Define a marker from a bitmap 2003 void MarkerDefineBitmap(int markerNumber, const wxBitmap& bmp); 2004 2005 // Add a set of markers to a line. 2006 void MarkerAddSet(int line, int set); 2007 2008 // Set the alpha used for a marker that is drawn in the text area, not the margin. 2009 void MarkerSetAlpha(int markerNumber, int alpha); 2010 2011 // Set a margin to be either numeric or symbolic. 2012 void SetMarginType(int margin, int marginType); 2013 2014 // Retrieve the type of a margin. 2015 int GetMarginType(int margin); 2016 2017 // Set the width of a margin to a width expressed in pixels. 2018 void SetMarginWidth(int margin, int pixelWidth); 2019 2020 // Retrieve the width of a margin in pixels. 2021 int GetMarginWidth(int margin); 2022 2023 // Set a mask that determines which markers are displayed in a margin. 2024 void SetMarginMask(int margin, int mask); 2025 2026 // Retrieve the marker mask of a margin. 2027 int GetMarginMask(int margin); 2028 2029 // Make a margin sensitive or insensitive to mouse clicks. 2030 void SetMarginSensitive(int margin, bool sensitive); 2031 2032 // Retrieve the mouse click sensitivity of a margin. 2033 bool GetMarginSensitive(int margin); 2034 2035 // Clear all the styles and make equivalent to the global default style. 2036 void StyleClearAll(); 2037 2038 // Set the foreground colour of a style. 2039 void StyleSetForeground(int style, const wxColour& fore); 2040 2041 // Set the background colour of a style. 2042 void StyleSetBackground(int style, const wxColour& back); 2043 2044 // Set a style to be bold or not. 2045 void StyleSetBold(int style, bool bold); 2046 2047 // Set a style to be italic or not. 2048 void StyleSetItalic(int style, bool italic); 2049 2050 // Set the size of characters of a style. 2051 void StyleSetSize(int style, int sizePoints); 2052 2053 // Set the font of a style. 2054 void StyleSetFaceName(int style, const wxString& fontName); 2055 2056 // Set a style to have its end of line filled or not. 2057 void StyleSetEOLFilled(int style, bool filled); 2058 2059 // Reset the default style to its state at startup 2060 void StyleResetDefault(); 2061 2062 // Set a style to be underlined or not. 2063 void StyleSetUnderline(int style, bool underline); 2064 2065 // Set a style to be mixed case, or to force upper or lower case. 2066 void StyleSetCase(int style, int caseForce); 2067 2068 // Set a style to be a hotspot or not. 2069 void StyleSetHotSpot(int style, bool hotspot); 2070 2071 // Set the foreground colour of the selection and whether to use this setting. 2072 void SetSelForeground(bool useSetting, const wxColour& fore); 2073 2074 // Set the background colour of the selection and whether to use this setting. 2075 void SetSelBackground(bool useSetting, const wxColour& back); 2076 2077 // Get the alpha of the selection. 2078 int GetSelAlpha(); 2079 2080 // Set the alpha of the selection. 2081 void SetSelAlpha(int alpha); 2082 2083 // Set the foreground colour of the caret. 2084 void SetCaretForeground(const wxColour& fore); 2085 2086 // When key+modifier combination km is pressed perform msg. 2087 void CmdKeyAssign(int key, int modifiers, int cmd); 2088 2089 // When key+modifier combination km is pressed do nothing. 2090 void CmdKeyClear(int key, int modifiers); 2091 2092 // Drop all key mappings. 2093 void CmdKeyClearAll(); 2094 2095 // Set the styles for a segment of the document. 2096 void SetStyleBytes(int length, char* styleBytes); 2097 2098 // Set a style to be visible or not. 2099 void StyleSetVisible(int style, bool visible); 2100 2101 // Get the time in milliseconds that the caret is on and off. 2102 int GetCaretPeriod(); 2103 2104 // Get the time in milliseconds that the caret is on and off. 0 = steady on. 2105 void SetCaretPeriod(int periodMilliseconds); 2106 2107 // Set the set of characters making up words for when moving or selecting by word. 2108 // First sets deaults like SetCharsDefault. 2109 void SetWordChars(const wxString& characters); 2110 2111 // Start a sequence of actions that is undone and redone as a unit. 2112 // May be nested. 2113 void BeginUndoAction(); 2114 2115 // End a sequence of actions that is undone and redone as a unit. 2116 void EndUndoAction(); 2117 2118 // Set an indicator to plain, squiggle or TT. 2119 void IndicatorSetStyle(int indic, int style); 2120 2121 // Retrieve the style of an indicator. 2122 int IndicatorGetStyle(int indic); 2123 2124 // Set the foreground colour of an indicator. 2125 void IndicatorSetForeground(int indic, const wxColour& fore); 2126 2127 // Retrieve the foreground colour of an indicator. 2128 wxColour IndicatorGetForeground(int indic); 2129 2130 // Set the foreground colour of all whitespace and whether to use this setting. 2131 void SetWhitespaceForeground(bool useSetting, const wxColour& fore); 2132 2133 // Set the background colour of all whitespace and whether to use this setting. 2134 void SetWhitespaceBackground(bool useSetting, const wxColour& back); 2135 2136 // Divide each styling byte into lexical class bits (default: 5) and indicator 2137 // bits (default: 3). If a lexer requires more than 32 lexical states, then this 2138 // is used to expand the possible states. 2139 void SetStyleBits(int bits); 2140 2141 // Retrieve number of bits in style bytes used to hold the lexical state. 2142 int GetStyleBits(); 2143 2144 // Used to hold extra styling information for each line. 2145 void SetLineState(int line, int state); 2146 2147 // Retrieve the extra styling information for a line. 2148 int GetLineState(int line); 2149 2150 // Retrieve the last line number that has line state. 2151 int GetMaxLineState(); 2152 2153 // Is the background of the line containing the caret in a different colour? 2154 bool GetCaretLineVisible(); 2155 2156 // Display the background of the line containing the caret in a different colour. 2157 void SetCaretLineVisible(bool show); 2158 2159 // Get the colour of the background of the line containing the caret. 2160 wxColour GetCaretLineBackground(); 2161 2162 // Set the colour of the background of the line containing the caret. 2163 void SetCaretLineBackground(const wxColour& back); 2164 2165 // Set a style to be changeable or not (read only). 2166 // Experimental feature, currently buggy. 2167 void StyleSetChangeable(int style, bool changeable); 2168 2169 // Display a auto-completion list. 2170 // The lenEntered parameter indicates how many characters before 2171 // the caret should be used to provide context. 2172 void AutoCompShow(int lenEntered, const wxString& itemList); 2173 2174 // Remove the auto-completion list from the screen. 2175 void AutoCompCancel(); 2176 2177 // Is there an auto-completion list visible? 2178 bool AutoCompActive(); 2179 2180 // Retrieve the position of the caret when the auto-completion list was displayed. 2181 int AutoCompPosStart(); 2182 2183 // User has selected an item so remove the list and insert the selection. 2184 void AutoCompComplete(); 2185 2186 // Define a set of character that when typed cancel the auto-completion list. 2187 void AutoCompStops(const wxString& characterSet); 2188 2189 // Change the separator character in the string setting up an auto-completion list. 2190 // Default is space but can be changed if items contain space. 2191 void AutoCompSetSeparator(int separatorCharacter); 2192 2193 // Retrieve the auto-completion list separator character. 2194 int AutoCompGetSeparator(); 2195 2196 // Select the item in the auto-completion list that starts with a string. 2197 void AutoCompSelect(const wxString& text); 2198 2199 // Should the auto-completion list be cancelled if the user backspaces to a 2200 // position before where the box was created. 2201 void AutoCompSetCancelAtStart(bool cancel); 2202 2203 // Retrieve whether auto-completion cancelled by backspacing before start. 2204 bool AutoCompGetCancelAtStart(); 2205 2206 // Define a set of characters that when typed will cause the autocompletion to 2207 // choose the selected item. 2208 void AutoCompSetFillUps(const wxString& characterSet); 2209 2210 // Should a single item auto-completion list automatically choose the item. 2211 void AutoCompSetChooseSingle(bool chooseSingle); 2212 2213 // Retrieve whether a single item auto-completion list automatically choose the item. 2214 bool AutoCompGetChooseSingle(); 2215 2216 // Set whether case is significant when performing auto-completion searches. 2217 void AutoCompSetIgnoreCase(bool ignoreCase); 2218 2219 // Retrieve state of ignore case flag. 2220 bool AutoCompGetIgnoreCase(); 2221 2222 // Display a list of strings and send notification when user chooses one. 2223 void UserListShow(int listType, const wxString& itemList); 2224 2225 // Set whether or not autocompletion is hidden automatically when nothing matches. 2226 void AutoCompSetAutoHide(bool autoHide); 2227 2228 // Retrieve whether or not autocompletion is hidden automatically when nothing matches. 2229 bool AutoCompGetAutoHide(); 2230 2231 // Set whether or not autocompletion deletes any word characters 2232 // after the inserted text upon completion. 2233 void AutoCompSetDropRestOfWord(bool dropRestOfWord); 2234 2235 // Retrieve whether or not autocompletion deletes any word characters 2236 // after the inserted text upon completion. 2237 bool AutoCompGetDropRestOfWord(); 2238 2239 // Register an image for use in autocompletion lists. 2240 void RegisterImage(int type, const wxBitmap& bmp); 2241 2242 // Clear all the registered images. 2243 void ClearRegisteredImages(); 2244 2245 // Retrieve the auto-completion list type-separator character. 2246 int AutoCompGetTypeSeparator(); 2247 2248 // Change the type-separator character in the string setting up an auto-completion list. 2249 // Default is '?' but can be changed if items contain '?'. 2250 void AutoCompSetTypeSeparator(int separatorCharacter); 2251 2252 // Set the maximum width, in characters, of auto-completion and user lists. 2253 // Set to 0 to autosize to fit longest item, which is the default. 2254 void AutoCompSetMaxWidth(int characterCount); 2255 2256 // Get the maximum width, in characters, of auto-completion and user lists. 2257 int AutoCompGetMaxWidth(); 2258 2259 // Set the maximum height, in rows, of auto-completion and user lists. 2260 // The default is 5 rows. 2261 void AutoCompSetMaxHeight(int rowCount); 2262 2263 // Set the maximum height, in rows, of auto-completion and user lists. 2264 int AutoCompGetMaxHeight(); 2265 2266 // Set the number of spaces used for one level of indentation. 2267 void SetIndent(int indentSize); 2268 2269 // Retrieve indentation size. 2270 int GetIndent(); 2271 2272 // Indentation will only use space characters if useTabs is false, otherwise 2273 // it will use a combination of tabs and spaces. 2274 void SetUseTabs(bool useTabs); 2275 2276 // Retrieve whether tabs will be used in indentation. 2277 bool GetUseTabs(); 2278 2279 // Change the indentation of a line to a number of columns. 2280 void SetLineIndentation(int line, int indentSize); 2281 2282 // Retrieve the number of columns that a line is indented. 2283 int GetLineIndentation(int line); 2284 2285 // Retrieve the position before the first non indentation character on a line. 2286 int GetLineIndentPosition(int line); 2287 2288 // Retrieve the column number of a position, taking tab width into account. 2289 int GetColumn(int pos); 2290 2291 // Show or hide the horizontal scroll bar. 2292 void SetUseHorizontalScrollBar(bool show); 2293 2294 // Is the horizontal scroll bar visible? 2295 bool GetUseHorizontalScrollBar(); 2296 2297 // Show or hide indentation guides. 2298 void SetIndentationGuides(bool show); 2299 2300 // Are the indentation guides visible? 2301 bool GetIndentationGuides(); 2302 2303 // Set the highlighted indentation guide column. 2304 // 0 = no highlighted guide. 2305 void SetHighlightGuide(int column); 2306 2307 // Get the highlighted indentation guide column. 2308 int GetHighlightGuide(); 2309 2310 // Get the position after the last visible characters on a line. 2311 int GetLineEndPosition(int line); 2312 2313 // Get the code page used to interpret the bytes of the document as characters. 2314 int GetCodePage(); 2315 2316 // Get the foreground colour of the caret. 2317 wxColour GetCaretForeground(); 2318 2319 // In read-only mode? 2320 bool GetReadOnly(); 2321 2322 // Sets the position of the caret. 2323 void SetCurrentPos(int pos); 2324 2325 // Sets the position that starts the selection - this becomes the anchor. 2326 void SetSelectionStart(int pos); 2327 2328 // Returns the position at the start of the selection. 2329 int GetSelectionStart(); 2330 2331 // Sets the position that ends the selection - this becomes the currentPosition. 2332 void SetSelectionEnd(int pos); 2333 2334 // Returns the position at the end of the selection. 2335 int GetSelectionEnd(); 2336 2337 // Sets the print magnification added to the point size of each style for printing. 2338 void SetPrintMagnification(int magnification); 2339 2340 // Returns the print magnification. 2341 int GetPrintMagnification(); 2342 2343 // Modify colours when printing for clearer printed text. 2344 void SetPrintColourMode(int mode); 2345 2346 // Returns the print colour mode. 2347 int GetPrintColourMode(); 2348 2349 // Find some text in the document. 2350 int FindText(int minPos, int maxPos, const wxString& text, int flags=0); 2351 2352 // On Windows, will draw the document into a display context such as a printer. 2353 int FormatRange(bool doDraw, 2354 int startPos, 2355 int endPos, 2356 wxDC* draw, 2357 wxDC* target, 2358 wxRect renderRect, 2359 wxRect pageRect); 2360 2361 // Retrieve the display line at the top of the display. 2362 int GetFirstVisibleLine(); 2363 2364 // Retrieve the contents of a line. 2365 wxString GetLine(int line); 2366 2367 // Returns the number of lines in the document. There is always at least one. 2368 int GetLineCount(); 2369 2370 // Sets the size in pixels of the left margin. 2371 void SetMarginLeft(int pixelWidth); 2372 2373 // Returns the size in pixels of the left margin. 2374 int GetMarginLeft(); 2375 2376 // Sets the size in pixels of the right margin. 2377 void SetMarginRight(int pixelWidth); 2378 2379 // Returns the size in pixels of the right margin. 2380 int GetMarginRight(); 2381 2382 // Is the document different from when it was last saved? 2383 bool GetModify(); 2384 2385 // Select a range of text. 2386 void SetSelection(int start, int end); 2387 2388 // Retrieve the selected text. 2389 wxString GetSelectedText(); 2390 2391 // Retrieve a range of text. 2392 wxString GetTextRange(int startPos, int endPos); 2393 2394 // Draw the selection in normal style or with selection highlighted. 2395 void HideSelection(bool normal); 2396 2397 // Retrieve the line containing a position. 2398 int LineFromPosition(int pos); 2399 2400 // Retrieve the position at the start of a line. 2401 int PositionFromLine(int line); 2402 2403 // Scroll horizontally and vertically. 2404 void LineScroll(int columns, int lines); 2405 2406 // Ensure the caret is visible. 2407 void EnsureCaretVisible(); 2408 2409 // Replace the selected text with the argument text. 2410 void ReplaceSelection(const wxString& text); 2411 2412 // Set to read only or read write. 2413 void SetReadOnly(bool readOnly); 2414 2415 // Will a paste succeed? 2416 bool CanPaste(); 2417 2418 // Are there any undoable actions in the undo history? 2419 bool CanUndo(); 2420 2421 // Delete the undo history. 2422 void EmptyUndoBuffer(); 2423 2424 // Undo one action in the undo history. 2425 void Undo(); 2426 2427 // Cut the selection to the clipboard. 2428 void Cut(); 2429 2430 // Copy the selection to the clipboard. 2431 void Copy(); 2432 2433 // Paste the contents of the clipboard into the document replacing the selection. 2434 void Paste(); 2435 2436 // Clear the selection. 2437 void Clear(); 2438 2439 // Replace the contents of the document with the argument text. 2440 void SetText(const wxString& text); 2441 2442 // Retrieve all the text in the document. 2443 wxString GetText(); 2444 2445 // Retrieve the number of characters in the document. 2446 int GetTextLength(); 2447 2448 // Set to overtype (true) or insert mode. 2449 void SetOvertype(bool overtype); 2450 2451 // Returns true if overtype mode is active otherwise false is returned. 2452 bool GetOvertype(); 2453 2454 // Set the width of the insert mode caret. 2455 void SetCaretWidth(int pixelWidth); 2456 2457 // Returns the width of the insert mode caret. 2458 int GetCaretWidth(); 2459 2460 // Sets the position that starts the target which is used for updating the 2461 // document without affecting the scroll position. 2462 void SetTargetStart(int pos); 2463 2464 // Get the position that starts the target. 2465 int GetTargetStart(); 2466 2467 // Sets the position that ends the target which is used for updating the 2468 // document without affecting the scroll position. 2469 void SetTargetEnd(int pos); 2470 2471 // Get the position that ends the target. 2472 int GetTargetEnd(); 2473 2474 // Replace the target text with the argument text. 2475 // Text is counted so it can contain NULs. 2476 // Returns the length of the replacement text. 2477 int ReplaceTarget(const wxString& text); 2478 2479 // Replace the target text with the argument text after \d processing. 2480 // Text is counted so it can contain NULs. 2481 // Looks for \d where d is between 1 and 9 and replaces these with the strings 2482 // matched in the last search operation which were surrounded by \( and \). 2483 // Returns the length of the replacement text including any change 2484 // caused by processing the \d patterns. 2485 int ReplaceTargetRE(const wxString& text); 2486 2487 // Search for a counted string in the target and set the target to the found 2488 // range. Text is counted so it can contain NULs. 2489 // Returns length of range or -1 for failure in which case target is not moved. 2490 int SearchInTarget(const wxString& text); 2491 2492 // Set the search flags used by SearchInTarget. 2493 void SetSearchFlags(int flags); 2494 2495 // Get the search flags used by SearchInTarget. 2496 int GetSearchFlags(); 2497 2498 // Show a call tip containing a definition near position pos. 2499 void CallTipShow(int pos, const wxString& definition); 2500 2501 // Remove the call tip from the screen. 2502 void CallTipCancel(); 2503 2504 // Is there an active call tip? 2505 bool CallTipActive(); 2506 2507 // Retrieve the position where the caret was before displaying the call tip. 2508 int CallTipPosAtStart(); 2509 2510 // Highlight a segment of the definition. 2511 void CallTipSetHighlight(int start, int end); 2512 2513 // Set the background colour for the call tip. 2514 void CallTipSetBackground(const wxColour& back); 2515 2516 // Set the foreground colour for the call tip. 2517 void CallTipSetForeground(const wxColour& fore); 2518 2519 // Set the foreground colour for the highlighted part of the call tip. 2520 void CallTipSetForegroundHighlight(const wxColour& fore); 2521 2522 // Enable use of STYLE_CALLTIP and set call tip tab size in pixels. 2523 void CallTipUseStyle(int tabSize); 2524 2525 // Find the display line of a document line taking hidden lines into account. 2526 int VisibleFromDocLine(int line); 2527 2528 // Find the document line of a display line taking hidden lines into account. 2529 int DocLineFromVisible(int lineDisplay); 2530 2531 // The number of display lines needed to wrap a document line 2532 int WrapCount(int line); 2533 2534 // Set the fold level of a line. 2535 // This encodes an integer level along with flags indicating whether the 2536 // line is a header and whether it is effectively white space. 2537 void SetFoldLevel(int line, int level); 2538 2539 // Retrieve the fold level of a line. 2540 int GetFoldLevel(int line); 2541 2542 // Find the last child line of a header line. 2543 int GetLastChild(int line, int level); 2544 2545 // Find the parent line of a child line. 2546 int GetFoldParent(int line); 2547 2548 // Make a range of lines visible. 2549 void ShowLines(int lineStart, int lineEnd); 2550 2551 // Make a range of lines invisible. 2552 void HideLines(int lineStart, int lineEnd); 2553 2554 // Is a line visible? 2555 bool GetLineVisible(int line); 2556 2557 // Show the children of a header line. 2558 void SetFoldExpanded(int line, bool expanded); 2559 2560 // Is a header line expanded? 2561 bool GetFoldExpanded(int line); 2562 2563 // Switch a header line between expanded and contracted. 2564 void ToggleFold(int line); 2565 2566 // Ensure a particular line is visible by expanding any header line hiding it. 2567 void EnsureVisible(int line); 2568 2569 // Set some style options for folding. 2570 void SetFoldFlags(int flags); 2571 2572 // Ensure a particular line is visible by expanding any header line hiding it. 2573 // Use the currently set visibility policy to determine which range to display. 2574 void EnsureVisibleEnforcePolicy(int line); 2575 2576 // Sets whether a tab pressed when caret is within indentation indents. 2577 void SetTabIndents(bool tabIndents); 2578 2579 // Does a tab pressed when caret is within indentation indent? 2580 bool GetTabIndents(); 2581 2582 // Sets whether a backspace pressed when caret is within indentation unindents. 2583 void SetBackSpaceUnIndents(bool bsUnIndents); 2584 2585 // Does a backspace pressed when caret is within indentation unindent? 2586 bool GetBackSpaceUnIndents(); 2587 2588 // Sets the time the mouse must sit still to generate a mouse dwell event. 2589 void SetMouseDwellTime(int periodMilliseconds); 2590 2591 // Retrieve the time the mouse must sit still to generate a mouse dwell event. 2592 int GetMouseDwellTime(); 2593 2594 // Get position of start of word. 2595 int WordStartPosition(int pos, bool onlyWordCharacters); 2596 2597 // Get position of end of word. 2598 int WordEndPosition(int pos, bool onlyWordCharacters); 2599 2600 // Sets whether text is word wrapped. 2601 void SetWrapMode(int mode); 2602 2603 // Retrieve whether text is word wrapped. 2604 int GetWrapMode(); 2605 2606 // Set the display mode of visual flags for wrapped lines. 2607 void SetWrapVisualFlags(int wrapVisualFlags); 2608 2609 // Retrive the display mode of visual flags for wrapped lines. 2610 int GetWrapVisualFlags(); 2611 2612 // Set the location of visual flags for wrapped lines. 2613 void SetWrapVisualFlagsLocation(int wrapVisualFlagsLocation); 2614 2615 // Retrive the location of visual flags for wrapped lines. 2616 int GetWrapVisualFlagsLocation(); 2617 2618 // Set the start indent for wrapped lines. 2619 void SetWrapStartIndent(int indent); 2620 2621 // Retrive the start indent for wrapped lines. 2622 int GetWrapStartIndent(); 2623 2624 // Sets the degree of caching of layout information. 2625 void SetLayoutCache(int mode); 2626 2627 // Retrieve the degree of caching of layout information. 2628 int GetLayoutCache(); 2629 2630 // Sets the document width assumed for scrolling. 2631 void SetScrollWidth(int pixelWidth); 2632 2633 // Retrieve the document width assumed for scrolling. 2634 int GetScrollWidth(); 2635 2636 // Measure the pixel width of some text in a particular style. 2637 // NUL terminated text argument. 2638 // Does not handle tab or control characters. 2639 int TextWidth(int style, const wxString& text); 2640 2641 // Sets the scroll range so that maximum scroll position has 2642 // the last line at the bottom of the view (default). 2643 // Setting this to false allows scrolling one page below the last line. 2644 void SetEndAtLastLine(bool endAtLastLine); 2645 2646 // Retrieve whether the maximum scroll position has the last 2647 // line at the bottom of the view. 2648 bool GetEndAtLastLine(); 2649 2650 // Retrieve the height of a particular line of text in pixels. 2651 int TextHeight(int line); 2652 2653 // Show or hide the vertical scroll bar. 2654 void SetUseVerticalScrollBar(bool show); 2655 2656 // Is the vertical scroll bar visible? 2657 bool GetUseVerticalScrollBar(); 2658 2659 // Append a string to the end of the document without changing the selection. 2660 void AppendText(const wxString& text); 2661 2662 // Is drawing done in two phases with backgrounds drawn before foregrounds? 2663 bool GetTwoPhaseDraw(); 2664 2665 // In twoPhaseDraw mode, drawing is performed in two phases, first the background 2666 // and then the foreground. This avoids chopping off characters that overlap the next run. 2667 void SetTwoPhaseDraw(bool twoPhase); 2668 2669 // Make the target range start and end be the same as the selection range start and end. 2670 void TargetFromSelection(); 2671 2672 // Join the lines in the target. 2673 void LinesJoin(); 2674 2675 // Split the lines in the target into lines that are less wide than pixelWidth 2676 // where possible. 2677 void LinesSplit(int pixelWidth); 2678 2679 // Set the colours used as a chequerboard pattern in the fold margin 2680 void SetFoldMarginColour(bool useSetting, const wxColour& back); 2681 void SetFoldMarginHiColour(bool useSetting, const wxColour& fore); 2682 2683 // Move caret down one line. 2684 void LineDown(); 2685 2686 // Move caret down one line extending selection to new caret position. 2687 void LineDownExtend(); 2688 2689 // Move caret up one line. 2690 void LineUp(); 2691 2692 // Move caret up one line extending selection to new caret position. 2693 void LineUpExtend(); 2694 2695 // Move caret left one character. 2696 void CharLeft(); 2697 2698 // Move caret left one character extending selection to new caret position. 2699 void CharLeftExtend(); 2700 2701 // Move caret right one character. 2702 void CharRight(); 2703 2704 // Move caret right one character extending selection to new caret position. 2705 void CharRightExtend(); 2706 2707 // Move caret left one word. 2708 void WordLeft(); 2709 2710 // Move caret left one word extending selection to new caret position. 2711 void WordLeftExtend(); 2712 2713 // Move caret right one word. 2714 void WordRight(); 2715 2716 // Move caret right one word extending selection to new caret position. 2717 void WordRightExtend(); 2718 2719 // Move caret to first position on line. 2720 void Home(); 2721 2722 // Move caret to first position on line extending selection to new caret position. 2723 void HomeExtend(); 2724 2725 // Move caret to last position on line. 2726 void LineEnd(); 2727 2728 // Move caret to last position on line extending selection to new caret position. 2729 void LineEndExtend(); 2730 2731 // Move caret to first position in document. 2732 void DocumentStart(); 2733 2734 // Move caret to first position in document extending selection to new caret position. 2735 void DocumentStartExtend(); 2736 2737 // Move caret to last position in document. 2738 void DocumentEnd(); 2739 2740 // Move caret to last position in document extending selection to new caret position. 2741 void DocumentEndExtend(); 2742 2743 // Move caret one page up. 2744 void PageUp(); 2745 2746 // Move caret one page up extending selection to new caret position. 2747 void PageUpExtend(); 2748 2749 // Move caret one page down. 2750 void PageDown(); 2751 2752 // Move caret one page down extending selection to new caret position. 2753 void PageDownExtend(); 2754 2755 // Switch from insert to overtype mode or the reverse. 2756 void EditToggleOvertype(); 2757 2758 // Cancel any modes such as call tip or auto-completion list display. 2759 void Cancel(); 2760 2761 // Delete the selection or if no selection, the character before the caret. 2762 void DeleteBack(); 2763 2764 // If selection is empty or all on one line replace the selection with a tab character. 2765 // If more than one line selected, indent the lines. 2766 void Tab(); 2767 2768 // Dedent the selected lines. 2769 void BackTab(); 2770 2771 // Insert a new line, may use a CRLF, CR or LF depending on EOL mode. 2772 void NewLine(); 2773 2774 // Insert a Form Feed character. 2775 void FormFeed(); 2776 2777 // Move caret to before first visible character on line. 2778 // If already there move to first character on line. 2779 void VCHome(); 2780 2781 // Like VCHome but extending selection to new caret position. 2782 void VCHomeExtend(); 2783 2784 // Magnify the displayed text by increasing the sizes by 1 point. 2785 void ZoomIn(); 2786 2787 // Make the displayed text smaller by decreasing the sizes by 1 point. 2788 void ZoomOut(); 2789 2790 // Delete the word to the left of the caret. 2791 void DelWordLeft(); 2792 2793 // Delete the word to the right of the caret. 2794 void DelWordRight(); 2795 2796 // Cut the line containing the caret. 2797 void LineCut(); 2798 2799 // Delete the line containing the caret. 2800 void LineDelete(); 2801 2802 // Switch the current line with the previous. 2803 void LineTranspose(); 2804 2805 // Duplicate the current line. 2806 void LineDuplicate(); 2807 2808 // Transform the selection to lower case. 2809 void LowerCase(); 2810 2811 // Transform the selection to upper case. 2812 void UpperCase(); 2813 2814 // Scroll the document down, keeping the caret visible. 2815 void LineScrollDown(); 2816 2817 // Scroll the document up, keeping the caret visible. 2818 void LineScrollUp(); 2819 2820 // Delete the selection or if no selection, the character before the caret. 2821 // Will not delete the character before at the start of a line. 2822 void DeleteBackNotLine(); 2823 2824 // Move caret to first position on display line. 2825 void HomeDisplay(); 2826 2827 // Move caret to first position on display line extending selection to 2828 // new caret position. 2829 void HomeDisplayExtend(); 2830 2831 // Move caret to last position on display line. 2832 void LineEndDisplay(); 2833 2834 // Move caret to last position on display line extending selection to new 2835 // caret position. 2836 void LineEndDisplayExtend(); 2837 2838 // These are like their namesakes Home(Extend)?, LineEnd(Extend)?, VCHome(Extend)? 2839 // except they behave differently when word-wrap is enabled: 2840 // They go first to the start / end of the display line, like (Home|LineEnd)Display 2841 // The difference is that, the cursor is already at the point, it goes on to the start 2842 // or end of the document line, as appropriate for (Home|LineEnd|VCHome)(Extend)?. 2843 void HomeWrap(); 2844 void HomeWrapExtend(); 2845 void LineEndWrap(); 2846 void LineEndWrapExtend(); 2847 void VCHomeWrap(); 2848 void VCHomeWrapExtend(); 2849 2850 // Copy the line containing the caret. 2851 void LineCopy(); 2852 2853 // Move the caret inside current view if it's not there already. 2854 void MoveCaretInsideView(); 2855 2856 // How many characters are on a line, not including end of line characters? 2857 int LineLength(int line); 2858 2859 // Highlight the characters at two positions. 2860 void BraceHighlight(int pos1, int pos2); 2861 2862 // Highlight the character at a position indicating there is no matching brace. 2863 void BraceBadLight(int pos); 2864 2865 // Find the position of a matching brace or INVALID_POSITION if no match. 2866 int BraceMatch(int pos); 2867 2868 // Are the end of line characters visible? 2869 bool GetViewEOL(); 2870 2871 // Make the end of line characters visible or invisible. 2872 void SetViewEOL(bool visible); 2873 2874 // Retrieve a pointer to the document object. 2875 void* GetDocPointer(); 2876 2877 // Change the document object used. 2878 void SetDocPointer(void* docPointer); 2879 2880 // Set which document modification events are sent to the container. 2881 void SetModEventMask(int mask); 2882 2883 // Retrieve the column number which text should be kept within. 2884 int GetEdgeColumn(); 2885 2886 // Set the column number of the edge. 2887 // If text goes past the edge then it is highlighted. 2888 void SetEdgeColumn(int column); 2889 2890 // Retrieve the edge highlight mode. 2891 int GetEdgeMode(); 2892 2893 // The edge may be displayed by a line (EDGE_LINE) or by highlighting text that 2894 // goes beyond it (EDGE_BACKGROUND) or not displayed at all (EDGE_NONE). 2895 void SetEdgeMode(int mode); 2896 2897 // Retrieve the colour used in edge indication. 2898 wxColour GetEdgeColour(); 2899 2900 // Change the colour used in edge indication. 2901 void SetEdgeColour(const wxColour& edgeColour); 2902 2903 // Sets the current caret position to be the search anchor. 2904 void SearchAnchor(); 2905 2906 // Find some text starting at the search anchor. 2907 // Does not ensure the selection is visible. 2908 int SearchNext(int flags, const wxString& text); 2909 2910 // Find some text starting at the search anchor and moving backwards. 2911 // Does not ensure the selection is visible. 2912 int SearchPrev(int flags, const wxString& text); 2913 2914 // Retrieves the number of lines completely visible. 2915 int LinesOnScreen(); 2916 2917 // Set whether a pop up menu is displayed automatically when the user presses 2918 // the wrong mouse button. 2919 void UsePopUp(bool allowPopUp); 2920 2921 // Is the selection rectangular? The alternative is the more common stream selection. 2922 bool SelectionIsRectangle(); 2923 2924 // Set the zoom level. This number of points is added to the size of all fonts. 2925 // It may be positive to magnify or negative to reduce. 2926 void SetZoom(int zoom); 2927 2928 // Retrieve the zoom level. 2929 int GetZoom(); 2930 2931 // Create a new document object. 2932 // Starts with reference count of 1 and not selected into editor. 2933 void* CreateDocument(); 2934 2935 // Extend life of document. 2936 void AddRefDocument(void* docPointer); 2937 2938 // Release a reference to the document, deleting document if it fades to black. 2939 void ReleaseDocument(void* docPointer); 2940 2941 // Get which document modification events are sent to the container. 2942 int GetModEventMask(); 2943 2944 // Change internal focus flag. 2945 void SetSTCFocus(bool focus); 2946 2947 // Get internal focus flag. 2948 bool GetSTCFocus(); 2949 2950 // Change error status - 0 = OK. 2951 void SetStatus(int statusCode); 2952 2953 // Get error status. 2954 int GetStatus(); 2955 2956 // Set whether the mouse is captured when its button is pressed. 2957 void SetMouseDownCaptures(bool captures); 2958 2959 // Get whether mouse gets captured. 2960 bool GetMouseDownCaptures(); 2961 2962 // Sets the cursor to one of the SC_CURSOR* values. 2963 void SetSTCCursor(int cursorType); 2964 2965 // Get cursor type. 2966 int GetSTCCursor(); 2967 2968 // Change the way control characters are displayed: 2969 // If symbol is < 32, keep the drawn way, else, use the given character. 2970 void SetControlCharSymbol(int symbol); 2971 2972 // Get the way control characters are displayed. 2973 int GetControlCharSymbol(); 2974 2975 // Move to the previous change in capitalisation. 2976 void WordPartLeft(); 2977 2978 // Move to the previous change in capitalisation extending selection 2979 // to new caret position. 2980 void WordPartLeftExtend(); 2981 2982 // Move to the change next in capitalisation. 2983 void WordPartRight(); 2984 2985 // Move to the next change in capitalisation extending selection 2986 // to new caret position. 2987 void WordPartRightExtend(); 2988 2989 // Set the way the display area is determined when a particular line 2990 // is to be moved to by Find, FindNext, GotoLine, etc. 2991 void SetVisiblePolicy(int visiblePolicy, int visibleSlop); 2992 2993 // Delete back from the current position to the start of the line. 2994 void DelLineLeft(); 2995 2996 // Delete forwards from the current position to the end of the line. 2997 void DelLineRight(); 2998 2999 // Get and Set the xOffset (ie, horizonal scroll position). 3000 void SetXOffset(int newOffset); 3001 int GetXOffset(); 3002 3003 // Set the last x chosen value to be the caret x position. 3004 void ChooseCaretX(); 3005 3006 // Set the way the caret is kept visible when going sideway. 3007 // The exclusion zone is given in pixels. 3008 void SetXCaretPolicy(int caretPolicy, int caretSlop); 3009 3010 // Set the way the line the caret is on is kept visible. 3011 // The exclusion zone is given in lines. 3012 void SetYCaretPolicy(int caretPolicy, int caretSlop); 3013 3014 // Set printing to line wrapped (SC_WRAP_WORD) or not line wrapped (SC_WRAP_NONE). 3015 void SetPrintWrapMode(int mode); 3016 3017 // Is printing line wrapped? 3018 int GetPrintWrapMode(); 3019 3020 // Set a fore colour for active hotspots. 3021 void SetHotspotActiveForeground(bool useSetting, const wxColour& fore); 3022 3023 // Set a back colour for active hotspots. 3024 void SetHotspotActiveBackground(bool useSetting, const wxColour& back); 3025 3026 // Enable / Disable underlining active hotspots. 3027 void SetHotspotActiveUnderline(bool underline); 3028 3029 // Limit hotspots to single line so hotspots on two lines don't merge. 3030 void SetHotspotSingleLine(bool singleLine); 3031 3032 // Move caret between paragraphs (delimited by empty lines). 3033 void ParaDown(); 3034 void ParaDownExtend(); 3035 void ParaUp(); 3036 void ParaUpExtend(); 3037 3038 // Given a valid document position, return the previous position taking code 3039 // page into account. Returns 0 if passed 0. 3040 int PositionBefore(int pos); 3041 3042 // Given a valid document position, return the next position taking code 3043 // page into account. Maximum value returned is the last position in the document. 3044 int PositionAfter(int pos); 3045 3046 // Copy a range of text to the clipboard. Positions are clipped into the document. 3047 void CopyRange(int start, int end); 3048 3049 // Copy argument text to the clipboard. 3050 void CopyText(int length, const wxString& text); 3051 3052 // Set the selection mode to stream (SC_SEL_STREAM) or rectangular (SC_SEL_RECTANGLE) or 3053 // by lines (SC_SEL_LINES). 3054 void SetSelectionMode(int mode); 3055 3056 // Get the mode of the current selection. 3057 int GetSelectionMode(); 3058 3059 // Retrieve the position of the start of the selection at the given line (INVALID_POSITION if no selection on this line). 3060 int GetLineSelStartPosition(int line); 3061 3062 // Retrieve the position of the end of the selection at the given line (INVALID_POSITION if no selection on this line). 3063 int GetLineSelEndPosition(int line); 3064 3065 // Move caret down one line, extending rectangular selection to new caret position. 3066 void LineDownRectExtend(); 3067 3068 // Move caret up one line, extending rectangular selection to new caret position. 3069 void LineUpRectExtend(); 3070 3071 // Move caret left one character, extending rectangular selection to new caret position. 3072 void CharLeftRectExtend(); 3073 3074 // Move caret right one character, extending rectangular selection to new caret position. 3075 void CharRightRectExtend(); 3076 3077 // Move caret to first position on line, extending rectangular selection to new caret position. 3078 void HomeRectExtend(); 3079 3080 // Move caret to before first visible character on line. 3081 // If already there move to first character on line. 3082 // In either case, extend rectangular selection to new caret position. 3083 void VCHomeRectExtend(); 3084 3085 // Move caret to last position on line, extending rectangular selection to new caret position. 3086 void LineEndRectExtend(); 3087 3088 // Move caret one page up, extending rectangular selection to new caret position. 3089 void PageUpRectExtend(); 3090 3091 // Move caret one page down, extending rectangular selection to new caret position. 3092 void PageDownRectExtend(); 3093 3094 // Move caret to top of page, or one page up if already at top of page. 3095 void StutteredPageUp(); 3096 3097 // Move caret to top of page, or one page up if already at top of page, extending selection to new caret position. 3098 void StutteredPageUpExtend(); 3099 3100 // Move caret to bottom of page, or one page down if already at bottom of page. 3101 void StutteredPageDown(); 3102 3103 // Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position. 3104 void StutteredPageDownExtend(); 3105 3106 // Move caret left one word, position cursor at end of word. 3107 void WordLeftEnd(); 3108 3109 // Move caret left one word, position cursor at end of word, extending selection to new caret position. 3110 void WordLeftEndExtend(); 3111 3112 // Move caret right one word, position cursor at end of word. 3113 void WordRightEnd(); 3114 3115 // Move caret right one word, position cursor at end of word, extending selection to new caret position. 3116 void WordRightEndExtend(); 3117 3118 // Set the set of characters making up whitespace for when moving or selecting by word. 3119 // Should be called after SetWordChars. 3120 void SetWhitespaceChars(const wxString& characters); 3121 3122 // Reset the set of characters for whitespace and word characters to the defaults. 3123 void SetCharsDefault(); 3124 3125 // Get currently selected item position in the auto-completion list 3126 int AutoCompGetCurrent(); 3127 3128 // Enlarge the document to a particular size of text bytes. 3129 void Allocate(int bytes); 3130 3131 // Find the position of a column on a line taking into account tabs and 3132 // multi-byte characters. If beyond end of line, return line end position. 3133 int FindColumn(int line, int column); 3134 3135 // Can the caret preferred x position only be changed by explicit movement commands? 3136 bool GetCaretSticky(); 3137 3138 // Stop the caret preferred x position changing when the user types. 3139 void SetCaretSticky(bool useCaretStickyBehaviour); 3140 3141 // Switch between sticky and non-sticky: meant to be bound to a key. 3142 void ToggleCaretSticky(); 3143 3144 // Enable/Disable convert-on-paste for line endings 3145 void SetPasteConvertEndings(bool convert); 3146 3147 // Get convert-on-paste setting 3148 bool GetPasteConvertEndings(); 3149 3150 // Duplicate the selection. If selection empty duplicate the line containing the caret. 3151 void SelectionDuplicate(); 3152 3153 // Set background alpha of the caret line. 3154 void SetCaretLineBackAlpha(int alpha); 3155 3156 // Get the background alpha of the caret line. 3157 int GetCaretLineBackAlpha(); 3158 3159 // Start notifying the container of all key presses and commands. 3160 void StartRecord(); 3161 3162 // Stop notifying the container of all key presses and commands. 3163 void StopRecord(); 3164 3165 // Set the lexing language of the document. 3166 void SetLexer(int lexer); 3167 3168 // Retrieve the lexing language of the document. 3169 int GetLexer(); 3170 3171 // Colourise a segment of the document using the current lexing language. 3172 void Colourise(int start, int end); 3173 3174 // Set up a value that may be used by a lexer for some optional feature. 3175 void SetProperty(const wxString& key, const wxString& value); 3176 3177 // Set up the key words used by the lexer. 3178 void SetKeyWords(int keywordSet, const wxString& keyWords); 3179 3180 // Set the lexing language of the document based on string name. 3181 void SetLexerLanguage(const wxString& language); 3182 3183 // Retrieve a 'property' value previously set with SetProperty. 3184 wxString GetProperty(const wxString& key); 3185 3186 // Retrieve a 'property' value previously set with SetProperty, 3187 // with '$()' variable replacement on returned buffer. 3188 wxString GetPropertyExpanded(const wxString& key); 3189 3190 // Retrieve a 'property' value previously set with SetProperty, 3191 // interpreted as an int AFTER any '$()' variable replacement. 3192 int GetPropertyInt(const wxString& key); 3193 3194 // Retrieve the number of bits the current lexer needs for styling. 3195 int GetStyleBitsNeeded(); 3196 3197// END of generated section 3198//---------------------------------------------------------------------- 3199// Others... 3200 3201 3202 // Returns the line number of the line with the caret. 3203 int GetCurrentLine(); 3204 3205 // Extract style settings from a spec-string which is composed of one or 3206 // more of the following comma separated elements: 3207 // 3208 // bold turns on bold 3209 // italic turns on italics 3210 // fore:[name or #RRGGBB] sets the foreground colour 3211 // back:[name or #RRGGBB] sets the background colour 3212 // face:[facename] sets the font face name to use 3213 // size:[num] sets the font size in points 3214 // eol turns on eol filling 3215 // underline turns on underlining 3216 // 3217 void StyleSetSpec(int styleNum, const wxString& spec); 3218 3219 3220 3221 // Set style size, face, bold, italic, and underline attributes from 3222 // a wxFont's attributes. 3223 void StyleSetFont(int styleNum, wxFont& font); 3224 3225 3226 3227 // Set all font style attributes at once. 3228 void StyleSetFontAttr(int styleNum, int size, 3229 const wxString& faceName, 3230 bool bold, bool italic, 3231 bool underline, 3232 wxFontEncoding encoding=wxFONTENCODING_DEFAULT); 3233 3234 3235 // Set the character set of the font in a style. Converts the Scintilla 3236 // character set values to a wxFontEncoding. 3237 void StyleSetCharacterSet(int style, int characterSet); 3238 3239 // Set the font encoding to be used by a style. 3240 void StyleSetFontEncoding(int style, wxFontEncoding encoding); 3241 3242 3243 // Perform one of the operations defined by the wxSTC_CMD_* constants. 3244 void CmdKeyExecute(int cmd); 3245 3246 3247 // Set the left and right margin in the edit area, measured in pixels. 3248 void SetMargins(int left, int right); 3249 3250 3251 // Retrieve the start and end positions of the current selection. 3252#ifdef SWIG 3253 void GetSelection(int* OUTPUT, int* OUTPUT); 3254#else 3255 void GetSelection(int* startPos, int* endPos); 3256#endif 3257 3258 // Retrieve the point in the window where a position is displayed. 3259 wxPoint PointFromPosition(int pos); 3260 3261 3262 // Scroll enough to make the given line visible 3263 void ScrollToLine(int line); 3264 3265 3266 // Scroll enough to make the given column visible 3267 void ScrollToColumn(int column); 3268 3269 3270 // Send a message to Scintilla 3271 wxIntPtr SendMsg(int msg, wxUIntPtr wp=0, wxIntPtr lp=0); 3272 3273 3274 // Set the vertical scrollbar to use instead of the ont that's built-in. 3275 void SetVScrollBar(wxScrollBar* bar); 3276 3277 3278 // Set the horizontal scrollbar to use instead of the ont that's built-in. 3279 void SetHScrollBar(wxScrollBar* bar); 3280 3281 // Can be used to prevent the EVT_CHAR handler from adding the char 3282 bool GetLastKeydownProcessed() { return m_lastKeyDownConsumed; } 3283 void SetLastKeydownProcessed(bool val) { m_lastKeyDownConsumed = val; } 3284 3285 // Write the contents of the editor to filename 3286 bool SaveFile(const wxString& filename); 3287 3288 // Load the contents of filename into the editor 3289 bool LoadFile(const wxString& filename); 3290 3291#ifdef STC_USE_DND 3292 // Allow for simulating a DnD DragOver 3293 wxDragResult DoDragOver(wxCoord x, wxCoord y, wxDragResult def); 3294 3295 // Allow for simulating a DnD DropText 3296 bool DoDropText(long x, long y, const wxString& data); 3297#endif 3298 3299 // Specify whether anti-aliased fonts should be used. Will have no effect 3300 // on some platforms, but on some (wxMac for example) can greatly improve 3301 // performance. 3302 void SetUseAntiAliasing(bool useAA); 3303 3304 // Returns the current UseAntiAliasing setting. 3305 bool GetUseAntiAliasing(); 3306 3307 3308 3309 // The following methods are nearly equivallent to their similarly named 3310 // cousins above. The difference is that these methods bypass wxString 3311 // and always use a char* even if used in a unicode build of wxWidgets. 3312 // In that case the character data will be utf-8 encoded since that is 3313 // what is used internally by Scintilla in unicode builds. 3314 3315 // Add text to the document at current position. 3316 void AddTextRaw(const char* text); 3317 3318 // Insert string at a position. 3319 void InsertTextRaw(int pos, const char* text); 3320 3321 // Retrieve the text of the line containing the caret. 3322 // Returns the index of the caret on the line. 3323#ifdef SWIG 3324 wxCharBuffer GetCurLineRaw(int* OUTPUT); 3325#else 3326 wxCharBuffer GetCurLineRaw(int* linePos=NULL); 3327#endif 3328 3329 // Retrieve the contents of a line. 3330 wxCharBuffer GetLineRaw(int line); 3331 3332 // Retrieve the selected text. 3333 wxCharBuffer GetSelectedTextRaw(); 3334 3335 // Retrieve a range of text. 3336 wxCharBuffer GetTextRangeRaw(int startPos, int endPos); 3337 3338 // Replace the contents of the document with the argument text. 3339 void SetTextRaw(const char* text); 3340 3341 // Retrieve all the text in the document. 3342 wxCharBuffer GetTextRaw(); 3343 3344 // Append a string to the end of the document without changing the selection. 3345 void AppendTextRaw(const char* text); 3346 3347#ifdef SWIG 3348 %pythoncode "_stc_utf8_methods.py" 3349#endif 3350//---------------------------------------------------------------------- 3351 3352 3353#ifndef SWIG 3354protected: 3355 // Event handlers 3356 void OnPaint(wxPaintEvent& evt); 3357 void OnScrollWin(wxScrollWinEvent& evt); 3358 void OnScroll(wxScrollEvent& evt); 3359 void OnSize(wxSizeEvent& evt); 3360 void OnMouseLeftDown(wxMouseEvent& evt); 3361 void OnMouseMove(wxMouseEvent& evt); 3362 void OnMouseLeftUp(wxMouseEvent& evt); 3363 void OnMouseRightUp(wxMouseEvent& evt); 3364 void OnMouseMiddleUp(wxMouseEvent& evt); 3365 void OnContextMenu(wxContextMenuEvent& evt); 3366 void OnMouseWheel(wxMouseEvent& evt); 3367 void OnChar(wxKeyEvent& evt); 3368 void OnKeyDown(wxKeyEvent& evt); 3369 void OnLoseFocus(wxFocusEvent& evt); 3370 void OnGainFocus(wxFocusEvent& evt); 3371 void OnSysColourChanged(wxSysColourChangedEvent& evt); 3372 void OnEraseBackground(wxEraseEvent& evt); 3373 void OnMenu(wxCommandEvent& evt); 3374 void OnListBox(wxCommandEvent& evt); 3375 void OnIdle(wxIdleEvent& evt); 3376 3377 virtual wxSize DoGetBestSize() const; 3378 3379 // Turn notifications from Scintilla into events 3380 void NotifyChange(); 3381 void NotifyParent(SCNotification* scn); 3382 3383private: 3384 DECLARE_EVENT_TABLE() 3385 DECLARE_DYNAMIC_CLASS(wxStyledTextCtrl) 3386 3387protected: 3388 3389 ScintillaWX* m_swx; 3390 wxStopWatch m_stopWatch; 3391 wxScrollBar* m_vScrollBar; 3392 wxScrollBar* m_hScrollBar; 3393 3394 bool m_lastKeyDownConsumed; 3395 3396 friend class ScintillaWX; 3397 friend class Platform; 3398#endif 3399}; 3400 3401//---------------------------------------------------------------------- 3402 3403class WXDLLIMPEXP_STC wxStyledTextEvent : public wxCommandEvent { 3404public: 3405 wxStyledTextEvent(wxEventType commandType=0, int id=0); 3406#ifndef SWIG 3407 wxStyledTextEvent(const wxStyledTextEvent& event); 3408#endif 3409 ~wxStyledTextEvent() {} 3410 3411 void SetPosition(int pos) { m_position = pos; } 3412 void SetKey(int k) { m_key = k; } 3413 void SetModifiers(int m) { m_modifiers = m; } 3414 void SetModificationType(int t) { m_modificationType = t; } 3415 void SetText(const wxString& t) { m_text = t; } 3416 void SetLength(int len) { m_length = len; } 3417 void SetLinesAdded(int num) { m_linesAdded = num; } 3418 void SetLine(int val) { m_line = val; } 3419 void SetFoldLevelNow(int val) { m_foldLevelNow = val; } 3420 void SetFoldLevelPrev(int val) { m_foldLevelPrev = val; } 3421 void SetMargin(int val) { m_margin = val; } 3422 void SetMessage(int val) { m_message = val; } 3423 void SetWParam(int val) { m_wParam = val; } 3424 void SetLParam(int val) { m_lParam = val; } 3425 void SetListType(int val) { m_listType = val; } 3426 void SetX(int val) { m_x = val; } 3427 void SetY(int val) { m_y = val; } 3428 void SetDragText(const wxString& val) { m_dragText = val; } 3429 void SetDragAllowMove(bool val) { m_dragAllowMove = val; } 3430#ifdef STC_USE_DND 3431 void SetDragResult(wxDragResult val) { m_dragResult = val; } 3432#endif 3433 3434 int GetPosition() const { return m_position; } 3435 int GetKey() const { return m_key; } 3436 int GetModifiers() const { return m_modifiers; } 3437 int GetModificationType() const { return m_modificationType; } 3438 wxString GetText() const { return m_text; } 3439 int GetLength() const { return m_length; } 3440 int GetLinesAdded() const { return m_linesAdded; } 3441 int GetLine() const { return m_line; } 3442 int GetFoldLevelNow() const { return m_foldLevelNow; } 3443 int GetFoldLevelPrev() const { return m_foldLevelPrev; } 3444 int GetMargin() const { return m_margin; } 3445 int GetMessage() const { return m_message; } 3446 int GetWParam() const { return m_wParam; } 3447 int GetLParam() const { return m_lParam; } 3448 int GetListType() const { return m_listType; } 3449 int GetX() const { return m_x; } 3450 int GetY() const { return m_y; } 3451 wxString GetDragText() { return m_dragText; } 3452 bool GetDragAllowMove() { return m_dragAllowMove; } 3453#ifdef STC_USE_DND 3454 wxDragResult GetDragResult() { return m_dragResult; } 3455#endif 3456 3457 bool GetShift() const; 3458 bool GetControl() const; 3459 bool GetAlt() const; 3460 3461 virtual wxEvent* Clone() const { return new wxStyledTextEvent(*this); } 3462 3463#ifndef SWIG 3464private: 3465 DECLARE_DYNAMIC_CLASS(wxStyledTextEvent) 3466 3467 int m_position; 3468 int m_key; 3469 int m_modifiers; 3470 3471 int m_modificationType; // wxEVT_STC_MODIFIED 3472 wxString m_text; 3473 int m_length; 3474 int m_linesAdded; 3475 int m_line; 3476 int m_foldLevelNow; 3477 int m_foldLevelPrev; 3478 3479 int m_margin; // wxEVT_STC_MARGINCLICK 3480 3481 int m_message; // wxEVT_STC_MACRORECORD 3482 int m_wParam; 3483 int m_lParam; 3484 3485 int m_listType; 3486 int m_x; 3487 int m_y; 3488 3489 wxString m_dragText; // wxEVT_STC_START_DRAG, wxEVT_STC_DO_DROP 3490 bool m_dragAllowMove; // wxEVT_STC_START_DRAG 3491 3492#if wxUSE_DRAG_AND_DROP 3493 wxDragResult m_dragResult; // wxEVT_STC_DRAG_OVER,wxEVT_STC_DO_DROP 3494#endif 3495#endif 3496}; 3497 3498 3499 3500#ifndef SWIG 3501BEGIN_DECLARE_EVENT_TYPES() 3502 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_CHANGE, 1650) 3503 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_STYLENEEDED, 1651) 3504 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_CHARADDED, 1652) 3505 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_SAVEPOINTREACHED, 1653) 3506 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_SAVEPOINTLEFT, 1654) 3507 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_ROMODIFYATTEMPT, 1655) 3508 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_KEY, 1656) 3509 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_DOUBLECLICK, 1657) 3510 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_UPDATEUI, 1658) 3511 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_MODIFIED, 1659) 3512 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_MACRORECORD, 1660) 3513 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_MARGINCLICK, 1661) 3514 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_NEEDSHOWN, 1662) 3515 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_PAINTED, 1664) 3516 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_USERLISTSELECTION, 1665) 3517 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_URIDROPPED, 1666) 3518 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_DWELLSTART, 1667) 3519 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_DWELLEND, 1668) 3520 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_START_DRAG, 1669) 3521 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_DRAG_OVER, 1670) 3522 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_DO_DROP, 1671) 3523 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_ZOOM, 1672) 3524 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_HOTSPOT_CLICK, 1673) 3525 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_HOTSPOT_DCLICK, 1674) 3526 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_CALLTIP_CLICK, 1675) 3527 DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_STC, wxEVT_STC_AUTOCOMP_SELECTION, 1676) 3528END_DECLARE_EVENT_TYPES() 3529#else 3530 enum { 3531 wxEVT_STC_CHANGE, 3532 wxEVT_STC_STYLENEEDED, 3533 wxEVT_STC_CHARADDED, 3534 wxEVT_STC_SAVEPOINTREACHED, 3535 wxEVT_STC_SAVEPOINTLEFT, 3536 wxEVT_STC_ROMODIFYATTEMPT, 3537 wxEVT_STC_KEY, 3538 wxEVT_STC_DOUBLECLICK, 3539 wxEVT_STC_UPDATEUI, 3540 wxEVT_STC_MODIFIED, 3541 wxEVT_STC_MACRORECORD, 3542 wxEVT_STC_MARGINCLICK, 3543 wxEVT_STC_NEEDSHOWN, 3544 wxEVT_STC_PAINTED, 3545 wxEVT_STC_USERLISTSELECTION, 3546 wxEVT_STC_URIDROPPED, 3547 wxEVT_STC_DWELLSTART, 3548 wxEVT_STC_DWELLEND, 3549 wxEVT_STC_START_DRAG, 3550 wxEVT_STC_DRAG_OVER, 3551 wxEVT_STC_DO_DROP, 3552 wxEVT_STC_ZOOM, 3553 wxEVT_STC_HOTSPOT_CLICK, 3554 wxEVT_STC_HOTSPOT_DCLICK, 3555 wxEVT_STC_CALLTIP_CLICK, 3556 wxEVT_STC_AUTOCOMP_SELECTION 3557 }; 3558#endif 3559 3560 3561 3562#ifndef SWIG 3563typedef void (wxEvtHandler::*wxStyledTextEventFunction)(wxStyledTextEvent&); 3564 3565#define EVT_STC_CHANGE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_CHANGE, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3566#define EVT_STC_STYLENEEDED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_STYLENEEDED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3567#define EVT_STC_CHARADDED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_CHARADDED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3568#define EVT_STC_SAVEPOINTREACHED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_SAVEPOINTREACHED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3569#define EVT_STC_SAVEPOINTLEFT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_SAVEPOINTLEFT, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3570#define EVT_STC_ROMODIFYATTEMPT(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_ROMODIFYATTEMPT, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3571#define EVT_STC_KEY(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_KEY, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3572#define EVT_STC_DOUBLECLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_DOUBLECLICK, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3573#define EVT_STC_UPDATEUI(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_UPDATEUI, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3574#define EVT_STC_MODIFIED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_MODIFIED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3575#define EVT_STC_MACRORECORD(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_MACRORECORD, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3576#define EVT_STC_MARGINCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_MARGINCLICK, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3577#define EVT_STC_NEEDSHOWN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_NEEDSHOWN, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3578#define EVT_STC_PAINTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_PAINTED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3579#define EVT_STC_USERLISTSELECTION(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_USERLISTSELECTION, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3580#define EVT_STC_URIDROPPED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_URIDROPPED, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3581#define EVT_STC_DWELLSTART(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_DWELLSTART, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3582#define EVT_STC_DWELLEND(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_DWELLEND, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3583#define EVT_STC_START_DRAG(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_START_DRAG, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3584#define EVT_STC_DRAG_OVER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_DRAG_OVER, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3585#define EVT_STC_DO_DROP(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_DO_DROP, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3586#define EVT_STC_ZOOM(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_ZOOM, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3587#define EVT_STC_HOTSPOT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_HOTSPOT_CLICK, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3588#define EVT_STC_HOTSPOT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_HOTSPOT_DCLICK, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3589#define EVT_STC_CALLTIP_CLICK(id, fn)) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_CALLTIP_CLICK, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3590#define EVT_STC_AUTOCOMP_SELECTION(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_STC_AUTOCOMP_SELECTION, id, wxID_ANY, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxStyledTextEventFunction, & fn ), (wxObject *) NULL ), 3591#endif 3592 3593//---------------------------------------------------------------------- 3594// Utility functions used within wxSTC 3595 3596#ifndef SWIG 3597#if wxUSE_UNICODE 3598 3599WXDLLIMPEXP_STC wxString stc2wx(const char* str); 3600WXDLLIMPEXP_STC wxString stc2wx(const char* str, size_t len); 3601WXDLLIMPEXP_STC const wxWX2MBbuf wx2stc(const wxString& str); 3602 3603#else // not UNICODE 3604 3605inline wxString stc2wx(const char* str) { 3606 return wxString(str); 3607} 3608inline wxString stc2wx(const char* str, size_t len) { 3609 return wxString(str, len); 3610} 3611inline const wxWX2MBbuf wx2stc(const wxString& str) { 3612 return str.mbc_str(); 3613} 3614 3615#endif // UNICODE 3616#endif // SWIG 3617 3618//---------------------------------------------------------------------- 3619#endif 3620 3621 3622