]> git.saurik.com Git - wxWidgets.git/blame - contrib/src/stc/scintilla/include/Scintilla.iface
Added DECLARE_LOCAL_EVENT_TYPE which doesn't use WXDLLEXPORT. This is
[wxWidgets.git] / contrib / src / stc / scintilla / include / Scintilla.iface
CommitLineData
bfabd11a
RD
1## First line may be used for shbang
2
3## This file defines the interface to Scintilla
4
5## A line starting with ## is a pure comment and should be stripped by readers.
d134f170 6## A line starting with #! is for future shbang use
bfabd11a
RD
7## A line starting with # followed by a space is a documentation comment and refers
8## to the next feature definition.
9
d134f170 10## Each feature is defined by a line starting with fun, get, set, val or evt.
bfabd11a
RD
11## cat -> start a category
12## fun -> a function
13## get -> a property get function
d134f170 14## set -> a property set function
bfabd11a 15## val -> definition of a constant
d134f170 16## evt -> an event
bfabd11a
RD
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.
d134f170 25## The syntax for evt is <featureType><ws><returnType><ws><name>[=<number]([<param>[,<param>]*])
bfabd11a
RD
26## Feature names that contain an underscore are defined by Windows, so in these
27## cases, using the Windows definition is preferred where available.
28
29## Types:
30## void
31## int
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
d134f170
RD
38## charrange -> range of a min and a max position
39## charrangeresult -> like charrange, but output param
40## textrange -> charrange + output string
bfabd11a 41## findtext -> searchrange, text -> foundposition
d134f170 42## findtextex -> searchrange
bfabd11a
RD
43## keymod -> integer containing key in low half and modifiers in high half
44## countedstring
45## formatrange
46## point -> x,y
d134f170
RD
47## pointresult -> like point, but output param
48## rectangle -> left,top,right,bottom
bfabd11a
RD
49## Client code should ignore definitions containing types it does not understand, except
50## for possibly #defining the constants
51
52cat Basics
53
54################################################
d134f170 55## For Scintilla.h
bfabd11a 56val INVALID_POSITION=-1
d134f170
RD
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.
bfabd11a
RD
59val SCI_START=2000
60val SCI_OPTIONAL_START=3000
61val SCI_LEXER_START=4000
62
63# Add text to the document
64fun void AddText=2001(int length, string text)
65
66# Add array of cells to document
67fun void AddStyledText=2002(int length, cells c)
68
69# Insert string at a position
70fun void InsertText=2003(position pos, string text)
71
72# Delete all text in the document
73fun void ClearAll=2004(,)
74
d134f170
RD
75# Set all style bytes to 0, remove all folding information
76fun void ClearDocumentStyle=2005(,)
77
bfabd11a
RD
78# The number of characters in the document
79get int GetLength=2006(,)
80
81# Returns the character byte at the position
82get int GetCharAt=2007(position pos,)
83
84# Returns the position of the caret
85get position GetCurrentPos=2008(,)
86
87# Returns the position of the opposite end of the selection to the caret
88get position GetAnchor=2009(,)
89
90# Returns the style byte at the position
91get int GetStyleAt=2010(position pos,)
92
93# Redoes the next action on the undo history
94fun void Redo=2011(,)
95
bfabd11a
RD
96# Choose between collecting actions into the undo
97# history and discarding them.
d134f170 98set void SetUndoCollection=2012(bool collectUndo,)
bfabd11a
RD
99
100# Select all the text in the document.
101fun void SelectAll=2013(,)
102
103# Remember the current position in the undo history as the position
104# at which the document was saved.
105fun void SetSavePoint=2014(,)
106
107# Retrieve a buffer of cells.
108# Returns the number of bytes in the buffer not including terminating nulls.
109fun int GetStyledText=2015(, textrange tr)
110
111# Are there any redoable actions in the undo history.
112fun bool CanRedo=2016(,)
113
114# Retrieve the line number at which a particular marker is located
115fun int MarkerLineFromHandle=2017(int handle,)
116
117# Delete a marker.
118fun void MarkerDeleteHandle=2018(int handle,)
119
d134f170
RD
120# Is undo history being collected?
121get bool GetUndoCollection=2019(,)
122
123val SCWS_INVISIBLE=0
124val SCWS_VISIBLEALWAYS=1
125val SCWS_VISIBLEAFTERINDENT=2
126
bfabd11a 127# Are white space characters currently visible?
d134f170
RD
128# Returns one of SCWS_* constants.
129get int GetViewWS=2020(,)
bfabd11a 130
d134f170
RD
131# Make white space characters invisible, always visible or visible outside indentation.
132set void SetViewWS=2021(int viewWS,)
133
134# Find the position from a point within the window.
135fun int PositionFromPoint=2022(int x, int y)
bfabd11a
RD
136
137# Set caret to start of a line and ensure it is visible.
138fun void GotoLine=2024(int line,)
139
140# Set caret to a position and ensure it is visible.
141fun void GotoPos=2025(position pos,)
142
143# Set the selection anchor to a position. The anchor is the opposite
144# end of the selection from the caret.
145set void SetAnchor=2026(position posAnchor,)
146
147# Retrieve the text of the line containing the caret.
148# Returns the index of the caret on the line.
149fun int GetCurLine=2027(int length, stringresult text)
150
151# Retrieve the position of the last correctly styled character.
152get position GetEndStyled=2028(,)
153
154# Convert all line endings in the document to use the current mode.
155fun void ConvertEOLs=2029(,)
156
157val SC_EOL_CRLF=0
158val SC_EOL_CR=1
159val SC_EOL_LF=2
160
161# Retrieve the current end of line mode - one of CRLF, CR, or LF.
162get int GetEOLMode=2030(,)
163
164# Set the current end of line mode.
165set void SetEOLMode=2031(int eolMode,)
166
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
169# modification.
170fun void StartStyling=2032(position pos, int mask)
171
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.
174fun void SetStyling=2033(int length, int style)
175
d134f170
RD
176# Is drawing done first into a buffer or direct to the screen.
177get bool GetBufferedDraw=2034(,)
178
bfabd11a
RD
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.
181set void SetBufferedDraw=2035(bool buffered,)
182
183# Change the visible size of a tab to be a multiple of the width of a space
184# character.
185set void SetTabWidth=2036(int tabWidth,)
186
187# Retrieve the visible size of a tab.
188get int GetTabWidth=2121(,)
189
d134f170
RD
190# The SC_CP_UTF8 value can be used to enter Unicode mode.
191# This is the same value as CP_UTF8 in Windows
bfabd11a
RD
192val SC_CP_UTF8=65001
193
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.
196set void SetCodePage=2037(int codePage,)
197
198# In palette mode, Scintilla uses the environments palette calls to display
199# more colours. This may lead to ugly displays.
200set void SetUsePalette=2039(bool usePalette,)
201
202val MARKER_MAX=31
203val SC_MARK_CIRCLE=0
204val SC_MARK_ROUNDRECT=1
205val SC_MARK_ARROW=2
206val SC_MARK_SMALLRECT=3
207val SC_MARK_SHORTARROW=4
208val SC_MARK_EMPTY=5
209val SC_MARK_ARROWDOWN=6
210val SC_MARK_MINUS=7
211val SC_MARK_PLUS=8
212
213val SC_MARKNUM_FOLDER=30
214val SC_MARKNUM_FOLDEROPEN=31
bfabd11a
RD
215
216# Set the symbol used for a particular marker number.
217fun void MarkerDefine=2040(int markerNumber, int markerSymbol)
218
219# Set the foreground colour used for a particular marker number.
220fun void MarkerSetFore=2041(int markerNumber, colour fore)
221
222# Set the background colour used for a particular marker number.
223fun void MarkerSetBack=2042(int markerNumber, colour back)
224
225# Add a marker to a line.
226fun void MarkerAdd=2043(int line, int markerNumber)
227
228# Delete a marker from a line
229fun void MarkerDelete=2044(int line, int markerNumber)
230
231# Delete all markers with a particular number from all lines
232fun void MarkerDeleteAll=2045(int markerNumber,)
233
234# Get a bit mask of all the markers set on a line.
235fun int MarkerGet=2046(int line,)
236
237# Find the next line after lineStart that includes a marker in mask.
238fun int MarkerNext=2047(int lineStart, int markerMask)
239
240# Find the previous line before lineStart that includes a marker in mask.
241fun int MarkerPrevious=2048(int lineStart, int markerMask)
242
243val SC_MARGIN_SYMBOL=0
244val SC_MARGIN_NUMBER=1
245
246# Set a margin to be either numeric or symbolic.
247set void SetMarginTypeN=2240(int margin, int marginType)
248
249# Retrieve the type of a margin.
250get int GetMarginTypeN=2241(int margin,)
251
252# Set the width of a margin to a width expressed in pixels.
253set void SetMarginWidthN=2242(int margin, int pixelWidth)
254
255# Retrieve the width of a margin in pixels.
256get int GetMarginWidthN=2243(int margin,)
257
258# Set a mask that determines which markers are displayed in a margin.
259set void SetMarginMaskN=2244(int margin, int mask)
260
261# Retrieve the marker mask of a margin.
262get int GetMarginMaskN=2245(int margin,)
263
264# Make a margin sensitive or insensitive to mouse clicks.
265set void SetMarginSensitiveN=2246(int margin, bool sensitive)
266
267# Retrieve the mouse click sensitivity of a margin.
268get bool GetMarginSensitiveN=2247(int margin,)
269
270val STYLE_DEFAULT=32
271val STYLE_LINENUMBER=33
272val STYLE_BRACELIGHT=34
273val STYLE_BRACEBAD=35
274val STYLE_CONTROLCHAR=36
d134f170 275val STYLE_INDENTGUIDE=37
bfabd11a
RD
276val STYLE_MAX=127
277
d134f170
RD
278# Character set identifiers are used in StyleSetCharacterSet.
279# The values are the same as the Windows *_CHARSET values.
280val SC_CHARSET_ANSI=0
281val SC_CHARSET_DEFAULT=1
282val SC_CHARSET_BALTIC=186
283val SC_CHARSET_CHINESEBIG5=136
284val SC_CHARSET_EASTEUROPE=238
285val SC_CHARSET_GB2312=134
286val SC_CHARSET_GREEK=161
287val SC_CHARSET_HANGUL=129
288val SC_CHARSET_MAC=77
289val SC_CHARSET_OEM=255
290val SC_CHARSET_RUSSIAN=204
291val SC_CHARSET_SHIFTJIS=128
292val SC_CHARSET_SYMBOL=2
293val SC_CHARSET_TURKISH=162
294val SC_CHARSET_JOHAB=130
295val SC_CHARSET_HEBREW=177
296val SC_CHARSET_ARABIC=178
297val SC_CHARSET_VIETNAMESE=163
298val SC_CHARSET_THAI=222
299
bfabd11a
RD
300# Clear all the styles and make equivalent to the global default style.
301set void StyleClearAll=2050(,)
302
303# Set the foreground colour of a style.
304set void StyleSetFore=2051(int style, colour fore)
305
306# Set the background colour of a style.
307set void StyleSetBack=2052(int style, colour back)
308
309# Set a style to be bold or not.
310set void StyleSetBold=2053(int style, bool bold)
311
312# Set a style to be italic or not.
313set void StyleSetItalic=2054(int style, bool italic)
314
315# Set the size of characters of a style.
316set void StyleSetSize=2055(int style, int sizePoints)
317
318# Set the font of a style.
319set void StyleSetFont=2056(int style, string fontName)
320
321# Set a style to have its end of line filled or not.
322set void StyleSetEOLFilled=2057(int style, bool filled)
323
324# Reset the default style to its state at startup
325fun void StyleResetDefault=2058(,)
326
327# Set a style to be underlined or not.
328set void StyleSetUnderline=2059(int style, bool underline)
329
330# Set the character set of the font in a style.
331set void StyleSetCharacterSet=2066(int style, int characterSet)
332
333# Set the foreground colour of the selection and whether to use this setting.
334fun void SetSelFore=2067(bool useSetting, colour fore)
335
336# Set the background colour of the selection and whether to use this setting.
337fun void SetSelBack=2068(bool useSetting, colour back)
338
339# Set the foreground colour of the caret.
d134f170 340set void SetCaretFore=2069(colour fore,)
bfabd11a
RD
341
342# When key+modifier combination km is pressed perform msg.
343fun void AssignCmdKey=2070(keymod km, int msg)
344
345# When key+modifier combination km do nothing.
346fun void ClearCmdKey=2071(keymod km,)
347
348# Drop all key mappings.
349fun void ClearAllCmdKeys=2072(,)
350
351# Set the styles for a segment of the document.
352fun void SetStylingEx=2073(int length, string styles)
353
d134f170
RD
354# Set a style to be visible or not.
355set void StyleSetVisible=2074(int style, bool visible)
356
bfabd11a
RD
357# Get the time in milliseconds that the caret is on and off.
358get int GetCaretPeriod=2075(,)
359
360# Get the time in milliseconds that the caret is on and off. 0 = steady on.
361set void SetCaretPeriod=2076(int periodMilliseconds,)
362
363# Set the set of characters making up words for when moving or selecting
364# by word.
365set void SetWordChars=2077(, string characters)
366
367# Start a sequence of actions that is undone and redone as a unit.
368# May be nested.
369fun void BeginUndoAction=2078(,)
370
371# End a sequence of actions that is undone and redone as a unit.
372fun void EndUndoAction=2079(,)
373
374val INDIC_MAX=7
375val INDIC_PLAIN=0
376val INDIC_SQUIGGLE=1
377val INDIC_TT=2
378val INDIC_DIAGONAL=3
379val INDIC_STRIKE=4
380val INDIC0_MASK=32
381val INDIC1_MASK=64
382val INDIC2_MASK=128
383val INDICS_MASK=INDIC0_MASK | INDIC1_MASK | INDIC2_MASK
384
385# Set an indicator to plain, squiggle or TT.
386set void IndicSetStyle=2080(int indic, int style)
387
388# Retrieve the style of an indicator.
389get int IndicGetStyle=2081(int indic,)
390
391# Set the foreground colour of an indicator.
392set void IndicSetFore=2082(int indic, colour fore)
393
394# Retrieve the foreground colour of an indicator.
395get colour IndicGetFore=2083(int indic,)
396
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.
400set void SetStyleBits=2090(int bits,)
401
402# Retrieve number of bits in style bytes used to hold the lexical state.
403get int GetStyleBits=2091(,)
404
405# Used to hold extra styling information for each line.
406set void SetLineState=2092(int line, int state)
407
408# Retrieve the extra styling information for a line.
409get int GetLineState=2093(int line,)
410
411# Retrieve the last line number that has line state.
412get int GetMaxLineState=2094(,)
413
414# Display a auto-completion list.
415# The lenEntered parameter indicates how many characters before
416# the caret should be used to provide context.
417fun void AutoCShow=2100(int lenEntered, string itemList)
418
419# Remove the auto-completion list from the screen.
420fun void AutoCCancel=2101(,)
421
422# Is there an auto-completion list visible?
423fun bool AutoCActive=2102(,)
424
425# Retrieve the position of the caret when the auto-completion list was
426# displayed.
427fun position AutoCPosStart=2103(,)
428
429# User has selected an item so remove the list and insert the selection.
430fun void AutoCComplete=2104(,)
431
432# Define a set of character that when typed cancel the auto-completion list.
433fun void AutoCStops=2105(, string characterSet)
434
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.
437set void AutoCSetSeparator=2106(int separatorCharacter,)
438
439# Retrieve the auto-completion list separator character.
440get int AutoCGetSeparator=2107(,)
441
442# Select the item in the auto-completion list that starts with a string.
443fun void AutoCSelect=2108(, string text)
444
d134f170
RD
445# Should the auto-completion list be cancelled if the user backspaces to a
446# position before where the box was created.
447set void AutoCSetCancelAtStart=2110(bool cancel,)
448
449# Retrieve whether auto-completion cancelled by backspacing before start.
450get bool AutoCGetCancelAtStart=2111(,)
451
452# Define a set of character that when typed fills up the selected word.
453set void AutoCSetFillUps=2112(, string characterSet)
454
455# Should a single item auto-completion list automatically choose the item.
456set void AutoCSetChooseSingle=2113(bool chooseSingle,)
457
458# Retrieve whether a single item auto-completion list automatically choose the item.
459get bool AutoCGetChooseSingle=2114(,)
460
461# Set whether case is significant when performing auto-completion searches.
462set void AutoCSetIgnoreCase=2115(bool ignoreCase,)
463
464# Retrieve state of ignore case flag.
465get bool AutoCGetIgnoreCase=2116(,)
466
bfabd11a
RD
467# Set the number of spaces used for one level of indentation.
468set void SetIndent=2122(int indentSize,)
469
470# Retrieve indentation size.
471get int GetIndent=2123(,)
472
473# Indentation will only use space characters if useTabs is false, otherwise
474# it will use a combination of tabs and spaces.
475set void SetUseTabs=2124(bool useTabs,)
476
477# Retrieve whether tabs will be used in indentation.
478get bool GetUseTabs=2125(,)
479
480# Change the indentation of a line to a number of columns.
481set void SetLineIndentation=2126(int line, int indentSize)
482
483# Retrieve the number of columns that a line is indented.
484get int GetLineIndentation=2127(int line,)
485
486# Retrieve the position before the first non indentation character on a line.
487get position GetLineIndentPosition=2128(int line,)
488
d134f170
RD
489# Retrieve the column number of a position, taking tab width into account.
490get int GetColumn=2129(position pos,)
491
492# Show or hide the horizontal scroll bar.
bfabd11a
RD
493set void SetHScrollBar=2130(bool show,)
494
d134f170 495# Is the horizontal scroll bar visible?
bfabd11a
RD
496get bool GetHScrollBar=2131(,)
497
d134f170
RD
498# Show or hide indentation guides.
499set void SetIndentationGuides=2132(bool show,)
500
501# Are the indentation guides visible?
502get bool GetIndentationGuides=2133(,)
503
504# Set the highlighted indentation guide column.
505# 0 = no highlighted guide.
506set void SetHighlightGuide=2134(int column,)
507
508# Get the highlighted indentation guide column.
509get int GetHighlightGuide=2135(,)
510
511# Get the position after the last visible characters on a line.
512get int GetLineEndPosition=2136(int line,)
513
514# Get the code page used to interpret the bytes of the document as characters.
515get int GetCodePage=2137(,)
516
517# Get the foreground colour of the caret.
518get colour GetCaretFore=2138(,)
519
520# In palette mode?
521get bool GetUsePalette=2139(,)
522
523# In read-only mode?
524get bool GetReadOnly=2140(,)
525
526# Sets the position of the caret.
527set void SetCurrentPos=2141(position pos,)
528
529# Sets the position that starts the selection - this becomes the anchor.
530set void SetSelectionStart=2142(position pos,)
531
532# Returns the position at the start of the selection.
533get position GetSelectionStart=2143(,)
534
535# Sets the position that ends the selection - this becomes the currentPosition.
536set void SetSelectionEnd=2144(position pos,)
537
538# Returns the position at the end of the selection.
539get position GetSelectionEnd=2145(,)
540
541# Sets the print magnification added to the point size of each style for printing.
542set void SetPrintMagnification=2146(int magnification,)
543
544# Returns the print magnification.
545get int GetPrintMagnification=2147(,)
546
547# PrintColourMode - use same colours as screen.
548val SC_PRINT_NORMAL=0
549# PrintColourMode - invert the light value of each style for printing.
550val SC_PRINT_INVERTLIGHT=1
551# PrintColourMode - force black text on white background for printing.
552val SC_PRINT_BLACKONWHITE=2
553
554# Modify colours when printing for clearer printed text.
555set void SetPrintColourMode=2148(int mode,)
556
557# Returns the print colour mode.
558get int GetPrintColourMode=2149(,)
559
560val SCFIND_DOWN=1
561val SCFIND_WHOLEWORD=2
562val SCFIND_MATCHCASE=4
563val SCFIND_WORDSTART=0x00100000
564# SCFIND_REGEXP is not yet implemented.
565val SCFIND_REGEXP=0x00200000
566
567# Find some text in the document.
568fun position FindText=2150(int flags, findtext ft)
569
570# On Windows will draw the document into a display context such as a printer.
571fun void FormatRange=2151(bool draw, formatrange fr)
572
573# Retrieve the line at the top of the display.
574get int GetFirstVisibleLine=2152(,)
575
576# Retrieve the contents of a line.
577# Returns the length of the line.
578fun int GetLine=2153(int line, stringresult text)
579
580# Returns the number of lines in the document. There is always at least one.
581get int GetLineCount=2154(,)
582
583# Sets the size in pixels of the left margin.
584set void SetMarginLeft=2155(, int width)
585
586# Returns the size in pixels of the left margin.
587get int GetMarginLeft=2156(,)
588
589# Sets the size in pixels of the right margin.
590set void SetMarginRight=2157(, int width)
591
592# Returns the size in pixels of the right margin.
593get int GetMarginRight=2158(,)
594
595# Is the document different from when it was last saved?
596get bool GetModify=2159(,)
597
598# Select a range of text.
599fun void SetSel=2160(position start, position end)
600
601# Retrieve the selected text.
602# Return the length of the text.
603fun int GetSelText=2161(,stringresult text)
604
605# Retrieve a range of text.
606# Return the length of the text.
607fun int GetTextRange=2162(, textrange tr)
608
609# Draw the selection in normal style or with selection highlighted.
610fun void HideSelection=2163(bool normal,)
611
612# Retrieve the x value of the point in the window where a position is displayed.
613fun int PointXFromPosition=2164(, position pos)
614
615# Retrieve the y value of the point in the window where a position is displayed.
616fun int PointYFromPosition=2165(, position pos)
617
618# Retrieve the line containing a position.
619fun int LineFromPosition=2166(position pos,)
620
621# Retrieve the position at the start of a line.
622fun int PositionFromLine=2167(int line,)
623
624# Scroll horizontally and vertically.
625fun void LineScroll=2168(int columns, int lines)
626
627# Ensure the caret is visible.
628fun void ScrollCaret=2169(,)
629
630# Replace the selected text with the argument text.
631fun void ReplaceSel=2170(, string text)
632
633# Set to read only or read write.
634set void SetReadOnly=2171(bool readOnly,)
635
636# Null operation.
637fun void Null=2172(,)
638
639# Will a paste succeed?
640fun bool CanPaste=2173(,)
641
642# Are there any undoable actions in the undo history.
643fun bool CanUndo=2174(,)
644
645# Delete the undo history.
646fun void EmptyUndoBuffer=2175(,)
647
648# Undo one action in the undo history.
649fun void Undo=2176(,)
650
651# Cut the selection to the clipboard.
652fun void Cut=2177(,)
653
654# Copy the selection to the clipboard.
655fun void Copy=2178(,)
656
657# Paste the contents of the clipboard into the document replacing the selection.
658fun void Paste=2179(,)
659
660# Clear the selection.
661fun void Clear=2180(,)
662
663# Replace the contents of the document with the argument text.
664fun void SetText=2181(, string text)
665
666# Retrieve all the text in the document.
667# Returns number of characters retrieved.
668fun int GetText=2182(int length, stringresult text)
669
670# Retrieve the number of characters in the document.
671get int GetTextLength=2183(,)
672
673# Retrieve a pointer to a function that processes messages for this Scintilla.
674get int GetDirectFunction=2184(,)
675
676# Retrieve a pointer value to use as the first argument when calling
677# the function returned by GetDirectFunction.
678get int GetDirectPointer=2185(,)
679
680# Set to overtype (true) or insert mode
681set void SetOvertype=2186(bool overtype,)
682
683# Returns true if overtype mode is active otherwise false is returned.
684get bool GetOvertype=2187(,)
685
bfabd11a
RD
686# Show a call tip containing a definition near position pos.
687fun void CallTipShow=2200(position pos, string definition)
688
689# Remove the call tip from the screen.
690fun void CallTipCancel=2201(,)
691
692# Is there an active call tip?
693fun bool CallTipActive=2202(,)
694
695# Retrieve the position where the caret was before displaying the call tip.
696fun position CallTipPosStart=2203(,)
697
698# Highlight a segment of the definition.
699fun void CallTipSetHlt=2204(int start, int end)
700
701# Set the background colour for the call tip.
702set void CallTipSetBack=2205(colour back,)
703
704# Find the display line of a document line taking hidden lines into account.
705fun int VisibleFromDocLine=2220(int line,)
706
707# Find the document line of a display line taking hidden lines into account.
708fun int DocLineFromVisible=2221(int lineDisplay,)
709
710val SC_FOLDLEVELBASE=0x400
711val SC_FOLDLEVELWHITEFLAG=0x1000
712val SC_FOLDLEVELHEADERFLAG=0x2000
713val SC_FOLDLEVELNUMBERMASK=0x0FFF
714
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.
718set void SetFoldLevel=2222(int line, int level)
719
720# Retrieve the fold level of a line.
721get int GetFoldLevel=2223(int line,)
722
723# Find the last child line of a header line.
d134f170 724get int GetLastChild=2224(int line, int level)
bfabd11a
RD
725
726# Find the parent line of a child line.
727get int GetFoldParent=2225(int line,)
728
729# Make a range of lines visible.
730fun void ShowLines=2226(int lineStart, int lineEnd)
731
732# Make a range of lines invisible.
733fun void HideLines=2227(int lineStart, int lineEnd)
734
735# Is a line visible?
736get bool GetLineVisible=2228(int line,)
737
738# Show the children of a header line.
739set void SetFoldExpanded=2229(int line, bool expanded)
740
741# Is a header line expanded?
742get bool GetFoldExpanded=2230(int line,)
743
744# Switch a header line between expanded and contracted.
745fun void ToggleFold=2231(int line,)
746
747# Ensure a particular line is visible by expanding any header line hiding it.
748fun void EnsureVisible=2232(int line,)
749
750# Set some debugging options for folding
751fun void SetFoldFlags=2233(int flags,)
752
d134f170 753## Start of key messages
bfabd11a
RD
754# Move caret down one line.
755fun void LineDown=2300(,)
756
757# Move caret down one line extending selection to new caret position.
758fun void LineDownExtend=2301(,)
759
760# Move caret up one line.
761fun void LineUp=2302(,)
762
763# Move caret up one line extending selection to new caret position.
764fun void LineUpExtend=2303(,)
765
766# Move caret left one character.
767fun void CharLeft=2304(,)
768
769# Move caret left one character extending selection to new caret position.
770fun void CharLeftExtend=2305(,)
771
772# Move caret right one character.
773fun void CharRight=2306(,)
774
775# Move caret right one character extending selection to new caret position.
776fun void CharRightExtend=2307(,)
777
778# Move caret left one word.
779fun void WordLeft=2308(,)
780
781# Move caret left one word extending selection to new caret position.
782fun void WordLeftExtend=2309(,)
783
784# Move caret right one word.
785fun void WordRight=2310(,)
786
787# Move caret right one word extending selection to new caret position.
788fun void WordRightExtend=2311(,)
789
790# Move caret to first position on line.
791fun void Home=2312(,)
792
793# Move caret to first position on line extending selection to new caret position.
794fun void HomeExtend=2313(,)
795
796# Move caret to last position on line.
797fun void LineEnd=2314(,)
798
799# Move caret to last position on line extending selection to new caret position.
800fun void LineEndExtend=2315(,)
801
802# Move caret to first position in document.
803fun void DocumentStart=2316(,)
804
805# Move caret to first position in document extending selection to new caret position.
806fun void DocumentStartExtend=2317(,)
807
808# Move caret to last position in document.
809fun void DocumentEnd=2318(,)
810
811# Move caret to last position in document extending selection to new caret position.
812fun void DocumentEndExtend=2319(,)
813
814# Move caret one page up.
815fun void PageUp=2320(,)
816
817# Move caret one page up extending selection to new caret position.
818fun void PageUpExtend=2321(,)
819
820# Move caret one page down.
821fun void PageDown=2322(,)
822
823# Move caret one page down extending selection to new caret position.
824fun void PageDownExtend=2323(,)
825
826# Switch from insert to overtype mode or the reverse.
827fun void EditToggleOvertype=2324(,)
828
829# Cancel any modes such as call tip or auto-completion list display.
830fun void Cancel=2325(,)
831
832# Delete the selection or if no selection, the character before the caret.
833fun void DeleteBack=2326(,)
834
835# If selection is empty or all on one line replace the selection with a tab
836# character.
837# If more than one line selected, indent the lines.
838fun void Tab=2327(,)
839
840# Dedent the selected lines.
841fun void BackTab=2328(,)
842
843# Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
844fun void NewLine=2329(,)
845
846# Insert a Form Feed character.
847fun void FormFeed=2330(,)
848
849# Move caret to before first visible character on line.
850# If already there move to first character on line.
851fun void VCHome=2331(,)
852
853# Like VCHome but extending selection to new caret position.
854fun void VCHomeExtend=2332(,)
855
856# Magnify the displayed text by increasing the sizes by 1 point.
857fun void ZoomIn=2333(,)
858
859# Make the displayed text smaller by decreasing the sizes by 1 point.
860fun void ZoomOut=2334(,)
861
862# Delete the word to the left of the caret.
863fun void DelWordLeft=2335(,)
864
865# Delete the word to the right of the caret.
866fun void DelWordRight=2336(,)
867
868# Cut the line containing the caret.
869fun void LineCut=2337(,)
870
871# Delete the line containing the caret.
872fun void LineDelete=2338(,)
873
874# Switch the current line with the previous.
875fun void LineTranspose=2339(,)
876
877# Transform the selection to lower case.
878fun void LowerCase=2340(,)
879
880# Transform the selection to upper case.
881fun void UpperCase=2341(,)
882
883# Scroll the document down, keeping the caret visible.
884fun void LineScrollDown=2342(,)
885
886# Scroll the document up, keeping the caret visible.
887fun void LineScrollUp=2343(,)
888
889# How many characters are on a line, not including end of line characters.
890fun int LineLength=2350(int line,)
891
892# Highlight the characters at two positions.
893fun void BraceHighlight=2351(position pos1,position pos2)
894
895# Highlight the character at a position indicating there is no matching brace.
896fun void BraceBadLight=2352(position pos,)
897
898# Find the position of a matching brace or INVALID_POSITION if no match.
899fun position BraceMatch=2353(position pos,)
900
901# Are the end of line characters visible.
902get bool GetViewEOL=2355(,)
903
904# Make the end of line characters visible or invisible
905set void SetViewEOL=2356(bool visible,)
906
907# Retrieve a pointer to the document object.
908get int GetDocPointer=2357(,)
909
910# Change the document object used.
911set void SetDocPointer=2358(int pointer,)
912
913# Set which document modification events are sent to the container.
914set void SetModEventMask=2359(int mask,)
915
916val EDGE_NONE=0
917val EDGE_LINE=1
918val EDGE_BACKGROUND=2
919
920# Retrieve the column number which text should be kept within.
921get int GetEdgeColumn=2360(,)
922
923# Set the column number of the edge.
924# If text goes past the edge then it is highlighted.
925set void SetEdgeColumn=2361(int column,)
926
927# Retrieve the edge highlight mode.
928get int GetEdgeMode=2362(,)
929
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).
932set void SetEdgeMode=2363(int mode,)
933
934# Retrieve the colour used in edge indication.
935get colour GetEdgeColour=2364(,)
936
937# Change the colour used in edge indication.
938set void SetEdgeColour=2365(colour edgeColour,)
939
940# Sets the current caret position to be the search anchor.
941fun void SearchAnchor=2366(,)
942
943# Find some text starting at the search anchor.
944fun int SearchNext=2367(int flags, string text)
945
946# Find some text starting at the search anchor and moving backwards.
947fun int SearchPrev=2368(int flags, string text)
948
d134f170 949# Show caret within N lines of edge when it's scrolled to view
bfabd11a 950val CARET_SLOP=0x01
d134f170 951# Center caret on screen when it's scrolled to view
bfabd11a 952val CARET_CENTER=0x02
d134f170
RD
953# OR this with CARET_CENTER to reposition even when visible, or
954# OR this with CARET_SLOP to reposition whenever outside slop border
bfabd11a
RD
955val CARET_STRICT=0x04
956# Set the way the line the caret is on is kept visible.
957fun void SetCaretPolicy=2369(int caretPolicy, int caretSlop)
958
959# Retrieves the number of lines completely visible.
960get int LinesOnScreen=2370(,)
961
962# Set whether a pop up menu is displayed automatically when the user presses
963# the wrong mouse button.
964fun void UsePopUp=2371(bool allowPopUp,)
965
966# Is the selection a rectangular. The alternative is the more common stream selection.
967get bool SelectionIsRectangle=2372(,)
968
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.
971set void SetZoom=2373(int zoom,)
972# Retrieve the zoom level.
973get int GetZoom=2374(,)
974
d134f170
RD
975# Create a new document object.
976# Starts with reference count of 1 and not selected into editor.
977fun int CreateDocument=2375(,)
bfabd11a 978# Extend life of document.
d134f170 979fun void AddRefDocument=2376(, int doc)
bfabd11a 980# Release a reference to the document, deleting document if it fades to black.
d134f170
RD
981fun void ReleaseDocument=2377(, int doc)
982
983# Get which document modification events are sent to the container.
984get int GetModEventMask=2378(,)
bfabd11a
RD
985
986# Set the focus to this Scintilla widget.
d134f170 987# GTK+ Specific
bfabd11a
RD
988fun void GrabFocus=2400(,)
989
990# Start notifying the container of all key presses and commands.
991fun void StartRecord=3001(,)
992
993# Stop notifying the container of all key presses and commands.
994fun void StopRecord=3002(,)
995
996# Set the lexing language of the document.
997set void SetLexer=4001(int lexer,)
998
999# Retrieve the lexing language of the document.
1000get int GetLexer=4002(,)
1001
1002# Colourise a segment of the document using the current lexing language.
1003fun void Colourise=4003(position start, position end)
1004
1005# Set up a value that may be used by a lexer for some optional feature.
1006set void SetProperty=4004(string key, string value)
1007
1008# Set up the key words used by the lexer.
1009set void SetKeyWords=4005(int keywordSet, string keyWords)
1010
d134f170
RD
1011# Notifications
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_*.
bfabd11a
RD
1015val SC_MOD_INSERTTEXT=0x1
1016val SC_MOD_DELETETEXT=0x2
1017val SC_MOD_CHANGESTYLE=0x4
1018val SC_MOD_CHANGEFOLD=0x8
1019val SC_PERFORMED_USER=0x10
1020val SC_PERFORMED_UNDO=0x20
1021val SC_PERFORMED_REDO=0x40
1022val SC_LASTSTEPINUNDOREDO=0x100
1023val SC_MOD_CHANGEMARKER=0x200
1024val SC_MOD_BEFOREINSERT=0x400
1025val SC_MOD_BEFOREDELETE=0x800
1026val SC_MODEVENTMASKALL=0xF77
d134f170
RD
1027
1028# For compatibility, these go through the COMMAND notification rather than NOTIFY
1029# and have exactly the same values as the EN_* constants.
1030val SCEN_CHANGE=768
1031val SCEN_SETFOCUS=512
1032val SCEN_KILLFOCUS=256
1033
1034# Symbolic key codes and modifier flags
1035# ASCII and other printable characters below 256
1036# Extended keys above 300
1037
1038val SCK_DOWN=300
1039val SCK_UP=301
1040val SCK_LEFT=302
1041val SCK_RIGHT=303
1042val SCK_HOME=304
1043val SCK_END=305
1044val SCK_PRIOR=306
1045val SCK_NEXT=307
1046val SCK_DELETE=308
1047val SCK_INSERT=309
1048val SCK_ESCAPE=7
1049val SCK_BACK=8
1050val SCK_TAB=9
1051val SCK_RETURN=13
1052val SCK_ADD=310
1053val SCK_SUBTRACT=311
1054val SCK_DIVIDE=312
1055
1056val SCMOD_SHIFT=1
1057val SCMOD_CTRL=2
1058val SCMOD_ALT=4
bfabd11a
RD
1059
1060################################################
d134f170 1061# For SciLexer.h
bfabd11a
RD
1062val SCLEX_CONTAINER=0
1063val SCLEX_NULL=1
1064val SCLEX_PYTHON=2
1065val SCLEX_CPP=3
1066val SCLEX_HTML=4
1067val SCLEX_XML=5
1068val SCLEX_PERL=6
1069val SCLEX_SQL=7
1070val SCLEX_VB=8
1071val SCLEX_PROPERTIES=9
1072val SCLEX_ERRORLIST=10
1073val SCLEX_MAKEFILE=11
1074val SCLEX_BATCH=12
1075val SCLEX_XCODE=13
1076val SCLEX_LATEX=14
d134f170
RD
1077val SCLEX_LUA=15
1078val SCLEX_DIFF=16
1079# Lexical states for SCLEX_PYTHON
bfabd11a
RD
1080val SCE_P_DEFAULT=0
1081val SCE_P_COMMENTLINE=1
1082val SCE_P_NUMBER=2
1083val SCE_P_STRING=3
1084val SCE_P_CHARACTER=4
1085val SCE_P_WORD=5
1086val SCE_P_TRIPLE=6
1087val SCE_P_TRIPLEDOUBLE=7
1088val SCE_P_CLASSNAME=8
1089val SCE_P_DEFNAME=9
1090val SCE_P_OPERATOR=10
1091val SCE_P_IDENTIFIER=11
1092val SCE_P_COMMENTBLOCK=12
1093val SCE_P_STRINGEOL=13
d134f170 1094# Lexical states for SCLEX_CPP, SCLEX_VB
bfabd11a
RD
1095val SCE_C_DEFAULT=0
1096val SCE_C_COMMENT=1
1097val SCE_C_COMMENTLINE=2
1098val SCE_C_COMMENTDOC=3
1099val SCE_C_NUMBER=4
1100val SCE_C_WORD=5
1101val SCE_C_STRING=6
1102val SCE_C_CHARACTER=7
1103val SCE_C_UUID=8
1104val SCE_C_PREPROCESSOR=9
1105val SCE_C_OPERATOR=10
1106val SCE_C_IDENTIFIER=11
1107val SCE_C_STRINGEOL=12
d134f170
RD
1108val SCE_C_VERBATIM=13
1109# Lexical states for SCLEX_HTML, SCLEX_XML
bfabd11a
RD
1110val SCE_H_DEFAULT=0
1111val SCE_H_TAG=1
1112val SCE_H_TAGUNKNOWN=2
1113val SCE_H_ATTRIBUTE=3
1114val SCE_H_ATTRIBUTEUNKNOWN=4
1115val SCE_H_NUMBER=5
1116val SCE_H_DOUBLESTRING=6
1117val SCE_H_SINGLESTRING=7
1118val SCE_H_OTHER=8
1119val SCE_H_COMMENT=9
1120val SCE_H_ENTITY=10
d134f170 1121# XML and ASP
bfabd11a
RD
1122val SCE_H_TAGEND=11
1123val SCE_H_XMLSTART=12
1124val SCE_H_XMLEND=13
1125val SCE_H_SCRIPT=14
1126val SCE_H_ASP=15
1127val SCE_H_ASPAT=16
d134f170
RD
1128val SCE_H_CDATA=17
1129val SCE_H_QUESTION=18
1130# More HTML
1131val SCE_H_VALUE=19
1132# Embedded Javascript
bfabd11a
RD
1133val SCE_HJ_START=40
1134val SCE_HJ_DEFAULT=41
1135val SCE_HJ_COMMENT=42
1136val SCE_HJ_COMMENTLINE=43
1137val SCE_HJ_COMMENTDOC=44
1138val SCE_HJ_NUMBER=45
1139val SCE_HJ_WORD=46
1140val SCE_HJ_KEYWORD=47
1141val SCE_HJ_DOUBLESTRING=48
1142val SCE_HJ_SINGLESTRING=49
1143val SCE_HJ_SYMBOLS=50
1144val SCE_HJ_STRINGEOL=51
d134f170 1145# ASP Javascript
bfabd11a
RD
1146val SCE_HJA_START=55
1147val SCE_HJA_DEFAULT=56
1148val SCE_HJA_COMMENT=57
1149val SCE_HJA_COMMENTLINE=58
1150val SCE_HJA_COMMENTDOC=59
1151val SCE_HJA_NUMBER=60
1152val SCE_HJA_WORD=61
1153val SCE_HJA_KEYWORD=62
1154val SCE_HJA_DOUBLESTRING=63
1155val SCE_HJA_SINGLESTRING=64
1156val SCE_HJA_SYMBOLS=65
1157val SCE_HJA_STRINGEOL=66
d134f170 1158# Embedded VBScript
bfabd11a
RD
1159val SCE_HB_START=70
1160val SCE_HB_DEFAULT=71
1161val SCE_HB_COMMENTLINE=72
1162val SCE_HB_NUMBER=73
1163val SCE_HB_WORD=74
1164val SCE_HB_STRING=75
1165val SCE_HB_IDENTIFIER=76
1166val SCE_HB_STRINGEOL=77
d134f170 1167# ASP VBScript
bfabd11a
RD
1168val SCE_HBA_START=80
1169val SCE_HBA_DEFAULT=81
1170val SCE_HBA_COMMENTLINE=82
1171val SCE_HBA_NUMBER=83
1172val SCE_HBA_WORD=84
1173val SCE_HBA_STRING=85
1174val SCE_HBA_IDENTIFIER=86
1175val SCE_HBA_STRINGEOL=87
d134f170 1176# Embedded Python
bfabd11a
RD
1177val SCE_HP_START=90
1178val SCE_HP_DEFAULT=91
1179val SCE_HP_COMMENTLINE=92
1180val SCE_HP_NUMBER=93
1181val SCE_HP_STRING=94
1182val SCE_HP_CHARACTER=95
1183val SCE_HP_WORD=96
1184val SCE_HP_TRIPLE=97
1185val SCE_HP_TRIPLEDOUBLE=98
1186val SCE_HP_CLASSNAME=99
1187val SCE_HP_DEFNAME=100
1188val SCE_HP_OPERATOR=101
1189val SCE_HP_IDENTIFIER=102
d134f170 1190# ASP Python
bfabd11a
RD
1191val SCE_HPA_START=105
1192val SCE_HPA_DEFAULT=106
1193val SCE_HPA_COMMENTLINE=107
1194val SCE_HPA_NUMBER=108
1195val SCE_HPA_STRING=109
1196val SCE_HPA_CHARACTER=110
1197val SCE_HPA_WORD=111
1198val SCE_HPA_TRIPLE=112
1199val SCE_HPA_TRIPLEDOUBLE=113
1200val SCE_HPA_CLASSNAME=114
1201val SCE_HPA_DEFNAME=115
1202val SCE_HPA_OPERATOR=116
1203val SCE_HPA_IDENTIFIER=117
d134f170
RD
1204# PHP
1205val SCE_HPHP_DEFAULT=118
1206val SCE_HPHP_HSTRING=119
1207val SCE_HPHP_SIMPLESTRING=120
1208val SCE_HPHP_WORD=121
1209val SCE_HPHP_NUMBER=122
1210val SCE_HPHP_VARIABLE=123
1211val SCE_HPHP_COMMENT=124
1212val SCE_HPHP_COMMENTLINE=125
1213val SCE_HPHP_STRINGEOL=126
1214# Lexical states for SCLEX_PERL
bfabd11a
RD
1215val SCE_PL_DEFAULT=0
1216val SCE_PL_HERE=1
1217val SCE_PL_COMMENTLINE=2
1218val SCE_PL_POD=3
1219val SCE_PL_NUMBER=4
1220val SCE_PL_WORD=5
1221val SCE_PL_STRING=6
1222val SCE_PL_CHARACTER=7
1223val SCE_PL_PUNCTUATION=8
1224val SCE_PL_PREPROCESSOR=9
1225val SCE_PL_OPERATOR=10
1226val SCE_PL_IDENTIFIER=11
1227val SCE_PL_SCALAR=12
1228val SCE_PL_ARRAY=13
1229val SCE_PL_HASH=14
1230val SCE_PL_SYMBOLTABLE=15
1231val SCE_PL_REF=16
1232val SCE_PL_REGEX=17
1233val SCE_PL_REGSUBST=18
1234val SCE_PL_LONGQUOTE=19
1235val SCE_PL_BACKTICKS=20
1236val SCE_PL_DATASECTION=21
d134f170 1237# Lexical states for SCLEX_LATEX
bfabd11a
RD
1238val SCE_L_DEFAULT=0
1239val SCE_L_COMMAND=1
1240val SCE_L_TAG=2
1241val SCE_L_MATH=3
1242val SCE_L_COMMENT=4
d134f170
RD
1243# Lexical states for SCLEX_LUA
1244val SCE_LUA_DEFAULT=0
1245val SCE_LUA_COMMENT=1
1246val SCE_LUA_COMMENTLINE=2
1247val SCE_LUA_COMMENTDOC=3
1248val SCE_LUA_NUMBER=4
1249val SCE_LUA_WORD=5
1250val SCE_LUA_STRING=6
1251val SCE_LUA_CHARACTER=7
1252val SCE_LUA_LITERALSTRING=8
1253val SCE_LUA_PREPROCESSOR=9
1254val SCE_LUA_OPERATOR=10
1255val SCE_LUA_IDENTIFIER=11
1256val SCE_LUA_STRINGEOL=12
1257val SCE_ERR_DEFAULT=0
1258val SCE_ERR_PYTHON=1
1259val SCE_ERR_GCC=2
1260val SCE_ERR_MS=3
1261val SCE_ERR_CMD=4
1262val SCE_ERR_BORLAND=5
1263val SCE_ERR_PERL=6
1264
1265# Events
1266
1267evt void StyleNeeded=2000(int position)
1268evt void CharAdded=2001(int ch)
1269evt void SavePointReached=2002(void)
1270evt void SavePointLeft=2003(void)
1271evt void ModifyAttemptRO=2004(void)
1272# GTK+ Specific to work around focus and accelerator problems:
1273evt void Key=2005(int ch, int modifiers)
1274evt void DoubleClick=2006(void)
1275evt void UpdateUI=2007(void)
1276# The old name for SCN_UPDATEUI
1277val SCN_CHECKBRACE=2007
1278evt 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
1280evt void MacroRecord=2009(int message, int wParam, int lParam)
1281evt void MarginClick=2010(int modifiers, int position, int margin)
1282evt void NeedShown=2011(int position, int length)
1283evt void PosChanged=2012(int position)
1284
1285cat Deprecated
bfabd11a
RD
1286
1287################################################
1288# From WinDefs.h
1289
d134f170
RD
1290# ***** DEPRECATED from here to end of file ******
1291
bfabd11a
RD
1292# Will a paste succeed?
1293fun bool EM_CanPaste=1074(,)
1294
1295# Are there any undoable actions in the undo history.
1296fun bool EM_CanUndo=198(,)
1297
1298# Find the position and line from a point within the window.
1299fun int EM_CharFromPos=215(,point pt)
1300
1301# Delete the undo history.
1302fun void EM_EmptyUndoBuffer=205(,)
1303
1304# Retrieve the selection range.
d134f170 1305fun void EM_ExGetSel=1076(,charrangeresult cr)
bfabd11a
RD
1306
1307# Retrieve the line number of a position in the document.
1308get int EM_ExLineFromChar=1078(,position pos)
1309
1310# Select a range of text.
1311fun void EM_ExSetSel=1079(,charrange cr)
1312
1313# Find some text in the document.
1314fun position EM_FindText=1080(int flags, findtext ft)
1315
1316# Find some text in the document. Returns range of found text in ft argument.
d134f170 1317fun position EM_FindTextEx=1103(int flags, findtextex ft)
bfabd11a
RD
1318
1319# On Windows will draw the document into a display context such as a printer.
1320fun void EM_FormatRange=1081(bool draw, formatrange fr)
1321
1322# Retrieve the line at the top of the display.
1323get int EM_GetFirstVisibleLine=206(,)
1324
1325# Retrieve the contents of a line.
1326# Returns the length of the line.
1327fun int EM_GetLine=196(int line, countedstring text)
1328
1329# Returns the number of lines in the document. There is always at least one.
1330fun int EM_GetLineCount=186(,)
1331
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.
1334fun int EM_GetMargins=212(,)
1335
1336# Is the document different from when it was last saved?
1337get bool EM_GetModify=184(,)
1338
1339# Get the area used to display the document.
1340fun void EM_GetRect=178(,rectangle r)
1341
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.
1344fun int EM_GetSel=176(,)
1345
1346# Retrieve the selected text.
1347# Return the length of the text.
1348fun int EM_GetSelText=1086(,stringresult text)
1349
1350# Retrieve a range of text.
1351# Return the length of the text.
1352fun int EM_GetTextRange=1099(, textrange tr)
1353
1354# Draw the selection in normal style or with selection highlighted.
1355fun void EM_HideSelection=1087(bool normal,)
1356
1357# Retrieve the line of a position.
1358fun int EM_LineFromChar=201(position pos,)
1359
1360# Retrieve the position at the start of a line.
1361fun position EM_LineIndex=187(int line,)
1362
1363# Retrieve the number of characters on a line not including end of line characters.
1364fun int EM_LineLength=193(int line,)
1365
1366# Scroll horizontally and vertically.
1367fun void EM_LineScroll=182(int columns, int lines)
1368
1369# Retrieve the point in the window where a position is displayed.
d134f170 1370fun void EM_PosFromChar=214(pointresult pt, position pos)
bfabd11a
RD
1371
1372# Replace the selected text with the argument text.
1373fun void EM_ReplaceSel=194(, string text)
1374
1375# Ensure the caret is visible.
1376fun void EM_ScrollCaret=183(,)
1377
1378# Returns SEL_EMPTY if selection contains no characters, otherwise SEL_TEXT.
1379fun void EM_SelectionType=1090(,)
1380
1381# Set the width of the left and right margins
1382fun void EM_SetMargins=211(int flags, int values)
1383
1384# Set to read only or read write.
1385set void EM_SetReadOnly=207(bool readOnly,)
1386
1387# Select the range of text from start to end.
1388fun void EM_SetSel=177(position start, position end)
1389
1390# Undo one action in the undo history.
1391fun void EM_Undo=199(,)
1392
1393# Null operation.
1394fun void WM_Null=0(,)
1395
1396# Clear the selection.
1397fun void WM_Clear=771(,)
1398
1399fun void WM_Command=273(,)
1400
1401# Copy the selection to the clipboard.
1402fun void WM_Copy=769(,)
1403
1404# Cut the selection to the clipboard.
1405fun void WM_Cut=768(,)
1406
1407# Retrieve all the text in the document.
1408# Returns number of characters retrieved.
1409fun int WM_GetText=13(int length, stringresult text)
1410
1411# Retrieve the number of characters in the document.
1412fun int WM_GetTextLength=14(,)
1413
1414# Notification back to container
1415fun void WM_Notify=78(int id, int stuff)
1416
1417# Paste the contents of the clipboard into the document replacing the selection.
1418fun void WM_Paste=770(,)
1419
1420# Replace the contents of the document with the argument text.
1421fun void WM_SetText=12(, string text)
1422
1423# Undo one action in the undo history.
1424fun void WM_Undo=772(,)
1425
1426# Notification codes
1427val EN_CHANGE=768
1428val EN_KILLFOCUS=512
1429val EN_SETFOCUS=256
1430
1431# Flags for setting margins.
1432val EC_LEFTMARGIN=1
1433val EC_RIGHTMARGIN=2
1434val EC_USEFONTINFO=0xffff
1435
1436# Selection type.
1437val SEL_EMPTY=0
1438val SEL_TEXT=1
1439
1440# Find replace mask constants
1441val FR_MATCHCASE=0x4
1442val FR_WHOLEWORD=0x2
1443val FR_DOWN=0x1
1444
1445# Key modifier flag.
1446val SHIFT_PRESSED=1
1447val LEFT_CTRL_PRESSED=2
1448val LEFT_ALT_PRESSED=4
1449
d134f170
RD
1450#events
1451evt void EN_Change=768(void)