pasting text and when sending events.
Comment out some unneeded asserts.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39875
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
if (gotData) {
wxString text = wxTextBuffer::Translate(data.GetText(),
wxConvertEOLMode(pdoc->eolMode));
if (gotData) {
wxString text = wxTextBuffer::Translate(data.GetText(),
wxConvertEOLMode(pdoc->eolMode));
+ data.SetText(wxEmptyString); // free the data object content
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
+ text = wxEmptyString; // free text
+
int len = strlen(buf);
pdoc->InsertString(currentPos, buf, len);
SetEmptySelection(currentPos + len);
int len = strlen(buf);
pdoc->InsertString(currentPos, buf, len);
SetEmptySelection(currentPos + len);
}
void LineLayoutCache::AllocateForLevel(int linesOnScreen, int linesInDoc) {
}
void LineLayoutCache::AllocateForLevel(int linesOnScreen, int linesInDoc) {
- PLATFORM_ASSERT(useCount == 0);
+// PLATFORM_ASSERT(useCount == 0);
int lengthForLevel = 0;
if (level == llcCaret) {
lengthForLevel = 1;
int lengthForLevel = 0;
if (level == llcCaret) {
lengthForLevel = 1;
}
void LineLayoutCache::Deallocate() {
}
void LineLayoutCache::Deallocate() {
- PLATFORM_ASSERT(useCount == 0);
+// PLATFORM_ASSERT(useCount == 0);
for (int i = 0; i < length; i++)
delete cache[i];
delete []cache;
for (int i = 0; i < length; i++)
delete cache[i];
delete []cache;
size_t length) {
if(!text) return;
size_t length) {
if(!text) return;
- // The unicode conversion MUST have a null byte to terminate the
- // string so move it into a buffer first and give it one.
- wxMemoryBuffer buf(length+1);
- buf.AppendData((void*)text, length);
- buf.AppendByte(0);
- evt.SetText(stc2wx(buf));
+ evt.SetText(stc2wx(text, length));
size_t length) {
if(!text) return;
size_t length) {
if(!text) return;
- // The unicode conversion MUST have a null byte to terminate the
- // string so move it into a buffer first and give it one.
- wxMemoryBuffer buf(length+1);
- buf.AppendData((void*)text, length);
- buf.AppendByte(0);
- evt.SetText(stc2wx(buf));
+ evt.SetText(stc2wx(text, length));
if (gotData) {
wxString text = wxTextBuffer::Translate(data.GetText(),
wxConvertEOLMode(pdoc->eolMode));
if (gotData) {
wxString text = wxTextBuffer::Translate(data.GetText(),
wxConvertEOLMode(pdoc->eolMode));
+ data.SetText(wxEmptyString); // free the data object content
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(text);
+ text = wxEmptyString; // free text
+
int len = strlen(buf);
pdoc->InsertString(currentPos, buf, len);
SetEmptySelection(currentPos + len);
int len = strlen(buf);
pdoc->InsertString(currentPos, buf, len);
SetEmptySelection(currentPos + len);
}
void LineLayoutCache::AllocateForLevel(int linesOnScreen, int linesInDoc) {
}
void LineLayoutCache::AllocateForLevel(int linesOnScreen, int linesInDoc) {
- PLATFORM_ASSERT(useCount == 0);
+// PLATFORM_ASSERT(useCount == 0);
int lengthForLevel = 0;
if (level == llcCaret) {
lengthForLevel = 1;
int lengthForLevel = 0;
if (level == llcCaret) {
lengthForLevel = 1;
}
void LineLayoutCache::Deallocate() {
}
void LineLayoutCache::Deallocate() {
- PLATFORM_ASSERT(useCount == 0);
+// PLATFORM_ASSERT(useCount == 0);
for (int i = 0; i < length; i++)
delete cache[i];
delete []cache;
for (int i = 0; i < length; i++)
delete cache[i];
delete []cache;
size_t length) {
if(!text) return;
size_t length) {
if(!text) return;
- // The unicode conversion MUST have a null byte to terminate the
- // string so move it into a buffer first and give it one.
- wxMemoryBuffer buf(length+1);
- buf.AppendData((void*)text, length);
- buf.AppendByte(0);
- evt.SetText(stc2wx(buf));
+ evt.SetText(stc2wx(text, length));
size_t length) {
if(!text) return;
size_t length) {
if(!text) return;
- // The unicode conversion MUST have a null byte to terminate the
- // string so move it into a buffer first and give it one.
- wxMemoryBuffer buf(length+1);
- buf.AppendData((void*)text, length);
- buf.AppendByte(0);
- evt.SetText(stc2wx(buf));
+ evt.SetText(stc2wx(text, length));