git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11371
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- tr.lpstrText = text.GetWriteBuf(len*2+1);
+ tr.lpstrText = text.GetWriteBuf(len*2);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
'''wxString %s(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
'''wxString %s(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, len, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, len, (long)buf);
+ text.UngetWriteBuf(len);
if (linePos) *linePos = pos;
return text;''',
if (linePos) *linePos = pos;
return text;''',
'''wxString %s(int line) {
wxString text;
int len = LineLength(line);
'''wxString %s(int line) {
wxString text;
int len = LineLength(line);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, line, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, line, (long)buf);
+ text.UngetWriteBuf(len);
GetSelection(&start, &end);
int len = end - start;
GetSelection(&start, &end);
int len = end - start;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
SendMsg(%s, 0, (long)buff);
SendMsg(%s, 0, (long)buff);
+ text.UngetWriteBuf(len);
return text;''',
('Retrieve the selected text.',)),
return text;''',
('Retrieve the selected text.',)),
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
+ text.UngetWriteBuf(len);
return text;''',
('Retrieve a range of text.',)),
return text;''',
('Retrieve a range of text.',)),
'''wxString %s() {
wxString text;
int len = GetTextLength()+1;
'''wxString %s() {
wxString text;
int len = GetTextLength()+1;
- char* buff = text.GetWriteBuf(len+1);
+ char* buff = text.GetWriteBuf(len);
SendMsg(%s, len, (long)buff);
SendMsg(%s, len, (long)buff);
- buff[len] = 0;
- text.UngetWriteBuf();
+ text.UngetWriteBuf(len-1);
return text;''',
('Retrieve all the text in the document.', )),
return text;''',
('Retrieve all the text in the document.', )),
wxString wxStyledTextCtrl::GetStyledText(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
wxString wxStyledTextCtrl::GetStyledText(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- tr.lpstrText = text.GetWriteBuf(len*2+1);
+ tr.lpstrText = text.GetWriteBuf(len*2);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2015, 0, (long)&tr);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2015, 0, (long)&tr);
wxString wxStyledTextCtrl::GetCurLine(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
wxString wxStyledTextCtrl::GetCurLine(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2027, len, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2027, len, (long)buf);
+ text.UngetWriteBuf(len);
if (linePos) *linePos = pos;
return text;
if (linePos) *linePos = pos;
return text;
wxString wxStyledTextCtrl::GetLine(int line) {
wxString text;
int len = LineLength(line);
wxString wxStyledTextCtrl::GetLine(int line) {
wxString text;
int len = LineLength(line);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2153, line, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2153, line, (long)buf);
+ text.UngetWriteBuf(len);
GetSelection(&start, &end);
int len = end - start;
GetSelection(&start, &end);
int len = end - start;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
SendMsg(2161, 0, (long)buff);
SendMsg(2161, 0, (long)buff);
+ text.UngetWriteBuf(len);
wxString wxStyledTextCtrl::GetTextRange(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
wxString wxStyledTextCtrl::GetTextRange(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2162, 0, (long)&tr);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2162, 0, (long)&tr);
+ text.UngetWriteBuf(len);
wxString wxStyledTextCtrl::GetText() {
wxString text;
int len = GetTextLength()+1;
wxString wxStyledTextCtrl::GetText() {
wxString text;
int len = GetTextLength()+1;
- char* buff = text.GetWriteBuf(len+1);
+ char* buff = text.GetWriteBuf(len);
SendMsg(2182, len, (long)buff);
SendMsg(2182, len, (long)buff);
- buff[len] = 0;
- text.UngetWriteBuf();
+ text.UngetWriteBuf(len-1);
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- tr.lpstrText = text.GetWriteBuf(len*2+1);
+ tr.lpstrText = text.GetWriteBuf(len*2);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
'''wxString %s(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
'''wxString %s(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, len, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, len, (long)buf);
+ text.UngetWriteBuf(len);
if (linePos) *linePos = pos;
return text;''',
if (linePos) *linePos = pos;
return text;''',
'''wxString %s(int line) {
wxString text;
int len = LineLength(line);
'''wxString %s(int line) {
wxString text;
int len = LineLength(line);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, line, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(%s, line, (long)buf);
+ text.UngetWriteBuf(len);
GetSelection(&start, &end);
int len = end - start;
GetSelection(&start, &end);
int len = end - start;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
SendMsg(%s, 0, (long)buff);
SendMsg(%s, 0, (long)buff);
+ text.UngetWriteBuf(len);
return text;''',
('Retrieve the selected text.',)),
return text;''',
('Retrieve the selected text.',)),
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
'''wxString %s(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(%s, 0, (long)&tr);
+ text.UngetWriteBuf(len);
return text;''',
('Retrieve a range of text.',)),
return text;''',
('Retrieve a range of text.',)),
'''wxString %s() {
wxString text;
int len = GetTextLength()+1;
'''wxString %s() {
wxString text;
int len = GetTextLength()+1;
- char* buff = text.GetWriteBuf(len+1);
+ char* buff = text.GetWriteBuf(len);
SendMsg(%s, len, (long)buff);
SendMsg(%s, len, (long)buff);
- buff[len] = 0;
- text.UngetWriteBuf();
+ text.UngetWriteBuf(len-1);
return text;''',
('Retrieve all the text in the document.', )),
return text;''',
('Retrieve all the text in the document.', )),
wxString wxStyledTextCtrl::GetStyledText(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
wxString wxStyledTextCtrl::GetStyledText(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- tr.lpstrText = text.GetWriteBuf(len*2+1);
+ tr.lpstrText = text.GetWriteBuf(len*2);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2015, 0, (long)&tr);
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2015, 0, (long)&tr);
wxString wxStyledTextCtrl::GetCurLine(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
wxString wxStyledTextCtrl::GetCurLine(int* linePos) {
wxString text;
int len = LineLength(GetCurrentLine());
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2027, len, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2027, len, (long)buf);
+ text.UngetWriteBuf(len);
if (linePos) *linePos = pos;
return text;
if (linePos) *linePos = pos;
return text;
wxString wxStyledTextCtrl::GetLine(int line) {
wxString text;
int len = LineLength(line);
wxString wxStyledTextCtrl::GetLine(int line) {
wxString text;
int len = LineLength(line);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2153, line, (long)buf);
char* buf = text.GetWriteBuf(len);
int pos = SendMsg(2153, line, (long)buf);
+ text.UngetWriteBuf(len);
GetSelection(&start, &end);
int len = end - start;
GetSelection(&start, &end);
int len = end - start;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
SendMsg(2161, 0, (long)buff);
SendMsg(2161, 0, (long)buff);
+ text.UngetWriteBuf(len);
wxString wxStyledTextCtrl::GetTextRange(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
wxString wxStyledTextCtrl::GetTextRange(int startPos, int endPos) {
wxString text;
int len = endPos - startPos;
- char* buff = text.GetWriteBuf(len+1);
+ if (!len) return "";
+ char* buff = text.GetWriteBuf(len);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2162, 0, (long)&tr);
TextRange tr;
tr.lpstrText = buff;
tr.chrg.cpMin = startPos;
tr.chrg.cpMax = endPos;
SendMsg(2162, 0, (long)&tr);
+ text.UngetWriteBuf(len);
wxString wxStyledTextCtrl::GetText() {
wxString text;
int len = GetTextLength()+1;
wxString wxStyledTextCtrl::GetText() {
wxString text;
int len = GetTextLength()+1;
- char* buff = text.GetWriteBuf(len+1);
+ char* buff = text.GetWriteBuf(len);
SendMsg(2182, len, (long)buff);
SendMsg(2182, len, (long)buff);
- buff[len] = 0;
- text.UngetWriteBuf();
+ text.UngetWriteBuf(len-1);