+// Ensure a particular line is visible by expanding any header line hiding it.
+void wxStyledTextCtrl::EnsureVisible(int line)
+{
+ SendMsg(2232, line, 0);
+}
+
+// Set some style options for folding.
+void wxStyledTextCtrl::SetFoldFlags(int flags)
+{
+ SendMsg(2233, flags, 0);
+}
+
+// Ensure a particular line is visible by expanding any header line hiding it.
+// Use the currently set visibility policy to determine which range to display.
+void wxStyledTextCtrl::EnsureVisibleEnforcePolicy(int line)
+{
+ SendMsg(2234, line, 0);
+}
+
+// Sets whether a tab pressed when caret is within indentation indents.
+void wxStyledTextCtrl::SetTabIndents(bool tabIndents)
+{
+ SendMsg(2260, tabIndents, 0);
+}
+
+// Does a tab pressed when caret is within indentation indent?
+bool wxStyledTextCtrl::GetTabIndents() const
+{
+ return SendMsg(2261, 0, 0) != 0;
+}
+
+// Sets whether a backspace pressed when caret is within indentation unindents.
+void wxStyledTextCtrl::SetBackSpaceUnIndents(bool bsUnIndents)
+{
+ SendMsg(2262, bsUnIndents, 0);
+}
+
+// Does a backspace pressed when caret is within indentation unindent?
+bool wxStyledTextCtrl::GetBackSpaceUnIndents() const
+{
+ return SendMsg(2263, 0, 0) != 0;
+}
+
+// Sets the time the mouse must sit still to generate a mouse dwell event.
+void wxStyledTextCtrl::SetMouseDwellTime(int periodMilliseconds)
+{
+ SendMsg(2264, periodMilliseconds, 0);
+}
+
+// Retrieve the time the mouse must sit still to generate a mouse dwell event.
+int wxStyledTextCtrl::GetMouseDwellTime() const
+{
+ return SendMsg(2265, 0, 0);
+}
+
+// Get position of start of word.
+int wxStyledTextCtrl::WordStartPosition(int pos, bool onlyWordCharacters)
+{
+ return SendMsg(2266, pos, onlyWordCharacters);
+}
+
+// Get position of end of word.
+int wxStyledTextCtrl::WordEndPosition(int pos, bool onlyWordCharacters)
+{
+ return SendMsg(2267, pos, onlyWordCharacters);
+}
+
+// Sets whether text is word wrapped.
+void wxStyledTextCtrl::SetWrapMode(int mode)
+{
+ SendMsg(2268, mode, 0);
+}
+
+// Retrieve whether text is word wrapped.
+int wxStyledTextCtrl::GetWrapMode() const
+{
+ return SendMsg(2269, 0, 0);
+}
+
+// Set the display mode of visual flags for wrapped lines.
+void wxStyledTextCtrl::SetWrapVisualFlags(int wrapVisualFlags)
+{
+ SendMsg(2460, wrapVisualFlags, 0);
+}
+
+// Retrive the display mode of visual flags for wrapped lines.
+int wxStyledTextCtrl::GetWrapVisualFlags() const
+{
+ return SendMsg(2461, 0, 0);
+}
+
+// Set the location of visual flags for wrapped lines.
+void wxStyledTextCtrl::SetWrapVisualFlagsLocation(int wrapVisualFlagsLocation)
+{
+ SendMsg(2462, wrapVisualFlagsLocation, 0);
+}
+
+// Retrive the location of visual flags for wrapped lines.
+int wxStyledTextCtrl::GetWrapVisualFlagsLocation() const
+{
+ return SendMsg(2463, 0, 0);
+}
+
+// Set the start indent for wrapped lines.
+void wxStyledTextCtrl::SetWrapStartIndent(int indent)
+{
+ SendMsg(2464, indent, 0);
+}
+
+// Retrive the start indent for wrapped lines.
+int wxStyledTextCtrl::GetWrapStartIndent() const
+{
+ return SendMsg(2465, 0, 0);
+}
+
+// Sets how wrapped sublines are placed. Default is fixed.
+void wxStyledTextCtrl::SetWrapIndentMode(int mode)
+{
+ SendMsg(2472, mode, 0);
+}
+
+// Retrieve how wrapped sublines are placed. Default is fixed.
+int wxStyledTextCtrl::GetWrapIndentMode() const
+{
+ return SendMsg(2473, 0, 0);
+}
+
+// Sets the degree of caching of layout information.
+void wxStyledTextCtrl::SetLayoutCache(int mode)
+{
+ SendMsg(2272, mode, 0);
+}
+
+// Retrieve the degree of caching of layout information.
+int wxStyledTextCtrl::GetLayoutCache() const
+{
+ return SendMsg(2273, 0, 0);
+}
+
+// Sets the document width assumed for scrolling.
+void wxStyledTextCtrl::SetScrollWidth(int pixelWidth)
+{
+ SendMsg(2274, pixelWidth, 0);
+}
+
+// Retrieve the document width assumed for scrolling.
+int wxStyledTextCtrl::GetScrollWidth() const
+{
+ return SendMsg(2275, 0, 0);
+}
+
+// Sets whether the maximum width line displayed is used to set scroll width.
+void wxStyledTextCtrl::SetScrollWidthTracking(bool tracking)
+{
+ SendMsg(2516, tracking, 0);
+}
+
+// Retrieve whether the scroll width tracks wide lines.
+bool wxStyledTextCtrl::GetScrollWidthTracking() const
+{
+ return SendMsg(2517, 0, 0) != 0;
+}
+
+// Measure the pixel width of some text in a particular style.
+// NUL terminated text argument.
+// Does not handle tab or control characters.
+int wxStyledTextCtrl::TextWidth(int style, const wxString& text)
+{
+ return SendMsg(2276, style, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Sets the scroll range so that maximum scroll position has
+// the last line at the bottom of the view (default).
+// Setting this to false allows scrolling one page below the last line.
+void wxStyledTextCtrl::SetEndAtLastLine(bool endAtLastLine)
+{
+ SendMsg(2277, endAtLastLine, 0);
+}
+
+// Retrieve whether the maximum scroll position has the last
+// line at the bottom of the view.
+bool wxStyledTextCtrl::GetEndAtLastLine() const
+{
+ return SendMsg(2278, 0, 0) != 0;
+}
+
+// Retrieve the height of a particular line of text in pixels.
+int wxStyledTextCtrl::TextHeight(int line)
+{
+ return SendMsg(2279, line, 0);
+}
+
+// Show or hide the vertical scroll bar.
+void wxStyledTextCtrl::SetUseVerticalScrollBar(bool show)
+{
+ SendMsg(2280, show, 0);
+}
+
+// Is the vertical scroll bar visible?
+bool wxStyledTextCtrl::GetUseVerticalScrollBar() const
+{
+ return SendMsg(2281, 0, 0) != 0;
+}
+
+// Append a string to the end of the document without changing the selection.
+void wxStyledTextCtrl::AppendText(const wxString& text) {
+ const wxWX2MBbuf buf = wx2stc(text);
+ SendMsg(2282, wx2stclen(text, buf), (sptr_t)(const char*)buf);
+}
+
+// Is drawing done in two phases with backgrounds drawn before foregrounds?
+bool wxStyledTextCtrl::GetTwoPhaseDraw() const
+{
+ return SendMsg(2283, 0, 0) != 0;
+}
+
+// In twoPhaseDraw mode, drawing is performed in two phases, first the background
+// and then the foreground. This avoids chopping off characters that overlap the next run.
+void wxStyledTextCtrl::SetTwoPhaseDraw(bool twoPhase)
+{
+ SendMsg(2284, twoPhase, 0);
+}
+
+// Scroll so that a display line is at the top of the display.
+void wxStyledTextCtrl::SetFirstVisibleLine(int lineDisplay)
+{
+ SendMsg(2613, lineDisplay, 0);
+}
+
+// Change the effect of pasting when there are multiple selections.
+void wxStyledTextCtrl::SetMultiPaste(int multiPaste)
+{
+ SendMsg(2614, multiPaste, 0);
+}
+
+// Retrieve the effect of pasting when there are multiple selections..
+int wxStyledTextCtrl::GetMultiPaste() const
+{
+ return SendMsg(2615, 0, 0);
+}
+
+// Retrieve the value of a tag from a regular expression search.
+wxString wxStyledTextCtrl::GetTag(int tagNumber) const {
+ int msg = 2616;
+ int len = SendMsg(msg, tagNumber, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, tagNumber, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Make the target range start and end be the same as the selection range start and end.
+void wxStyledTextCtrl::TargetFromSelection()
+{
+ SendMsg(2287, 0, 0);
+}
+
+// Join the lines in the target.
+void wxStyledTextCtrl::LinesJoin()
+{
+ SendMsg(2288, 0, 0);
+}
+
+// Split the lines in the target into lines that are less wide than pixelWidth
+// where possible.
+void wxStyledTextCtrl::LinesSplit(int pixelWidth)
+{
+ SendMsg(2289, pixelWidth, 0);
+}
+
+// Set the colours used as a chequerboard pattern in the fold margin
+void wxStyledTextCtrl::SetFoldMarginColour(bool useSetting, const wxColour& back)
+{
+ SendMsg(2290, useSetting, wxColourAsLong(back));
+}
+void wxStyledTextCtrl::SetFoldMarginHiColour(bool useSetting, const wxColour& fore)
+{
+ SendMsg(2291, useSetting, wxColourAsLong(fore));
+}
+
+// Move caret down one line.
+void wxStyledTextCtrl::LineDown()
+{
+ SendMsg(2300, 0, 0);
+}
+
+// Move caret down one line extending selection to new caret position.
+void wxStyledTextCtrl::LineDownExtend()
+{
+ SendMsg(2301, 0, 0);
+}
+
+// Move caret up one line.
+void wxStyledTextCtrl::LineUp()
+{
+ SendMsg(2302, 0, 0);
+}
+
+// Move caret up one line extending selection to new caret position.
+void wxStyledTextCtrl::LineUpExtend()
+{
+ SendMsg(2303, 0, 0);
+}
+
+// Move caret left one character.
+void wxStyledTextCtrl::CharLeft()
+{
+ SendMsg(2304, 0, 0);
+}
+
+// Move caret left one character extending selection to new caret position.
+void wxStyledTextCtrl::CharLeftExtend()
+{
+ SendMsg(2305, 0, 0);
+}
+
+// Move caret right one character.
+void wxStyledTextCtrl::CharRight()
+{
+ SendMsg(2306, 0, 0);
+}
+
+// Move caret right one character extending selection to new caret position.
+void wxStyledTextCtrl::CharRightExtend()
+{
+ SendMsg(2307, 0, 0);
+}
+
+// Move caret left one word.
+void wxStyledTextCtrl::WordLeft()
+{
+ SendMsg(2308, 0, 0);
+}
+
+// Move caret left one word extending selection to new caret position.
+void wxStyledTextCtrl::WordLeftExtend()
+{
+ SendMsg(2309, 0, 0);
+}
+
+// Move caret right one word.
+void wxStyledTextCtrl::WordRight()
+{
+ SendMsg(2310, 0, 0);
+}
+
+// Move caret right one word extending selection to new caret position.
+void wxStyledTextCtrl::WordRightExtend()
+{
+ SendMsg(2311, 0, 0);
+}
+
+// Move caret to first position on line.
+void wxStyledTextCtrl::Home()
+{
+ SendMsg(2312, 0, 0);
+}
+
+// Move caret to first position on line extending selection to new caret position.
+void wxStyledTextCtrl::HomeExtend()
+{
+ SendMsg(2313, 0, 0);
+}
+
+// Move caret to last position on line.
+void wxStyledTextCtrl::LineEnd()
+{
+ SendMsg(2314, 0, 0);
+}
+
+// Move caret to last position on line extending selection to new caret position.
+void wxStyledTextCtrl::LineEndExtend()
+{
+ SendMsg(2315, 0, 0);
+}
+
+// Move caret to first position in document.
+void wxStyledTextCtrl::DocumentStart()
+{
+ SendMsg(2316, 0, 0);
+}
+
+// Move caret to first position in document extending selection to new caret position.
+void wxStyledTextCtrl::DocumentStartExtend()
+{
+ SendMsg(2317, 0, 0);
+}
+
+// Move caret to last position in document.
+void wxStyledTextCtrl::DocumentEnd()
+{
+ SendMsg(2318, 0, 0);
+}
+
+// Move caret to last position in document extending selection to new caret position.
+void wxStyledTextCtrl::DocumentEndExtend()
+{
+ SendMsg(2319, 0, 0);
+}
+
+// Move caret one page up.
+void wxStyledTextCtrl::PageUp()
+{
+ SendMsg(2320, 0, 0);
+}
+
+// Move caret one page up extending selection to new caret position.
+void wxStyledTextCtrl::PageUpExtend()
+{
+ SendMsg(2321, 0, 0);
+}
+
+// Move caret one page down.
+void wxStyledTextCtrl::PageDown()
+{
+ SendMsg(2322, 0, 0);
+}
+
+// Move caret one page down extending selection to new caret position.
+void wxStyledTextCtrl::PageDownExtend()
+{
+ SendMsg(2323, 0, 0);
+}
+
+// Switch from insert to overtype mode or the reverse.
+void wxStyledTextCtrl::EditToggleOvertype()
+{
+ SendMsg(2324, 0, 0);
+}
+
+// Cancel any modes such as call tip or auto-completion list display.
+void wxStyledTextCtrl::Cancel()
+{
+ SendMsg(2325, 0, 0);
+}
+
+// Delete the selection or if no selection, the character before the caret.
+void wxStyledTextCtrl::DeleteBack()
+{
+ SendMsg(2326, 0, 0);
+}
+
+// If selection is empty or all on one line replace the selection with a tab character.
+// If more than one line selected, indent the lines.
+void wxStyledTextCtrl::Tab()
+{
+ SendMsg(2327, 0, 0);
+}
+
+// Dedent the selected lines.
+void wxStyledTextCtrl::BackTab()
+{
+ SendMsg(2328, 0, 0);
+}
+
+// Insert a new line, may use a CRLF, CR or LF depending on EOL mode.
+void wxStyledTextCtrl::NewLine()
+{
+ SendMsg(2329, 0, 0);
+}
+
+// Insert a Form Feed character.
+void wxStyledTextCtrl::FormFeed()
+{
+ SendMsg(2330, 0, 0);
+}
+
+// Move caret to before first visible character on line.
+// If already there move to first character on line.
+void wxStyledTextCtrl::VCHome()
+{
+ SendMsg(2331, 0, 0);
+}
+
+// Like VCHome but extending selection to new caret position.
+void wxStyledTextCtrl::VCHomeExtend()
+{
+ SendMsg(2332, 0, 0);
+}
+
+// Magnify the displayed text by increasing the sizes by 1 point.
+void wxStyledTextCtrl::ZoomIn()
+{
+ SendMsg(2333, 0, 0);
+}
+
+// Make the displayed text smaller by decreasing the sizes by 1 point.
+void wxStyledTextCtrl::ZoomOut()
+{
+ SendMsg(2334, 0, 0);
+}
+
+// Delete the word to the left of the caret.
+void wxStyledTextCtrl::DelWordLeft()
+{
+ SendMsg(2335, 0, 0);
+}
+
+// Delete the word to the right of the caret.
+void wxStyledTextCtrl::DelWordRight()
+{
+ SendMsg(2336, 0, 0);
+}
+
+// Delete the word to the right of the caret, but not the trailing non-word characters.
+void wxStyledTextCtrl::DelWordRightEnd()
+{
+ SendMsg(2518, 0, 0);
+}
+
+// Cut the line containing the caret.
+void wxStyledTextCtrl::LineCut()
+{
+ SendMsg(2337, 0, 0);
+}
+
+// Delete the line containing the caret.
+void wxStyledTextCtrl::LineDelete()
+{
+ SendMsg(2338, 0, 0);
+}
+
+// Switch the current line with the previous.
+void wxStyledTextCtrl::LineTranspose()
+{
+ SendMsg(2339, 0, 0);
+}
+
+// Duplicate the current line.
+void wxStyledTextCtrl::LineDuplicate()
+{
+ SendMsg(2404, 0, 0);
+}
+
+// Transform the selection to lower case.
+void wxStyledTextCtrl::LowerCase()
+{
+ SendMsg(2340, 0, 0);
+}
+
+// Transform the selection to upper case.
+void wxStyledTextCtrl::UpperCase()
+{
+ SendMsg(2341, 0, 0);
+}
+
+// Scroll the document down, keeping the caret visible.
+void wxStyledTextCtrl::LineScrollDown()
+{
+ SendMsg(2342, 0, 0);
+}
+
+// Scroll the document up, keeping the caret visible.
+void wxStyledTextCtrl::LineScrollUp()
+{
+ SendMsg(2343, 0, 0);
+}
+
+// Delete the selection or if no selection, the character before the caret.
+// Will not delete the character before at the start of a line.
+void wxStyledTextCtrl::DeleteBackNotLine()
+{
+ SendMsg(2344, 0, 0);
+}
+
+// Move caret to first position on display line.
+void wxStyledTextCtrl::HomeDisplay()
+{
+ SendMsg(2345, 0, 0);
+}
+
+// Move caret to first position on display line extending selection to
+// new caret position.
+void wxStyledTextCtrl::HomeDisplayExtend()
+{
+ SendMsg(2346, 0, 0);
+}
+
+// Move caret to last position on display line.
+void wxStyledTextCtrl::LineEndDisplay()
+{
+ SendMsg(2347, 0, 0);
+}
+
+// Move caret to last position on display line extending selection to new
+// caret position.
+void wxStyledTextCtrl::LineEndDisplayExtend()
+{
+ SendMsg(2348, 0, 0);
+}
+
+// These are like their namesakes Home(Extend)?, LineEnd(Extend)?, VCHome(Extend)?
+// except they behave differently when word-wrap is enabled:
+// They go first to the start / end of the display line, like (Home|LineEnd)Display
+// The difference is that, the cursor is already at the point, it goes on to the start
+// or end of the document line, as appropriate for (Home|LineEnd|VCHome)(Extend)?.
+void wxStyledTextCtrl::HomeWrap()
+{
+ SendMsg(2349, 0, 0);
+}
+void wxStyledTextCtrl::HomeWrapExtend()
+{
+ SendMsg(2450, 0, 0);
+}
+void wxStyledTextCtrl::LineEndWrap()
+{
+ SendMsg(2451, 0, 0);
+}
+void wxStyledTextCtrl::LineEndWrapExtend()
+{
+ SendMsg(2452, 0, 0);
+}
+void wxStyledTextCtrl::VCHomeWrap()
+{
+ SendMsg(2453, 0, 0);
+}
+void wxStyledTextCtrl::VCHomeWrapExtend()
+{
+ SendMsg(2454, 0, 0);
+}
+
+// Copy the line containing the caret.
+void wxStyledTextCtrl::LineCopy()
+{
+ SendMsg(2455, 0, 0);
+}
+
+// Move the caret inside current view if it's not there already.
+void wxStyledTextCtrl::MoveCaretInsideView()
+{
+ SendMsg(2401, 0, 0);
+}
+
+// How many characters are on a line, including end of line characters?
+int wxStyledTextCtrl::LineLength(int line) const
+{
+ return SendMsg(2350, line, 0);
+}
+
+// Highlight the characters at two positions.
+void wxStyledTextCtrl::BraceHighlight(int pos1, int pos2)
+{
+ SendMsg(2351, pos1, pos2);
+}
+
+// Use specified indicator to highlight matching braces instead of changing their style.
+void wxStyledTextCtrl::BraceHighlightIndicator(bool useBraceHighlightIndicator, int indicator)
+{
+ SendMsg(2498, useBraceHighlightIndicator, indicator);
+}
+
+// Highlight the character at a position indicating there is no matching brace.
+void wxStyledTextCtrl::BraceBadLight(int pos)
+{
+ SendMsg(2352, pos, 0);
+}
+
+// Use specified indicator to highlight non matching brace instead of changing its style.
+void wxStyledTextCtrl::BraceBadLightIndicator(bool useBraceBadLightIndicator, int indicator)
+{
+ SendMsg(2499, useBraceBadLightIndicator, indicator);
+}
+
+// Find the position of a matching brace or INVALID_POSITION if no match.
+int wxStyledTextCtrl::BraceMatch(int pos)
+{
+ return SendMsg(2353, pos, 0);
+}
+
+// Are the end of line characters visible?
+bool wxStyledTextCtrl::GetViewEOL() const
+{
+ return SendMsg(2355, 0, 0) != 0;
+}
+
+// Make the end of line characters visible or invisible.
+void wxStyledTextCtrl::SetViewEOL(bool visible)
+{
+ SendMsg(2356, visible, 0);
+}
+
+// Retrieve a pointer to the document object.
+void* wxStyledTextCtrl::GetDocPointer() {
+ return (void*)SendMsg(2357);
+}
+
+// Change the document object used.
+void wxStyledTextCtrl::SetDocPointer(void* docPointer) {
+ SendMsg(2358, 0, (sptr_t)docPointer);
+}
+
+// Set which document modification events are sent to the container.
+void wxStyledTextCtrl::SetModEventMask(int mask)
+{
+ SendMsg(2359, mask, 0);
+}
+
+// Retrieve the column number which text should be kept within.
+int wxStyledTextCtrl::GetEdgeColumn() const
+{
+ return SendMsg(2360, 0, 0);
+}
+
+// Set the column number of the edge.
+// If text goes past the edge then it is highlighted.
+void wxStyledTextCtrl::SetEdgeColumn(int column)
+{
+ SendMsg(2361, column, 0);
+}
+
+// Retrieve the edge highlight mode.
+int wxStyledTextCtrl::GetEdgeMode() const
+{
+ return SendMsg(2362, 0, 0);
+}
+
+// The edge may be displayed by a line (EDGE_LINE) or by highlighting text that
+// goes beyond it (EDGE_BACKGROUND) or not displayed at all (EDGE_NONE).
+void wxStyledTextCtrl::SetEdgeMode(int mode)
+{
+ SendMsg(2363, mode, 0);
+}
+
+// Retrieve the colour used in edge indication.
+wxColour wxStyledTextCtrl::GetEdgeColour() const
+{
+ long c = SendMsg(2364, 0, 0);
+ return wxColourFromLong(c);
+}
+
+// Change the colour used in edge indication.
+void wxStyledTextCtrl::SetEdgeColour(const wxColour& edgeColour)
+{
+ SendMsg(2365, wxColourAsLong(edgeColour), 0);
+}
+
+// Sets the current caret position to be the search anchor.
+void wxStyledTextCtrl::SearchAnchor()
+{
+ SendMsg(2366, 0, 0);
+}
+
+// Find some text starting at the search anchor.
+// Does not ensure the selection is visible.
+int wxStyledTextCtrl::SearchNext(int flags, const wxString& text)
+{
+ return SendMsg(2367, flags, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Find some text starting at the search anchor and moving backwards.
+// Does not ensure the selection is visible.
+int wxStyledTextCtrl::SearchPrev(int flags, const wxString& text)
+{
+ return SendMsg(2368, flags, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Retrieves the number of lines completely visible.
+int wxStyledTextCtrl::LinesOnScreen() const
+{
+ return SendMsg(2370, 0, 0);
+}
+
+// Set whether a pop up menu is displayed automatically when the user presses
+// the wrong mouse button.
+void wxStyledTextCtrl::UsePopUp(bool allowPopUp)
+{
+ SendMsg(2371, allowPopUp, 0);
+}
+
+// Is the selection rectangular? The alternative is the more common stream selection.
+bool wxStyledTextCtrl::SelectionIsRectangle() const
+{
+ return SendMsg(2372, 0, 0) != 0;
+}
+
+// Set the zoom level. This number of points is added to the size of all fonts.
+// It may be positive to magnify or negative to reduce.
+void wxStyledTextCtrl::SetZoom(int zoom)
+{
+ SendMsg(2373, zoom, 0);
+}
+
+// Retrieve the zoom level.
+int wxStyledTextCtrl::GetZoom() const
+{
+ return SendMsg(2374, 0, 0);
+}
+
+// Create a new document object.
+// Starts with reference count of 1 and not selected into editor.
+void* wxStyledTextCtrl::CreateDocument() {
+ return (void*)SendMsg(2375);
+}
+
+// Extend life of document.
+void wxStyledTextCtrl::AddRefDocument(void* docPointer) {
+ SendMsg(2376, 0, (sptr_t)docPointer);
+}
+
+// Release a reference to the document, deleting document if it fades to black.
+void wxStyledTextCtrl::ReleaseDocument(void* docPointer) {
+ SendMsg(2377, 0, (sptr_t)docPointer);
+}
+
+// Get which document modification events are sent to the container.
+int wxStyledTextCtrl::GetModEventMask() const
+{
+ return SendMsg(2378, 0, 0);
+}
+
+// Change internal focus flag.
+void wxStyledTextCtrl::SetSTCFocus(bool focus)
+{
+ SendMsg(2380, focus, 0);
+}
+
+// Get internal focus flag.
+bool wxStyledTextCtrl::GetSTCFocus() const
+{
+ return SendMsg(2381, 0, 0) != 0;
+}
+
+// Change error status - 0 = OK.
+void wxStyledTextCtrl::SetStatus(int statusCode)
+{
+ SendMsg(2382, statusCode, 0);
+}
+
+// Get error status.
+int wxStyledTextCtrl::GetStatus() const
+{
+ return SendMsg(2383, 0, 0);
+}
+
+// Set whether the mouse is captured when its button is pressed.
+void wxStyledTextCtrl::SetMouseDownCaptures(bool captures)
+{
+ SendMsg(2384, captures, 0);
+}
+
+// Get whether mouse gets captured.
+bool wxStyledTextCtrl::GetMouseDownCaptures() const
+{
+ return SendMsg(2385, 0, 0) != 0;
+}
+
+// Sets the cursor to one of the SC_CURSOR* values.
+void wxStyledTextCtrl::SetSTCCursor(int cursorType)
+{
+ SendMsg(2386, cursorType, 0);
+}
+
+// Get cursor type.
+int wxStyledTextCtrl::GetSTCCursor() const
+{
+ return SendMsg(2387, 0, 0);
+}
+
+// Change the way control characters are displayed:
+// If symbol is < 32, keep the drawn way, else, use the given character.
+void wxStyledTextCtrl::SetControlCharSymbol(int symbol)
+{
+ SendMsg(2388, symbol, 0);
+}
+
+// Get the way control characters are displayed.
+int wxStyledTextCtrl::GetControlCharSymbol() const
+{
+ return SendMsg(2389, 0, 0);
+}
+
+// Move to the previous change in capitalisation.
+void wxStyledTextCtrl::WordPartLeft()
+{
+ SendMsg(2390, 0, 0);
+}
+
+// Move to the previous change in capitalisation extending selection
+// to new caret position.
+void wxStyledTextCtrl::WordPartLeftExtend()
+{
+ SendMsg(2391, 0, 0);
+}
+
+// Move to the change next in capitalisation.
+void wxStyledTextCtrl::WordPartRight()
+{
+ SendMsg(2392, 0, 0);
+}
+
+// Move to the next change in capitalisation extending selection
+// to new caret position.
+void wxStyledTextCtrl::WordPartRightExtend()
+{
+ SendMsg(2393, 0, 0);
+}
+
+// Set the way the display area is determined when a particular line
+// is to be moved to by Find, FindNext, GotoLine, etc.
+void wxStyledTextCtrl::SetVisiblePolicy(int visiblePolicy, int visibleSlop)
+{
+ SendMsg(2394, visiblePolicy, visibleSlop);
+}
+
+// Delete back from the current position to the start of the line.
+void wxStyledTextCtrl::DelLineLeft()
+{
+ SendMsg(2395, 0, 0);
+}
+
+// Delete forwards from the current position to the end of the line.
+void wxStyledTextCtrl::DelLineRight()
+{
+ SendMsg(2396, 0, 0);
+}
+
+// Get and Set the xOffset (ie, horizontal scroll position).
+void wxStyledTextCtrl::SetXOffset(int newOffset)
+{
+ SendMsg(2397, newOffset, 0);
+}
+int wxStyledTextCtrl::GetXOffset() const
+{
+ return SendMsg(2398, 0, 0);
+}
+
+// Set the last x chosen value to be the caret x position.
+void wxStyledTextCtrl::ChooseCaretX()
+{
+ SendMsg(2399, 0, 0);
+}
+
+// Set the way the caret is kept visible when going sideways.
+// The exclusion zone is given in pixels.
+void wxStyledTextCtrl::SetXCaretPolicy(int caretPolicy, int caretSlop)
+{
+ SendMsg(2402, caretPolicy, caretSlop);
+}
+
+// Set the way the line the caret is on is kept visible.
+// The exclusion zone is given in lines.
+void wxStyledTextCtrl::SetYCaretPolicy(int caretPolicy, int caretSlop)
+{
+ SendMsg(2403, caretPolicy, caretSlop);
+}
+
+// Set printing to line wrapped (SC_WRAP_WORD) or not line wrapped (SC_WRAP_NONE).
+void wxStyledTextCtrl::SetPrintWrapMode(int mode)
+{
+ SendMsg(2406, mode, 0);
+}
+
+// Is printing line wrapped?
+int wxStyledTextCtrl::GetPrintWrapMode() const
+{
+ return SendMsg(2407, 0, 0);
+}
+
+// Set a fore colour for active hotspots.
+void wxStyledTextCtrl::SetHotspotActiveForeground(bool useSetting, const wxColour& fore)
+{
+ SendMsg(2410, useSetting, wxColourAsLong(fore));
+}
+
+// Get the fore colour for active hotspots.
+wxColour wxStyledTextCtrl::GetHotspotActiveForeground() const
+{
+ long c = SendMsg(2494, 0, 0);
+ return wxColourFromLong(c);
+}
+
+// Set a back colour for active hotspots.
+void wxStyledTextCtrl::SetHotspotActiveBackground(bool useSetting, const wxColour& back)
+{
+ SendMsg(2411, useSetting, wxColourAsLong(back));
+}
+
+// Get the back colour for active hotspots.
+wxColour wxStyledTextCtrl::GetHotspotActiveBackground() const
+{
+ long c = SendMsg(2495, 0, 0);
+ return wxColourFromLong(c);
+}
+
+// Enable / Disable underlining active hotspots.
+void wxStyledTextCtrl::SetHotspotActiveUnderline(bool underline)
+{
+ SendMsg(2412, underline, 0);
+}
+
+// Get whether underlining for active hotspots.
+bool wxStyledTextCtrl::GetHotspotActiveUnderline() const
+{
+ return SendMsg(2496, 0, 0) != 0;
+}
+
+// Limit hotspots to single line so hotspots on two lines don't merge.
+void wxStyledTextCtrl::SetHotspotSingleLine(bool singleLine)
+{
+ SendMsg(2421, singleLine, 0);
+}
+
+// Get the HotspotSingleLine property
+bool wxStyledTextCtrl::GetHotspotSingleLine() const
+{
+ return SendMsg(2497, 0, 0) != 0;
+}
+
+// Move caret between paragraphs (delimited by empty lines).
+void wxStyledTextCtrl::ParaDown()
+{
+ SendMsg(2413, 0, 0);
+}
+void wxStyledTextCtrl::ParaDownExtend()
+{
+ SendMsg(2414, 0, 0);
+}
+void wxStyledTextCtrl::ParaUp()
+{
+ SendMsg(2415, 0, 0);
+}
+void wxStyledTextCtrl::ParaUpExtend()
+{
+ SendMsg(2416, 0, 0);
+}
+
+// Given a valid document position, return the previous position taking code
+// page into account. Returns 0 if passed 0.
+int wxStyledTextCtrl::PositionBefore(int pos)
+{
+ return SendMsg(2417, pos, 0);
+}
+
+// Given a valid document position, return the next position taking code
+// page into account. Maximum value returned is the last position in the document.
+int wxStyledTextCtrl::PositionAfter(int pos)
+{
+ return SendMsg(2418, pos, 0);
+}
+
+// Copy a range of text to the clipboard. Positions are clipped into the document.
+void wxStyledTextCtrl::CopyRange(int start, int end)
+{
+ SendMsg(2419, start, end);
+}
+
+// Copy argument text to the clipboard.
+void wxStyledTextCtrl::CopyText(int length, const wxString& text)
+{
+ SendMsg(2420, length, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Set the selection mode to stream (SC_SEL_STREAM) or rectangular (SC_SEL_RECTANGLE/SC_SEL_THIN) or
+// by lines (SC_SEL_LINES).
+void wxStyledTextCtrl::SetSelectionMode(int mode)
+{
+ SendMsg(2422, mode, 0);
+}
+
+// Get the mode of the current selection.
+int wxStyledTextCtrl::GetSelectionMode() const
+{
+ return SendMsg(2423, 0, 0);
+}
+
+// Retrieve the position of the start of the selection at the given line (INVALID_POSITION if no selection on this line).
+int wxStyledTextCtrl::GetLineSelStartPosition(int line)
+{
+ return SendMsg(2424, line, 0);
+}
+
+// Retrieve the position of the end of the selection at the given line (INVALID_POSITION if no selection on this line).
+int wxStyledTextCtrl::GetLineSelEndPosition(int line)
+{
+ return SendMsg(2425, line, 0);
+}
+
+// Move caret down one line, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::LineDownRectExtend()
+{
+ SendMsg(2426, 0, 0);
+}
+
+// Move caret up one line, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::LineUpRectExtend()
+{
+ SendMsg(2427, 0, 0);
+}
+
+// Move caret left one character, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::CharLeftRectExtend()
+{
+ SendMsg(2428, 0, 0);
+}
+
+// Move caret right one character, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::CharRightRectExtend()
+{
+ SendMsg(2429, 0, 0);
+}
+
+// Move caret to first position on line, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::HomeRectExtend()
+{
+ SendMsg(2430, 0, 0);
+}
+
+// Move caret to before first visible character on line.
+// If already there move to first character on line.
+// In either case, extend rectangular selection to new caret position.
+void wxStyledTextCtrl::VCHomeRectExtend()
+{
+ SendMsg(2431, 0, 0);
+}
+
+// Move caret to last position on line, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::LineEndRectExtend()
+{
+ SendMsg(2432, 0, 0);
+}
+
+// Move caret one page up, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::PageUpRectExtend()
+{
+ SendMsg(2433, 0, 0);
+}
+
+// Move caret one page down, extending rectangular selection to new caret position.
+void wxStyledTextCtrl::PageDownRectExtend()
+{
+ SendMsg(2434, 0, 0);
+}
+
+// Move caret to top of page, or one page up if already at top of page.
+void wxStyledTextCtrl::StutteredPageUp()
+{
+ SendMsg(2435, 0, 0);
+}
+
+// Move caret to top of page, or one page up if already at top of page, extending selection to new caret position.
+void wxStyledTextCtrl::StutteredPageUpExtend()
+{
+ SendMsg(2436, 0, 0);
+}
+
+// Move caret to bottom of page, or one page down if already at bottom of page.
+void wxStyledTextCtrl::StutteredPageDown()
+{
+ SendMsg(2437, 0, 0);
+}
+
+// Move caret to bottom of page, or one page down if already at bottom of page, extending selection to new caret position.
+void wxStyledTextCtrl::StutteredPageDownExtend()
+{
+ SendMsg(2438, 0, 0);
+}
+
+// Move caret left one word, position cursor at end of word.
+void wxStyledTextCtrl::WordLeftEnd()
+{
+ SendMsg(2439, 0, 0);
+}
+
+// Move caret left one word, position cursor at end of word, extending selection to new caret position.
+void wxStyledTextCtrl::WordLeftEndExtend()
+{
+ SendMsg(2440, 0, 0);
+}
+
+// Move caret right one word, position cursor at end of word.
+void wxStyledTextCtrl::WordRightEnd()
+{
+ SendMsg(2441, 0, 0);
+}
+
+// Move caret right one word, position cursor at end of word, extending selection to new caret position.
+void wxStyledTextCtrl::WordRightEndExtend()
+{
+ SendMsg(2442, 0, 0);
+}
+
+// Set the set of characters making up whitespace for when moving or selecting by word.
+// Should be called after SetWordChars.
+void wxStyledTextCtrl::SetWhitespaceChars(const wxString& characters)
+{
+ SendMsg(2443, 0, (sptr_t)(const char*)wx2stc(characters));
+}
+
+// Get the set of characters making up whitespace for when moving or selecting by word.
+wxString wxStyledTextCtrl::GetWhitespaceChars() const {
+ int msg = 2647;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Set the set of characters making up punctuation characters
+// Should be called after SetWordChars.
+void wxStyledTextCtrl::SetPunctuationChars(const wxString& characters)
+{
+ SendMsg(2648, 0, (sptr_t)(const char*)wx2stc(characters));
+}
+
+// Get the set of characters making up punctuation characters
+wxString wxStyledTextCtrl::GetPunctuationChars() const {
+ int msg = 2649;
+ int len = SendMsg(msg, 0, (sptr_t)NULL);
+ if (!len) return wxEmptyString;
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, 0, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Reset the set of characters for whitespace and word characters to the defaults.
+void wxStyledTextCtrl::SetCharsDefault()
+{
+ SendMsg(2444, 0, 0);
+}
+
+// Get currently selected item position in the auto-completion list
+int wxStyledTextCtrl::AutoCompGetCurrent() const
+{
+ return SendMsg(2445, 0, 0);
+}
+
+// Set auto-completion case insensitive behaviour to either prefer case-sensitive matches or have no preference.
+void wxStyledTextCtrl::AutoCompSetCaseInsensitiveBehaviour(int behaviour)
+{
+ SendMsg(2634, behaviour, 0);
+}
+
+// Get auto-completion case insensitive behaviour.
+int wxStyledTextCtrl::AutoCompGetCaseInsensitiveBehaviour() const
+{
+ return SendMsg(2635, 0, 0);
+}
+
+// Enlarge the document to a particular size of text bytes.
+void wxStyledTextCtrl::Allocate(int bytes)
+{
+ SendMsg(2446, bytes, 0);
+}
+
+// Find the position of a column on a line taking into account tabs and
+// multi-byte characters. If beyond end of line, return line end position.
+int wxStyledTextCtrl::FindColumn(int line, int column)
+{
+ return SendMsg(2456, line, column);
+}
+
+// Can the caret preferred x position only be changed by explicit movement commands?
+int wxStyledTextCtrl::GetCaretSticky() const
+{
+ return SendMsg(2457, 0, 0);
+}
+
+// Stop the caret preferred x position changing when the user types.
+void wxStyledTextCtrl::SetCaretSticky(int useCaretStickyBehaviour)
+{
+ SendMsg(2458, useCaretStickyBehaviour, 0);
+}
+
+// Switch between sticky and non-sticky: meant to be bound to a key.
+void wxStyledTextCtrl::ToggleCaretSticky()
+{
+ SendMsg(2459, 0, 0);
+}
+
+// Enable/Disable convert-on-paste for line endings
+void wxStyledTextCtrl::SetPasteConvertEndings(bool convert)
+{
+ SendMsg(2467, convert, 0);
+}
+
+// Get convert-on-paste setting
+bool wxStyledTextCtrl::GetPasteConvertEndings() const
+{
+ return SendMsg(2468, 0, 0) != 0;
+}
+
+// Duplicate the selection. If selection empty duplicate the line containing the caret.
+void wxStyledTextCtrl::SelectionDuplicate()
+{
+ SendMsg(2469, 0, 0);
+}
+
+// Set background alpha of the caret line.
+void wxStyledTextCtrl::SetCaretLineBackAlpha(int alpha)
+{
+ SendMsg(2470, alpha, 0);
+}
+
+// Get the background alpha of the caret line.
+int wxStyledTextCtrl::GetCaretLineBackAlpha() const
+{
+ return SendMsg(2471, 0, 0);
+}
+
+// Set the style of the caret to be drawn.
+void wxStyledTextCtrl::SetCaretStyle(int caretStyle)
+{
+ SendMsg(2512, caretStyle, 0);
+}
+
+// Returns the current style of the caret.
+int wxStyledTextCtrl::GetCaretStyle() const
+{
+ return SendMsg(2513, 0, 0);
+}
+
+// Set the indicator used for IndicatorFillRange and IndicatorClearRange
+void wxStyledTextCtrl::SetIndicatorCurrent(int indicator)
+{
+ SendMsg(2500, indicator, 0);
+}
+
+// Get the current indicator
+int wxStyledTextCtrl::GetIndicatorCurrent() const
+{
+ return SendMsg(2501, 0, 0);
+}
+
+// Set the value used for IndicatorFillRange
+void wxStyledTextCtrl::SetIndicatorValue(int value)
+{
+ SendMsg(2502, value, 0);
+}
+
+// Get the current indicator value
+int wxStyledTextCtrl::GetIndicatorValue() const
+{
+ return SendMsg(2503, 0, 0);
+}
+
+// Turn a indicator on over a range.
+void wxStyledTextCtrl::IndicatorFillRange(int position, int fillLength)
+{
+ SendMsg(2504, position, fillLength);
+}
+
+// Turn a indicator off over a range.
+void wxStyledTextCtrl::IndicatorClearRange(int position, int clearLength)
+{
+ SendMsg(2505, position, clearLength);
+}
+
+// Are any indicators present at position?
+int wxStyledTextCtrl::IndicatorAllOnFor(int position)
+{
+ return SendMsg(2506, position, 0);
+}
+
+// What value does a particular indicator have at at a position?
+int wxStyledTextCtrl::IndicatorValueAt(int indicator, int position)
+{
+ return SendMsg(2507, indicator, position);
+}
+
+// Where does a particular indicator start?
+int wxStyledTextCtrl::IndicatorStart(int indicator, int position)
+{
+ return SendMsg(2508, indicator, position);
+}
+
+// Where does a particular indicator end?
+int wxStyledTextCtrl::IndicatorEnd(int indicator, int position)
+{
+ return SendMsg(2509, indicator, position);
+}
+
+// Set number of entries in position cache
+void wxStyledTextCtrl::SetPositionCacheSize(int size)
+{
+ SendMsg(2514, size, 0);
+}
+
+// How many entries are allocated to the position cache?
+int wxStyledTextCtrl::GetPositionCacheSize() const
+{
+ return SendMsg(2515, 0, 0);
+}
+
+// Copy the selection, if selection empty copy the line with the caret
+void wxStyledTextCtrl::CopyAllowLine()
+{
+ SendMsg(2519, 0, 0);
+}
+
+// Compact the document buffer and return a read-only pointer to the
+// characters in the document.
+const char* wxStyledTextCtrl::GetCharacterPointer() const {
+ return (const char*)SendMsg(2520, 0, 0);
+}
+
+// Return a read-only pointer to a range of characters in the document.
+// May move the gap so that the range is contiguous, but will only move up
+// to rangeLength bytes.
+const char* wxStyledTextCtrl::GetRangePointer(int position, int rangeLength) const {
+ return (const char*)SendMsg(2643, position, rangeLength);
+}
+
+// Return a position which, to avoid performance costs, should not be within
+// the range of a call to GetRangePointer.
+int wxStyledTextCtrl::GetGapPosition() const
+{
+ return SendMsg(2644, 0, 0);
+}
+
+// Always interpret keyboard input as Unicode
+void wxStyledTextCtrl::SetKeysUnicode(bool keysUnicode)
+{
+ SendMsg(2521, keysUnicode, 0);
+}
+
+// Are keys always interpreted as Unicode?
+bool wxStyledTextCtrl::GetKeysUnicode() const
+{
+ return SendMsg(2522, 0, 0) != 0;
+}
+
+// Set the alpha fill colour of the given indicator.
+void wxStyledTextCtrl::IndicatorSetAlpha(int indicator, int alpha)
+{
+ SendMsg(2523, indicator, alpha);
+}
+
+// Get the alpha fill colour of the given indicator.
+int wxStyledTextCtrl::IndicatorGetAlpha(int indicator) const
+{
+ return SendMsg(2524, indicator, 0);
+}
+
+// Set the alpha outline colour of the given indicator.
+void wxStyledTextCtrl::IndicatorSetOutlineAlpha(int indicator, int alpha)
+{
+ SendMsg(2558, indicator, alpha);
+}
+
+// Get the alpha outline colour of the given indicator.
+int wxStyledTextCtrl::IndicatorGetOutlineAlpha(int indicator) const
+{
+ return SendMsg(2559, indicator, 0);
+}
+
+// Set extra ascent for each line
+void wxStyledTextCtrl::SetExtraAscent(int extraAscent)
+{
+ SendMsg(2525, extraAscent, 0);
+}
+
+// Get extra ascent for each line
+int wxStyledTextCtrl::GetExtraAscent() const
+{
+ return SendMsg(2526, 0, 0);
+}
+
+// Set extra descent for each line
+void wxStyledTextCtrl::SetExtraDescent(int extraDescent)
+{
+ SendMsg(2527, extraDescent, 0);
+}
+
+// Get extra descent for each line
+int wxStyledTextCtrl::GetExtraDescent() const
+{
+ return SendMsg(2528, 0, 0);
+}
+
+// Which symbol was defined for markerNumber with MarkerDefine
+int wxStyledTextCtrl::GetMarkerSymbolDefined(int markerNumber)
+{
+ return SendMsg(2529, markerNumber, 0);
+}
+
+// Set the text in the text margin for a line
+void wxStyledTextCtrl::MarginSetText(int line, const wxString& text)
+{
+ SendMsg(2530, line, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Get the text in the text margin for a line
+wxString wxStyledTextCtrl::MarginGetText(int line) const {
+ long msg = 2531;
+ long len = SendMsg(msg, line, 0);
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, line, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Set the style number for the text margin for a line
+void wxStyledTextCtrl::MarginSetStyle(int line, int style)
+{
+ SendMsg(2532, line, style);
+}
+
+// Get the style number for the text margin for a line
+int wxStyledTextCtrl::MarginGetStyle(int line) const
+{
+ return SendMsg(2533, line, 0);
+}
+
+// Set the style in the text margin for a line
+void wxStyledTextCtrl::MarginSetStyles(int line, const wxString& styles)
+{
+ SendMsg(2534, line, (sptr_t)(const char*)wx2stc(styles));
+}
+
+// Get the styles in the text margin for a line
+wxString wxStyledTextCtrl::MarginGetStyles(int line) const {
+ long msg = 2535;
+ long len = SendMsg(msg, line, 0);
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, line, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Clear the margin text on all lines
+void wxStyledTextCtrl::MarginTextClearAll()
+{
+ SendMsg(2536, 0, 0);
+}
+
+// Get the start of the range of style numbers used for margin text
+void wxStyledTextCtrl::MarginSetStyleOffset(int style)
+{
+ SendMsg(2537, style, 0);
+}
+
+// Get the start of the range of style numbers used for margin text
+int wxStyledTextCtrl::MarginGetStyleOffset() const
+{
+ return SendMsg(2538, 0, 0);
+}
+
+// Set the margin options.
+void wxStyledTextCtrl::SetMarginOptions(int marginOptions)
+{
+ SendMsg(2539, marginOptions, 0);
+}
+
+// Get the margin options.
+int wxStyledTextCtrl::GetMarginOptions() const
+{
+ return SendMsg(2557, 0, 0);
+}
+
+// Set the annotation text for a line
+void wxStyledTextCtrl::AnnotationSetText(int line, const wxString& text)
+{
+ SendMsg(2540, line, (sptr_t)(const char*)wx2stc(text));
+}
+
+// Get the annotation text for a line
+wxString wxStyledTextCtrl::AnnotationGetText(int line) const {
+ long msg = 2541;
+ long len = SendMsg(msg, line, 0);
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, line, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Set the style number for the annotations for a line
+void wxStyledTextCtrl::AnnotationSetStyle(int line, int style)
+{
+ SendMsg(2542, line, style);
+}
+
+// Get the style number for the annotations for a line
+int wxStyledTextCtrl::AnnotationGetStyle(int line) const
+{
+ return SendMsg(2543, line, 0);
+}
+
+// Set the annotation styles for a line
+void wxStyledTextCtrl::AnnotationSetStyles(int line, const wxString& styles)
+{
+ SendMsg(2544, line, (sptr_t)(const char*)wx2stc(styles));
+}
+
+// Get the annotation styles for a line
+wxString wxStyledTextCtrl::AnnotationGetStyles(int line) const {
+ long msg = 2545;
+ long len = SendMsg(msg, line, 0);
+
+ wxMemoryBuffer mbuf(len+1);
+ char* buf = (char*)mbuf.GetWriteBuf(len+1);
+ SendMsg(msg, line, (sptr_t)buf);
+ mbuf.UngetWriteBuf(len);
+ mbuf.AppendByte(0);
+ return stc2wx(buf);
+}
+
+// Get the number of annotation lines for a line
+int wxStyledTextCtrl::AnnotationGetLines(int line) const
+{
+ return SendMsg(2546, line, 0);
+}
+
+// Clear the annotations from all lines
+void wxStyledTextCtrl::AnnotationClearAll()
+{
+ SendMsg(2547, 0, 0);
+}
+
+// Set the visibility for the annotations for a view
+void wxStyledTextCtrl::AnnotationSetVisible(int visible)
+{
+ SendMsg(2548, visible, 0);
+}
+
+// Get the visibility for the annotations for a view
+int wxStyledTextCtrl::AnnotationGetVisible() const
+{
+ return SendMsg(2549, 0, 0);
+}
+
+// Get the start of the range of style numbers used for annotations
+void wxStyledTextCtrl::AnnotationSetStyleOffset(int style)
+{
+ SendMsg(2550, style, 0);
+}
+
+// Get the start of the range of style numbers used for annotations
+int wxStyledTextCtrl::AnnotationGetStyleOffset() const
+{
+ return SendMsg(2551, 0, 0);
+}
+
+// Add a container action to the undo stack
+void wxStyledTextCtrl::AddUndoAction(int token, int flags)
+{
+ SendMsg(2560, token, flags);
+}
+
+// Find the position of a character from a point within the window.
+int wxStyledTextCtrl::CharPositionFromPoint(int x, int y)
+{
+ return SendMsg(2561, x, y);
+}
+
+// Find the position of a character from a point within the window.
+// Return INVALID_POSITION if not close to text.
+int wxStyledTextCtrl::CharPositionFromPointClose(int x, int y)
+{
+ return SendMsg(2562, x, y);
+}
+
+// Set whether multiple selections can be made
+void wxStyledTextCtrl::SetMultipleSelection(bool multipleSelection)
+{
+ SendMsg(2563, multipleSelection, 0);
+}
+
+// Whether multiple selections can be made
+bool wxStyledTextCtrl::GetMultipleSelection() const
+{
+ return SendMsg(2564, 0, 0) != 0;
+}
+
+// Set whether typing can be performed into multiple selections
+void wxStyledTextCtrl::SetAdditionalSelectionTyping(bool additionalSelectionTyping)
+{
+ SendMsg(2565, additionalSelectionTyping, 0);
+}
+
+// Whether typing can be performed into multiple selections
+bool wxStyledTextCtrl::GetAdditionalSelectionTyping() const
+{
+ return SendMsg(2566, 0, 0) != 0;
+}
+
+// Set whether additional carets will blink
+void wxStyledTextCtrl::SetAdditionalCaretsBlink(bool additionalCaretsBlink)
+{
+ SendMsg(2567, additionalCaretsBlink, 0);
+}
+
+// Whether additional carets will blink
+bool wxStyledTextCtrl::GetAdditionalCaretsBlink() const
+{
+ return SendMsg(2568, 0, 0) != 0;
+}
+
+// Set whether additional carets are visible
+void wxStyledTextCtrl::SetAdditionalCaretsVisible(bool additionalCaretsBlink)
+{
+ SendMsg(2608, additionalCaretsBlink, 0);
+}
+
+// Whether additional carets are visible
+bool wxStyledTextCtrl::GetAdditionalCaretsVisible() const
+{
+ return SendMsg(2609, 0, 0) != 0;
+}
+
+// How many selections are there?
+int wxStyledTextCtrl::GetSelections() const
+{
+ return SendMsg(2570, 0, 0);
+}
+
+// Clear selections to a single empty stream selection
+void wxStyledTextCtrl::ClearSelections()
+{
+ SendMsg(2571, 0, 0);
+}
+
+// Add a selection
+int wxStyledTextCtrl::AddSelection(int caret, int anchor)
+{
+ return SendMsg(2573, caret, anchor);
+}
+
+// Set the main selection
+void wxStyledTextCtrl::SetMainSelection(int selection)
+{
+ SendMsg(2574, selection, 0);
+}
+
+// Which selection is the main selection
+int wxStyledTextCtrl::GetMainSelection() const
+{
+ return SendMsg(2575, 0, 0);
+}
+void wxStyledTextCtrl::SetSelectionNCaret(int selection, int pos)
+{
+ SendMsg(2576, selection, pos);
+}
+int wxStyledTextCtrl::GetSelectionNCaret(int selection) const
+{
+ return SendMsg(2577, selection, 0);
+}
+void wxStyledTextCtrl::SetSelectionNAnchor(int selection, int posAnchor)
+{
+ SendMsg(2578, selection, posAnchor);
+}
+int wxStyledTextCtrl::GetSelectionNAnchor(int selection) const
+{
+ return SendMsg(2579, selection, 0);
+}
+void wxStyledTextCtrl::SetSelectionNCaretVirtualSpace(int selection, int space)
+{
+ SendMsg(2580, selection, space);
+}
+int wxStyledTextCtrl::GetSelectionNCaretVirtualSpace(int selection) const
+{
+ return SendMsg(2581, selection, 0);
+}
+void wxStyledTextCtrl::SetSelectionNAnchorVirtualSpace(int selection, int space)
+{
+ SendMsg(2582, selection, space);
+}
+int wxStyledTextCtrl::GetSelectionNAnchorVirtualSpace(int selection) const
+{
+ return SendMsg(2583, selection, 0);
+}
+
+// Sets the position that starts the selection - this becomes the anchor.
+void wxStyledTextCtrl::SetSelectionNStart(int selection, int pos)
+{
+ SendMsg(2584, selection, pos);
+}
+
+// Returns the position at the start of the selection.
+int wxStyledTextCtrl::GetSelectionNStart(int selection) const
+{
+ return SendMsg(2585, selection, 0);
+}
+
+// Sets the position that ends the selection - this becomes the currentPosition.
+void wxStyledTextCtrl::SetSelectionNEnd(int selection, int pos)
+{
+ SendMsg(2586, selection, pos);
+}
+
+// Returns the position at the end of the selection.
+int wxStyledTextCtrl::GetSelectionNEnd(int selection) const
+{
+ return SendMsg(2587, selection, 0);
+}
+void wxStyledTextCtrl::SetRectangularSelectionCaret(int pos)
+{
+ SendMsg(2588, pos, 0);
+}
+int wxStyledTextCtrl::GetRectangularSelectionCaret() const
+{
+ return SendMsg(2589, 0, 0);
+}
+void wxStyledTextCtrl::SetRectangularSelectionAnchor(int posAnchor)
+{
+ SendMsg(2590, posAnchor, 0);
+}
+int wxStyledTextCtrl::GetRectangularSelectionAnchor() const
+{
+ return SendMsg(2591, 0, 0);
+}
+void wxStyledTextCtrl::SetRectangularSelectionCaretVirtualSpace(int space)
+{
+ SendMsg(2592, space, 0);
+}
+int wxStyledTextCtrl::GetRectangularSelectionCaretVirtualSpace() const
+{
+ return SendMsg(2593, 0, 0);
+}
+void wxStyledTextCtrl::SetRectangularSelectionAnchorVirtualSpace(int space)
+{
+ SendMsg(2594, space, 0);
+}
+int wxStyledTextCtrl::GetRectangularSelectionAnchorVirtualSpace() const
+{
+ return SendMsg(2595, 0, 0);
+}
+void wxStyledTextCtrl::SetVirtualSpaceOptions(int virtualSpaceOptions)
+{
+ SendMsg(2596, virtualSpaceOptions, 0);
+}
+int wxStyledTextCtrl::GetVirtualSpaceOptions() const
+{
+ return SendMsg(2597, 0, 0);
+}
+
+// On GTK+, allow selecting the modifier key to use for mouse-based
+// rectangular selection. Often the window manager requires Alt+Mouse Drag
+// for moving windows.
+// Valid values are SCMOD_CTRL(default), SCMOD_ALT, or SCMOD_SUPER.
+void wxStyledTextCtrl::SetRectangularSelectionModifier(int modifier)
+{
+ SendMsg(2598, modifier, 0);
+}
+
+// Get the modifier key used for rectangular selection.
+int wxStyledTextCtrl::GetRectangularSelectionModifier() const
+{
+ return SendMsg(2599, 0, 0);
+}
+
+// Set the foreground colour of additional selections.
+// Must have previously called SetSelFore with non-zero first argument for this to have an effect.
+void wxStyledTextCtrl::SetAdditionalSelForeground(const wxColour& fore)
+{
+ SendMsg(2600, wxColourAsLong(fore), 0);
+}
+
+// Set the background colour of additional selections.
+// Must have previously called SetSelBack with non-zero first argument for this to have an effect.
+void wxStyledTextCtrl::SetAdditionalSelBackground(const wxColour& back)
+{
+ SendMsg(2601, wxColourAsLong(back), 0);
+}
+
+// Set the alpha of the selection.
+void wxStyledTextCtrl::SetAdditionalSelAlpha(int alpha)
+{
+ SendMsg(2602, alpha, 0);
+}
+
+// Get the alpha of the selection.
+int wxStyledTextCtrl::GetAdditionalSelAlpha() const
+{
+ return SendMsg(2603, 0, 0);
+}
+
+// Set the foreground colour of additional carets.
+void wxStyledTextCtrl::SetAdditionalCaretForeground(const wxColour& fore)
+{
+ SendMsg(2604, wxColourAsLong(fore), 0);
+}
+
+// Get the foreground colour of additional carets.
+wxColour wxStyledTextCtrl::GetAdditionalCaretForeground() const
+{
+ long c = SendMsg(2605, 0, 0);
+ return wxColourFromLong(c);
+}
+
+// Set the main selection to the next selection.
+void wxStyledTextCtrl::RotateSelection()
+{
+ SendMsg(2606, 0, 0);
+}
+
+// Swap that caret and anchor of the main selection.
+void wxStyledTextCtrl::SwapMainAnchorCaret()
+{
+ SendMsg(2607, 0, 0);
+}
+
+// Indicate that the internal state of a lexer has changed over a range and therefore
+// there may be a need to redraw.
+int wxStyledTextCtrl::ChangeLexerState(int start, int end)
+{
+ return SendMsg(2617, start, end);
+}
+
+// Find the next line at or after lineStart that is a contracted fold header line.
+// Return -1 when no more lines.
+int wxStyledTextCtrl::ContractedFoldNext(int lineStart)
+{
+ return SendMsg(2618, lineStart, 0);
+}
+
+// Centre current line in window.
+void wxStyledTextCtrl::VerticalCentreCaret()
+{
+ SendMsg(2619, 0, 0);
+}
+
+// Move the selected lines up one line, shifting the line above after the selection
+void wxStyledTextCtrl::MoveSelectedLinesUp()
+{
+ SendMsg(2620, 0, 0);
+}
+
+// Move the selected lines down one line, shifting the line below before the selection
+void wxStyledTextCtrl::MoveSelectedLinesDown()
+{
+ SendMsg(2621, 0, 0);
+}