Fixed a problem with paste resetting the content paragraph style.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@67111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -111,6 +111,7 @@ All (GUI):
|
|||||||
avoids duplicating character attributes in subsequently typed text when
|
avoids duplicating character attributes in subsequently typed text when
|
||||||
they exist in the paragraph style.
|
they exist in the paragraph style.
|
||||||
- wxRTC: fixed IsPositionVisible to scroll a position into view correctly.
|
- wxRTC: fixed IsPositionVisible to scroll a position into view correctly.
|
||||||
|
- wxRTC: fixed a problem with paste resetting the content paragraph style.
|
||||||
- Fixed error in generic tree control CalculatePositions.
|
- Fixed error in generic tree control CalculatePositions.
|
||||||
- Added wxFD_FILE_MUST_EXIST to wxFileSelector function.
|
- Added wxFD_FILE_MUST_EXIST to wxFileSelector function.
|
||||||
- Added wxDataViewCtrl Get/SetValueByRow functions for forward compatibility
|
- Added wxDataViewCtrl Get/SetValueByRow functions for forward compatibility
|
||||||
|
@@ -5823,34 +5823,12 @@ wxRichTextStyleSheet* wxRichTextBuffer::PopStyleSheet()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Submit command to insert paragraphs
|
/// Submit command to insert paragraphs
|
||||||
bool wxRichTextBuffer::InsertParagraphsWithUndo(long pos, const wxRichTextParagraphLayoutBox& paragraphs, wxRichTextCtrl* ctrl, int flags)
|
bool wxRichTextBuffer::InsertParagraphsWithUndo(long pos, const wxRichTextParagraphLayoutBox& paragraphs, wxRichTextCtrl* ctrl, int WXUNUSED(flags))
|
||||||
{
|
{
|
||||||
wxRichTextAction* action = new wxRichTextAction(NULL, _("Insert Text"), wxRICHTEXT_INSERT, this, ctrl, false);
|
wxRichTextAction* action = new wxRichTextAction(NULL, _("Insert Text"), wxRICHTEXT_INSERT, this, ctrl, false);
|
||||||
|
|
||||||
wxTextAttrEx attr(GetDefaultStyle());
|
|
||||||
|
|
||||||
wxTextAttrEx* p = NULL;
|
|
||||||
wxTextAttrEx paraAttr;
|
|
||||||
if (flags & wxRICHTEXT_INSERT_WITH_PREVIOUS_PARAGRAPH_STYLE)
|
|
||||||
{
|
|
||||||
paraAttr = GetStyleForNewParagraph(pos);
|
|
||||||
if (!paraAttr.IsDefault())
|
|
||||||
p = & paraAttr;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
p = & attr;
|
|
||||||
|
|
||||||
action->GetNewParagraphs() = paragraphs;
|
action->GetNewParagraphs() = paragraphs;
|
||||||
|
|
||||||
if (p && !p->IsDefault())
|
|
||||||
{
|
|
||||||
for (wxRichTextObjectList::compatibility_iterator node = action->GetNewParagraphs().GetChildren().GetFirst(); node; node = node->GetNext())
|
|
||||||
{
|
|
||||||
wxRichTextObject* child = node->GetData();
|
|
||||||
child->SetAttributes(*p);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
action->SetPosition(pos);
|
action->SetPosition(pos);
|
||||||
|
|
||||||
wxRichTextRange range = wxRichTextRange(pos, pos + paragraphs.GetRange().GetEnd() - 1);
|
wxRichTextRange range = wxRichTextRange(pos, pos + paragraphs.GetRange().GetEnd() - 1);
|
||||||
|
Reference in New Issue
Block a user