]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/textcmn.cpp
remove duplicate wxTaskBarIconAreaBase::DoPopupMenu, extracting the one-line differen...
[wxWidgets.git] / src / common / textcmn.cpp
index 82d65858258ac1d9adbeaf8c23dd38a0cf19c03d..c69ba3aea19ae1b29dfefeac3d2f926f058706ae 100644 (file)
@@ -297,8 +297,11 @@ bool wxTextAttr::EqPartial(const wxTextAttr& attr, int flags) const
 }
 
 // Create font from font attributes.
-wxFont wxTextAttr::CreateFont() const
+wxFont wxTextAttr::GetFont() const
 {
+    if ( !HasFont() )
+        return wxNullFont;
+
     int fontSize = 10;
     if (HasFontSize())
         fontSize = GetFontSize();
@@ -354,6 +357,8 @@ bool wxTextAttr::GetFontAttributes(const wxFont& font, int flags)
     if (flags & wxTEXT_ATTR_FONT_ENCODING)
         m_fontEncoding = font.GetEncoding();
 
+    m_flags |= flags;
+
     return true;
 }
 
@@ -540,10 +545,14 @@ wxTextAttr wxTextAttr::Combine(const wxTextAttr& attr,
                                const wxTextAttr& attrDef,
                                const wxTextCtrlBase *text)
 {
-    wxFont font = attr.GetFont();
+    wxFont font;
+    if (attr.HasFont())
+        font = attr.GetFont();
+
     if ( !font.Ok() )
     {
-        font = attrDef.GetFont();
+        if (attrDef.HasFont())
+            font = attrDef.GetFont();
 
         if ( text && !font.Ok() )
             font = text->GetFont();