aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/ILoader.h4
-rw-r--r--include/Scintilla.iface6
-rw-r--r--include/ScintillaMessages.h778
-rw-r--r--include/ScintillaStructures.h103
-rw-r--r--include/ScintillaTypes.h786
5 files changed, 1677 insertions, 0 deletions
diff --git a/include/ILoader.h b/include/ILoader.h
index e989de873..2fa69f527 100644
--- a/include/ILoader.h
+++ b/include/ILoader.h
@@ -10,6 +10,8 @@
#include "Sci_Position.h"
+namespace Scintilla {
+
class ILoader {
public:
virtual int SCI_METHOD Release() = 0;
@@ -18,4 +20,6 @@ public:
virtual void * SCI_METHOD ConvertToDocument() = 0;
};
+}
+
#endif
diff --git a/include/Scintilla.iface b/include/Scintilla.iface
index 7304cad56..7ec3e9e7b 100644
--- a/include/Scintilla.iface
+++ b/include/Scintilla.iface
@@ -885,6 +885,7 @@ val SC_INDICVALUEBIT=0x1000000
val SC_INDICVALUEMASK=0xFFFFFF
enu IndicFlag=SC_INDICFLAG_
+val SC_INDICFLAG_NONE=0
val SC_INDICFLAG_VALUEFORE=1
ali SC_INDICFLAG_VALUEFORE=VALUE_FORE
@@ -1416,6 +1417,7 @@ fun line DocLineFromVisible=2221(line displayLine,)
fun line WrapCount=2235(line docLine,)
enu FoldLevel=SC_FOLDLEVEL
+val SC_FOLDLEVELNONE=0x0
val SC_FOLDLEVELBASE=0x400
val SC_FOLDLEVELWHITEFLAG=0x1000
val SC_FOLDLEVELHEADERFLAG=0x2000
@@ -1501,6 +1503,7 @@ fun void FoldAll=2662(FoldAction action,)
fun void EnsureVisible=2232(line line,)
enu AutomaticFold=SC_AUTOMATICFOLD_
+val SC_AUTOMATICFOLD_NONE=0x0000
val SC_AUTOMATICFOLD_SHOW=0x0001
val SC_AUTOMATICFOLD_CLICK=0x0002
val SC_AUTOMATICFOLD_CHANGE=0x0004
@@ -1512,6 +1515,7 @@ set void SetAutomaticFold=2663(AutomaticFold automaticFold,)
get AutomaticFold GetAutomaticFold=2664(,)
enu FoldFlag=SC_FOLDFLAG_
+val SC_FOLDFLAG_NONE=0x0000
val SC_FOLDFLAG_LINEBEFORE_EXPANDED=0x0002
val SC_FOLDFLAG_LINEBEFORE_CONTRACTED=0x0004
val SC_FOLDFLAG_LINEAFTER_EXPANDED=0x0008
@@ -3169,6 +3173,7 @@ ali SC_MOD_CHANGEEOLANNOTATION=CHANGE_E_O_L_ANNOTATION
ali SC_MODEVENTMASKALL=EVENT_MASK_ALL
enu Update=SC_UPDATE_
+val SC_UPDATE_NONE=0x0
val SC_UPDATE_CONTENT=0x1
val SC_UPDATE_SELECTION=0x2
val SC_UPDATE_V_SCROLL=0x4
@@ -3178,6 +3183,7 @@ val SC_UPDATE_H_SCROLL=0x8
# and should have had exactly the same values as the EN_* constants.
# Unfortunately the SETFOCUS and KILLFOCUS are flipped over from EN_*
# As clients depend on these constants, this will not be changed.
+enu FocusChange=SCEN_
val SCEN_CHANGE=768
val SCEN_SETFOCUS=512
val SCEN_KILLFOCUS=256
diff --git a/include/ScintillaMessages.h b/include/ScintillaMessages.h
new file mode 100644
index 000000000..ba2a3f2cd
--- /dev/null
+++ b/include/ScintillaMessages.h
@@ -0,0 +1,778 @@
+// Scintilla source code edit control
+/** @file ScintillaMessages.h
+ ** Enumerate the messages that can be sent to Scintilla.
+ **/
+// Copyright 1998-2019 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+/* Most of this file is automatically generated from the Scintilla.iface interface definition
+ * file which contains any comments about the definitions. ScintillaAPIFacer.py does the generation. */
+
+#ifndef SCINTILLAMESSAGES_H
+#define SCINTILLAMESSAGES_H
+
+namespace Scintilla {
+
+// Enumerations
+//++Autogenerated -- start of section automatically generated from Scintilla.iface
+enum class Message {
+ AddText = 2001,
+ AddStyledText = 2002,
+ InsertText = 2003,
+ ChangeInsertion = 2672,
+ ClearAll = 2004,
+ DeleteRange = 2645,
+ ClearDocumentStyle = 2005,
+ GetLength = 2006,
+ GetCharAt = 2007,
+ GetCurrentPos = 2008,
+ GetAnchor = 2009,
+ GetStyleAt = 2010,
+ Redo = 2011,
+ SetUndoCollection = 2012,
+ SelectAll = 2013,
+ SetSavePoint = 2014,
+ GetStyledText = 2015,
+ CanRedo = 2016,
+ MarkerLineFromHandle = 2017,
+ MarkerDeleteHandle = 2018,
+ MarkerHandleFromLine = 2732,
+ MarkerNumberFromLine = 2733,
+ GetUndoCollection = 2019,
+ GetViewWS = 2020,
+ SetViewWS = 2021,
+ GetTabDrawMode = 2698,
+ SetTabDrawMode = 2699,
+ PositionFromPoint = 2022,
+ PositionFromPointClose = 2023,
+ GotoLine = 2024,
+ GotoPos = 2025,
+ SetAnchor = 2026,
+ GetCurLine = 2027,
+ GetEndStyled = 2028,
+ ConvertEOLs = 2029,
+ GetEOLMode = 2030,
+ SetEOLMode = 2031,
+ StartStyling = 2032,
+ SetStyling = 2033,
+ GetBufferedDraw = 2034,
+ SetBufferedDraw = 2035,
+ SetTabWidth = 2036,
+ GetTabWidth = 2121,
+ SetTabMinimumWidth = 2724,
+ GetTabMinimumWidth = 2725,
+ ClearTabStops = 2675,
+ AddTabStop = 2676,
+ GetNextTabStop = 2677,
+ SetCodePage = 2037,
+ SetFontLocale = 2760,
+ GetFontLocale = 2761,
+ GetIMEInteraction = 2678,
+ SetIMEInteraction = 2679,
+ MarkerDefine = 2040,
+ MarkerSetFore = 2041,
+ MarkerSetBack = 2042,
+ MarkerSetBackSelected = 2292,
+ MarkerSetForeTranslucent = 2294,
+ MarkerSetBackTranslucent = 2295,
+ MarkerSetBackSelectedTranslucent = 2296,
+ MarkerSetStrokeWidth = 2297,
+ MarkerEnableHighlight = 2293,
+ MarkerAdd = 2043,
+ MarkerDelete = 2044,
+ MarkerDeleteAll = 2045,
+ MarkerGet = 2046,
+ MarkerNext = 2047,
+ MarkerPrevious = 2048,
+ MarkerDefinePixmap = 2049,
+ MarkerAddSet = 2466,
+ MarkerSetAlpha = 2476,
+ MarkerGetLayer = 2734,
+ MarkerSetLayer = 2735,
+ SetMarginTypeN = 2240,
+ GetMarginTypeN = 2241,
+ SetMarginWidthN = 2242,
+ GetMarginWidthN = 2243,
+ SetMarginMaskN = 2244,
+ GetMarginMaskN = 2245,
+ SetMarginSensitiveN = 2246,
+ GetMarginSensitiveN = 2247,
+ SetMarginCursorN = 2248,
+ GetMarginCursorN = 2249,
+ SetMarginBackN = 2250,
+ GetMarginBackN = 2251,
+ SetMargins = 2252,
+ GetMargins = 2253,
+ StyleClearAll = 2050,
+ StyleSetFore = 2051,
+ StyleSetBack = 2052,
+ StyleSetBold = 2053,
+ StyleSetItalic = 2054,
+ StyleSetSize = 2055,
+ StyleSetFont = 2056,
+ StyleSetEOLFilled = 2057,
+ StyleResetDefault = 2058,
+ StyleSetUnderline = 2059,
+ StyleGetFore = 2481,
+ StyleGetBack = 2482,
+ StyleGetBold = 2483,
+ StyleGetItalic = 2484,
+ StyleGetSize = 2485,
+ StyleGetFont = 2486,
+ StyleGetEOLFilled = 2487,
+ StyleGetUnderline = 2488,
+ StyleGetCase = 2489,
+ StyleGetCharacterSet = 2490,
+ StyleGetVisible = 2491,
+ StyleGetChangeable = 2492,
+ StyleGetHotSpot = 2493,
+ StyleSetCase = 2060,
+ StyleSetSizeFractional = 2061,
+ StyleGetSizeFractional = 2062,
+ StyleSetWeight = 2063,
+ StyleGetWeight = 2064,
+ StyleSetCharacterSet = 2066,
+ StyleSetHotSpot = 2409,
+ SetElementColour = 2753,
+ GetElementColour = 2754,
+ ResetElementColour = 2755,
+ GetElementIsSet = 2756,
+ GetElementAllowsTranslucent = 2757,
+ GetElementBaseColour = 2758,
+ SetSelFore = 2067,
+ SetSelBack = 2068,
+ GetSelAlpha = 2477,
+ SetSelAlpha = 2478,
+ GetSelEOLFilled = 2479,
+ SetSelEOLFilled = 2480,
+ GetSelectionLayer = 2762,
+ SetSelectionLayer = 2763,
+ GetCaretLineLayer = 2764,
+ SetCaretLineLayer = 2765,
+ SetCaretFore = 2069,
+ AssignCmdKey = 2070,
+ ClearCmdKey = 2071,
+ ClearAllCmdKeys = 2072,
+ SetStylingEx = 2073,
+ StyleSetVisible = 2074,
+ GetCaretPeriod = 2075,
+ SetCaretPeriod = 2076,
+ SetWordChars = 2077,
+ GetWordChars = 2646,
+ SetCharacterCategoryOptimization = 2720,
+ GetCharacterCategoryOptimization = 2721,
+ BeginUndoAction = 2078,
+ EndUndoAction = 2079,
+ IndicSetStyle = 2080,
+ IndicGetStyle = 2081,
+ IndicSetFore = 2082,
+ IndicGetFore = 2083,
+ IndicSetUnder = 2510,
+ IndicGetUnder = 2511,
+ IndicSetHoverStyle = 2680,
+ IndicGetHoverStyle = 2681,
+ IndicSetHoverFore = 2682,
+ IndicGetHoverFore = 2683,
+ IndicSetFlags = 2684,
+ IndicGetFlags = 2685,
+ IndicSetStrokeWidth = 2751,
+ IndicGetStrokeWidth = 2752,
+ SetWhitespaceFore = 2084,
+ SetWhitespaceBack = 2085,
+ SetWhitespaceSize = 2086,
+ GetWhitespaceSize = 2087,
+ SetLineState = 2092,
+ GetLineState = 2093,
+ GetMaxLineState = 2094,
+ GetCaretLineVisible = 2095,
+ SetCaretLineVisible = 2096,
+ GetCaretLineBack = 2097,
+ SetCaretLineBack = 2098,
+ GetCaretLineFrame = 2704,
+ SetCaretLineFrame = 2705,
+ StyleSetChangeable = 2099,
+ AutoCShow = 2100,
+ AutoCCancel = 2101,
+ AutoCActive = 2102,
+ AutoCPosStart = 2103,
+ AutoCComplete = 2104,
+ AutoCStops = 2105,
+ AutoCSetSeparator = 2106,
+ AutoCGetSeparator = 2107,
+ AutoCSelect = 2108,
+ AutoCSetCancelAtStart = 2110,
+ AutoCGetCancelAtStart = 2111,
+ AutoCSetFillUps = 2112,
+ AutoCSetChooseSingle = 2113,
+ AutoCGetChooseSingle = 2114,
+ AutoCSetIgnoreCase = 2115,
+ AutoCGetIgnoreCase = 2116,
+ UserListShow = 2117,
+ AutoCSetAutoHide = 2118,
+ AutoCGetAutoHide = 2119,
+ AutoCSetDropRestOfWord = 2270,
+ AutoCGetDropRestOfWord = 2271,
+ RegisterImage = 2405,
+ ClearRegisteredImages = 2408,
+ AutoCGetTypeSeparator = 2285,
+ AutoCSetTypeSeparator = 2286,
+ AutoCSetMaxWidth = 2208,
+ AutoCGetMaxWidth = 2209,
+ AutoCSetMaxHeight = 2210,
+ AutoCGetMaxHeight = 2211,
+ SetIndent = 2122,
+ GetIndent = 2123,
+ SetUseTabs = 2124,
+ GetUseTabs = 2125,
+ SetLineIndentation = 2126,
+ GetLineIndentation = 2127,
+ GetLineIndentPosition = 2128,
+ GetColumn = 2129,
+ CountCharacters = 2633,
+ CountCodeUnits = 2715,
+ SetHScrollBar = 2130,
+ GetHScrollBar = 2131,
+ SetIndentationGuides = 2132,
+ GetIndentationGuides = 2133,
+ SetHighlightGuide = 2134,
+ GetHighlightGuide = 2135,
+ GetLineEndPosition = 2136,
+ GetCodePage = 2137,
+ GetCaretFore = 2138,
+ GetReadOnly = 2140,
+ SetCurrentPos = 2141,
+ SetSelectionStart = 2142,
+ GetSelectionStart = 2143,
+ SetSelectionEnd = 2144,
+ GetSelectionEnd = 2145,
+ SetEmptySelection = 2556,
+ SetPrintMagnification = 2146,
+ GetPrintMagnification = 2147,
+ SetPrintColourMode = 2148,
+ GetPrintColourMode = 2149,
+ FindText = 2150,
+ FormatRange = 2151,
+ GetFirstVisibleLine = 2152,
+ GetLine = 2153,
+ GetLineCount = 2154,
+ SetMarginLeft = 2155,
+ GetMarginLeft = 2156,
+ SetMarginRight = 2157,
+ GetMarginRight = 2158,
+ GetModify = 2159,
+ SetSel = 2160,
+ GetSelText = 2161,
+ GetTextRange = 2162,
+ HideSelection = 2163,
+ PointXFromPosition = 2164,
+ PointYFromPosition = 2165,
+ LineFromPosition = 2166,
+ PositionFromLine = 2167,
+ LineScroll = 2168,
+ ScrollCaret = 2169,
+ ScrollRange = 2569,
+ ReplaceSel = 2170,
+ SetReadOnly = 2171,
+ Null = 2172,
+ CanPaste = 2173,
+ CanUndo = 2174,
+ EmptyUndoBuffer = 2175,
+ Undo = 2176,
+ Cut = 2177,
+ Copy = 2178,
+ Paste = 2179,
+ Clear = 2180,
+ SetText = 2181,
+ GetText = 2182,
+ GetTextLength = 2183,
+ GetDirectFunction = 2184,
+ GetDirectPointer = 2185,
+ SetOvertype = 2186,
+ GetOvertype = 2187,
+ SetCaretWidth = 2188,
+ GetCaretWidth = 2189,
+ SetTargetStart = 2190,
+ GetTargetStart = 2191,
+ SetTargetStartVirtualSpace = 2728,
+ GetTargetStartVirtualSpace = 2729,
+ SetTargetEnd = 2192,
+ GetTargetEnd = 2193,
+ SetTargetEndVirtualSpace = 2730,
+ GetTargetEndVirtualSpace = 2731,
+ SetTargetRange = 2686,
+ GetTargetText = 2687,
+ TargetFromSelection = 2287,
+ TargetWholeDocument = 2690,
+ ReplaceTarget = 2194,
+ ReplaceTargetRE = 2195,
+ SearchInTarget = 2197,
+ SetSearchFlags = 2198,
+ GetSearchFlags = 2199,
+ CallTipShow = 2200,
+ CallTipCancel = 2201,
+ CallTipActive = 2202,
+ CallTipPosStart = 2203,
+ CallTipSetPosStart = 2214,
+ CallTipSetHlt = 2204,
+ CallTipSetBack = 2205,
+ CallTipSetFore = 2206,
+ CallTipSetForeHlt = 2207,
+ CallTipUseStyle = 2212,
+ CallTipSetPosition = 2213,
+ VisibleFromDocLine = 2220,
+ DocLineFromVisible = 2221,
+ WrapCount = 2235,
+ SetFoldLevel = 2222,
+ GetFoldLevel = 2223,
+ GetLastChild = 2224,
+ GetFoldParent = 2225,
+ ShowLines = 2226,
+ HideLines = 2227,
+ GetLineVisible = 2228,
+ GetAllLinesVisible = 2236,
+ SetFoldExpanded = 2229,
+ GetFoldExpanded = 2230,
+ ToggleFold = 2231,
+ ToggleFoldShowText = 2700,
+ FoldDisplayTextSetStyle = 2701,
+ FoldDisplayTextGetStyle = 2707,
+ SetDefaultFoldDisplayText = 2722,
+ GetDefaultFoldDisplayText = 2723,
+ FoldLine = 2237,
+ FoldChildren = 2238,
+ ExpandChildren = 2239,
+ FoldAll = 2662,
+ EnsureVisible = 2232,
+ SetAutomaticFold = 2663,
+ GetAutomaticFold = 2664,
+ SetFoldFlags = 2233,
+ EnsureVisibleEnforcePolicy = 2234,
+ SetTabIndents = 2260,
+ GetTabIndents = 2261,
+ SetBackSpaceUnIndents = 2262,
+ GetBackSpaceUnIndents = 2263,
+ SetMouseDwellTime = 2264,
+ GetMouseDwellTime = 2265,
+ WordStartPosition = 2266,
+ WordEndPosition = 2267,
+ IsRangeWord = 2691,
+ SetIdleStyling = 2692,
+ GetIdleStyling = 2693,
+ SetWrapMode = 2268,
+ GetWrapMode = 2269,
+ SetWrapVisualFlags = 2460,
+ GetWrapVisualFlags = 2461,
+ SetWrapVisualFlagsLocation = 2462,
+ GetWrapVisualFlagsLocation = 2463,
+ SetWrapStartIndent = 2464,
+ GetWrapStartIndent = 2465,
+ SetWrapIndentMode = 2472,
+ GetWrapIndentMode = 2473,
+ SetLayoutCache = 2272,
+ GetLayoutCache = 2273,
+ SetScrollWidth = 2274,
+ GetScrollWidth = 2275,
+ SetScrollWidthTracking = 2516,
+ GetScrollWidthTracking = 2517,
+ TextWidth = 2276,
+ SetEndAtLastLine = 2277,
+ GetEndAtLastLine = 2278,
+ TextHeight = 2279,
+ SetVScrollBar = 2280,
+ GetVScrollBar = 2281,
+ AppendText = 2282,
+ GetPhasesDraw = 2673,
+ SetPhasesDraw = 2674,
+ SetFontQuality = 2611,
+ GetFontQuality = 2612,
+ SetFirstVisibleLine = 2613,
+ SetMultiPaste = 2614,
+ GetMultiPaste = 2615,
+ GetTag = 2616,
+ LinesJoin = 2288,
+ LinesSplit = 2289,
+ SetFoldMarginColour = 2290,
+ SetFoldMarginHiColour = 2291,
+ SetAccessibility = 2702,
+ GetAccessibility = 2703,
+ LineDown = 2300,
+ LineDownExtend = 2301,
+ LineUp = 2302,
+ LineUpExtend = 2303,
+ CharLeft = 2304,
+ CharLeftExtend = 2305,
+ CharRight = 2306,
+ CharRightExtend = 2307,
+ WordLeft = 2308,
+ WordLeftExtend = 2309,
+ WordRight = 2310,
+ WordRightExtend = 2311,
+ Home = 2312,
+ HomeExtend = 2313,
+ LineEnd = 2314,
+ LineEndExtend = 2315,
+ DocumentStart = 2316,
+ DocumentStartExtend = 2317,
+ DocumentEnd = 2318,
+ DocumentEndExtend = 2319,
+ PageUp = 2320,
+ PageUpExtend = 2321,
+ PageDown = 2322,
+ PageDownExtend = 2323,
+ EditToggleOvertype = 2324,
+ Cancel = 2325,
+ DeleteBack = 2326,
+ Tab = 2327,
+ BackTab = 2328,
+ NewLine = 2329,
+ FormFeed = 2330,
+ VCHome = 2331,
+ VCHomeExtend = 2332,
+ ZoomIn = 2333,
+ ZoomOut = 2334,
+ DelWordLeft = 2335,
+ DelWordRight = 2336,
+ DelWordRightEnd = 2518,
+ LineCut = 2337,
+ LineDelete = 2338,
+ LineTranspose = 2339,
+ LineReverse = 2354,
+ LineDuplicate = 2404,
+ LowerCase = 2340,
+ UpperCase = 2341,
+ LineScrollDown = 2342,
+ LineScrollUp = 2343,
+ DeleteBackNotLine = 2344,
+ HomeDisplay = 2345,
+ HomeDisplayExtend = 2346,
+ LineEndDisplay = 2347,
+ LineEndDisplayExtend = 2348,
+ HomeWrap = 2349,
+ HomeWrapExtend = 2450,
+ LineEndWrap = 2451,
+ LineEndWrapExtend = 2452,
+ VCHomeWrap = 2453,
+ VCHomeWrapExtend = 2454,
+ LineCopy = 2455,
+ MoveCaretInsideView = 2401,
+ LineLength = 2350,
+ BraceHighlight = 2351,
+ BraceHighlightIndicator = 2498,
+ BraceBadLight = 2352,
+ BraceBadLightIndicator = 2499,
+ BraceMatch = 2353,
+ BraceMatchNext = 2369,
+ GetViewEOL = 2355,
+ SetViewEOL = 2356,
+ GetDocPointer = 2357,
+ SetDocPointer = 2358,
+ SetModEventMask = 2359,
+ GetEdgeColumn = 2360,
+ SetEdgeColumn = 2361,
+ GetEdgeMode = 2362,
+ SetEdgeMode = 2363,
+ GetEdgeColour = 2364,
+ SetEdgeColour = 2365,
+ MultiEdgeAddLine = 2694,
+ MultiEdgeClearAll = 2695,
+ GetMultiEdgeColumn = 2749,
+ SearchAnchor = 2366,
+ SearchNext = 2367,
+ SearchPrev = 2368,
+ LinesOnScreen = 2370,
+ UsePopUp = 2371,
+ SelectionIsRectangle = 2372,
+ SetZoom = 2373,
+ GetZoom = 2374,
+ CreateDocument = 2375,
+ AddRefDocument = 2376,
+ ReleaseDocument = 2377,
+ GetDocumentOptions = 2379,
+ GetModEventMask = 2378,
+ SetCommandEvents = 2717,
+ GetCommandEvents = 2718,
+ SetFocus = 2380,
+ GetFocus = 2381,
+ SetStatus = 2382,
+ GetStatus = 2383,
+ SetMouseDownCaptures = 2384,
+ GetMouseDownCaptures = 2385,
+ SetMouseWheelCaptures = 2696,
+ GetMouseWheelCaptures = 2697,
+ SetCursor = 2386,
+ GetCursor = 2387,
+ SetControlCharSymbol = 2388,
+ GetControlCharSymbol = 2389,
+ WordPartLeft = 2390,
+ WordPartLeftExtend = 2391,
+ WordPartRight = 2392,
+ WordPartRightExtend = 2393,
+ SetVisiblePolicy = 2394,
+ DelLineLeft = 2395,
+ DelLineRight = 2396,
+ SetXOffset = 2397,
+ GetXOffset = 2398,
+ ChooseCaretX = 2399,
+ GrabFocus = 2400,
+ SetXCaretPolicy = 2402,
+ SetYCaretPolicy = 2403,
+ SetPrintWrapMode = 2406,
+ GetPrintWrapMode = 2407,
+ SetHotspotActiveFore = 2410,
+ GetHotspotActiveFore = 2494,
+ SetHotspotActiveBack = 2411,
+ GetHotspotActiveBack = 2495,
+ SetHotspotActiveUnderline = 2412,
+ GetHotspotActiveUnderline = 2496,
+ SetHotspotSingleLine = 2421,
+ GetHotspotSingleLine = 2497,
+ ParaDown = 2413,
+ ParaDownExtend = 2414,
+ ParaUp = 2415,
+ ParaUpExtend = 2416,
+ PositionBefore = 2417,
+ PositionAfter = 2418,
+ PositionRelative = 2670,
+ PositionRelativeCodeUnits = 2716,
+ CopyRange = 2419,
+ CopyText = 2420,
+ SetSelectionMode = 2422,
+ GetSelectionMode = 2423,
+ GetMoveExtendsSelection = 2706,
+ GetLineSelStartPosition = 2424,
+ GetLineSelEndPosition = 2425,
+ LineDownRectExtend = 2426,
+ LineUpRectExtend = 2427,
+ CharLeftRectExtend = 2428,
+ CharRightRectExtend = 2429,
+ HomeRectExtend = 2430,
+ VCHomeRectExtend = 2431,
+ LineEndRectExtend = 2432,
+ PageUpRectExtend = 2433,
+ PageDownRectExtend = 2434,
+ StutteredPageUp = 2435,
+ StutteredPageUpExtend = 2436,
+ StutteredPageDown = 2437,
+ StutteredPageDownExtend = 2438,
+ WordLeftEnd = 2439,
+ WordLeftEndExtend = 2440,
+ WordRightEnd = 2441,
+ WordRightEndExtend = 2442,
+ SetWhitespaceChars = 2443,
+ GetWhitespaceChars = 2647,
+ SetPunctuationChars = 2648,
+ GetPunctuationChars = 2649,
+ SetCharsDefault = 2444,
+ AutoCGetCurrent = 2445,
+ AutoCGetCurrentText = 2610,
+ AutoCSetCaseInsensitiveBehaviour = 2634,
+ AutoCGetCaseInsensitiveBehaviour = 2635,
+ AutoCSetMulti = 2636,
+ AutoCGetMulti = 2637,
+ AutoCSetOrder = 2660,
+ AutoCGetOrder = 2661,
+ Allocate = 2446,
+ TargetAsUTF8 = 2447,
+ SetLengthForEncode = 2448,
+ EncodedFromUTF8 = 2449,
+ FindColumn = 2456,
+ GetCaretSticky = 2457,
+ SetCaretSticky = 2458,
+ ToggleCaretSticky = 2459,
+ SetPasteConvertEndings = 2467,
+ GetPasteConvertEndings = 2468,
+ SelectionDuplicate = 2469,
+ SetCaretLineBackAlpha = 2470,
+ GetCaretLineBackAlpha = 2471,
+ SetCaretStyle = 2512,
+ GetCaretStyle = 2513,
+ SetIndicatorCurrent = 2500,
+ GetIndicatorCurrent = 2501,
+ SetIndicatorValue = 2502,
+ GetIndicatorValue = 2503,
+ IndicatorFillRange = 2504,
+ IndicatorClearRange = 2505,
+ IndicatorAllOnFor = 2506,
+ IndicatorValueAt = 2507,
+ IndicatorStart = 2508,
+ IndicatorEnd = 2509,
+ SetPositionCache = 2514,
+ GetPositionCache = 2515,
+ CopyAllowLine = 2519,
+ GetCharacterPointer = 2520,
+ GetRangePointer = 2643,
+ GetGapPosition = 2644,
+ IndicSetAlpha = 2523,
+ IndicGetAlpha = 2524,
+ IndicSetOutlineAlpha = 2558,
+ IndicGetOutlineAlpha = 2559,
+ SetExtraAscent = 2525,
+ GetExtraAscent = 2526,
+ SetExtraDescent = 2527,
+ GetExtraDescent = 2528,
+ MarkerSymbolDefined = 2529,
+ MarginSetText = 2530,
+ MarginGetText = 2531,
+ MarginSetStyle = 2532,
+ MarginGetStyle = 2533,
+ MarginSetStyles = 2534,
+ MarginGetStyles = 2535,
+ MarginTextClearAll = 2536,
+ MarginSetStyleOffset = 2537,
+ MarginGetStyleOffset = 2538,
+ SetMarginOptions = 2539,
+ GetMarginOptions = 2557,
+ AnnotationSetText = 2540,
+ AnnotationGetText = 2541,
+ AnnotationSetStyle = 2542,
+ AnnotationGetStyle = 2543,
+ AnnotationSetStyles = 2544,
+ AnnotationGetStyles = 2545,
+ AnnotationGetLines = 2546,
+ AnnotationClearAll = 2547,
+ AnnotationSetVisible = 2548,
+ AnnotationGetVisible = 2549,
+ AnnotationSetStyleOffset = 2550,
+ AnnotationGetStyleOffset = 2551,
+ ReleaseAllExtendedStyles = 2552,
+ AllocateExtendedStyles = 2553,
+ AddUndoAction = 2560,
+ CharPositionFromPoint = 2561,
+ CharPositionFromPointClose = 2562,
+ SetMouseSelectionRectangularSwitch = 2668,
+ GetMouseSelectionRectangularSwitch = 2669,
+ SetMultipleSelection = 2563,
+ GetMultipleSelection = 2564,
+ SetAdditionalSelectionTyping = 2565,
+ GetAdditionalSelectionTyping = 2566,
+ SetAdditionalCaretsBlink = 2567,
+ GetAdditionalCaretsBlink = 2568,
+ SetAdditionalCaretsVisible = 2608,
+ GetAdditionalCaretsVisible = 2609,
+ GetSelections = 2570,
+ GetSelectionEmpty = 2650,
+ ClearSelections = 2571,
+ SetSelection = 2572,
+ AddSelection = 2573,
+ DropSelectionN = 2671,
+ SetMainSelection = 2574,
+ GetMainSelection = 2575,
+ SetSelectionNCaret = 2576,
+ GetSelectionNCaret = 2577,
+ SetSelectionNAnchor = 2578,
+ GetSelectionNAnchor = 2579,
+ SetSelectionNCaretVirtualSpace = 2580,
+ GetSelectionNCaretVirtualSpace = 2581,
+ SetSelectionNAnchorVirtualSpace = 2582,
+ GetSelectionNAnchorVirtualSpace = 2583,
+ SetSelectionNStart = 2584,
+ GetSelectionNStart = 2585,
+ GetSelectionNStartVirtualSpace = 2726,
+ SetSelectionNEnd = 2586,
+ GetSelectionNEndVirtualSpace = 2727,
+ GetSelectionNEnd = 2587,
+ SetRectangularSelectionCaret = 2588,
+ GetRectangularSelectionCaret = 2589,
+ SetRectangularSelectionAnchor = 2590,
+ GetRectangularSelectionAnchor = 2591,
+ SetRectangularSelectionCaretVirtualSpace = 2592,
+ GetRectangularSelectionCaretVirtualSpace = 2593,
+ SetRectangularSelectionAnchorVirtualSpace = 2594,
+ GetRectangularSelectionAnchorVirtualSpace = 2595,
+ SetVirtualSpaceOptions = 2596,
+ GetVirtualSpaceOptions = 2597,
+ SetRectangularSelectionModifier = 2598,
+ GetRectangularSelectionModifier = 2599,
+ SetAdditionalSelFore = 2600,
+ SetAdditionalSelBack = 2601,
+ SetAdditionalSelAlpha = 2602,
+ GetAdditionalSelAlpha = 2603,
+ SetAdditionalCaretFore = 2604,
+ GetAdditionalCaretFore = 2605,
+ RotateSelection = 2606,
+ SwapMainAnchorCaret = 2607,
+ MultipleSelectAddNext = 2688,
+ MultipleSelectAddEach = 2689,
+ ChangeLexerState = 2617,
+ ContractedFoldNext = 2618,
+ VerticalCentreCaret = 2619,
+ MoveSelectedLinesUp = 2620,
+ MoveSelectedLinesDown = 2621,
+ SetIdentifier = 2622,
+ GetIdentifier = 2623,
+ RGBAImageSetWidth = 2624,
+ RGBAImageSetHeight = 2625,
+ RGBAImageSetScale = 2651,
+ MarkerDefineRGBAImage = 2626,
+ RegisterRGBAImage = 2627,
+ ScrollToStart = 2628,
+ ScrollToEnd = 2629,
+ SetTechnology = 2630,
+ GetTechnology = 2631,
+ CreateLoader = 2632,
+ FindIndicatorShow = 2640,
+ FindIndicatorFlash = 2641,
+ FindIndicatorHide = 2642,
+ VCHomeDisplay = 2652,
+ VCHomeDisplayExtend = 2653,
+ GetCaretLineVisibleAlways = 2654,
+ SetCaretLineVisibleAlways = 2655,
+ SetLineEndTypesAllowed = 2656,
+ GetLineEndTypesAllowed = 2657,
+ GetLineEndTypesActive = 2658,
+ SetRepresentation = 2665,
+ GetRepresentation = 2666,
+ ClearRepresentation = 2667,
+ EOLAnnotationSetText = 2740,
+ EOLAnnotationGetText = 2741,
+ EOLAnnotationSetStyle = 2742,
+ EOLAnnotationGetStyle = 2743,
+ EOLAnnotationClearAll = 2744,
+ EOLAnnotationSetVisible = 2745,
+ EOLAnnotationGetVisible = 2746,
+ EOLAnnotationSetStyleOffset = 2747,
+ EOLAnnotationGetStyleOffset = 2748,
+ SupportsFeature = 2750,
+ GetLineCharacterIndex = 2710,
+ AllocateLineCharacterIndex = 2711,
+ ReleaseLineCharacterIndex = 2712,
+ LineFromIndexPosition = 2713,
+ IndexPositionFromLine = 2714,
+ StartRecord = 3001,
+ StopRecord = 3002,
+ GetLexer = 4002,
+ Colourise = 4003,
+ SetProperty = 4004,
+ SetKeyWords = 4005,
+ GetProperty = 4008,
+ GetPropertyExpanded = 4009,
+ GetPropertyInt = 4010,
+ GetLexerLanguage = 4012,
+ PrivateLexerCall = 4013,
+ PropertyNames = 4014,
+ PropertyType = 4015,
+ DescribeProperty = 4016,
+ DescribeKeyWordSets = 4017,
+ GetLineEndTypesSupported = 4018,
+ AllocateSubStyles = 4020,
+ GetSubStylesStart = 4021,
+ GetSubStylesLength = 4022,
+ GetStyleFromSubStyle = 4027,
+ GetPrimaryStyleFromStyle = 4028,
+ FreeSubStyles = 4023,
+ SetIdentifiers = 4024,
+ DistanceToSecondaryStyles = 4025,
+ GetSubStyleBases = 4026,
+ GetNamedStyles = 4029,
+ NameOfStyle = 4030,
+ TagsOfStyle = 4031,
+ DescriptionOfStyle = 4032,
+ SetILexer = 4033,
+ GetBidirectional = 2708,
+ SetBidirectional = 2709,
+};
+//--Autogenerated -- end of section automatically generated from Scintilla.iface
+
+}
+
+#endif
diff --git a/include/ScintillaStructures.h b/include/ScintillaStructures.h
new file mode 100644
index 000000000..6bd16e8c1
--- /dev/null
+++ b/include/ScintillaStructures.h
@@ -0,0 +1,103 @@
+// Scintilla source code edit control
+/** @file ScintillaStructures.h
+ ** Structures used to communicate with Scintilla.
+ ** The same structures are defined for C in Scintilla.h.
+ ** Uses definitions from ScintillaTypes.h.
+ **/
+// Copyright 2021 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+#ifndef SCINTILLASTRUCTURES_H
+#define SCINTILLASTRUCTURES_H
+
+namespace Scintilla {
+
+using PositionCR = long;
+
+struct CharacterRange {
+ PositionCR cpMin;
+ PositionCR cpMax;
+};
+
+struct TextRange {
+ CharacterRange chrg;
+ char *lpstrText;
+};
+
+struct TextToFind {
+ CharacterRange chrg;
+ const char *lpstrText;
+ CharacterRange chrgText;
+};
+
+using SurfaceID = void *;
+
+struct Rectangle {
+ int left;
+ int top;
+ int right;
+ int bottom;
+};
+
+/* This structure is used in printing. Not needed by most client code. */
+
+struct RangeToFormat {
+ SurfaceID hdc;
+ SurfaceID hdcTarget;
+ Rectangle rc;
+ Rectangle rcPage;
+ CharacterRange chrg;
+};
+
+struct NotifyHeader {
+ /* Compatible with Windows NMHDR.
+ * hwndFrom is really an environment specific window handle or pointer
+ * but most clients of Scintilla.h do not have this type visible. */
+ void *hwndFrom;
+ uptr_t idFrom;
+ Notification code;
+};
+
+struct NotificationData {
+ NotifyHeader nmhdr;
+ Position position;
+ /* SCN_STYLENEEDED, SCN_DOUBLECLICK, SCN_MODIFIED, SCN_MARGINCLICK, */
+ /* SCN_NEEDSHOWN, SCN_DWELLSTART, SCN_DWELLEND, SCN_CALLTIPCLICK, */
+ /* SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, SCN_HOTSPOTRELEASECLICK, */
+ /* SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */
+ /* SCN_USERLISTSELECTION, SCN_AUTOCSELECTION */
+
+ int ch;
+ /* SCN_CHARADDED, SCN_KEY, SCN_AUTOCCOMPLETED, SCN_AUTOCSELECTION, */
+ /* SCN_USERLISTSELECTION */
+ KeyMod modifiers;
+ /* SCN_KEY, SCN_DOUBLECLICK, SCN_HOTSPOTCLICK, SCN_HOTSPOTDOUBLECLICK, */
+ /* SCN_HOTSPOTRELEASECLICK, SCN_INDICATORCLICK, SCN_INDICATORRELEASE, */
+
+ ModificationFlags modificationType; /* SCN_MODIFIED */
+ const char *text;
+ /* SCN_MODIFIED, SCN_USERLISTSELECTION, SCN_AUTOCSELECTION, SCN_URIDROPPED */
+
+ Position length; /* SCN_MODIFIED */
+ Position linesAdded; /* SCN_MODIFIED */
+ Message message; /* SCN_MACRORECORD */
+ uptr_t wParam; /* SCN_MACRORECORD */
+ sptr_t lParam; /* SCN_MACRORECORD */
+ Position line; /* SCN_MODIFIED */
+ FoldLevel foldLevelNow; /* SCN_MODIFIED */
+ FoldLevel foldLevelPrev; /* SCN_MODIFIED */
+ int margin; /* SCN_MARGINCLICK */
+ int listType; /* SCN_USERLISTSELECTION */
+ int x; /* SCN_DWELLSTART, SCN_DWELLEND */
+ int y; /* SCN_DWELLSTART, SCN_DWELLEND */
+ int token; /* SCN_MODIFIED with SC_MOD_CONTAINER */
+ Position annotationLinesAdded; /* SCN_MODIFIED with SC_MOD_CHANGEANNOTATION */
+ Update updated; /* SCN_UPDATEUI */
+ CompletionMethods listCompletionMethod;
+ /* SCN_AUTOCSELECTION, SCN_AUTOCCOMPLETED, SCN_USERLISTSELECTION, */
+ CharacterSource characterSource; /* SCN_CHARADDED */
+};
+
+}
+
+#endif
diff --git a/include/ScintillaTypes.h b/include/ScintillaTypes.h
new file mode 100644
index 000000000..6b5714b69
--- /dev/null
+++ b/include/ScintillaTypes.h
@@ -0,0 +1,786 @@
+// Scintilla source code edit control
+/** @file ScintillaTypes.h
+ ** Types used to communicate with Scintilla.
+ **/
+// Copyright 1998-2019 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+/* Most of this file is automatically generated from the Scintilla.iface interface definition
+ * file which contains any comments about the definitions. ScintillaAPIFacer.py does the generation. */
+
+#ifndef SCINTILLATYPES_H
+#define SCINTILLATYPES_H
+
+namespace Scintilla {
+
+// Enumerations
+//++Autogenerated -- start of section automatically generated from Scintilla.iface
+
+enum class WhiteSpace {
+ Invisible = 0,
+ VisibleAlways = 1,
+ VisibleAfterIndent = 2,
+ VisibleOnlyInIndent = 3,
+};
+
+enum class TabDrawMode {
+ LongArrow = 0,
+ StrikeOut = 1,
+};
+
+enum class EndOfLine {
+ CrLf = 0,
+ Cr = 1,
+ Lf = 2,
+};
+
+enum class IMEInteraction {
+ Windowed = 0,
+ Inline = 1,
+};
+
+enum class Alpha {
+ Transparent = 0,
+ Opaque = 255,
+ NoAlpha = 256,
+};
+
+enum class CursorShape {
+ Normal = -1,
+ Arrow = 2,
+ Wait = 4,
+ ReverseArrow = 7,
+};
+
+enum class MarkerSymbol {
+ Circle = 0,
+ RoundRect = 1,
+ Arrow = 2,
+ SmallRect = 3,
+ ShortArrow = 4,
+ Empty = 5,
+ ArrowDown = 6,
+ Minus = 7,
+ Plus = 8,
+ VLine = 9,
+ LCorner = 10,
+ TCorner = 11,
+ BoxPlus = 12,
+ BoxPlusConnected = 13,
+ BoxMinus = 14,
+ BoxMinusConnected = 15,
+ LCornerCurve = 16,
+ TCornerCurve = 17,
+ CirclePlus = 18,
+ CirclePlusConnected = 19,
+ CircleMinus = 20,
+ CircleMinusConnected = 21,
+ Background = 22,
+ DotDotDot = 23,
+ Arrows = 24,
+ Pixmap = 25,
+ FullRect = 26,
+ LeftRect = 27,
+ Available = 28,
+ Underline = 29,
+ RgbaImage = 30,
+ Bookmark = 31,
+ VerticalBookmark = 32,
+ Character = 10000,
+};
+
+enum class MarkerOutline {
+ FolderEnd = 25,
+ FolderOpenMid = 26,
+ FolderMidTail = 27,
+ FolderTail = 28,
+ FolderSub = 29,
+ Folder = 30,
+ FolderOpen = 31,
+};
+
+enum class MarginType {
+ Symbol = 0,
+ Number = 1,
+ Back = 2,
+ Fore = 3,
+ Text = 4,
+ RText = 5,
+ Colour = 6,
+};
+
+enum class StylesCommon {
+ Default = 32,
+ LineNumber = 33,
+ BraceLight = 34,
+ BraceBad = 35,
+ ControlChar = 36,
+ IndentGuide = 37,
+ CallTip = 38,
+ FoldDisplayText = 39,
+ LastPredefined = 39,
+ Max = 255,
+};
+
+enum class CharacterSet {
+ Ansi = 0,
+ Default = 1,
+ Baltic = 186,
+ ChineseBig5 = 136,
+ EastEurope = 238,
+ GB2312 = 134,
+ Greek = 161,
+ Hangul = 129,
+ Mac = 77,
+ Oem = 255,
+ Russian = 204,
+ Oem866 = 866,
+ Cyrillic = 1251,
+ ShiftJis = 128,
+ Symbol = 2,
+ Turkish = 162,
+ Johab = 130,
+ Hebrew = 177,
+ Arabic = 178,
+ Vietnamese = 163,
+ Thai = 222,
+ Iso8859_15 = 1000,
+};
+
+enum class CaseVisible {
+ Mixed = 0,
+ Upper = 1,
+ Lower = 2,
+ Camel = 3,
+};
+
+enum class FontWeight {
+ Normal = 400,
+ SemiBold = 600,
+ Bold = 700,
+};
+
+enum class Element {
+ List = 0,
+ ListBack = 1,
+ ListSelected = 2,
+ ListSelectedBack = 3,
+ SelectionText = 10,
+ SelectionBack = 11,
+ SelectionAdditionalText = 12,
+ SelectionAdditionalBack = 13,
+ SelectionSecondaryText = 14,
+ SelectionSecondaryBack = 15,
+ SelectionNoFocusText = 16,
+ SelectionNoFocusBack = 17,
+ Caret = 40,
+ CaretAdditional = 41,
+ CaretLineBack = 50,
+ WhiteSpace = 60,
+ WhiteSpaceBack = 61,
+ HotSpotActive = 70,
+ HotSpotActiveBack = 71,
+};
+
+enum class Layer {
+ Base = 0,
+ UnderText = 1,
+ OverText = 2,
+};
+
+enum class IndicatorStyle {
+ Plain = 0,
+ Squiggle = 1,
+ TT = 2,
+ Diagonal = 3,
+ Strike = 4,
+ Hidden = 5,
+ Box = 6,
+ RoundBox = 7,
+ StraightBox = 8,
+ Dash = 9,
+ Dots = 10,
+ SquiggleLow = 11,
+ DotBox = 12,
+ SquigglePixmap = 13,
+ CompositionThick = 14,
+ CompositionThin = 15,
+ FullBox = 16,
+ TextFore = 17,
+ Point = 18,
+ PointCharacter = 19,
+ Gradient = 20,
+ GradientCentre = 21,
+};
+
+enum class IndicatorNumbers {
+ Container = 8,
+ Ime = 32,
+ ImeMax = 35,
+ Max = 35,
+};
+
+enum class IndicValue {
+ Bit = 0x1000000,
+ Mask = 0xFFFFFF,
+};
+
+enum class IndicFlag {
+ None = 0,
+ ValueFore = 1,
+};
+
+enum class IndentView {
+ None = 0,
+ Real = 1,
+ LookForward = 2,
+ LookBoth = 3,
+};
+
+enum class PrintOption {
+ Normal = 0,
+ InvertLight = 1,
+ BlackOnWhite = 2,
+ ColourOnWhite = 3,
+ ColourOnWhiteDefaultBG = 4,
+ ScreenColours = 5,
+};
+
+enum class FindOption {
+ None = 0x0,
+ WholeWord = 0x2,
+ MatchCase = 0x4,
+ WordStart = 0x00100000,
+ RegExp = 0x00200000,
+ Posix = 0x00400000,
+ Cxx11RegEx = 0x00800000,
+};
+
+enum class FoldLevel {
+ None = 0x0,
+ Base = 0x400,
+ WhiteFlag = 0x1000,
+ HeaderFlag = 0x2000,
+ NumberMask = 0x0FFF,
+};
+
+enum class FoldDisplayTextStyle {
+ Hidden = 0,
+ Standard = 1,
+ Boxed = 2,
+};
+
+enum class FoldAction {
+ Contract = 0,
+ Expand = 1,
+ Toggle = 2,
+};
+
+enum class AutomaticFold {
+ None = 0x0000,
+ Show = 0x0001,
+ Click = 0x0002,
+ Change = 0x0004,
+};
+
+enum class FoldFlag {
+ None = 0x0000,
+ LineBeforeExpanded = 0x0002,
+ LineBeforeContracted = 0x0004,
+ LineAfterExpanded = 0x0008,
+ LineAfterContracted = 0x0010,
+ LevelNumbers = 0x0040,
+ LineState = 0x0080,
+};
+
+enum class IdleStyling {
+ None = 0,
+ ToVisible = 1,
+ AfterVisible = 2,
+ All = 3,
+};
+
+enum class Wrap {
+ None = 0,
+ Word = 1,
+ Char = 2,
+ WhiteSpace = 3,
+};
+
+enum class WrapVisualFlag {
+ None = 0x0000,
+ End = 0x0001,
+ Start = 0x0002,
+ Margin = 0x0004,
+};
+
+enum class WrapVisualLocation {
+ Default = 0x0000,
+ EndByText = 0x0001,
+ StartByText = 0x0002,
+};
+
+enum class WrapIndentMode {
+ Fixed = 0,
+ Same = 1,
+ Indent = 2,
+ DeepIndent = 3,
+};
+
+enum class LineCache {
+ None = 0,
+ Caret = 1,
+ Page = 2,
+ Document = 3,
+};
+
+enum class PhasesDraw {
+ One = 0,
+ Two = 1,
+ Multiple = 2,
+};
+
+enum class FontQuality {
+ QualityMask = 0xF,
+ QualityDefault = 0,
+ QualityNonAntialiased = 1,
+ QualityAntialiased = 2,
+ QualityLcdOptimized = 3,
+};
+
+enum class MultiPaste {
+ Once = 0,
+ Each = 1,
+};
+
+enum class Accessibility {
+ Disabled = 0,
+ Enabled = 1,
+};
+
+enum class EdgeVisualStyle {
+ None = 0,
+ Line = 1,
+ Background = 2,
+ MultiLine = 3,
+};
+
+enum class PopUp {
+ Never = 0,
+ All = 1,
+ Text = 2,
+};
+
+enum class DocumentOption {
+ Default = 0,
+ StylesNone = 0x1,
+ TextLarge = 0x100,
+};
+
+enum class Status {
+ Ok = 0,
+ Failure = 1,
+ BadAlloc = 2,
+ WarnStart = 1000,
+ RegEx = 1001,
+};
+
+enum class VisiblePolicy {
+ Slop = 0x01,
+ Strict = 0x04,
+};
+
+enum class CaretPolicy {
+ Slop = 0x01,
+ Strict = 0x04,
+ Jumps = 0x10,
+ Even = 0x08,
+};
+
+enum class SelectionMode {
+ Stream = 0,
+ Rectangle = 1,
+ Lines = 2,
+ Thin = 3,
+};
+
+enum class CaseInsensitiveBehaviour {
+ RespectCase = 0,
+ IgnoreCase = 1,
+};
+
+enum class MultiAutoComplete {
+ Once = 0,
+ Each = 1,
+};
+
+enum class Ordering {
+ PreSorted = 0,
+ PerformSort = 1,
+ Custom = 2,
+};
+
+enum class CaretSticky {
+ Off = 0,
+ On = 1,
+ WhiteSpace = 2,
+};
+
+enum class CaretStyle {
+ Invisible = 0,
+ Line = 1,
+ Block = 2,
+ OverstrikeBar = 0,
+ OverstrikeBlock = 0x10,
+ InsMask = 0xF,
+ BlockAfter = 0x100,
+};
+
+enum class MarginOption {
+ None = 0,
+ SubLineSelect = 1,
+};
+
+enum class AnnotationVisible {
+ Hidden = 0,
+ Standard = 1,
+ Boxed = 2,
+ Indented = 3,
+};
+
+enum class UndoFlags {
+ None = 0,
+ MayCoalesce = 1,
+};
+
+enum class VirtualSpace {
+ None = 0,
+ RectangularSelection = 1,
+ UserAccessible = 2,
+ NoWrapLineStart = 4,
+};
+
+enum class Technology {
+ Default = 0,
+ DirectWrite = 1,
+ DirectWriteRetain = 2,
+ DirectWriteDC = 3,
+};
+
+enum class LineEndType {
+ Default = 0,
+ Unicode = 1,
+};
+
+enum class EOLAnnotationVisible {
+ Hidden = 0x0,
+ Standard = 0x1,
+ Boxed = 0x2,
+ Stadium = 0x100,
+ FlatCircle = 0x101,
+ AngleCircle = 0x102,
+ CircleFlat = 0x110,
+ Flats = 0x111,
+ AngleFlat = 0x112,
+ CircleAngle = 0x120,
+ FlatAngle = 0x121,
+ Angles = 0x122,
+};
+
+enum class Supports {
+ LineDrawsFinal = 0,
+ PixelDivisions = 1,
+ FractionalStrokeWidth = 2,
+ TranslucentStroke = 3,
+ PixelModification = 4,
+};
+
+enum class LineCharacterIndexType {
+ None = 0,
+ Utf32 = 1,
+ Utf16 = 2,
+};
+
+enum class TypeProperty {
+ Boolean = 0,
+ Integer = 1,
+ String = 2,
+};
+
+enum class ModificationFlags {
+ None = 0x0,
+ InsertText = 0x1,
+ DeleteText = 0x2,
+ ChangeStyle = 0x4,
+ ChangeFold = 0x8,
+ User = 0x10,
+ Undo = 0x20,
+ Redo = 0x40,
+ MultiStepUndoRedo = 0x80,
+ LastStepInUndoRedo = 0x100,
+ ChangeMarker = 0x200,
+ BeforeInsert = 0x400,
+ BeforeDelete = 0x800,
+ MultilineUndoRedo = 0x1000,
+ StartAction = 0x2000,
+ ChangeIndicator = 0x4000,
+ ChangeLineState = 0x8000,
+ ChangeMargin = 0x10000,
+ ChangeAnnotation = 0x20000,
+ Container = 0x40000,
+ LexerState = 0x80000,
+ InsertCheck = 0x100000,
+ ChangeTabStops = 0x200000,
+ ChangeEOLAnnotation = 0x400000,
+ EventMaskAll = 0x7FFFFF,
+};
+
+enum class Update {
+ None = 0x0,
+ Content = 0x1,
+ Selection = 0x2,
+ VScroll = 0x4,
+ HScroll = 0x8,
+};
+
+enum class FocusChange {
+ Change = 768,
+ Setfocus = 512,
+ Killfocus = 256,
+};
+
+enum class Keys {
+ Down = 300,
+ Up = 301,
+ Left = 302,
+ Right = 303,
+ Home = 304,
+ End = 305,
+ Prior = 306,
+ Next = 307,
+ Delete = 308,
+ Insert = 309,
+ Escape = 7,
+ Back = 8,
+ Tab = 9,
+ Return = 13,
+ Add = 310,
+ Subtract = 311,
+ Divide = 312,
+ Win = 313,
+ RWin = 314,
+ Menu = 315,
+};
+
+enum class KeyMod {
+ Norm = 0,
+ Shift = 1,
+ Ctrl = 2,
+ Alt = 4,
+ Super = 8,
+ Meta = 16,
+};
+
+enum class CompletionMethods {
+ FillUp = 1,
+ DoubleClick = 2,
+ Tab = 3,
+ Newline = 4,
+ Command = 5,
+};
+
+enum class CharacterSource {
+ DirectInput = 0,
+ TentativeInput = 1,
+ ImeResult = 2,
+};
+
+enum class Bidirectional {
+ Disabled = 0,
+ L2R = 1,
+ R2L = 2,
+};
+
+enum class Notification {
+ StyleNeeded = 2000,
+ CharAdded = 2001,
+ SavePointReached = 2002,
+ SavePointLeft = 2003,
+ ModifyAttemptRO = 2004,
+ Key = 2005,
+ DoubleClick = 2006,
+ UpdateUI = 2007,
+ Modified = 2008,
+ MacroRecord = 2009,
+ MarginClick = 2010,
+ NeedShown = 2011,
+ Painted = 2013,
+ UserListSelection = 2014,
+ URIDropped = 2015,
+ DwellStart = 2016,
+ DwellEnd = 2017,
+ Zoom = 2018,
+ HotSpotClick = 2019,
+ HotSpotDoubleClick = 2020,
+ CallTipClick = 2021,
+ AutoCSelection = 2022,
+ IndicatorClick = 2023,
+ IndicatorRelease = 2024,
+ AutoCCancelled = 2025,
+ AutoCCharDeleted = 2026,
+ HotSpotReleaseClick = 2027,
+ FocusIn = 2028,
+ FocusOut = 2029,
+ AutoCCompleted = 2030,
+ MarginRightClick = 2031,
+ AutoCSelectionChange = 2032,
+};
+//--Autogenerated -- end of section automatically generated from Scintilla.iface
+
+using Position = intptr_t;
+using Line = intptr_t;
+using Colour = int;
+using ColourAlpha = int;
+using uptr_t = uintptr_t;
+using sptr_t = intptr_t;
+
+//++Autogenerated -- start of section automatically generated from Scintilla.iface
+//**1 \(\*\n\)
+constexpr Position InvalidPosition = -1;
+constexpr int CpUtf8 = 65001;
+constexpr int MarkerMax = 31;
+constexpr int MaskFolders = 0xFE000000;
+constexpr int MaxMargin = 4;
+constexpr int FontSizeMultiplier = 100;
+constexpr int TimeForever = 10000000;
+constexpr int KeywordsetMax = 8;
+
+//--Autogenerated -- end of section automatically generated from Scintilla.iface
+
+constexpr int IndicatorMax = static_cast<int>(IndicatorNumbers::Max);
+
+// Functions to manipulate fields from a MarkerOutline
+
+inline int operator<<(int i, MarkerOutline marker) noexcept {
+ return i << static_cast<int>(marker);
+}
+
+// Functions to manipulate fields from a FindOption
+
+constexpr FindOption operator|(FindOption a, FindOption b) noexcept {
+ return static_cast<FindOption>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+inline FindOption &operator|=(FindOption &self, FindOption a) noexcept {
+ self = self | a;
+ return self;
+}
+
+// Functions to retrieve and manipulate fields from a FoldLevel
+
+constexpr FoldLevel operator&(FoldLevel lhs, FoldLevel rhs) noexcept {
+ return static_cast<FoldLevel>(static_cast<int>(lhs) & static_cast<int>(rhs));
+}
+
+constexpr FoldLevel LevelNumberPart(FoldLevel level) noexcept {
+ return level & FoldLevel::NumberMask;
+}
+
+constexpr int LevelNumber(FoldLevel level) noexcept {
+ return static_cast<int>(LevelNumberPart(level));
+}
+
+constexpr bool LevelIsHeader(FoldLevel level) noexcept {
+ return (level & FoldLevel::HeaderFlag) == FoldLevel::HeaderFlag;
+}
+
+constexpr bool LevelIsWhitespace(FoldLevel level) noexcept {
+ return (level & FoldLevel::WhiteFlag) == FoldLevel::WhiteFlag;
+}
+
+// Functions to manipulate fields from a FoldFlag
+
+constexpr FoldFlag operator|(FoldFlag a, FoldFlag b) noexcept {
+ return static_cast<FoldFlag>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a FontQuality
+
+constexpr FontQuality operator&(FontQuality a, FontQuality b) noexcept {
+ return static_cast<FontQuality>(static_cast<int>(a) & static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a DocumentOption
+
+constexpr DocumentOption operator|(DocumentOption a, DocumentOption b) noexcept {
+ return static_cast<DocumentOption>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a CaretPolicy
+
+constexpr CaretPolicy operator|(CaretPolicy a, CaretPolicy b) noexcept {
+ return static_cast<CaretPolicy>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a CaretStyle
+
+constexpr CaretStyle operator|(CaretStyle a, CaretStyle b) noexcept {
+ return static_cast<CaretStyle>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+constexpr CaretStyle operator&(CaretStyle a, CaretStyle b) noexcept {
+ return static_cast<CaretStyle>(static_cast<int>(a) & static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a LineEndType
+
+constexpr LineEndType operator&(LineEndType a, LineEndType b) noexcept {
+ return static_cast<LineEndType>(static_cast<int>(a) & static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a LineCharacterIndexType
+
+constexpr LineCharacterIndexType operator|(LineCharacterIndexType a, LineCharacterIndexType b) noexcept {
+ return static_cast<LineCharacterIndexType>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a ModificationFlags
+
+constexpr ModificationFlags operator|(ModificationFlags a, ModificationFlags b) noexcept {
+ return static_cast<ModificationFlags>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+constexpr ModificationFlags operator&(ModificationFlags a, ModificationFlags b) noexcept {
+ return static_cast<ModificationFlags>(static_cast<int>(a) & static_cast<int>(b));
+}
+
+inline ModificationFlags &operator|=(ModificationFlags &self, ModificationFlags a) noexcept {
+ self = self | a;
+ return self;
+}
+
+// Functions to manipulate fields from a Update
+
+constexpr Update operator|(Update a, Update b) noexcept {
+ return static_cast<Update>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+// Functions to manipulate fields from a KeyMod
+
+constexpr KeyMod operator|(KeyMod a, KeyMod b) noexcept {
+ return static_cast<KeyMod>(static_cast<int>(a) | static_cast<int>(b));
+}
+
+constexpr KeyMod operator&(KeyMod a, KeyMod b) noexcept {
+ return static_cast<KeyMod>(static_cast<int>(a) & static_cast<int>(b));
+}
+
+// Test if an enum class value has the bit flag(s) of test set.
+template <typename T>
+constexpr bool FlagSet(T value, T test) {
+ return (static_cast<int>(value) & static_cast<int>(test)) == static_cast<int>(test);
+}
+
+}
+
+#endif