#ifndef acdk_wx_ide_StyledTextCtrl_h
#define acdk_wx_ide_StyledTextCtrl_h
#include "ide.h"
#if defined(ACDK_SCINTILLA_INTERN)
#include "../../../ext/wxscintilla/wxscintilla.h"
#else
/FONT>
# define WXUSING_STC_DLL
# include <wx/stc/stc.h>
#endif
/FONT>
#include <acdk/wx/Control.h>
#include <acdk/cfgscript/Props.h>
//typedef wxStyledTextCtrl wxScintella;
namespace acdk {
namespace wx {
namespace ide {
enum SciStyles
{
SciStyleDefault = wxSTC_STYLE_DEFAULT, // wxSTC_STYLE_DEFAULT 32
SciStyleLinenumber = wxSTC_STYLE_LINENUMBER, // wxSTC_STYLE_LINENUMBER 33
SciStyleBracelight = wxSTC_STYLE_BRACELIGHT, // wxSTC_STYLE_BRACELIGHT 34
SciStyleBracebad = wxSTC_STYLE_BRACEBAD, // wxSTC_STYLE_BRACEBAD 35
SciStyleControlchar = wxSTC_STYLE_CONTROLCHAR, // wxSTC_STYLE_CONTROLCHAR 36
SciStyleIndentguide = wxSTC_STYLE_INDENTGUIDE, // wxSTC_STYLE_INDENTGUIDE 37
SciStyleLastpredefined = wxSTC_STYLE_LASTPREDEFINED, // wxSTC_STYLE_LASTPREDEFINED 39
SciStyleMax = wxSTC_STYLE_MAX // wxSTC_STYLE_MAX 127
};
/**
Symbolic key codes and modifier flags.
ASCII and other printable characters below 256.
Extended keys above 300.
*/
enum SciKeyCodes
{
SciKeyDown = wxSTC_KEY_DOWN, // wxSTC_KEY_DOWN 300
SciKeyUp = wxSTC_KEY_UP, // wxSTC_KEY_UP 301
SciKeyLeft = wxSTC_KEY_LEFT, // wxSTC_KEY_LEFT 302
SciKeyRight = wxSTC_KEY_RIGHT, // wxSTC_KEY_RIGHT 303
SciKeyHome = wxSTC_KEY_HOME, // wxSTC_KEY_HOME 304
SciKeyEnd = wxSTC_KEY_END, // wxSTC_KEY_END 305
SciKeyPrior = wxSTC_KEY_PRIOR, // wxSTC_KEY_PRIOR 306
SciKeyNext = wxSTC_KEY_NEXT, // wxSTC_KEY_NEXT 307
SciKeyDelete = wxSTC_KEY_DELETE, // wxSTC_KEY_DELETE 308
SciKeyInsert = wxSTC_KEY_INSERT, // wxSTC_KEY_INSERT 309
SciKeyEscape = wxSTC_KEY_ESCAPE, // wxSTC_KEY_ESCAPE 7
SciKeyBack = wxSTC_KEY_BACK, // wxSTC_KEY_BACK 8
SciKeyTab = wxSTC_KEY_TAB, // wxSTC_KEY_TAB 9
SciKeyReturn = wxSTC_KEY_RETURN, // wxSTC_KEY_RETURN 13
SciKeyAdd = wxSTC_KEY_ADD, // wxSTC_KEY_ADD 310
SciKeySubtract = wxSTC_KEY_SUBTRACT, // wxSTC_KEY_SUBTRACT 311
SciKeyDivide = wxSTC_KEY_DIVIDE, // wxSTC_KEY_DIVIDE 312
//SciScmodNull = wxSTC_SCMOD_NULL, // wxSTC_SCMOD_NULL 0
SciScmodShift = wxSTC_SCMOD_SHIFT, // wxSTC_SCMOD_SHIFT 1
SciScmodCtrl = wxSTC_SCMOD_CTRL, // wxSTC_SCMOD_CTRL 2
SciScmodAlt = wxSTC_SCMOD_ALT // wxSTC_SCMOD_ALT 4
};
enum SciLexers
{
SciLexContainer = wxSTC_LEX_CONTAINER, // wxSTC_LEX_CONTAINER 0
SciLexNull = wxSTC_LEX_NULL, // wxSTC_LEX_NULL 1
SciLexPython = wxSTC_LEX_PYTHON, // wxSTC_LEX_PYTHON 2
SciLexCpp = wxSTC_LEX_CPP, // wxSTC_LEX_CPP 3
SciLexHtml = wxSTC_LEX_HTML, // wxSTC_LEX_HTML 4
SciLexXml = wxSTC_LEX_XML, // wxSTC_LEX_XML 5
SciLexPerl = wxSTC_LEX_PERL, // wxSTC_LEX_PERL 6
SciLexSql = wxSTC_LEX_SQL, // wxSTC_LEX_SQL 7
SciLexVb = wxSTC_LEX_VB, // wxSTC_LEX_VB 8
SciLexProperties = wxSTC_LEX_PROPERTIES, // wxSTC_LEX_PROPERTIES 9
SciLexErrorlist = wxSTC_LEX_ERRORLIST, // wxSTC_LEX_ERRORLIST 10
SciLexMakefile = wxSTC_LEX_MAKEFILE, // wxSTC_LEX_MAKEFILE 11
SciLexBatch = wxSTC_LEX_BATCH, // wxSTC_LEX_BATCH 12
SciLexXcode = wxSTC_LEX_XCODE, // wxSTC_LEX_XCODE 13
SciLexLatex = wxSTC_LEX_LATEX, // wxSTC_LEX_LATEX 14
SciLexLua = wxSTC_LEX_LUA, // wxSTC_LEX_LUA 15
SciLexDiff = wxSTC_LEX_DIFF, // wxSTC_LEX_DIFF 16
SciLexConf = wxSTC_LEX_CONF, // wxSTC_LEX_CONF 17
SciLexPascal = wxSTC_LEX_PASCAL, // wxSTC_LEX_PASCAL 18
SciLexAve = wxSTC_LEX_AVE, // wxSTC_LEX_AVE 19
SciLexAda = wxSTC_LEX_ADA, // wxSTC_LEX_ADA 20
SciLexLisp = wxSTC_LEX_LISP, // wxSTC_LEX_LISP 21
SciLexRuby = wxSTC_LEX_RUBY, // wxSTC_LEX_RUBY 22
SciLexEiffel = wxSTC_LEX_EIFFEL, // wxSTC_LEX_EIFFEL 23
SciLexEiffelkw = wxSTC_LEX_EIFFELKW, // wxSTC_LEX_EIFFELKW 24
SciLexTcl = wxSTC_LEX_TCL, // wxSTC_LEX_TCL 25
SciLexNncrontab = wxSTC_LEX_NNCRONTAB, // wxSTC_LEX_NNCRONTAB 26
SciLexBullant = wxSTC_LEX_BULLANT, // wxSTC_LEX_BULLANT 27
SciLexVbscript = wxSTC_LEX_VBSCRIPT, // wxSTC_LEX_VBSCRIPT 28
SciLexAsp = wxSTC_LEX_ASP, // wxSTC_LEX_ASP 29
SciLexPhp = wxSTC_LEX_PHP, // wxSTC_LEX_PHP 30
SciLexBaan = wxSTC_LEX_BAAN, // wxSTC_LEX_BAAN 31
SciLexMatlab = wxSTC_LEX_MATLAB, // wxSTC_LEX_MATLAB 32
SciLexScriptol = wxSTC_LEX_SCRIPTOL, // wxSTC_LEX_SCRIPTOL 33
SciLexAsm = wxSTC_LEX_ASM, // wxSTC_LEX_ASM 34
SciLexCppnocase = wxSTC_LEX_CPPNOCASE, // wxSTC_LEX_CPPNOCASE 35
SciLexFortran = wxSTC_LEX_FORTRAN, // wxSTC_LEX_FORTRAN 36
SciLexF77 = wxSTC_LEX_F77, // wxSTC_LEX_F77 37
SciLexCss = wxSTC_LEX_CSS, // wxSTC_LEX_CSS 38
SciLexPov = wxSTC_LEX_POV, // wxSTC_LEX_POV 39
SciLexLout = wxSTC_LEX_LOUT, // wxSTC_LEX_LOUT 40
SciLexEscript = wxSTC_LEX_ESCRIPT, // wxSTC_LEX_ESCRIPT 41
SciLexPs = wxSTC_LEX_PS, // wxSTC_LEX_PS 42
SciLexNsis = wxSTC_LEX_NSIS, // wxSTC_LEX_NSIS 43
SciLexMmixal = wxSTC_LEX_MMIXAL // wxSTC_LEX_MMIXAL 44
/*
SciLexClw = wxSTC_LEX_CLW, // wxSTC_LEX_CLW 45
SciLexClwnocase = wxSTC_LEX_CLWNOCASE, // wxSTC_LEX_CLWNOCASE 46
SciLexLot = wxSTC_LEX_LOT, // wxSTC_LEX_LOT 47
SciLexYaml = wxSTC_LEX_YAML, // wxSTC_LEX_YAML 48
SciLexTex = wxSTC_LEX_TEX, // wxSTC_LEX_TEX 49
SciLexMetapost = wxSTC_LEX_METAPOST, // wxSTC_LEX_METAPOST 50
SciLexPowerbasic = wxSTC_LEX_POWERBASIC, // wxSTC_LEX_POWERBASIC 51
SciLexForth = wxSTC_LEX_FORTH, // wxSTC_LEX_FORTH 52
SciLexErlang = wxSTC_LEX_ERLANG, // wxSTC_LEX_ERLANG 53
SciLexOctave = wxSTC_LEX_OCTAVE, // wxSTC_LEX_OCTAVE 54
SciLexMssql = wxSTC_LEX_MSSQL, // wxSTC_LEX_MSSQL 55
SciLexVerilog = wxSTC_LEX_VERILOG, // wxSTC_LEX_VERILOG 56
SciLexKix = wxSTC_LEX_KIX, // wxSTC_LEX_KIX 57
SciLexGui4cli = wxSTC_LEX_GUI4CLI, // wxSTC_LEX_GUI4CLI 58
SciLexSpecman = wxSTC_LEX_SPECMAN, // wxSTC_LEX_SPECMAN 59
SciLexAu3 = wxSTC_LEX_AU3, // wxSTC_LEX_AU3 60
SciLexApdl = wxSTC_LEX_APDL, // wxSTC_LEX_APDL 61
SciLexBash = wxSTC_LEX_BASH, // wxSTC_LEX_BASH 62
*/
// When a lexer specifies its language as SCLEX_AUTOMATIC it receives a
// value assigned in sequence from SCLEX_AUTOMATIC+1.
//SciLexAutomatic = wxSTC_LEX_AUTOMATIC // wxSTC_LEX_AUTOMATIC 1000
};
enum SciStatesCpp
{
SciCDefault = wxSTC_C_DEFAULT, // wxSTC_C_DEFAULT 0
SciCComment = wxSTC_C_COMMENT, // wxSTC_C_COMMENT 1
SciCCommentline = wxSTC_C_COMMENTLINE, // wxSTC_C_COMMENTLINE 2
SciCCommentdoc = wxSTC_C_COMMENTDOC, // wxSTC_C_COMMENTDOC 3
SciCNumber = wxSTC_C_NUMBER, // wxSTC_C_NUMBER 4
SciCWord = wxSTC_C_WORD, // wxSTC_C_WORD 5
SciCString = wxSTC_C_STRING, // wxSTC_C_STRING 6
SciCCharacter = wxSTC_C_CHARACTER, // wxSTC_C_CHARACTER 7
SciCUuid = wxSTC_C_UUID, // wxSTC_C_UUID 8
SciCPreprocessor = wxSTC_C_PREPROCESSOR, // wxSTC_C_PREPROCESSOR 9
SciCOperator = wxSTC_C_OPERATOR, // wxSTC_C_OPERATOR 10
SciCIdentifier = wxSTC_C_IDENTIFIER, // wxSTC_C_IDENTIFIER 11
SciCStringeol = wxSTC_C_STRINGEOL, // wxSTC_C_STRINGEOL 12
SciCVerbatim = wxSTC_C_VERBATIM, // wxSTC_C_VERBATIM 13
SciCRegex = wxSTC_C_REGEX, // wxSTC_C_REGEX 14
SciCCommentlinedoc = wxSTC_C_COMMENTLINEDOC, // wxSTC_C_COMMENTLINEDOC 15
SciCWord2 = wxSTC_C_WORD2, // wxSTC_C_WORD2 16
SciCCommentdockeyword = wxSTC_C_COMMENTDOCKEYWORD, // wxSTC_C_COMMENTDOCKEYWORD 17
SciCCommentdockeyworderror = wxSTC_C_COMMENTDOCKEYWORDERROR, // wxSTC_C_COMMENTDOCKEYWORDERROR 18
SciCGlobalclass = wxSTC_C_GLOBALCLASS // wxSTC_C_GLOBALCLASS 19
};
enum StcMarginType
{
StcMarginSymbol = wxSTC_MARGIN_SYMBOL, // wxSTC_MARGIN_SYMBOL 0
StcMarginNumber = wxSTC_MARGIN_NUMBER // wxSTC_MARGIN_NUMBER 1
};
enum StcMarkerFlags
{
StcMarkerMax = wxSTC_MARKER_MAX, // wxSTC_MARKER_MAX 31
StcMarkCircle = wxSTC_MARK_CIRCLE, // wxSTC_MARK_CIRCLE 0
StcMarkRoundrect = wxSTC_MARK_ROUNDRECT, // wxSTC_MARK_ROUNDRECT 1
StcMarkArrow = wxSTC_MARK_ARROW, // wxSTC_MARK_ARROW 2
StcMarkSmallrect = wxSTC_MARK_SMALLRECT, // wxSTC_MARK_SMALLRECT 3
StcMarkShortarrow = wxSTC_MARK_SHORTARROW, // wxSTC_MARK_SHORTARROW 4
StcMarkEmpty = wxSTC_MARK_EMPTY, // wxSTC_MARK_EMPTY 5
StcMarkArrowdown = wxSTC_MARK_ARROWDOWN, // wxSTC_MARK_ARROWDOWN 6
StcMarkMinus = wxSTC_MARK_MINUS, // wxSTC_MARK_MINUS 7
StcMarkPlus = wxSTC_MARK_PLUS, // wxSTC_MARK_PLUS 8
// Shapes used for outlining column.
StcMarkVline = wxSTC_MARK_VLINE, // wxSTC_MARK_VLINE 9
StcMarkLcorner = wxSTC_MARK_LCORNER, // wxSTC_MARK_LCORNER 10
StcMarkTcorner = wxSTC_MARK_TCORNER, // wxSTC_MARK_TCORNER 11
StcMarkBoxplus = wxSTC_MARK_BOXPLUS, // wxSTC_MARK_BOXPLUS 12
StcMarkBoxplusconnected = wxSTC_MARK_BOXPLUSCONNECTED, // wxSTC_MARK_BOXPLUSCONNECTED 13
StcMarkBoxminus = wxSTC_MARK_BOXMINUS, // wxSTC_MARK_BOXMINUS 14
StcMarkBoxminusconnected = wxSTC_MARK_BOXMINUSCONNECTED, // wxSTC_MARK_BOXMINUSCONNECTED 15
StcMarkLcornercurve = wxSTC_MARK_LCORNERCURVE, // wxSTC_MARK_LCORNERCURVE 16
StcMarkTcornercurve = wxSTC_MARK_TCORNERCURVE, // wxSTC_MARK_TCORNERCURVE 17
StcMarkCircleplus = wxSTC_MARK_CIRCLEPLUS, // wxSTC_MARK_CIRCLEPLUS 18
StcMarkCircleplusconnected = wxSTC_MARK_CIRCLEPLUSCONNECTED, // wxSTC_MARK_CIRCLEPLUSCONNECTED 19
StcMarkCircleminus = wxSTC_MARK_CIRCLEMINUS, // wxSTC_MARK_CIRCLEMINUS 20
StcMarkCircleminusconnected = wxSTC_MARK_CIRCLEMINUSCONNECTED, // wxSTC_MARK_CIRCLEMINUSCONNECTED 21
// Invisible mark that only sets the line background color.
StcMarkBackground = wxSTC_MARK_BACKGROUND, // wxSTC_MARK_BACKGROUND 22
StcMarkDotdotdot = wxSTC_MARK_DOTDOTDOT, // wxSTC_MARK_DOTDOTDOT 23
StcMarkArrows = wxSTC_MARK_ARROWS, // wxSTC_MARK_ARROWS 24
StcMarkPixmap = wxSTC_MARK_PIXMAP, // wxSTC_MARK_PIXMAP 25
StcMarkCharacter = wxSTC_MARK_CHARACTER, // wxSTC_MARK_CHARACTER 10000
// Markers used for outlining column.
StcMarknumFolderend = wxSTC_MARKNUM_FOLDEREND, // wxSTC_MARKNUM_FOLDEREND 25
StcMarknumFolderopenmid = wxSTC_MARKNUM_FOLDEROPENMID, // wxSTC_MARKNUM_FOLDEROPENMID 26
StcMarknumFoldermidtail = wxSTC_MARKNUM_FOLDERMIDTAIL, // wxSTC_MARKNUM_FOLDERMIDTAIL 27
StcMarknumFoldertail = wxSTC_MARKNUM_FOLDERTAIL, // wxSTC_MARKNUM_FOLDERTAIL 28
StcMarknumFoldersub = wxSTC_MARKNUM_FOLDERSUB, // wxSTC_MARKNUM_FOLDERSUB 29
StcMarknumFolder = wxSTC_MARKNUM_FOLDER, // wxSTC_MARKNUM_FOLDER 30
StcMarknumFolderopen = wxSTC_MARKNUM_FOLDEROPEN, // wxSTC_MARKNUM_FOLDEROPEN 31
StcMaskFolders = wxSTC_MASK_FOLDERS // wxSTC_MASK_FOLDERS 0xFE000000
};
enum StcCharsets
{
// Character set identifiers are used in StyleSetCharacterSet.
// The values are the same as the Windows *_CHARSET values.
StcCharsetAnsi = wxSTC_CHARSET_ANSI, // wxSTC_CHARSET_ANSI 0
StcCharsetDefault = wxSTC_CHARSET_DEFAULT, // wxSTC_CHARSET_DEFAULT 1
StcCharsetBaltic = wxSTC_CHARSET_BALTIC, // wxSTC_CHARSET_BALTIC 186
StcCharsetChinesebig5 = wxSTC_CHARSET_CHINESEBIG5, // wxSTC_CHARSET_CHINESEBIG5 136
StcCharsetEasteurope = wxSTC_CHARSET_EASTEUROPE, // wxSTC_CHARSET_EASTEUROPE 238
StcCharsetGb2312 = wxSTC_CHARSET_GB2312, // wxSTC_CHARSET_GB2312 134
StcCharsetGreek = wxSTC_CHARSET_GREEK, // wxSTC_CHARSET_GREEK 161
StcCharsetHangul = wxSTC_CHARSET_HANGUL, // wxSTC_CHARSET_HANGUL 129
StcCharsetMac = wxSTC_CHARSET_MAC, // wxSTC_CHARSET_MAC 77
StcCharsetOem = wxSTC_CHARSET_OEM, // wxSTC_CHARSET_OEM 255
StcCharsetRussian = wxSTC_CHARSET_RUSSIAN, // wxSTC_CHARSET_RUSSIAN 204
StcCharsetShiftjis = wxSTC_CHARSET_SHIFTJIS, // wxSTC_CHARSET_SHIFTJIS 128
StcCharsetSymbol = wxSTC_CHARSET_SYMBOL, // wxSTC_CHARSET_SYMBOL 2
StcCharsetTurkish = wxSTC_CHARSET_TURKISH, // wxSTC_CHARSET_TURKISH 162
StcCharsetJohab = wxSTC_CHARSET_JOHAB, // wxSTC_CHARSET_JOHAB 130
StcCharsetHebrew = wxSTC_CHARSET_HEBREW, // wxSTC_CHARSET_HEBREW 177
StcCharsetArabic = wxSTC_CHARSET_ARABIC, // wxSTC_CHARSET_ARABIC 178
StcCharsetVietnamese = wxSTC_CHARSET_VIETNAMESE, // wxSTC_CHARSET_VIETNAMESE 163
StcCharsetThai = wxSTC_CHARSET_THAI, // wxSTC_CHARSET_THAI 222
StcCaseMixed = wxSTC_CASE_MIXED, // wxSTC_CASE_MIXED 0
StcCaseUpper = wxSTC_CASE_UPPER, // wxSTC_CASE_UPPER 1
StcCaseLower = wxSTC_CASE_LOWER, // wxSTC_CASE_LOWER 2
StcIndicMax = wxSTC_INDIC_MAX, // wxSTC_INDIC_MAX 7
StcIndicPlain = wxSTC_INDIC_PLAIN, // wxSTC_INDIC_PLAIN 0
StcIndicSquiggle = wxSTC_INDIC_SQUIGGLE, // wxSTC_INDIC_SQUIGGLE 1
StcIndicTt = wxSTC_INDIC_TT, // wxSTC_INDIC_TT 2
StcIndicDiagonal = wxSTC_INDIC_DIAGONAL, // wxSTC_INDIC_DIAGONAL 3
StcIndicStrike = wxSTC_INDIC_STRIKE, // wxSTC_INDIC_STRIKE 4
StcIndicHidden = wxSTC_INDIC_HIDDEN, // wxSTC_INDIC_HIDDEN 5
StcIndicBox = wxSTC_INDIC_BOX, // wxSTC_INDIC_BOX 6
StcIndic0Mask = wxSTC_INDIC0_MASK, // wxSTC_INDIC0_MASK 0x20
StcIndic1Mask = wxSTC_INDIC1_MASK, // wxSTC_INDIC1_MASK 0x40
StcIndic2Mask = wxSTC_INDIC2_MASK, // wxSTC_INDIC2_MASK 0x80
StcIndicsMask = wxSTC_INDICS_MASK // wxSTC_INDICS_MASK 0xE0
};
enum StcFindFlags
{
StcFindWholeword = wxSTC_FIND_WHOLEWORD, // wxSTC_FIND_WHOLEWORD 2
StcFindMatchcase = wxSTC_FIND_MATCHCASE, // wxSTC_FIND_MATCHCASE 4
StcFindWordstart = wxSTC_FIND_WORDSTART, // wxSTC_FIND_WORDSTART 0x00100000
StcFindRegexp = wxSTC_FIND_REGEXP, // wxSTC_FIND_REGEXP 0x00200000
StcFindPosix = wxSTC_FIND_POSIX // wxSTC_FIND_POSIX 0x00400000
};
/**
Commands that can be bound to keystrokes
*/
enum SciCommands
{
/// Redoes the next action on the undo history.
SciCmdRedo = wxSTC_CMD_REDO, // wxSTC_CMD_REDO 2011
/// Select all the text in the document.
SciCmdSelectall = wxSTC_CMD_SELECTALL, // wxSTC_CMD_SELECTALL 2013
/// Undo one action in the undo history.
SciCmdUndo = wxSTC_CMD_UNDO, // wxSTC_CMD_UNDO 2176
/// Cut the selection to the clipboard.
SciCmdCut = wxSTC_CMD_CUT, // wxSTC_CMD_CUT 2177
/// Copy the selection to the clipboard.
SciCmdCopy = wxSTC_CMD_COPY, // wxSTC_CMD_COPY 2178
/// Paste the contents of the clipboard into the document replacing the selection.
SciCmdPaste = wxSTC_CMD_PASTE, // wxSTC_CMD_PASTE 2179
/// Clear the selection.
SciCmdClear = wxSTC_CMD_CLEAR, // wxSTC_CMD_CLEAR 2180
/// Move caret down one line.
SciCmdLinedown = wxSTC_CMD_LINEDOWN, // wxSTC_CMD_LINEDOWN 2300
/// Move caret down one line extending selection to new caret position.
SciCmdLinedownextend = wxSTC_CMD_LINEDOWNEXTEND, // wxSTC_CMD_LINEDOWNEXTEND 2301
/// Move caret up one line.
SciCmdLineup = wxSTC_CMD_LINEUP, // wxSTC_CMD_LINEUP 2302
/// Move caret up one line extending selection to new caret position.
SciCmdLineupextend = wxSTC_CMD_LINEUPEXTEND, // wxSTC_CMD_LINEUPEXTEND 2303
/// Move caret left one character.
SciCmdCharleft = wxSTC_CMD_CHARLEFT, // wxSTC_CMD_CHARLEFT 2304
/// Move caret left one character extending selection to new caret position.
SciCmdCharleftextend = wxSTC_CMD_CHARLEFTEXTEND, // wxSTC_CMD_CHARLEFTEXTEND 2305
/// Move caret right one character.
SciCmdCharright = wxSTC_CMD_CHARRIGHT, // wxSTC_CMD_CHARRIGHT 2306
/// Move caret right one character extending selection to new caret position.
SciCmdCharrightextend = wxSTC_CMD_CHARRIGHTEXTEND, // wxSTC_CMD_CHARRIGHTEXTEND 2307
/// Move caret left one word.
SciCmdWordleft = wxSTC_CMD_WORDLEFT, // wxSTC_CMD_WORDLEFT 2308
/// Move caret left one word extending selection to new caret position.
SciCmdWordleftextend = wxSTC_CMD_WORDLEFTEXTEND, // wxSTC_CMD_WORDLEFTEXTEND 2309
/// Move caret right one word.
SciCmdWordright = wxSTC_CMD_WORDRIGHT, // wxSTC_CMD_WORDRIGHT 2310
/// Move caret right one word extending selection to new caret position.
SciCmdWordrightextend = wxSTC_CMD_WORDRIGHTEXTEND, // wxSTC_CMD_WORDRIGHTEXTEND 2311
/// Move caret to first position on line.
SciCmdHome = wxSTC_CMD_HOME, // wxSTC_CMD_HOME 2312
/// Move caret to first position on line extending selection to new caret position.
SciCmdHomeextend = wxSTC_CMD_HOMEEXTEND, // wxSTC_CMD_HOMEEXTEND 2313
/// Move caret to last position on line.
SciCmdLineend = wxSTC_CMD_LINEEND, // wxSTC_CMD_LINEEND 2314
/// Move caret to last position on line extending selection to new caret position.
SciCmdLineendextend = wxSTC_CMD_LINEENDEXTEND, // wxSTC_CMD_LINEENDEXTEND 2315
/// Move caret to first position in document.
SciCmdDocumentstart = wxSTC_CMD_DOCUMENTSTART, // wxSTC_CMD_DOCUMENTSTART 2316
/// Move caret to first position in document extending selection to new caret position.
SciCmdDocumentstartextend = wxSTC_CMD_DOCUMENTSTARTEXTEND, // wxSTC_CMD_DOCUMENTSTARTEXTEND 2317
/// Move caret to last position in document.
SciCmdDocumentend = wxSTC_CMD_DOCUMENTEND, // wxSTC_CMD_DOCUMENTEND 2318
/// Move caret to last position in document extending selection to new caret position.
SciCmdDocumentendextend = wxSTC_CMD_DOCUMENTENDEXTEND, // wxSTC_CMD_DOCUMENTENDEXTEND 2319
/// Move caret one page up.
SciCmdPageup = wxSTC_CMD_PAGEUP, // wxSTC_CMD_PAGEUP 2320
/// Move caret one page up extending selection to new caret position.
SciCmdPageupextend = wxSTC_CMD_PAGEUPEXTEND, // wxSTC_CMD_PAGEUPEXTEND 2321
/// Move caret one page down.
SciCmdPagedown = wxSTC_CMD_PAGEDOWN, // wxSTC_CMD_PAGEDOWN 2322
/// Move caret one page down extending selection to new caret position.
SciCmdPagedownextend = wxSTC_CMD_PAGEDOWNEXTEND, // wxSTC_CMD_PAGEDOWNEXTEND 2323
/// Switch from insert to overtype mode or the reverse.
SciCmdEdittoggleovertype = wxSTC_CMD_EDITTOGGLEOVERTYPE, // wxSTC_CMD_EDITTOGGLEOVERTYPE 2324
/// Cancel any modes such as call tip or auto-completion list display.
SciCmdCancel = wxSTC_CMD_CANCEL, // wxSTC_CMD_CANCEL 2325
/// Delete the selection or if no selection, the character before the caret.
SciCmdDeleteback = wxSTC_CMD_DELETEBACK, // wxSTC_CMD_DELETEBACK 2326
/// If selection is empty or all on one line replace the selection with a tab character.
/// If more than one line selected, indent the lines.
SciCmdTab = wxSTC_CMD_TAB, // wxSTC_CMD_TAB 2327
/// Dedent the selected lines.
SciCmdBacktab = wxSTC_CMD_BACKTAB, // wxSTC_CMD_BACKTAB 2328
/// Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
SciCmdNewline = wxSTC_CMD_NEWLINE, // wxSTC_CMD_NEWLINE 2329
/// Insert a Form Feed character.
SciCmdFormfeed = wxSTC_CMD_FORMFEED, // wxSTC_CMD_FORMFEED 2330
/// Move caret to before first visible character on line.
/// If already there move to first character on line.
SciCmdVchome = wxSTC_CMD_VCHOME, // wxSTC_CMD_VCHOME 2331
/// Like VCHome but extending selection to new caret position.
SciCmdVchomeextend = wxSTC_CMD_VCHOMEEXTEND, // wxSTC_CMD_VCHOMEEXTEND 2332
/// Magnify the displayed text by increasing the sizes by 1 point.
SciCmdZoomin = wxSTC_CMD_ZOOMIN, // wxSTC_CMD_ZOOMIN 2333
/// Make the displayed text smaller by decreasing the sizes by 1 point.
SciCmdZoomout = wxSTC_CMD_ZOOMOUT, // wxSTC_CMD_ZOOMOUT 2334
/// Delete the word to the left of the caret.
SciCmdDelwordleft = wxSTC_CMD_DELWORDLEFT, // wxSTC_CMD_DELWORDLEFT 2335
/// Delete the word to the right of the caret.
SciCmdDelwordright = wxSTC_CMD_DELWORDRIGHT, // wxSTC_CMD_DELWORDRIGHT 2336
/// Cut the line containing the caret.
SciCmdLinecut = wxSTC_CMD_LINECUT, // wxSTC_CMD_LINECUT 2337
/// Delete the line containing the caret.
SciCmdLinedelete = wxSTC_CMD_LINEDELETE, // wxSTC_CMD_LINEDELETE 2338
/// Switch the current line with the previous.
SciCmdLinetranspose = wxSTC_CMD_LINETRANSPOSE, // wxSTC_CMD_LINETRANSPOSE 2339
/// Duplicate the current line.
SciCmdLineduplicate = wxSTC_CMD_LINEDUPLICATE, // wxSTC_CMD_LINEDUPLICATE 2404
/// Transform the selection to lower case.
SciCmdLowercase = wxSTC_CMD_LOWERCASE, // wxSTC_CMD_LOWERCASE 2340
/// Transform the selection to upper case.
SciCmdUppercase = wxSTC_CMD_UPPERCASE, // wxSTC_CMD_UPPERCASE 2341
/// Scroll the document down, keeping the caret visible.
SciCmdLinescrolldown = wxSTC_CMD_LINESCROLLDOWN, // wxSTC_CMD_LINESCROLLDOWN 2342
/// Scroll the document up, keeping the caret visible.
SciCmdLinescrollup = wxSTC_CMD_LINESCROLLUP, // wxSTC_CMD_LINESCROLLUP 2343
/// Delete the selection or if no selection, the character before the caret.
/// Will not delete the character before at the start of a line.
SciCmdDeletebacknotline = wxSTC_CMD_DELETEBACKNOTLINE, // wxSTC_CMD_DELETEBACKNOTLINE 2344
/// Move caret to first position on display line.
SciCmdHomedisplay = wxSTC_CMD_HOMEDISPLAY, // wxSTC_CMD_HOMEDISPLAY 2345
/// Move caret to first position on display line extending selection to
/// new caret position.
SciCmdHomedisplayextend = wxSTC_CMD_HOMEDISPLAYEXTEND, // wxSTC_CMD_HOMEDISPLAYEXTEND 2346
/// Move caret to last position on display line.
SciCmdLineenddisplay = wxSTC_CMD_LINEENDDISPLAY, // wxSTC_CMD_LINEENDDISPLAY 2347
/// Move caret to last position on display line extending selection to new
/// caret position.
SciCmdLineenddisplayextend = wxSTC_CMD_LINEENDDISPLAYEXTEND, // wxSTC_CMD_LINEENDDISPLAYEXTEND 2348
/// These are like their namesakes Home(Extend)?, LineEnd(Extend)?, VCHome(Extend)?
/// except they behave differently when word-wrap is enabled:
/// They go first to the start / end of the display line, like (Home|LineEnd)Display
/// The difference is that, the cursor is already at the point, it goes on to the start
/// or end of the document line, as appropriate for (Home|LineEnd|VCHome)(Extend)?.
SciCmdHomewrap = wxSTC_CMD_HOMEWRAP, // wxSTC_CMD_HOMEWRAP 2349
SciCmdHomewrapextend = wxSTC_CMD_HOMEWRAPEXTEND, // wxSTC_CMD_HOMEWRAPEXTEND 2450
SciCmdLineendwrap = wxSTC_CMD_LINEENDWRAP, // wxSTC_CMD_LINEENDWRAP 2451
SciCmdLineendwrapextend = wxSTC_CMD_LINEENDWRAPEXTEND, // wxSTC_CMD_LINEENDWRAPEXTEND 2452
SciCmdVchomewrap = wxSTC_CMD_VCHOMEWRAP, // wxSTC_CMD_VCHOMEWRAP 2453
SciCmdVchomewrapextend = wxSTC_CMD_VCHOMEWRAPEXTEND, // wxSTC_CMD_VCHOMEWRAPEXTEND 2454
/// Copy the line containing the caret.
// not supported by STC SciCmdLinecopy = wxSTC_CMD_LINECOPY, // wxSTC_CMD_LINECOPY 2455
/// Move to the previous change in capitalisation.
SciCmdWordpartleft = wxSTC_CMD_WORDPARTLEFT, // wxSTC_CMD_WORDPARTLEFT 2390
/// Move to the previous change in capitalisation extending selection
/// to new caret position.
SciCmdWordpartleftextend = wxSTC_CMD_WORDPARTLEFTEXTEND, // wxSTC_CMD_WORDPARTLEFTEXTEND 2391
/// Move to the change next in capitalisation.
SciCmdWordpartright = wxSTC_CMD_WORDPARTRIGHT, // wxSTC_CMD_WORDPARTRIGHT 2392
/// Move to the next change in capitalisation extending selection
/// to new caret position.
SciCmdWordpartrightextend = wxSTC_CMD_WORDPARTRIGHTEXTEND, // wxSTC_CMD_WORDPARTRIGHTEXTEND 2393
/// Delete back from the current position to the start of the line.
SciCmdDellineleft = wxSTC_CMD_DELLINELEFT, // wxSTC_CMD_DELLINELEFT 2395
/// Delete forwards from the current position to the end of the line.
SciCmdDellineright = wxSTC_CMD_DELLINERIGHT, // wxSTC_CMD_DELLINERIGHT 2396
/// Move caret between paragraphs (delimited by empty lines).
SciCmdParadown = wxSTC_CMD_PARADOWN, // wxSTC_CMD_PARADOWN 2413
SciCmdParadownextend = wxSTC_CMD_PARADOWNEXTEND, // wxSTC_CMD_PARADOWNEXTEND 2414
SciCmdParaup = wxSTC_CMD_PARAUP, // wxSTC_CMD_PARAUP 2415
SciCmdParaupextend = wxSTC_CMD_PARAUPEXTEND, // wxSTC_CMD_PARAUPEXTEND 2416
/* not supported from here from STC
/// Move caret down one line, extending rectangular selection to new caret position.
// not supported by STC SciCmdLinedownrectextend = wxSTC_CMD_LINEDOWNRECTEXTEND, // wxSTC_CMD_LINEDOWNRECTEXTEND 2426
/// Move caret up one line, extending rectangular selection to new caret position.
SciCmdLineuprectextend = wxSTC_CMD_LINEUPRECTEXTEND, // wxSTC_CMD_LINEUPRECTEXTEND 2427
/// Move caret left one character, extending rectangular selection to new caret position.
SciCmdCharleftrectextend = wxSTC_CMD_CHARLEFTRECTEXTEND, // wxSTC_CMD_CHARLEFTRECTEXTEND 2428
/// Move caret right one character, extending rectangular selection to new caret position.
SciCmdCharrightrectextend = wxSTC_CMD_CHARRIGHTRECTEXTEND, // wxSTC_CMD_CHARRIGHTRECTEXTEND 2429
/// Move caret to first position on line, extending rectangular selection to new caret position.
SciCmdHomerectextend = wxSTC_CMD_HOMERECTEXTEND, // wxSTC_CMD_HOMERECTEXTEND 2430
/// Move caret to before first visible character on line.
/// If already there move to first character on line.
/// In either case, extend rectangular selection to new caret position.
SciCmdVchomerectextend = wxSTC_CMD_VCHOMERECTEXTEND, // wxSTC_CMD_VCHOMERECTEXTEND 2431
/// Move caret to last position on line, extending rectangular selection to new caret position.
SciCmdLineendrectextend = wxSTC_CMD_LINEENDRECTEXTEND, // wxSTC_CMD_LINEENDRECTEXTEND 2432
/// Move caret one page up, extending rectangular selection to new caret position.
SciCmdPageuprectextend = wxSTC_CMD_PAGEUPRECTEXTEND, // wxSTC_CMD_PAGEUPRECTEXTEND 2433
/// Move caret one page down, extending rectangular selection to new caret position.
SciCmdPagedownrectextend = wxSTC_CMD_PAGEDOWNRECTEXTEND, // wxSTC_CMD_PAGEDOWNRECTEXTEND 2434
/// Move caret to top of page, or one page up if already at top of page.
SciCmdStutteredpageup = wxSTC_CMD_STUTTEREDPAGEUP, // wxSTC_CMD_STUTTEREDPAGEUP 2435
/// Move caret to top of page, or one page up if already at top of page, extending selection to new caret position.
SciCmdStutteredpageupextend = wxSTC_CMD_STUTTEREDPAGEUPEXTEND, // wxSTC_CMD_STUTTEREDPAGEUPEXTEND 2436
/// Move caret to bottom of page, or one page down if already at bottom of page.
SciCmdStutteredpagedown = wxSTC_CMD_STUTTEREDPAGEDOWN, // wxSTC_CMD_STUTTEREDPAGEDOWN 2437
/// Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position.
SciCmdStutteredpagedownextend = wxSTC_CMD_STUTTEREDPAGEDOWNEXTEND, // wxSTC_CMD_STUTTEREDPAGEDOWNEXTEND 2438
/// Move caret left one word, position cursor at end of word.
SciCmdWordleftend = wxSTC_CMD_WORDLEFTEND, // wxSTC_CMD_WORDLEFTEND 2439
/// Move caret left one word, position cursor at end of word, extending selection to new caret position.
SciCmdWordleftendextend = wxSTC_CMD_WORDLEFTENDEXTEND, // wxSTC_CMD_WORDLEFTENDEXTEND 2440
/// Move caret right one word, position cursor at end of word.
SciCmdWordrightend = wxSTC_CMD_WORDRIGHTEND, // wxSTC_CMD_WORDRIGHTEND 2441
/// Move caret right one word, position cursor at end of word, extending selection to new caret position.
SciCmdWordrightendextend = wxSTC_CMD_WORDRIGHTENDEXTEND // wxSTC_CMD_WORDRIGHTENDEXTEND 2442
*/
};
enum StcCache
{
StcCacheNone = wxSTC_CACHE_NONE, // wxSTC_CACHE_NONE 0
StcCacheCaret = wxSTC_CACHE_CARET, // wxSTC_CACHE_CARET 1
StcCachePage = wxSTC_CACHE_PAGE, // wxSTC_CACHE_PAGE 2
StcCacheDocument = wxSTC_CACHE_DOCUMENT // wxSTC_CACHE_DOCUMENT 3
};
/**
see StyledTextCtrl::setModEventMask
*/
enum StcContainerNotifications
{
StcModInserttext = wxSTC_MOD_INSERTTEXT, // wxSTC_MOD_INSERTTEXT 0x1
StcModDeletetext = wxSTC_MOD_DELETETEXT, // wxSTC_MOD_DELETETEXT 0x2
StcModChangestyle = wxSTC_MOD_CHANGESTYLE, // wxSTC_MOD_CHANGESTYLE 0x4
StcModChangefold = wxSTC_MOD_CHANGEFOLD, // wxSTC_MOD_CHANGEFOLD 0x8
StcPerformedUser = wxSTC_PERFORMED_USER, // wxSTC_PERFORMED_USER 0x10
StcPerformedUndo = wxSTC_PERFORMED_UNDO, // wxSTC_PERFORMED_UNDO 0x20
StcPerformedRedo = wxSTC_PERFORMED_REDO, // wxSTC_PERFORMED_REDO 0x40
StcLaststepinundoredo = wxSTC_LASTSTEPINUNDOREDO, // wxSTC_LASTSTEPINUNDOREDO 0x100
StcModChangemarker = wxSTC_MOD_CHANGEMARKER, // wxSTC_MOD_CHANGEMARKER 0x200
StcModBeforeinsert = wxSTC_MOD_BEFOREINSERT, // wxSTC_MOD_BEFOREINSERT 0x400
StcModBeforedelete = wxSTC_MOD_BEFOREDELETE, // wxSTC_MOD_BEFOREDELETE 0x800
StcModeventmaskall = wxSTC_MODEVENTMASKALL // wxSTC_MODEVENTMASKALL 0xF77
};
#if defined (ACDK_OS_WIN32)
# define EXT_TEXTMARFUNC(call) call
#else
/FONT>
# define EXT_TEXTMARFUNC(call) sys::coreout << #call << " not supported on this platform" << sys::eofl
#endif
/FONT>
using namespace acdk::wx;
ACDK_DECL_CLASS(StyledTextCtrl);
/**
see wxStyledTextCtrl
@author Roger Rene Kommer (mailto:kommer@artefaktur.com)
@version $Revision: 1.7 $
@date $Date: 2005/04/21 09:52:29 $
*/
class ACDK_WX_IDE_PUBLIC StyledTextCtrl
: extends Control
{
ACDK_WITH_METAINFO(StyledTextCtrl)
static acdk::cfgscript::RProps _globalProps;
public:
/// wxStyledTextCtrl
ACDK_WX_STD_MEMBERS(StyledTextCtrl, Control)
StyledTextCtrl(IN(RWindow) parent, int id, IN(RPoint) pos = Point::defaultPosition(), IN(RSize) size = Size::defaultSize(),
int style = 0, IN(RString) name = "SCIwindow")
: Control(new wxStyledTextCtrl(CLS2WXPTR(parent), id, CLS2WXREF(pos), CLS2WXREF(size), style, S2WXS(name)))
{
}
/**
initialize the control with given property set
Please refer to acdk/acdk_wx/cfg/csf/acdk/wx/ide/StyledTextCtrConfig.csf
*/
void initFromProps(IN(::acdk::cfgscript::RProps) props);
foreign int _initState(IN(::acdk::cfgscript::RProps) props, int state);
/**
try to load $(ACDK_TOOLS_HOME)/acdk_wx/cfg/csf/acdk/wx/ide/StyledTextCtrConfig.csf
*/
static void loadStdConfig();
static void loadConfig(IN(RString) csfFile);
/**
use the previous load configuration to setup syntax hilighting
*/
void initFromTextFile(IN(RString) fileName);
//void AddText (const wxString& text);
inline void addText(IN(RString) text) { getWx()->AddText(S2WXS(text)); }
//void AddText (const int length, const wxString& text);
// not supported inline void addText(int length, IN(RString) text) { getWx()->AddText(length, S2WXS(text)); }
// Add array of cells to document.
//void AddStyledText (const wxMemoryBuffer& data);
// ### TODO inline void addStyledText(IN(RMemoryBuffer) data) { getWx()->AddStyledText(CLS2WXREF(data)); }
// Insert string at a position.
//void InsertText (int pos, const wxString& text);
inline void insertText(int pos, IN(RString) text) { getWx()->InsertText(pos, S2WXS(text)); }
// Delete all text in the document.
//void ClearAll();
inline void clearAll() { getWx()->ClearAll(); }
// Set all style bytes to 0, remove all folding information.
//void ClearDocumentStyle();
inline void clearDocumentStyle() { getWx()->ClearDocumentStyle(); }
// The number of characters in the document.
//int GetLength();
inline int getLength() { return getWx()->GetLength(); }
// Returns the character byte at the position.
//int GetCharAt (int pos);
inline int getCharAt(int pos) { return getWx()->GetCharAt(pos); }
// Returns the position of the caret.
//int GetCurrentPos();
inline int getCurrentPos() { return getWx()->GetCurrentPos(); }
// Returns the position of the opposite end of the selection to the caret.
//int GetAnchor();
inline int getAnchor() { return getWx()->GetAnchor(); }
// Returns the style byte at the position.
//int GetStyleAt (int pos);
inline int getStyleAt(int pos) { return getWx()->GetStyleAt(pos); }
// Redoes the next action on the undo history.
//void Redo();
inline void redo() { getWx()->Redo(); }
// Choose between collecting actions into the undo
// history and discarding them.
//void SetUndoCollection (bool collectUndo);
inline void setUndoCollection(bool collectUndo) { getWx()->SetUndoCollection(collectUndo); }
// Select all the text in the document.
//void SelectAll();
inline void selectAll() { getWx()->SelectAll(); }
// Remember the current position in the undo history as the position
// at which the document was saved.
//void SetSavePoint();
inline void setSavePoint() { getWx()->SetSavePoint(); }
// Retrieve a buffer of cells.
//wxMemoryBuffer GetStyledText (int startPos, int endPos);
// ### TODO inline RMemoryBuffer getStyledText(int startPos, int endPos) { return WXVAL2CLS(MemoryBuffer, getWx()->GetStyledText(startPos, endPos)); }
// Are there any redoable actions in the undo history?
//bool CanRedo();
inline bool canRedo() { return getWx()->CanRedo(); }
// Retrieve the line number at which a particular marker is located.
//int MarkerLineFromHandle (int handle);
inline int markerLineFromHandle(int handle) { return getWx()->MarkerLineFromHandle(handle); }
// Delete a marker.
//void MarkerDeleteHandle (int handle);
inline void markerDeleteHandle(int handle) { getWx()->MarkerDeleteHandle(handle); }
// Is undo history being collected?
//bool GetUndoCollection();
inline bool getUndoCollection() { return getWx()->GetUndoCollection(); }
// Are white space characters currently visible?
// Returns one of SCWS_* constants.
//int GetViewWhiteSpace();
inline int getViewWhiteSpace() { return getWx()->GetViewWhiteSpace(); }
// Make white space characters invisible, always visible or visible outside indentation.
//void SetViewWhiteSpace (int viewWS);
inline void setViewWhiteSpace(int viewWS) { getWx()->SetViewWhiteSpace(viewWS); }
// Find the position from a point within the window.
//int PositionFromPoint (wxPoint pt);
inline int positionFromPoint(IN(RPoint) pt) { return getWx()->PositionFromPoint(CLS2WXREF(pt)); }
// Find the position from a point within the window but return
// INVALID_POSITION if not close to text.
//int PositionFromPointClose (int x, int y);
inline int positionFromPointClose(int x, int y) { return getWx()->PositionFromPointClose(x, y); }
// Set caret to start of a line and ensure it is visible.
//void GotoLine (int line);
inline void gotoLine(int line) { getWx()->GotoLine(line); }
// Set caret to a position and ensure it is visible.
//void GotoPos (int pos);
inline void gotoPos(int pos) { getWx()->GotoPos(pos); }
// Set the selection anchor to a position. The anchor is the opposite
// end of the selection from the caret.
//void SetAnchor (int posAnchor);
inline void setAnchor(int posAnchor) { getWx()->SetAnchor(posAnchor); }
// Retrieve the text of the line containing the caret.
// Returns the index of the caret on the line.
//wxString GetCurLine (int* linePos=NULL);
inline RString getCurLine(OUT(int) linePos) { return WXS2S(getWx()->GetCurLine(&linePos)); }
inline RString getCurLine() { return WXS2S(getWx()->GetCurLine(0)); }
// Retrieve the position of the last correctly styled character.
//int GetEndStyled();
inline int getEndStyled() { return getWx()->GetEndStyled(); }
// Convert all line endings in the document to one mode.
//void ConvertEOLs (int eolMode);
inline void convertEOLs(int eolMode) { getWx()->ConvertEOLs(eolMode); }
// Retrieve the current end of line mode - one of CRLF, CR, or LF.
//int GetEOLMode();
inline int getEOLMode() { return getWx()->GetEOLMode(); }
// Set the current end of line mode.
//void SetEOLMode (int eolMode);
inline void setEOLMode(int eolMode) { getWx()->SetEOLMode(eolMode); }
// Set the current styling position to pos and the styling mask to mask.
// The styling mask can be used to protect some bits in each styling byte from modification.
//void StartStyling (int pos, int mask);
inline void startStyling(int pos, int mask) { getWx()->StartStyling(pos, mask); }
// Change style from current styling position for length characters to a style
// and move the current styling position to after this newly styled segment.
//void SetStyling (int length, int style);
inline void setStyling(int length, int style) { getWx()->SetStyling(length, style); }
// Is drawing done first into a buffer or direct to the screen?
//bool GetBufferedDraw();
inline bool getBufferedDraw() { return getWx()->GetBufferedDraw(); }
// If drawing is buffered then each line of text is drawn into a bitmap buffer
// before drawing it to the screen to avoid flicker.
//void SetBufferedDraw (bool buffered);
inline void setBufferedDraw(bool buffered) { getWx()->SetBufferedDraw(buffered); }
// Change the visible size of a tab to be a multiple of the width of a space character.
//void SetTabWidth (int tabWidth);
inline void setTabWidth(int tabWidth) { getWx()->SetTabWidth(tabWidth); }
// Retrieve the visible size of a tab.
//int GetTabWidth();
inline int getTabWidth() { return getWx()->GetTabWidth(); }
// Set the code page used to interpret the bytes of the document as characters.
//void SetCodePage (int codePage);
inline void setCodePage(int codePage) { getWx()->SetCodePage(codePage); }
// Set the symbol used for a particular marker number,
//void MarkerDefine (int markerNumber, int markerSymbol);
inline void markerDefine(int markerNumber, int markerSymbol) { getWx()->MarkerDefine(markerNumber, markerSymbol); }
// Set the foreground colour used for a particular marker number.
//void MarkerSetForeground (int markerNumber, const wxColour& fore);
inline void markerSetForeground(int markerNumber, IN(RColour) fore) { getWx()->MarkerSetForeground(markerNumber, CLS2WXREF(fore)); }
// Set the background colour used for a particular marker number.
//void MarkerSetBackground (int markerNumber, const wxColour& back);
inline void markerSetBackground(int markerNumber, IN(RColour) back) { getWx()->MarkerSetBackground(markerNumber, CLS2WXREF(back)); }
// Add a marker to a line, returning an ID which can be used to find or delete the marker.
//int MarkerAdd (int line, int markerNumber);
inline int markerAdd(int line, int markerNumber) { return getWx()->MarkerAdd(line, markerNumber); }
// Delete a marker from a line.
//void MarkerDelete (int line, int markerNumber);
inline void markerDelete(int line, int markerNumber) { getWx()->MarkerDelete(line, markerNumber); }
// Delete a marker with a particular number from all lines.
//void MarkerDeleteAll (int markerNumber);
inline void markerDeleteAll(int markerNumber) { getWx()->MarkerDeleteAll(markerNumber); }
// Get a bit mask of all the markers set on a line.
//int MarkerGet (int line);
inline int markerGet(int line) { return getWx()->MarkerGet(line); }
// Find the next line after lineStart that includes a marker in mask.
//int MarkerNext (int lineStart, int markerMask);
inline int markerNext(int lineStart, int markerMask) { return getWx()->MarkerNext(lineStart, markerMask); }
// Find the previous line before lineStart that includes a marker in mask.
//int MarkerPrevious (int lineStart, int markerMask);
inline int markerPrevious(int lineStart, int markerMask) { return getWx()->MarkerPrevious(lineStart, markerMask); }
// Define a marker from a bitmap
//void MarkerDefineBitmap (int markerNumber, const wxBitmap& bmp);
inline void markerDefineBitmap(int markerNumber, IN(RBitmap) bmp) { getWx()->MarkerDefineBitmap(markerNumber, CLS2WXREF(bmp)); }
// Set a margin to be either numeric or symbolic.
//void SetMarginType (int margin, int marginType);
inline void setMarginType(int margin, int marginType) { getWx()->SetMarginType(margin, marginType); }
// Retrieve the type of a margin.
//int GetMarginType (int margin);
inline int getMarginType(int margin) { return getWx()->GetMarginType(margin); }
// Set the width of a margin to a width expressed in pixels.
//void SetMarginWidth (int margin, int pixels);
inline void setMarginWidth(int margin, int pixels) { getWx()->SetMarginWidth(margin, pixels); }
// Retrieve the width of a margin in pixels.
//int GetMarginWidth (int margin);
inline int getMarginWidth(int margin) { return getWx()->GetMarginWidth(margin); }
// Set a mask that determines which markers are displayed in a margin.
//void SetMarginMask (int margin, int mask);
inline void setMarginMask(int margin, int mask) { getWx()->SetMarginMask(margin, mask); }
// Retrieve the marker mask of a margin.
//int GetMarginMask (int margin);
inline int getMarginMask(int margin) { return getWx()->GetMarginMask(margin); }
// Make a margin sensitive or insensitive to mouse clicks.
//void SetMarginSensitive (int margin, bool sensitive);
inline void setMarginSensitive(int margin, bool sensitive) { getWx()->SetMarginSensitive(margin, sensitive); }
// Retrieve the mouse click sensitivity of a margin.
//bool GetMarginSensitive (int margin);
inline bool getMarginSensitive(int margin) { return getWx()->GetMarginSensitive(margin); }
// Clear all the styles and make equivalent to the global default style.
//void StyleClearAll();
inline void styleClearAll() { getWx()->StyleClearAll(); }
// Set the foreground colour of a style.
//void StyleSetForeground (int style, const wxColour& fore);
inline void styleSetForeground(int style, IN(RColour) fore) { getWx()->StyleSetForeground(style, CLS2WXREF(fore)); }
// Set the background colour of a style.
//void StyleSetBackground (int style, const wxColour& back);
inline void styleSetBackground(int style, IN(RColour) back) { getWx()->StyleSetBackground(style, CLS2WXREF(back)); }
// Set a style to be bold or not.
//void StyleSetBold (int style, bool bold);
inline void styleSetBold(int style, bool bold) { getWx()->StyleSetBold(style, bold); }
// Set a style to be italic or not.
//void StyleSetItalic (int style, bool italic);
inline void styleSetItalic(int style, bool italic) { getWx()->StyleSetItalic(style, italic); }
// Set the size of characters of a style.
//void StyleSetSize (int style, int sizePoints);
inline void styleSetSize(int style, int sizePoints) { getWx()->StyleSetSize(style, sizePoints); }
// Set the font of a style.
//void StyleSetFaceName(int style, const wxString& fontName);
inline void styleSetFaceName(int style, IN(RString) fontName) { getWx()->StyleSetFaceName(style, S2WXS(fontName)); }
// Set a style to have its end of line filled or not.
//void StyleSetEOLFilled (int style, bool filled);
inline void styleSetEOLFilled(int style, bool filled) { getWx()->StyleSetEOLFilled(style, filled); }
// Reset the default style to its state at startup
//void StyleResetDefault();
inline void styleResetDefault() { getWx()->StyleResetDefault(); }
// Set a style to be underlined or not.
//void StyleSetUnderline (int style, bool underline);
inline void styleSetUnderline(int style, bool underline) { getWx()->StyleSetUnderline(style, underline); }
// Set a style to be mixed case, or to force upper or lower case.
//void StyleSetCase (int style, int caseMode);
inline void styleSetCase(int style, int caseMode) { getWx()->StyleSetCase(style, caseMode); }
// Set the character set of the font in a style.
//void StyleSetCharacterSet (int style, int characterSet);
inline void styleSetCharacterSet(int style, int characterSet) { getWx()->StyleSetCharacterSet(style, characterSet); }
// Set a style to be a hotspot or not.
//void StyleSetHotSpot (int style, bool hotspot);
inline void styleSetHotSpot(int style, bool hotspot) { getWx()->StyleSetHotSpot(style, hotspot); }
// Set the foreground colour of the selection and whether to use this setting.
//void SetSelForeground (bool useSetting, const wxColour& fore);
inline void setSelForeground(bool useSetting, IN(RColour) fore) { getWx()->SetSelForeground(useSetting, CLS2WXREF(fore)); }
// Set the background colour of the selection and whether to use this setting.
//void SetSelBackground (bool useSetting, const wxColour& back);
inline void setSelBackground(bool useSetting, IN(RColour) back) { getWx()->SetSelBackground(useSetting, CLS2WXREF(back)); }
// Set the foreground colour of the caret.
//void SetCaretForeground (const wxColour& fore);
inline void setCaretForeground(IN(RColour) fore) { getWx()->SetCaretForeground(CLS2WXREF(fore)); }
// When key+modifier combination km is pressed perform msg.
//void CmdKeyAssign (int key, int modifiers, int cmd);
inline void cmdKeyAssign(int key, int modifiers, int cmd) { getWx()->CmdKeyAssign(key, modifiers, cmd); }
// When key+modifier combination km is pressed do nothing.
//void CmdKeyClear (int key, int modifiers);
inline void cmdKeyClear(int key, int modifiers) { getWx()->CmdKeyClear(key, modifiers); }
// Drop all key mappings.
//void CmdKeyClearAll();
inline void cmdKeyClearAll() { getWx()->CmdKeyClearAll(); }
// Set the styles for a segment of the document.
//void SetStyleBytes (int length, char* styleBytes);
//### TODO inline void setStyleBytes(int length, char styleBytes) { getWx()->SetStyleBytes(length, styleBytes); }
// Set a style to be visible or not.
//void StyleSetVisible (int style, bool visible);
inline void styleSetVisible(int style, bool visible) { getWx()->StyleSetVisible(style, visible); }
// Get the time in milliseconds that the caret is on and off.
//int GetCaretPeriod();
inline int getCaretPeriod() { return getWx()->GetCaretPeriod(); }
// Get the time in milliseconds that the caret is on and off. 0 = steady on.
//void SetCaretPeriod (int milliseconds);
inline void setCaretPeriod(int milliseconds) { getWx()->SetCaretPeriod(milliseconds); }
// Set the set of characters making up words for when moving or selecting by word.
// First sets deaults like SetCharsDefault.
//void SetWordChars (const wxString& characters);
inline void setWordChars(IN(RString) characters) { getWx()->SetWordChars(S2WXS(characters)); }
// Start a sequence of actions that is undone and redone as a unit.
// May be nested.
//void BeginUndoAction();
inline void beginUndoAction() { getWx()->BeginUndoAction(); }
// End a sequence of actions that is undone and redone as a unit.
//void EndUndoAction();
inline void endUndoAction() { getWx()->EndUndoAction(); }
// Set an indicator to plain, squiggle or TT.
//void IndicatorSetStyle (int indic, int style);
inline void indicatorSetStyle(int indic, int style) { getWx()->IndicatorSetStyle(indic, style); }
// Retrieve the style of an indicator.
//int IndicatorGetStyle (int indic);
inline int indicatorGetStyle(int indic) { return getWx()->IndicatorGetStyle(indic); }
// Set the foreground colour of an indicator.
//void IndicatorSetForeground (int indic, const wxColour& fore);
inline void indicatorSetForeground(int indic, IN(RColour) fore) { getWx()->IndicatorSetForeground(indic, CLS2WXREF(fore)); }
// Retrieve the foreground colour of an indicator.
//wxColour IndicatorGetForeground (int indic);
inline RColour indicatorGetForeground(int indic) { return WXVAL2CLS(Colour, getWx()->IndicatorGetForeground(indic)); }
// Set the foreground colour of all whitespace and whether to use this setting.
//void SetWhitespaceForeground (bool useSetting, const wxColour& fore);
inline void setWhitespaceForeground(bool useSetting, IN(RColour) fore) { getWx()->SetWhitespaceForeground(useSetting, CLS2WXREF(fore)); }
// Set the background colour of all whitespace and whether to use this setting.
//void SetWhitespaceBackground (bool useSetting, const wxColour& back);
inline void setWhitespaceBackground(bool useSetting, IN(RColour) back) { getWx()->SetWhitespaceBackground(useSetting, CLS2WXREF(back)); }
// Divide each styling byte into lexical class bits (default: 5) and indicator
// bits (default: 3). If a lexer requires more than 32 lexical states, then this
// is used to expand the possible states.
//void SetStyleBits (int bits);
inline void setStyleBits(int bits) { getWx()->SetStyleBits(bits); }
// Retrieve number of bits in style bytes used to hold the lexical state.
//int GetStyleBits ();
inline int getStyleBits() { return getWx()->GetStyleBits(); }
// Used to hold extra styling information for each line.
//void SetLineState (int line, int state);
inline void setLineState(int line, int state) { getWx()->SetLineState(line, state); }
// Retrieve the extra styling information for a line.
//int GetLineState (int line);
inline int getLineState(int line) { return getWx()->GetLineState(line); }
// Retrieve the last line number that has line state.
//int GetMaxLineState();
inline int getMaxLineState() { return getWx()->GetMaxLineState(); }
// Is the background of the line containing the caret in a different colour?
//bool GetCaretLineVisible();
inline bool getCaretLineVisible() { return getWx()->GetCaretLineVisible(); }
// Display the background of the line containing the caret in a different colour.
//void SetCaretLineVisible (bool show);
inline void setCaretLineVisible(bool show) { getWx()->SetCaretLineVisible(show); }
// Get the colour of the background of the line containing the caret.
//wxColour GetCaretLineBackground();
// not supported by stcinline RColour getCaretLineBackground() { return WXVAL2CLS(Colour, getWx()->GetCaretLineBackground()); }
// Set the colour of the background of the line containing the caret.
//void SetCaretLineBackground (const wxColour& back);
//not supported by stc inline void setCaretLineBackground(IN(RColour) back) { getWx()->SetCaretLineBackground(CLS2WXREF(back)); }
// Set a style to be changeable or not (read only).
// Experimental feature, currently buggy.
//void StyleSetChangeable (int style, bool changeable);
inline void styleSetChangeable(int style, bool changeable) { getWx()->StyleSetChangeable(style, changeable); }
// Display a auto-completion list.
// The lenEntered parameter indicates how many characters before
// the caret should be used to provide context.
//void AutoCompShow (int lenEntered, const wxString& itemList);
inline void autoCompShow(int lenEntered, IN(RString) itemList) { getWx()->AutoCompShow(lenEntered, S2WXS(itemList)); }
// Remove the auto-completion list from the screen.
//void AutoCompCancel();
inline void autoCompCancel() { getWx()->AutoCompCancel(); }
// Is there an auto-completion list visible?
//bool AutoCompActive();
inline bool autoCompActive() { return getWx()->AutoCompActive(); }
// Retrieve the position of the caret when the auto-completion list was displayed.
//int AutoCompPosStart();
inline int autoCompPosStart() { return getWx()->AutoCompPosStart(); }
// User has selected an item so remove the list and insert the selection.
//void AutoCompComplete();
inline void autoCompComplete() { getWx()->AutoCompComplete(); }
// Define a set of character that when typed cancel the auto-completion list.
//void AutoCompStops (const wxString& characterSet);
inline void autoCompStops(IN(RString) characterSet) { getWx()->AutoCompStops(S2WXS(characterSet)); }
// Change the separator character in the string setting up an auto-completion list.
//// Default is space but can be changed if items contain space.
//void AutoCompSetSeparator (int separatorCharacter);
inline void autoCompSetSeparator(int separatorCharacter) { getWx()->AutoCompSetSeparator(separatorCharacter); }
// Retrieve the auto-completion list separator character.
//int AutoCompGetSeparator();
inline int autoCompGetSeparator() { return getWx()->AutoCompGetSeparator(); }
// Select the item in the auto-completion list that starts with a string.
//void AutoCompSelect (const wxString& text);
inline void autoCompSelect(IN(RString) text) { getWx()->AutoCompSelect(S2WXS(text)); }
// Should the auto-completion list be cancelled if the user backspaces to a
// position before where the box was created.
//void AutoCompSetCancelAtStart (bool cancel);
inline void autoCompSetCancelAtStart(bool cancel) { getWx()->AutoCompSetCancelAtStart(cancel); }
// Retrieve whether auto-completion cancelled by backspacing before start.
//bool AutoCompGetCancelAtStart();
inline bool autoCompGetCancelAtStart() { return getWx()->AutoCompGetCancelAtStart(); }
// Define a set of characters that when typed will cause the autocompletion to
// choose the selected item.
//void AutoCompSetFillUps (const wxString& characterSet);
inline void autoCompSetFillUps(IN(RString) characterSet) { getWx()->AutoCompSetFillUps(S2WXS(characterSet)); }
// Should a single item auto-completion list automatically choose the item.
//void AutoCompSetChooseSingle (bool chooseSingle);
inline void autoCompSetChooseSingle(bool chooseSingle) { getWx()->AutoCompSetChooseSingle(chooseSingle); }
// Retrieve whether a single item auto-completion list automatically choose the item.
//bool AutoCompGetChooseSingle();
inline bool autoCompGetChooseSingle() { return getWx()->AutoCompGetChooseSingle(); }
// Set whether case is significant when performing auto-completion searches.
//void AutoCompSetIgnoreCase (bool ignoreCase);
inline void autoCompSetIgnoreCase(bool ignoreCase) { getWx()->AutoCompSetIgnoreCase(ignoreCase); }
// Retrieve state of ignore case flag.
//bool AutoCompGetIgnoreCase();
inline bool autoCompGetIgnoreCase() { return getWx()->AutoCompGetIgnoreCase(); }
// Display a list of strings and send notification when user chooses one.
//void UserListShow (int listType, const wxString& itemList);
inline void userListShow(int listType, IN(RString) itemList) { getWx()->UserListShow(listType, S2WXS(itemList)); }
// Set whether or not autocompletion is hidden automatically when nothing matches.
//void AutoCompSetAutoHide (bool autoHide);
inline void autoCompSetAutoHide(bool autoHide) { getWx()->AutoCompSetAutoHide(autoHide); }
// Retrieve whether or not autocompletion is hidden automatically when nothing matches.
//bool AutoCompGetAutoHide();
inline bool autoCompGetAutoHide() { return getWx()->AutoCompGetAutoHide(); }
// Set whether or not autocompletion deletes any word characters
// after the inserted text upon completion.
//void AutoCompSetDropRestOfWord (bool dropRestOfWord);
inline void autoCompSetDropRestOfWord(bool dropRestOfWord) { getWx()->AutoCompSetDropRestOfWord(dropRestOfWord); }
// Retrieve whether or not autocompletion deletes any word characters
// after the inserted text upon completion.
//bool AutoCompGetDropRestOfWord();
inline bool autoCompGetDropRestOfWord() { return getWx()->AutoCompGetDropRestOfWord(); }
// Register an image for use in autocompletion lists.
//void RegisterImage (int type, const wxBitmap& bmp);
inline void registerImage(int type, IN(RBitmap) bmp) { getWx()->RegisterImage(type, CLS2WXREF(bmp)); }
//
// Clear all the registered images.
//void ClearRegisteredImages();
inline void clearRegisteredImages() { getWx()->ClearRegisteredImages(); }
// Retrieve the auto-completion list type-separator character.
//int AutoCompGetTypeSeparator();
inline int autoCompGetTypeSeparator() { return getWx()->AutoCompGetTypeSeparator(); }
// Change the type-separator character in the string setting up an auto-completion list.
// Default is '?' but can be changed if items contain '?'.
//void AutoCompSetTypeSeparator (int separatorCharacter);
inline void autoCompSetTypeSeparator(int separatorCharacter) { getWx()->AutoCompSetTypeSeparator(separatorCharacter); }
// Set the number of spaces used for one level of indentation.
//void SetIndent (int indentSize);
inline void setIndent(int indentSize) { getWx()->SetIndent(indentSize); }
// Retrieve indentation size.
//int GetIndent();
inline int getIndent() { return getWx()->GetIndent(); }
// Indentation will only use space characters if useTabs is false, otherwise
// it will use a combination of tabs and spaces.
//void SetUseTabs (bool useTabs);
inline void setUseTabs(bool useTabs) { getWx()->SetUseTabs(useTabs); }
// Retrieve whether tabs will be used in indentation.
//bool GetUseTabs();
inline bool getUseTabs() { return getWx()->GetUseTabs(); }
// Change the indentation of a line to a number of columns.
//void SetLineIndentation (int line, int indentSize);
inline void setLineIndentation(int line, int indentSize) { getWx()->SetLineIndentation(line, indentSize); }
// Retrieve the number of columns that a line is indented.
//int GetLineIndentation (int line);
inline int getLineIndentation(int line) { return getWx()->GetLineIndentation(line); }
// Retrieve the position before the first non indentation character on a line.
//int GetLineIndentPosition (int line);
inline int getLineIndentPosition(int line) { return getWx()->GetLineIndentPosition(line); }
// Retrieve the column number of a position, taking tab width into account.
//int GetColumn (int pos);
inline int getColumn(int pos) { return getWx()->GetColumn(pos); }
// Returns the position of a column on a line taking the width of tabs into account.
//int FindColumn (int line, int column);
// not supported by STC inline int findColumn(int line, int column) { return getWx()->FindColumn(line, column); }
// Show or hide the horizontal scroll bar.
//void SetUseHorizontalScrollBar (bool show);
inline void setUseHorizontalScrollBar(bool show) { getWx()->SetUseHorizontalScrollBar(show); }
// Is the horizontal scroll bar visible?
//bool GetUseHorizontalScrollBar();
inline bool getUseHorizontalScrollBar() { return getWx()->GetUseHorizontalScrollBar(); }
// Show or hide indentation guides.
//void SetIndentationGuides (bool show);
inline void setIndentationGuides(bool show) { getWx()->SetIndentationGuides(show); }
// Are the indentation guides visible?
//bool GetIndentationGuides();
inline bool getIndentationGuides() { return getWx()->GetIndentationGuides(); }
// Set the highlighted indentation guide column.
// 0 = no highlighted guide.
//void SetHighlightGuide (int column);
inline void setHighlightGuide(int column) { getWx()->SetHighlightGuide(column); }
// Get the highlighted indentation guide column.
//int GetHighlightGuide();
inline int getHighlightGuide() { return getWx()->GetHighlightGuide(); }
// Get the position after the last visible characters on a line.
//int GetLineEndPosition (int line);
inline int getLineEndPosition(int line) { return getWx()->GetLineEndPosition(line); }
// Get the code page used to interpret the bytes of the document as characters.
//int GetCodePage();
inline int getCodePage() { return getWx()->GetCodePage(); }
// Get the foreground colour of the caret.
//wxColour GetCaretForeground();
inline RColour getCaretForeground() { return WXVAL2CLS(Colour, getWx()->GetCaretForeground()); }
// In read-only mode?
//bool GetReadOnly();
inline bool getReadOnly() { return getWx()->GetReadOnly(); }
// Sets the position of the caret.
//void SetCurrentPos (int pos);
inline void setCurrentPos(int pos) { getWx()->SetCurrentPos(pos); }
// Sets the position that starts the selection - this becomes the anchor.
//void SetSelectionStart (int pos);
inline void setSelectionStart(int pos) { getWx()->SetSelectionStart(pos); }
// Returns the position at the start of the selection.
//int GetSelectionStart();
inline int getSelectionStart() { return getWx()->GetSelectionStart(); }
// Sets the position that ends the selection - this becomes the currentPosition.
//void SetSelectionEnd (int pos);
inline void setSelectionEnd(int pos) { getWx()->SetSelectionEnd(pos); }
// Returns the position at the end of the selection.
//int GetSelectionEnd();
inline int getSelectionEnd() { return getWx()->GetSelectionEnd(); }
// Sets the print magnification added to the point size of each style for printing.
//void SetPrintMagnification (int magnification);
inline void setPrintMagnification(int magnification) { getWx()->SetPrintMagnification(magnification); }
// Returns the print magnification.
//int GetPrintMagnification();
inline int getPrintMagnification() { return getWx()->GetPrintMagnification(); }
// Modify colours when printing for clearer printed text.
//void SetPrintColourMode (int mode);
inline void setPrintColourMode(int mode) { getWx()->SetPrintColourMode(mode); }
// Returns the print colour mode.
//int GetPrintColourMode();
inline int getPrintColourMode() { return getWx()->GetPrintColourMode(); }
// Find some text in the document.
//int FindText (int minPos, int maxPos, const wxString& text, int flags=0);
inline int findText(int minPos, int maxPos, IN(RString) text, int flags = 0) { return getWx()->FindText(minPos, maxPos, S2WXS(text), flags); }
// On Windows, will draw the document into a display context such as a printer.
//int FormatRange (bool doDraw, int startPos, int endPos, wxDC* draw, wxDC* target, wxRect renderRect, wxRect pageRect);
inline int formatRange(bool doDraw, int startPos, int endPos, IN(RDC) draw, IN(RDC) target, IN(RRect) renderRect, IN(RRect) pageRect)
{ return getWx()->FormatRange(doDraw, startPos, endPos, CLS2WXPTR(draw), CLS2WXPTR(target), CLS2WXREF(renderRect), CLS2WXREF(pageRect)); }
// Retrieve the display line at the top of the display.
//int GetFirstVisibleLine();
inline int getFirstVisibleLine() { return getWx()->GetFirstVisibleLine(); }
// Retrieve the contents of a line.
//wxString GetLine (int line);
inline RString getLine(int line) { return WXS2S(getWx()->GetLine(line)); }
// Returns the number of lines in the document. There is always at least one.
//int GetLineCount();
inline int getLineCount() { return getWx()->GetLineCount(); }
// Sets the size in pixels of the left margin.
//void SetMarginLeft (int pixels);
inline void setMarginLeft(int pixels) { getWx()->SetMarginLeft(pixels); }
// Returns the size in pixels of the left margin.
//int GetMarginLeft();
inline int getMarginLeft() { return getWx()->GetMarginLeft(); }
// Sets the size in pixels of the right margin.
//void SetMarginRight (int pixels);
inline void setMarginRight(int pixels) { getWx()->SetMarginRight(pixels); }
// Returns the size in pixels of the right margin.
//int GetMarginRight();
inline int getMarginRight() { return getWx()->GetMarginRight(); }
// Is the document different from when it was last saved?
//bool GetModify();
inline bool getModify() { return getWx()->GetModify(); }
// Select a range of text.
//void SetSelection (int startPos, int endPos);
inline void setSelection(int startPos, int endPos) { getWx()->SetSelection(startPos, endPos); }
// Retrieve the selected text.
//wxString GetSelectedText();
inline RString getSelectedText() { return WXS2S(getWx()->GetSelectedText()); }
// Retrieve a range of text.
//wxString GetTextRange (int startPos, int endPos);
inline RString getTextRange(int startPos, int endPos) { return WXS2S(getWx()->GetTextRange(startPos, endPos)); }
// Draw the selection in normal style or with selection highlighted.
//void HideSelection (bool hide);
inline void hideSelection(bool hide) { getWx()->HideSelection(hide); }
// Retrieve the line containing a position.
//int LineFromPosition (int pos);
inline int lineFromPosition(int pos) { return getWx()->LineFromPosition(pos); }
// Retrieve the position at the start of a line.
//int PositionFromLine (int line);
inline int positionFromLine(int line) { return getWx()->PositionFromLine(line); }
// Scroll horizontally and vertically.
//void LineScroll (int columns, int lines);
inline void lineScroll(int columns, int lines) { getWx()->LineScroll(columns, lines); }
// Ensure the caret is visible.
//void EnsureCaretVisible();
inline void ensureCaretVisible() { getWx()->EnsureCaretVisible(); }
// Replace the selected text with the argument text.
//void ReplaceSelection (const wxString& text);
inline void replaceSelection(IN(RString) text) { getWx()->ReplaceSelection(S2WXS(text)); }
// Set to read only or read write.
//void SetReadOnly (bool readOnly);
inline void setReadOnly(bool readOnly) { getWx()->SetReadOnly(readOnly); }
// Will a paste succeed?
//bool CanPaste();
inline bool canPaste() { return getWx()->CanPaste(); }
// Are there any undoable actions in the undo history?
//bool CanUndo();
inline bool canUndo() { return getWx()->CanUndo(); }
// Delete the undo history.
//void EmptyUndoBuffer();
inline void emptyUndoBuffer() { getWx()->EmptyUndoBuffer(); }
// Undo one action in the undo history.
//void Undo();
inline void undo() { getWx()->Undo(); }
// Cut the selection to the clipboard.
//void Cut();
inline void cut() { getWx()->Cut(); }
// Copy the selection to the clipboard.
//void Copy();
inline void copy() { getWx()->Copy(); }
// Paste the contents of the clipboard into the document replacing the selection.
//void Paste();
inline void paste() { getWx()->Paste(); }
// Clear the selection.
//void Clear();
inline void clear() { getWx()->Clear(); }
// Replace the contents of the document with the argument text.
//void SetText (const wxString& text);
inline void setText(IN(RString) text) { getWx()->SetText(S2WXS(text)); }
// Retrieve all the text in the document.
//wxString GetText();
inline RString getText() { return WXS2S(getWx()->GetText()); }
// Retrieve the number of characters in the document.
//int GetTextLength();
inline int getTextLength() { return getWx()->GetTextLength(); }
// Set to overtype (true) or insert mode.
//void SetOvertype (bool overtype);
inline void setOvertype(bool overtype) { getWx()->SetOvertype(overtype); }
// Returns true if overtype mode is active otherwise false is returned.
//bool GetOvertype();
inline bool getOvertype() { return getWx()->GetOvertype(); }
// Set the width of the insert mode caret.
//void SetCaretWidth (int pixels);
inline void setCaretWidth(int pixels) { getWx()->SetCaretWidth(pixels); }
// Returns the width of the insert mode caret.
//int GetCaretWidth();
inline int getCaretWidth() { return getWx()->GetCaretWidth(); }
// Sets the position that starts the target which is used for updating the
//// document without affecting the scroll position.
//void SetTargetStart (int pos);
inline void setTargetStart(int pos) { getWx()->SetTargetStart(pos); }
// Get the position that starts the target.
//int GetTargetStart();
inline int getTargetStart() { return getWx()->GetTargetStart(); }
// Sets the position that ends the target which is used for updating the
// document without affecting the scroll position.
//void SetTargetEnd (int pos);
inline void setTargetEnd(int pos) { getWx()->SetTargetEnd(pos); }
// Get the position that ends the target.
//int GetTargetEnd();
inline int getTargetEnd() { return getWx()->GetTargetEnd(); }
// Replace the target text with the argument text.
// Text is counted so it can contain NULs.
// Returns the length of the replacement text.
//int ReplaceTarget (const wxString& text);
inline int replaceTarget(IN(RString) text) { return getWx()->ReplaceTarget(S2WXS(text)); }
// Replace the target text with the argument text after \d processing.
// Text is counted so it can contain NULs.
// Looks for \d where d is between 1 and 9 and replaces these with the strings
// matched in the last search operation which were surrounded by \( and \).
// Returns the length of the replacement text including any change
// caused by processing the \d patterns.
//int ReplaceTargetRE (const wxString& text);
inline int replaceTargetRE(IN(RString) text) { return getWx()->ReplaceTargetRE(S2WXS(text)); }
// Search for a counted string in the target and set the target to the found
// range. Text is counted so it can contain NULs.
|