X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7cdecac3b7597a3cbb9155d5ee46b852293d8c26..1b0b798d77b7b93b81d62162b290441bc9175e3e:/src/stc/stc.cpp diff --git a/src/stc/stc.cpp b/src/stc/stc.cpp index 2d9c445db3..520ebd5cb9 100644 --- a/src/stc/stc.cpp +++ b/src/stc/stc.cpp @@ -143,6 +143,7 @@ wxStyledTextCtrl::wxStyledTextCtrl(wxWindow *parent, style | wxVSCROLL | wxHSCROLL | wxWANTS_CHARS | wxCLIP_CHILDREN, wxDefaultValidator, name) { + wxForceScintillaLexers(); m_swx = new ScintillaWX(this); m_stopWatch.Start(); m_lastKeyDownConsumed = FALSE; @@ -275,6 +276,11 @@ void wxStyledTextCtrl::SetSavePoint() { // Retrieve a buffer of cells. wxString wxStyledTextCtrl::GetStyledText(int startPos, int endPos) { wxString text; + if (endPos < startPos) { + int temp = startPos; + startPos = endPos; + endPos = temp; + } int len = endPos - startPos; if (!len) return ""; TextRange tr; @@ -972,6 +978,11 @@ int wxStyledTextCtrl::FindText(int minPos, int maxPos, wxRect pageRect) { RangeToFormat fr; + if (endPos < startPos) { + int temp = startPos; + startPos = endPos; + endPos = temp; + } fr.hdc = draw; fr.hdcTarget = target; fr.rc.top = renderRect.GetTop(); @@ -1060,6 +1071,11 @@ wxString wxStyledTextCtrl::GetSelectedText() { // Retrieve a range of text. wxString wxStyledTextCtrl::GetTextRange(int startPos, int endPos) { wxString text; + if (endPos < startPos) { + int temp = startPos; + startPos = endPos; + endPos = temp; + } int len = endPos - startPos; if (!len) return ""; char* buff = text.GetWriteBuf(len);