1 ## First line may be used for shbang
3 ## This file defines the interface to Scintilla
5 ## A line starting with ## is a pure comment and should be stripped by readers.
6 ## A line starting with #! is for future shbang use
7 ## A line starting with # followed by a space is a documentation comment and refers
8 ## to the next feature definition.
10 ## Each feature is defined by a line starting with fun, get, set, val or evt.
11 ## cat -> start a category
13 ## get -> a property get function
14 ## set -> a property set function
15 ## val -> definition of a constant
17 ## All other feature names should be ignored. They may be defined in the future.
18 ## A property may have a set function, a get function or both. Each will have
19 ## "Get" or "Set" in their names and the corresponding name will have the obvious switch.
20 ## A property may be subscripted, in which case the first parameter is the subscript.
21 ## fun, get, and set features have a strict syntax:
22 ## <featureType><ws><returnType><ws><name>[=<number](<param>,<param>)
23 ## param is <paramType><ws><paramName>[=<value>]
24 ## Additional white space is allowed between elements.
25 ## The syntax for evt is <featureType><ws><returnType><ws><name>[=<number]([<param>[,<param>]*])
26 ## Feature names that contain an underscore are defined by Windows, so in these
27 ## cases, using the Windows definition is preferred where available.
32 ## bool -> integer, 1=true, 0=false
33 ## position -> integer position in a document
34 ## colour -> colour integer containing red, green and blue bytes.
35 ## string -> pointer to const character
36 ## stringresult -> pointer to character
37 ## cells -> pointer to array of cells, each cell containing a style byte and character byte
38 ## charrange -> range of a min and a max position
39 ## charrangeresult -> like charrange, but output param
40 ## textrange -> charrange + output string
41 ## findtext -> searchrange, text -> foundposition
42 ## findtextex -> searchrange
43 ## keymod -> integer containing key in low half and modifiers in high half
47 ## pointresult -> like point, but output param
48 ## rectangle -> left,top,right,bottom
49 ## Client code should ignore definitions containing types it does not understand, except
50 ## for possibly #defining the constants
54 ################################################
56 val INVALID_POSITION=-1
57 # Define start of Scintilla messages to be greater than all edit (EM_*) messages
58 # as many EM_ messages can be used although that use is deprecated.
60 val SCI_OPTIONAL_START=3000
61 val SCI_LEXER_START=4000
63 # Add text to the document
64 fun void AddText=2001(int length, string text)
66 # Add array of cells to document
67 fun void AddStyledText=2002(int length, cells c)
69 # Insert string at a position
70 fun void InsertText=2003(position pos, string text)
72 # Delete all text in the document
73 fun void ClearAll=2004(,)
75 # Set all style bytes to 0, remove all folding information
76 fun void ClearDocumentStyle=2005(,)
78 # The number of characters in the document
79 get int GetLength=2006(,)
81 # Returns the character byte at the position
82 get int GetCharAt=2007(position pos,)
84 # Returns the position of the caret
85 get position GetCurrentPos=2008(,)
87 # Returns the position of the opposite end of the selection to the caret
88 get position GetAnchor=2009(,)
90 # Returns the style byte at the position
91 get int GetStyleAt=2010(position pos,)
93 # Redoes the next action on the undo history
96 # Choose between collecting actions into the undo
97 # history and discarding them.
98 set void SetUndoCollection=2012(bool collectUndo,)
100 # Select all the text in the document.
101 fun void SelectAll=2013(,)
103 # Remember the current position in the undo history as the position
104 # at which the document was saved.
105 fun void SetSavePoint=2014(,)
107 # Retrieve a buffer of cells.
108 # Returns the number of bytes in the buffer not including terminating nulls.
109 fun int GetStyledText=2015(, textrange tr)
111 # Are there any redoable actions in the undo history.
112 fun bool CanRedo=2016(,)
114 # Retrieve the line number at which a particular marker is located
115 fun int MarkerLineFromHandle=2017(int handle,)
118 fun void MarkerDeleteHandle=2018(int handle,)
120 # Is undo history being collected?
121 get bool GetUndoCollection=2019(,)
124 val SCWS_VISIBLEALWAYS=1
125 val SCWS_VISIBLEAFTERINDENT=2
127 # Are white space characters currently visible?
128 # Returns one of SCWS_* constants.
129 get int GetViewWS=2020(,)
131 # Make white space characters invisible, always visible or visible outside indentation.
132 set void SetViewWS=2021(int viewWS,)
134 # Find the position from a point within the window.
135 fun int PositionFromPoint=2022(int x, int y)
137 # Set caret to start of a line and ensure it is visible.
138 fun void GotoLine=2024(int line,)
140 # Set caret to a position and ensure it is visible.
141 fun void GotoPos=2025(position pos,)
143 # Set the selection anchor to a position. The anchor is the opposite
144 # end of the selection from the caret.
145 set void SetAnchor=2026(position posAnchor,)
147 # Retrieve the text of the line containing the caret.
148 # Returns the index of the caret on the line.
149 fun int GetCurLine=2027(int length, stringresult text)
151 # Retrieve the position of the last correctly styled character.
152 get position GetEndStyled=2028(,)
154 # Convert all line endings in the document to use the current mode.
155 fun void ConvertEOLs=2029(,)
161 # Retrieve the current end of line mode - one of CRLF, CR, or LF.
162 get int GetEOLMode=2030(,)
164 # Set the current end of line mode.
165 set void SetEOLMode=2031(int eolMode,)
167 # Set the current styling position to pos and the styling mask to mask.
168 # The styling mask can be used to protect some bits in each styling byte from
170 fun void StartStyling=2032(position pos, int mask)
172 # Change style from current styling position for length characters to a style
173 # and move the current styling position to after this newly styled segment.
174 fun void SetStyling=2033(int length, int style)
176 # Is drawing done first into a buffer or direct to the screen.
177 get bool GetBufferedDraw=2034(,)
179 # If drawing is buffered then each line of text is drawn into a bitmap buffer
180 # before drawing it to the screen to avoid flicker.
181 set void SetBufferedDraw=2035(bool buffered,)
183 # Change the visible size of a tab to be a multiple of the width of a space
185 set void SetTabWidth=2036(int tabWidth,)
187 # Retrieve the visible size of a tab.
188 get int GetTabWidth=2121(,)
190 # The SC_CP_UTF8 value can be used to enter Unicode mode.
191 # This is the same value as CP_UTF8 in Windows
194 # Set the code page used to interpret the bytes of the document as characters.
195 # The SC_CP_UTF8 value can be used to enter Unicode mode.
196 set void SetCodePage=2037(int codePage,)
198 # In palette mode, Scintilla uses the environments palette calls to display
199 # more colours. This may lead to ugly displays.
200 set void SetUsePalette=2039(bool usePalette,)
204 val SC_MARK_ROUNDRECT=1
206 val SC_MARK_SMALLRECT=3
207 val SC_MARK_SHORTARROW=4
209 val SC_MARK_ARROWDOWN=6
213 val SC_MARKNUM_FOLDER=30
214 val SC_MARKNUM_FOLDEROPEN=31
216 # Set the symbol used for a particular marker number.
217 fun void MarkerDefine=2040(int markerNumber, int markerSymbol)
219 # Set the foreground colour used for a particular marker number.
220 fun void MarkerSetFore=2041(int markerNumber, colour fore)
222 # Set the background colour used for a particular marker number.
223 fun void MarkerSetBack=2042(int markerNumber, colour back)
225 # Add a marker to a line.
226 fun void MarkerAdd=2043(int line, int markerNumber)
228 # Delete a marker from a line
229 fun void MarkerDelete=2044(int line, int markerNumber)
231 # Delete all markers with a particular number from all lines
232 fun void MarkerDeleteAll=2045(int markerNumber,)
234 # Get a bit mask of all the markers set on a line.
235 fun int MarkerGet=2046(int line,)
237 # Find the next line after lineStart that includes a marker in mask.
238 fun int MarkerNext=2047(int lineStart, int markerMask)
240 # Find the previous line before lineStart that includes a marker in mask.
241 fun int MarkerPrevious=2048(int lineStart, int markerMask)
243 val SC_MARGIN_SYMBOL=0
244 val SC_MARGIN_NUMBER=1
246 # Set a margin to be either numeric or symbolic.
247 set void SetMarginTypeN=2240(int margin, int marginType)
249 # Retrieve the type of a margin.
250 get int GetMarginTypeN=2241(int margin,)
252 # Set the width of a margin to a width expressed in pixels.
253 set void SetMarginWidthN=2242(int margin, int pixelWidth)
255 # Retrieve the width of a margin in pixels.
256 get int GetMarginWidthN=2243(int margin,)
258 # Set a mask that determines which markers are displayed in a margin.
259 set void SetMarginMaskN=2244(int margin, int mask)
261 # Retrieve the marker mask of a margin.
262 get int GetMarginMaskN=2245(int margin,)
264 # Make a margin sensitive or insensitive to mouse clicks.
265 set void SetMarginSensitiveN=2246(int margin, bool sensitive)
267 # Retrieve the mouse click sensitivity of a margin.
268 get bool GetMarginSensitiveN=2247(int margin,)
271 val STYLE_LINENUMBER=33
272 val STYLE_BRACELIGHT=34
273 val STYLE_BRACEBAD=35
274 val STYLE_CONTROLCHAR=36
275 val STYLE_INDENTGUIDE=37
278 # Character set identifiers are used in StyleSetCharacterSet.
279 # The values are the same as the Windows *_CHARSET values.
280 val SC_CHARSET_ANSI=0
281 val SC_CHARSET_DEFAULT=1
282 val SC_CHARSET_BALTIC=186
283 val SC_CHARSET_CHINESEBIG5=136
284 val SC_CHARSET_EASTEUROPE=238
285 val SC_CHARSET_GB2312=134
286 val SC_CHARSET_GREEK=161
287 val SC_CHARSET_HANGUL=129
288 val SC_CHARSET_MAC=77
289 val SC_CHARSET_OEM=255
290 val SC_CHARSET_RUSSIAN=204
291 val SC_CHARSET_SHIFTJIS=128
292 val SC_CHARSET_SYMBOL=2
293 val SC_CHARSET_TURKISH=162
294 val SC_CHARSET_JOHAB=130
295 val SC_CHARSET_HEBREW=177
296 val SC_CHARSET_ARABIC=178
297 val SC_CHARSET_VIETNAMESE=163
298 val SC_CHARSET_THAI=222
300 # Clear all the styles and make equivalent to the global default style.
301 set void StyleClearAll=2050(,)
303 # Set the foreground colour of a style.
304 set void StyleSetFore=2051(int style, colour fore)
306 # Set the background colour of a style.
307 set void StyleSetBack=2052(int style, colour back)
309 # Set a style to be bold or not.
310 set void StyleSetBold=2053(int style, bool bold)
312 # Set a style to be italic or not.
313 set void StyleSetItalic=2054(int style, bool italic)
315 # Set the size of characters of a style.
316 set void StyleSetSize=2055(int style, int sizePoints)
318 # Set the font of a style.
319 set void StyleSetFont=2056(int style, string fontName)
321 # Set a style to have its end of line filled or not.
322 set void StyleSetEOLFilled=2057(int style, bool filled)
324 # Reset the default style to its state at startup
325 fun void StyleResetDefault=2058(,)
327 # Set a style to be underlined or not.
328 set void StyleSetUnderline=2059(int style, bool underline)
330 # Set the character set of the font in a style.
331 set void StyleSetCharacterSet=2066(int style, int characterSet)
333 # Set the foreground colour of the selection and whether to use this setting.
334 fun void SetSelFore=2067(bool useSetting, colour fore)
336 # Set the background colour of the selection and whether to use this setting.
337 fun void SetSelBack=2068(bool useSetting, colour back)
339 # Set the foreground colour of the caret.
340 set void SetCaretFore=2069(colour fore,)
342 # When key+modifier combination km is pressed perform msg.
343 fun void AssignCmdKey=2070(keymod km, int msg)
345 # When key+modifier combination km do nothing.
346 fun void ClearCmdKey=2071(keymod km,)
348 # Drop all key mappings.
349 fun void ClearAllCmdKeys=2072(,)
351 # Set the styles for a segment of the document.
352 fun void SetStylingEx=2073(int length, string styles)
354 # Set a style to be visible or not.
355 set void StyleSetVisible=2074(int style, bool visible)
357 # Get the time in milliseconds that the caret is on and off.
358 get int GetCaretPeriod=2075(,)
360 # Get the time in milliseconds that the caret is on and off. 0 = steady on.
361 set void SetCaretPeriod=2076(int periodMilliseconds,)
363 # Set the set of characters making up words for when moving or selecting
365 set void SetWordChars=2077(, string characters)
367 # Start a sequence of actions that is undone and redone as a unit.
369 fun void BeginUndoAction=2078(,)
371 # End a sequence of actions that is undone and redone as a unit.
372 fun void EndUndoAction=2079(,)
383 val INDICS_MASK=INDIC0_MASK | INDIC1_MASK | INDIC2_MASK
385 # Set an indicator to plain, squiggle or TT.
386 set void IndicSetStyle=2080(int indic, int style)
388 # Retrieve the style of an indicator.
389 get int IndicGetStyle=2081(int indic,)
391 # Set the foreground colour of an indicator.
392 set void IndicSetFore=2082(int indic, colour fore)
394 # Retrieve the foreground colour of an indicator.
395 get colour IndicGetFore=2083(int indic,)
397 # Divide each styling byte into lexical class bits (default:5) and indicator
398 # bits (default:3). If a lexer requires more than 32 lexical states, then this
399 # is used to expand the possible states.
400 set void SetStyleBits=2090(int bits,)
402 # Retrieve number of bits in style bytes used to hold the lexical state.
403 get int GetStyleBits=2091(,)
405 # Used to hold extra styling information for each line.
406 set void SetLineState=2092(int line, int state)
408 # Retrieve the extra styling information for a line.
409 get int GetLineState=2093(int line,)
411 # Retrieve the last line number that has line state.
412 get int GetMaxLineState=2094(,)
414 # Display a auto-completion list.
415 # The lenEntered parameter indicates how many characters before
416 # the caret should be used to provide context.
417 fun void AutoCShow=2100(int lenEntered, string itemList)
419 # Remove the auto-completion list from the screen.
420 fun void AutoCCancel=2101(,)
422 # Is there an auto-completion list visible?
423 fun bool AutoCActive=2102(,)
425 # Retrieve the position of the caret when the auto-completion list was
427 fun position AutoCPosStart=2103(,)
429 # User has selected an item so remove the list and insert the selection.
430 fun void AutoCComplete=2104(,)
432 # Define a set of character that when typed cancel the auto-completion list.
433 fun void AutoCStops=2105(, string characterSet)
435 # Change the separator character in the string setting up an auto-completion
436 # list. Default is space but can be changed if items contain space.
437 set void AutoCSetSeparator=2106(int separatorCharacter,)
439 # Retrieve the auto-completion list separator character.
440 get int AutoCGetSeparator=2107(,)
442 # Select the item in the auto-completion list that starts with a string.
443 fun void AutoCSelect=2108(, string text)
445 # Should the auto-completion list be cancelled if the user backspaces to a
446 # position before where the box was created.
447 set void AutoCSetCancelAtStart=2110(bool cancel,)
449 # Retrieve whether auto-completion cancelled by backspacing before start.
450 get bool AutoCGetCancelAtStart=2111(,)
452 # Define a set of character that when typed fills up the selected word.
453 set void AutoCSetFillUps=2112(, string characterSet)
455 # Should a single item auto-completion list automatically choose the item.
456 set void AutoCSetChooseSingle=2113(bool chooseSingle,)
458 # Retrieve whether a single item auto-completion list automatically choose the item.
459 get bool AutoCGetChooseSingle=2114(,)
461 # Set whether case is significant when performing auto-completion searches.
462 set void AutoCSetIgnoreCase=2115(bool ignoreCase,)
464 # Retrieve state of ignore case flag.
465 get bool AutoCGetIgnoreCase=2116(,)
467 # Set the number of spaces used for one level of indentation.
468 set void SetIndent=2122(int indentSize,)
470 # Retrieve indentation size.
471 get int GetIndent=2123(,)
473 # Indentation will only use space characters if useTabs is false, otherwise
474 # it will use a combination of tabs and spaces.
475 set void SetUseTabs=2124(bool useTabs,)
477 # Retrieve whether tabs will be used in indentation.
478 get bool GetUseTabs=2125(,)
480 # Change the indentation of a line to a number of columns.
481 set void SetLineIndentation=2126(int line, int indentSize)
483 # Retrieve the number of columns that a line is indented.
484 get int GetLineIndentation=2127(int line,)
486 # Retrieve the position before the first non indentation character on a line.
487 get position GetLineIndentPosition=2128(int line,)
489 # Retrieve the column number of a position, taking tab width into account.
490 get int GetColumn=2129(position pos,)
492 # Show or hide the horizontal scroll bar.
493 set void SetHScrollBar=2130(bool show,)
495 # Is the horizontal scroll bar visible?
496 get bool GetHScrollBar=2131(,)
498 # Show or hide indentation guides.
499 set void SetIndentationGuides=2132(bool show,)
501 # Are the indentation guides visible?
502 get bool GetIndentationGuides=2133(,)
504 # Set the highlighted indentation guide column.
505 # 0 = no highlighted guide.
506 set void SetHighlightGuide=2134(int column,)
508 # Get the highlighted indentation guide column.
509 get int GetHighlightGuide=2135(,)
511 # Get the position after the last visible characters on a line.
512 get int GetLineEndPosition=2136(int line,)
514 # Get the code page used to interpret the bytes of the document as characters.
515 get int GetCodePage=2137(,)
517 # Get the foreground colour of the caret.
518 get colour GetCaretFore=2138(,)
521 get bool GetUsePalette=2139(,)
524 get bool GetReadOnly=2140(,)
526 # Sets the position of the caret.
527 set void SetCurrentPos=2141(position pos,)
529 # Sets the position that starts the selection - this becomes the anchor.
530 set void SetSelectionStart=2142(position pos,)
532 # Returns the position at the start of the selection.
533 get position GetSelectionStart=2143(,)
535 # Sets the position that ends the selection - this becomes the currentPosition.
536 set void SetSelectionEnd=2144(position pos,)
538 # Returns the position at the end of the selection.
539 get position GetSelectionEnd=2145(,)
541 # Sets the print magnification added to the point size of each style for printing.
542 set void SetPrintMagnification=2146(int magnification,)
544 # Returns the print magnification.
545 get int GetPrintMagnification=2147(,)
547 # PrintColourMode - use same colours as screen.
548 val SC_PRINT_NORMAL=0
549 # PrintColourMode - invert the light value of each style for printing.
550 val SC_PRINT_INVERTLIGHT=1
551 # PrintColourMode - force black text on white background for printing.
552 val SC_PRINT_BLACKONWHITE=2
554 # Modify colours when printing for clearer printed text.
555 set void SetPrintColourMode=2148(int mode,)
557 # Returns the print colour mode.
558 get int GetPrintColourMode=2149(,)
561 val SCFIND_WHOLEWORD=2
562 val SCFIND_MATCHCASE=4
563 val SCFIND_WORDSTART=0x00100000
564 # SCFIND_REGEXP is not yet implemented.
565 val SCFIND_REGEXP=0x00200000
567 # Find some text in the document.
568 fun position FindText=2150(int flags, findtext ft)
570 # On Windows will draw the document into a display context such as a printer.
571 fun void FormatRange=2151(bool draw, formatrange fr)
573 # Retrieve the line at the top of the display.
574 get int GetFirstVisibleLine=2152(,)
576 # Retrieve the contents of a line.
577 # Returns the length of the line.
578 fun int GetLine=2153(int line, stringresult text)
580 # Returns the number of lines in the document. There is always at least one.
581 get int GetLineCount=2154(,)
583 # Sets the size in pixels of the left margin.
584 set void SetMarginLeft=2155(, int width)
586 # Returns the size in pixels of the left margin.
587 get int GetMarginLeft=2156(,)
589 # Sets the size in pixels of the right margin.
590 set void SetMarginRight=2157(, int width)
592 # Returns the size in pixels of the right margin.
593 get int GetMarginRight=2158(,)
595 # Is the document different from when it was last saved?
596 get bool GetModify=2159(,)
598 # Select a range of text.
599 fun void SetSel=2160(position start, position end)
601 # Retrieve the selected text.
602 # Return the length of the text.
603 fun int GetSelText=2161(,stringresult text)
605 # Retrieve a range of text.
606 # Return the length of the text.
607 fun int GetTextRange=2162(, textrange tr)
609 # Draw the selection in normal style or with selection highlighted.
610 fun void HideSelection=2163(bool normal,)
612 # Retrieve the x value of the point in the window where a position is displayed.
613 fun int PointXFromPosition=2164(, position pos)
615 # Retrieve the y value of the point in the window where a position is displayed.
616 fun int PointYFromPosition=2165(, position pos)
618 # Retrieve the line containing a position.
619 fun int LineFromPosition=2166(position pos,)
621 # Retrieve the position at the start of a line.
622 fun int PositionFromLine=2167(int line,)
624 # Scroll horizontally and vertically.
625 fun void LineScroll=2168(int columns, int lines)
627 # Ensure the caret is visible.
628 fun void ScrollCaret=2169(,)
630 # Replace the selected text with the argument text.
631 fun void ReplaceSel=2170(, string text)
633 # Set to read only or read write.
634 set void SetReadOnly=2171(bool readOnly,)
637 fun void Null=2172(,)
639 # Will a paste succeed?
640 fun bool CanPaste=2173(,)
642 # Are there any undoable actions in the undo history.
643 fun bool CanUndo=2174(,)
645 # Delete the undo history.
646 fun void EmptyUndoBuffer=2175(,)
648 # Undo one action in the undo history.
649 fun void Undo=2176(,)
651 # Cut the selection to the clipboard.
654 # Copy the selection to the clipboard.
655 fun void Copy=2178(,)
657 # Paste the contents of the clipboard into the document replacing the selection.
658 fun void Paste=2179(,)
660 # Clear the selection.
661 fun void Clear=2180(,)
663 # Replace the contents of the document with the argument text.
664 fun void SetText=2181(, string text)
666 # Retrieve all the text in the document.
667 # Returns number of characters retrieved.
668 fun int GetText=2182(int length, stringresult text)
670 # Retrieve the number of characters in the document.
671 get int GetTextLength=2183(,)
673 # Retrieve a pointer to a function that processes messages for this Scintilla.
674 get int GetDirectFunction=2184(,)
676 # Retrieve a pointer value to use as the first argument when calling
677 # the function returned by GetDirectFunction.
678 get int GetDirectPointer=2185(,)
680 # Set to overtype (true) or insert mode
681 set void SetOvertype=2186(bool overtype,)
683 # Returns true if overtype mode is active otherwise false is returned.
684 get bool GetOvertype=2187(,)
686 # Show a call tip containing a definition near position pos.
687 fun void CallTipShow=2200(position pos, string definition)
689 # Remove the call tip from the screen.
690 fun void CallTipCancel=2201(,)
692 # Is there an active call tip?
693 fun bool CallTipActive=2202(,)
695 # Retrieve the position where the caret was before displaying the call tip.
696 fun position CallTipPosStart=2203(,)
698 # Highlight a segment of the definition.
699 fun void CallTipSetHlt=2204(int start, int end)
701 # Set the background colour for the call tip.
702 set void CallTipSetBack=2205(colour back,)
704 # Find the display line of a document line taking hidden lines into account.
705 fun int VisibleFromDocLine=2220(int line,)
707 # Find the document line of a display line taking hidden lines into account.
708 fun int DocLineFromVisible=2221(int lineDisplay,)
710 val SC_FOLDLEVELBASE=0x400
711 val SC_FOLDLEVELWHITEFLAG=0x1000
712 val SC_FOLDLEVELHEADERFLAG=0x2000
713 val SC_FOLDLEVELNUMBERMASK=0x0FFF
715 # Set the fold level of a line.
716 # This encodes an integer level along with flags indicating whether the
717 # line is a header and whether it is effectively white space.
718 set void SetFoldLevel=2222(int line, int level)
720 # Retrieve the fold level of a line.
721 get int GetFoldLevel=2223(int line,)
723 # Find the last child line of a header line.
724 get int GetLastChild=2224(int line, int level)
726 # Find the parent line of a child line.
727 get int GetFoldParent=2225(int line,)
729 # Make a range of lines visible.
730 fun void ShowLines=2226(int lineStart, int lineEnd)
732 # Make a range of lines invisible.
733 fun void HideLines=2227(int lineStart, int lineEnd)
736 get bool GetLineVisible=2228(int line,)
738 # Show the children of a header line.
739 set void SetFoldExpanded=2229(int line, bool expanded)
741 # Is a header line expanded?
742 get bool GetFoldExpanded=2230(int line,)
744 # Switch a header line between expanded and contracted.
745 fun void ToggleFold=2231(int line,)
747 # Ensure a particular line is visible by expanding any header line hiding it.
748 fun void EnsureVisible=2232(int line,)
750 # Set some debugging options for folding
751 fun void SetFoldFlags=2233(int flags,)
753 ## Start of key messages
754 # Move caret down one line.
755 fun void LineDown=2300(,)
757 # Move caret down one line extending selection to new caret position.
758 fun void LineDownExtend=2301(,)
760 # Move caret up one line.
761 fun void LineUp=2302(,)
763 # Move caret up one line extending selection to new caret position.
764 fun void LineUpExtend=2303(,)
766 # Move caret left one character.
767 fun void CharLeft=2304(,)
769 # Move caret left one character extending selection to new caret position.
770 fun void CharLeftExtend=2305(,)
772 # Move caret right one character.
773 fun void CharRight=2306(,)
775 # Move caret right one character extending selection to new caret position.
776 fun void CharRightExtend=2307(,)
778 # Move caret left one word.
779 fun void WordLeft=2308(,)
781 # Move caret left one word extending selection to new caret position.
782 fun void WordLeftExtend=2309(,)
784 # Move caret right one word.
785 fun void WordRight=2310(,)
787 # Move caret right one word extending selection to new caret position.
788 fun void WordRightExtend=2311(,)
790 # Move caret to first position on line.
791 fun void Home=2312(,)
793 # Move caret to first position on line extending selection to new caret position.
794 fun void HomeExtend=2313(,)
796 # Move caret to last position on line.
797 fun void LineEnd=2314(,)
799 # Move caret to last position on line extending selection to new caret position.
800 fun void LineEndExtend=2315(,)
802 # Move caret to first position in document.
803 fun void DocumentStart=2316(,)
805 # Move caret to first position in document extending selection to new caret position.
806 fun void DocumentStartExtend=2317(,)
808 # Move caret to last position in document.
809 fun void DocumentEnd=2318(,)
811 # Move caret to last position in document extending selection to new caret position.
812 fun void DocumentEndExtend=2319(,)
814 # Move caret one page up.
815 fun void PageUp=2320(,)
817 # Move caret one page up extending selection to new caret position.
818 fun void PageUpExtend=2321(,)
820 # Move caret one page down.
821 fun void PageDown=2322(,)
823 # Move caret one page down extending selection to new caret position.
824 fun void PageDownExtend=2323(,)
826 # Switch from insert to overtype mode or the reverse.
827 fun void EditToggleOvertype=2324(,)
829 # Cancel any modes such as call tip or auto-completion list display.
830 fun void Cancel=2325(,)
832 # Delete the selection or if no selection, the character before the caret.
833 fun void DeleteBack=2326(,)
835 # If selection is empty or all on one line replace the selection with a tab
837 # If more than one line selected, indent the lines.
840 # Dedent the selected lines.
841 fun void BackTab=2328(,)
843 # Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
844 fun void NewLine=2329(,)
846 # Insert a Form Feed character.
847 fun void FormFeed=2330(,)
849 # Move caret to before first visible character on line.
850 # If already there move to first character on line.
851 fun void VCHome=2331(,)
853 # Like VCHome but extending selection to new caret position.
854 fun void VCHomeExtend=2332(,)
856 # Magnify the displayed text by increasing the sizes by 1 point.
857 fun void ZoomIn=2333(,)
859 # Make the displayed text smaller by decreasing the sizes by 1 point.
860 fun void ZoomOut=2334(,)
862 # Delete the word to the left of the caret.
863 fun void DelWordLeft=2335(,)
865 # Delete the word to the right of the caret.
866 fun void DelWordRight=2336(,)
868 # Cut the line containing the caret.
869 fun void LineCut=2337(,)
871 # Delete the line containing the caret.
872 fun void LineDelete=2338(,)
874 # Switch the current line with the previous.
875 fun void LineTranspose=2339(,)
877 # Transform the selection to lower case.
878 fun void LowerCase=2340(,)
880 # Transform the selection to upper case.
881 fun void UpperCase=2341(,)
883 # Scroll the document down, keeping the caret visible.
884 fun void LineScrollDown=2342(,)
886 # Scroll the document up, keeping the caret visible.
887 fun void LineScrollUp=2343(,)
889 # How many characters are on a line, not including end of line characters.
890 fun int LineLength=2350(int line,)
892 # Highlight the characters at two positions.
893 fun void BraceHighlight=2351(position pos1,position pos2)
895 # Highlight the character at a position indicating there is no matching brace.
896 fun void BraceBadLight=2352(position pos,)
898 # Find the position of a matching brace or INVALID_POSITION if no match.
899 fun position BraceMatch=2353(position pos,)
901 # Are the end of line characters visible.
902 get bool GetViewEOL=2355(,)
904 # Make the end of line characters visible or invisible
905 set void SetViewEOL=2356(bool visible,)
907 # Retrieve a pointer to the document object.
908 get int GetDocPointer=2357(,)
910 # Change the document object used.
911 set void SetDocPointer=2358(int pointer,)
913 # Set which document modification events are sent to the container.
914 set void SetModEventMask=2359(int mask,)
918 val EDGE_BACKGROUND=2
920 # Retrieve the column number which text should be kept within.
921 get int GetEdgeColumn=2360(,)
923 # Set the column number of the edge.
924 # If text goes past the edge then it is highlighted.
925 set void SetEdgeColumn=2361(int column,)
927 # Retrieve the edge highlight mode.
928 get int GetEdgeMode=2362(,)
930 # The edge may be displayed by a line (EDGE_LINE) or by highlighting text that
931 # goes beyond it (EDGE_BACKGROUND) or not displayed at all (EDGE_NONE).
932 set void SetEdgeMode=2363(int mode,)
934 # Retrieve the colour used in edge indication.
935 get colour GetEdgeColour=2364(,)
937 # Change the colour used in edge indication.
938 set void SetEdgeColour=2365(colour edgeColour,)
940 # Sets the current caret position to be the search anchor.
941 fun void SearchAnchor=2366(,)
943 # Find some text starting at the search anchor.
944 fun int SearchNext=2367(int flags, string text)
946 # Find some text starting at the search anchor and moving backwards.
947 fun int SearchPrev=2368(int flags, string text)
949 # Show caret within N lines of edge when it's scrolled to view
951 # Center caret on screen when it's scrolled to view
952 val CARET_CENTER=0x02
953 # OR this with CARET_CENTER to reposition even when visible, or
954 # OR this with CARET_SLOP to reposition whenever outside slop border
955 val CARET_STRICT=0x04
956 # Set the way the line the caret is on is kept visible.
957 fun void SetCaretPolicy=2369(int caretPolicy, int caretSlop)
959 # Retrieves the number of lines completely visible.
960 get int LinesOnScreen=2370(,)
962 # Set whether a pop up menu is displayed automatically when the user presses
963 # the wrong mouse button.
964 fun void UsePopUp=2371(bool allowPopUp,)
966 # Is the selection a rectangular. The alternative is the more common stream selection.
967 get bool SelectionIsRectangle=2372(,)
969 # Set the zoom level. This number of points is added to the size of all fonts.
970 # It may be positive to magnify or negative to reduce.
971 set void SetZoom=2373(int zoom,)
972 # Retrieve the zoom level.
973 get int GetZoom=2374(,)
975 # Create a new document object.
976 # Starts with reference count of 1 and not selected into editor.
977 fun int CreateDocument=2375(,)
978 # Extend life of document.
979 fun void AddRefDocument=2376(, int doc)
980 # Release a reference to the document, deleting document if it fades to black.
981 fun void ReleaseDocument=2377(, int doc)
983 # Get which document modification events are sent to the container.
984 get int GetModEventMask=2378(,)
986 # Set the focus to this Scintilla widget.
988 fun void GrabFocus=2400(,)
990 # Start notifying the container of all key presses and commands.
991 fun void StartRecord=3001(,)
993 # Stop notifying the container of all key presses and commands.
994 fun void StopRecord=3002(,)
996 # Set the lexing language of the document.
997 set void SetLexer=4001(int lexer,)
999 # Retrieve the lexing language of the document.
1000 get int GetLexer=4002(,)
1002 # Colourise a segment of the document using the current lexing language.
1003 fun void Colourise=4003(position start, position end)
1005 # Set up a value that may be used by a lexer for some optional feature.
1006 set void SetProperty=4004(string key, string value)
1008 # Set up the key words used by the lexer.
1009 set void SetKeyWords=4005(int keywordSet, string keyWords)
1012 # Type of modification and the action which caused the modification
1013 # These are defined as a bit mask to make it easy to specify which notifications are wanted.
1014 # One bit is set from each of SC_MOD_* and SC_PERFORMED_*.
1015 val SC_MOD_INSERTTEXT=0x1
1016 val SC_MOD_DELETETEXT=0x2
1017 val SC_MOD_CHANGESTYLE=0x4
1018 val SC_MOD_CHANGEFOLD=0x8
1019 val SC_PERFORMED_USER=0x10
1020 val SC_PERFORMED_UNDO=0x20
1021 val SC_PERFORMED_REDO=0x40
1022 val SC_LASTSTEPINUNDOREDO=0x100
1023 val SC_MOD_CHANGEMARKER=0x200
1024 val SC_MOD_BEFOREINSERT=0x400
1025 val SC_MOD_BEFOREDELETE=0x800
1026 val SC_MODEVENTMASKALL=0xF77
1028 # For compatibility, these go through the COMMAND notification rather than NOTIFY
1029 # and have exactly the same values as the EN_* constants.
1031 val SCEN_SETFOCUS=512
1032 val SCEN_KILLFOCUS=256
1034 # Symbolic key codes and modifier flags
1035 # ASCII and other printable characters below 256
1036 # Extended keys above 300
1053 val SCK_SUBTRACT=311
1060 ################################################
1062 val SCLEX_CONTAINER=0
1071 val SCLEX_PROPERTIES=9
1072 val SCLEX_ERRORLIST=10
1073 val SCLEX_MAKEFILE=11
1079 # Lexical states for SCLEX_PYTHON
1081 val SCE_P_COMMENTLINE=1
1084 val SCE_P_CHARACTER=4
1087 val SCE_P_TRIPLEDOUBLE=7
1088 val SCE_P_CLASSNAME=8
1090 val SCE_P_OPERATOR=10
1091 val SCE_P_IDENTIFIER=11
1092 val SCE_P_COMMENTBLOCK=12
1093 val SCE_P_STRINGEOL=13
1094 # Lexical states for SCLEX_CPP, SCLEX_VB
1097 val SCE_C_COMMENTLINE=2
1098 val SCE_C_COMMENTDOC=3
1102 val SCE_C_CHARACTER=7
1104 val SCE_C_PREPROCESSOR=9
1105 val SCE_C_OPERATOR=10
1106 val SCE_C_IDENTIFIER=11
1107 val SCE_C_STRINGEOL=12
1108 val SCE_C_VERBATIM=13
1109 # Lexical states for SCLEX_HTML, SCLEX_XML
1112 val SCE_H_TAGUNKNOWN=2
1113 val SCE_H_ATTRIBUTE=3
1114 val SCE_H_ATTRIBUTEUNKNOWN=4
1116 val SCE_H_DOUBLESTRING=6
1117 val SCE_H_SINGLESTRING=7
1123 val SCE_H_XMLSTART=12
1129 val SCE_H_QUESTION=18
1132 # Embedded Javascript
1134 val SCE_HJ_DEFAULT=41
1135 val SCE_HJ_COMMENT=42
1136 val SCE_HJ_COMMENTLINE=43
1137 val SCE_HJ_COMMENTDOC=44
1138 val SCE_HJ_NUMBER=45
1140 val SCE_HJ_KEYWORD=47
1141 val SCE_HJ_DOUBLESTRING=48
1142 val SCE_HJ_SINGLESTRING=49
1143 val SCE_HJ_SYMBOLS=50
1144 val SCE_HJ_STRINGEOL=51
1146 val SCE_HJA_START=55
1147 val SCE_HJA_DEFAULT=56
1148 val SCE_HJA_COMMENT=57
1149 val SCE_HJA_COMMENTLINE=58
1150 val SCE_HJA_COMMENTDOC=59
1151 val SCE_HJA_NUMBER=60
1153 val SCE_HJA_KEYWORD=62
1154 val SCE_HJA_DOUBLESTRING=63
1155 val SCE_HJA_SINGLESTRING=64
1156 val SCE_HJA_SYMBOLS=65
1157 val SCE_HJA_STRINGEOL=66
1160 val SCE_HB_DEFAULT=71
1161 val SCE_HB_COMMENTLINE=72
1162 val SCE_HB_NUMBER=73
1164 val SCE_HB_STRING=75
1165 val SCE_HB_IDENTIFIER=76
1166 val SCE_HB_STRINGEOL=77
1168 val SCE_HBA_START=80
1169 val SCE_HBA_DEFAULT=81
1170 val SCE_HBA_COMMENTLINE=82
1171 val SCE_HBA_NUMBER=83
1173 val SCE_HBA_STRING=85
1174 val SCE_HBA_IDENTIFIER=86
1175 val SCE_HBA_STRINGEOL=87
1178 val SCE_HP_DEFAULT=91
1179 val SCE_HP_COMMENTLINE=92
1180 val SCE_HP_NUMBER=93
1181 val SCE_HP_STRING=94
1182 val SCE_HP_CHARACTER=95
1184 val SCE_HP_TRIPLE=97
1185 val SCE_HP_TRIPLEDOUBLE=98
1186 val SCE_HP_CLASSNAME=99
1187 val SCE_HP_DEFNAME=100
1188 val SCE_HP_OPERATOR=101
1189 val SCE_HP_IDENTIFIER=102
1191 val SCE_HPA_START=105
1192 val SCE_HPA_DEFAULT=106
1193 val SCE_HPA_COMMENTLINE=107
1194 val SCE_HPA_NUMBER=108
1195 val SCE_HPA_STRING=109
1196 val SCE_HPA_CHARACTER=110
1197 val SCE_HPA_WORD=111
1198 val SCE_HPA_TRIPLE=112
1199 val SCE_HPA_TRIPLEDOUBLE=113
1200 val SCE_HPA_CLASSNAME=114
1201 val SCE_HPA_DEFNAME=115
1202 val SCE_HPA_OPERATOR=116
1203 val SCE_HPA_IDENTIFIER=117
1205 val SCE_HPHP_DEFAULT=118
1206 val SCE_HPHP_HSTRING=119
1207 val SCE_HPHP_SIMPLESTRING=120
1208 val SCE_HPHP_WORD=121
1209 val SCE_HPHP_NUMBER=122
1210 val SCE_HPHP_VARIABLE=123
1211 val SCE_HPHP_COMMENT=124
1212 val SCE_HPHP_COMMENTLINE=125
1213 val SCE_HPHP_STRINGEOL=126
1214 # Lexical states for SCLEX_PERL
1215 val SCE_PL_DEFAULT=0
1217 val SCE_PL_COMMENTLINE=2
1222 val SCE_PL_CHARACTER=7
1223 val SCE_PL_PUNCTUATION=8
1224 val SCE_PL_PREPROCESSOR=9
1225 val SCE_PL_OPERATOR=10
1226 val SCE_PL_IDENTIFIER=11
1227 val SCE_PL_SCALAR=12
1230 val SCE_PL_SYMBOLTABLE=15
1233 val SCE_PL_REGSUBST=18
1234 val SCE_PL_LONGQUOTE=19
1235 val SCE_PL_BACKTICKS=20
1236 val SCE_PL_DATASECTION=21
1237 # Lexical states for SCLEX_LATEX
1243 # Lexical states for SCLEX_LUA
1244 val SCE_LUA_DEFAULT=0
1245 val SCE_LUA_COMMENT=1
1246 val SCE_LUA_COMMENTLINE=2
1247 val SCE_LUA_COMMENTDOC=3
1248 val SCE_LUA_NUMBER=4
1250 val SCE_LUA_STRING=6
1251 val SCE_LUA_CHARACTER=7
1252 val SCE_LUA_LITERALSTRING=8
1253 val SCE_LUA_PREPROCESSOR=9
1254 val SCE_LUA_OPERATOR=10
1255 val SCE_LUA_IDENTIFIER=11
1256 val SCE_LUA_STRINGEOL=12
1257 val SCE_ERR_DEFAULT=0
1258 val SCE_ERR_PYTHON=1
1262 val SCE_ERR_BORLAND=5
1267 evt void StyleNeeded=2000(int position)
1268 evt void CharAdded=2001(int ch)
1269 evt void SavePointReached=2002(void)
1270 evt void SavePointLeft=2003(void)
1271 evt void ModifyAttemptRO=2004(void)
1272 # GTK+ Specific to work around focus and accelerator problems:
1273 evt void Key=2005(int ch, int modifiers)
1274 evt void DoubleClick=2006(void)
1275 evt void UpdateUI=2007(void)
1276 # The old name for SCN_UPDATEUI
1277 val SCN_CHECKBRACE=2007
1278 evt void Modified=2008(int position, int modificationType, string text, int length, int linesAdded, int line, int foldLevelNow, int foldLevelPrev)
1279 # Optional module for macro recording
1280 evt void MacroRecord=2009(int message, int wParam, int lParam)
1281 evt void MarginClick=2010(int modifiers, int position, int margin)
1282 evt void NeedShown=2011(int position, int length)
1283 evt void PosChanged=2012(int position)
1287 ################################################
1290 # ***** DEPRECATED from here to end of file ******
1292 # Will a paste succeed?
1293 fun bool EM_CanPaste=1074(,)
1295 # Are there any undoable actions in the undo history.
1296 fun bool EM_CanUndo=198(,)
1298 # Find the position and line from a point within the window.
1299 fun int EM_CharFromPos=215(,point pt)
1301 # Delete the undo history.
1302 fun void EM_EmptyUndoBuffer=205(,)
1304 # Retrieve the selection range.
1305 fun void EM_ExGetSel=1076(,charrangeresult cr)
1307 # Retrieve the line number of a position in the document.
1308 get int EM_ExLineFromChar=1078(,position pos)
1310 # Select a range of text.
1311 fun void EM_ExSetSel=1079(,charrange cr)
1313 # Find some text in the document.
1314 fun position EM_FindText=1080(int flags, findtext ft)
1316 # Find some text in the document. Returns range of found text in ft argument.
1317 fun position EM_FindTextEx=1103(int flags, findtextex ft)
1319 # On Windows will draw the document into a display context such as a printer.
1320 fun void EM_FormatRange=1081(bool draw, formatrange fr)
1322 # Retrieve the line at the top of the display.
1323 get int EM_GetFirstVisibleLine=206(,)
1325 # Retrieve the contents of a line.
1326 # Returns the length of the line.
1327 fun int EM_GetLine=196(int line, countedstring text)
1329 # Returns the number of lines in the document. There is always at least one.
1330 fun int EM_GetLineCount=186(,)
1332 # Returns the size in pixels of left and right margins packed into one integer.
1333 # The left margin is in the low half and the right margin in the high half.
1334 fun int EM_GetMargins=212(,)
1336 # Is the document different from when it was last saved?
1337 get bool EM_GetModify=184(,)
1339 # Get the area used to display the document.
1340 fun void EM_GetRect=178(,rectangle r)
1342 # Return the selection packed into one integer with the start of the selection
1343 # in the low half and the end in the high half.
1344 fun int EM_GetSel=176(,)
1346 # Retrieve the selected text.
1347 # Return the length of the text.
1348 fun int EM_GetSelText=1086(,stringresult text)
1350 # Retrieve a range of text.
1351 # Return the length of the text.
1352 fun int EM_GetTextRange=1099(, textrange tr)
1354 # Draw the selection in normal style or with selection highlighted.
1355 fun void EM_HideSelection=1087(bool normal,)
1357 # Retrieve the line of a position.
1358 fun int EM_LineFromChar=201(position pos,)
1360 # Retrieve the position at the start of a line.
1361 fun position EM_LineIndex=187(int line,)
1363 # Retrieve the number of characters on a line not including end of line characters.
1364 fun int EM_LineLength=193(int line,)
1366 # Scroll horizontally and vertically.
1367 fun void EM_LineScroll=182(int columns, int lines)
1369 # Retrieve the point in the window where a position is displayed.
1370 fun void EM_PosFromChar=214(pointresult pt, position pos)
1372 # Replace the selected text with the argument text.
1373 fun void EM_ReplaceSel=194(, string text)
1375 # Ensure the caret is visible.
1376 fun void EM_ScrollCaret=183(,)
1378 # Returns SEL_EMPTY if selection contains no characters, otherwise SEL_TEXT.
1379 fun void EM_SelectionType=1090(,)
1381 # Set the width of the left and right margins
1382 fun void EM_SetMargins=211(int flags, int values)
1384 # Set to read only or read write.
1385 set void EM_SetReadOnly=207(bool readOnly,)
1387 # Select the range of text from start to end.
1388 fun void EM_SetSel=177(position start, position end)
1390 # Undo one action in the undo history.
1391 fun void EM_Undo=199(,)
1394 fun void WM_Null=0(,)
1396 # Clear the selection.
1397 fun void WM_Clear=771(,)
1399 fun void WM_Command=273(,)
1401 # Copy the selection to the clipboard.
1402 fun void WM_Copy=769(,)
1404 # Cut the selection to the clipboard.
1405 fun void WM_Cut=768(,)
1407 # Retrieve all the text in the document.
1408 # Returns number of characters retrieved.
1409 fun int WM_GetText=13(int length, stringresult text)
1411 # Retrieve the number of characters in the document.
1412 fun int WM_GetTextLength=14(,)
1414 # Notification back to container
1415 fun void WM_Notify=78(int id, int stuff)
1417 # Paste the contents of the clipboard into the document replacing the selection.
1418 fun void WM_Paste=770(,)
1420 # Replace the contents of the document with the argument text.
1421 fun void WM_SetText=12(, string text)
1423 # Undo one action in the undo history.
1424 fun void WM_Undo=772(,)
1426 # Notification codes
1428 val EN_KILLFOCUS=512
1431 # Flags for setting margins.
1433 val EC_RIGHTMARGIN=2
1434 val EC_USEFONTINFO=0xffff
1440 # Find replace mask constants
1441 val FR_MATCHCASE=0x4
1442 val FR_WHOLEWORD=0x2
1445 # Key modifier flag.
1447 val LEFT_CTRL_PRESSED=2
1448 val LEFT_ALT_PRESSED=4
1451 evt void EN_Change=768(void)