From 0f67675d40ed89980905f4ce6e2ad721b4f3e5ad Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Mon, 31 Mar 2014 16:46:36 +0000 Subject: [PATCH] Use style sheet when copying to the clipboard if available git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@76245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/richtext/richtextbuffer.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/richtext/richtextbuffer.cpp b/src/richtext/richtextbuffer.cpp index eb703153cf..501f12c7c6 100644 --- a/src/richtext/richtextbuffer.cpp +++ b/src/richtext/richtextbuffer.cpp @@ -8613,6 +8613,11 @@ bool wxRichTextBuffer::PasteFromClipboard(long position) container->InsertParagraphsWithUndo(this, position+1, *richTextBuffer, GetRichTextCtrl(), 0); if (GetRichTextCtrl()) GetRichTextCtrl()->ShowPosition(position + richTextBuffer->GetOwnRange().GetEnd()); + if (richTextBuffer->GetStyleSheet()) + { + delete richTextBuffer->GetStyleSheet(); + richTextBuffer->SetStyleSheet(NULL); + } delete richTextBuffer; } } @@ -12826,6 +12831,7 @@ size_t wxRichTextBufferDataObject::GetDataSize() const { wxStringOutputStream stream(& bufXML); + m_richTextBuffer->SetHandlerFlags(wxRICHTEXT_HANDLER_INCLUDE_STYLESHEET); if (!m_richTextBuffer->SaveFile(stream, wxRICHTEXT_TYPE_XML)) { wxLogError(wxT("Could not write the buffer to an XML stream.\nYou may have forgotten to add the XML file handler.")); @@ -12850,6 +12856,7 @@ bool wxRichTextBufferDataObject::GetDataHere(void *pBuf) const { wxStringOutputStream stream(& bufXML); + m_richTextBuffer->SetHandlerFlags(wxRICHTEXT_HANDLER_INCLUDE_STYLESHEET); if (!m_richTextBuffer->SaveFile(stream, wxRICHTEXT_TYPE_XML)) { wxLogError(wxT("Could not write the buffer to an XML stream.\nYou may have forgotten to add the XML file handler.")); @@ -12880,6 +12887,7 @@ bool wxRichTextBufferDataObject::SetData(size_t WXUNUSED(len), const void *buf) m_richTextBuffer = new wxRichTextBuffer; wxStringInputStream stream(bufXML); + m_richTextBuffer->SetHandlerFlags(wxRICHTEXT_HANDLER_INCLUDE_STYLESHEET); if (!m_richTextBuffer->LoadFile(stream, wxRICHTEXT_TYPE_XML)) { wxLogError(wxT("Could not read the buffer from an XML stream.\nYou may have forgotten to add the XML file handler."));