From: Julian Smart Date: Sat, 16 Feb 2008 13:36:03 +0000 (+0000) Subject: Avoid paragraphs with no children X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/fa01bfddc61bcc4b4d906c8143fe0066178a4479 Avoid paragraphs with no children git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/richtext/richtextbuffer.cpp b/src/richtext/richtextbuffer.cpp index ae5b2c223b..182f791719 100644 --- a/src/richtext/richtextbuffer.cpp +++ b/src/richtext/richtextbuffer.cpp @@ -1468,15 +1468,7 @@ bool wxRichTextParagraphLayoutBox::DeleteRange(const wxRichTextRange& range) { wxRichTextObject* obj1 = node1->GetData(); - // If the object is empty, optimise it out - if (obj1->IsEmpty()) - { - delete obj1; - } - else - { - firstPara->AppendChild(obj1); - } + firstPara->AppendChild(obj1); wxRichTextObjectList::compatibility_iterator next1 = node1->GetNext(); nextParagraph->GetChildren().Erase(node1); @@ -1488,6 +1480,13 @@ bool wxRichTextParagraphLayoutBox::DeleteRange(const wxRichTextRange& range) RemoveChild(nextParagraph, true); } + // Avoid empty paragraphs + if (firstPara && firstPara->GetChildren().GetCount() == 0) + { + wxRichTextPlainText* text = new wxRichTextPlainText(wxEmptyString); + firstPara->AppendChild(text); + } + if (applyFinalParagraphStyle) firstPara->SetAttributes(nextParaAttr);