]> git.saurik.com Git - wxWidgets.git/commitdiff
Take basic style into account when applying style sheet
authorJulian Smart <julian@anthemion.co.uk>
Sun, 27 Jan 2008 17:37:17 +0000 (17:37 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Sun, 27 Jan 2008 17:37:17 +0000 (17:37 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/richtext/richtextbuffer.cpp

index ac3e1c43998eec2f71632a64df1dceb2d548136d..651b5ac107eb16861c43e4f5e4e6a6108421b2a6 100644 (file)
@@ -2474,6 +2474,29 @@ bool wxRichTextParagraphLayoutBox::ApplyStyleSheet(wxRichTextStyleSheet* styleSh
 
     int foundCount = 0;
 
+    wxRichTextAttr attr(GetBasicStyle());
+    if (GetBasicStyle().HasParagraphStyleName())
+    {
+        wxRichTextParagraphStyleDefinition* paraDef = styleSheet->FindParagraphStyle(GetBasicStyle().GetParagraphStyleName());
+        if (paraDef)
+        {
+            attr.Apply(paraDef->GetStyleMergedWithBase(styleSheet));
+            SetBasicStyle(attr);
+            foundCount ++;
+        }
+    }
+
+    if (GetBasicStyle().HasCharacterStyleName())
+    {
+        wxRichTextCharacterStyleDefinition* charDef = styleSheet->FindCharacterStyle(GetBasicStyle().GetCharacterStyleName());
+        if (charDef)
+        {
+            attr.Apply(charDef->GetStyleMergedWithBase(styleSheet));
+            SetBasicStyle(attr);
+            foundCount ++;
+        }
+    }
+
     wxRichTextObjectList::compatibility_iterator node = m_children.GetFirst();
     while (node)
     {