]> git.saurik.com Git - wxWidgets.git/blobdiff - src/x11/font.cpp
[ 1216436 ] cleanup 'shadow variable' warnings from gcc in headers.
[wxWidgets.git] / src / x11 / font.cpp
index 773246bbe6ca62777a88e4ce9249ac6ad312d51a..5018bc39ed6dfaf9b19a3f66b21cae8b3721a1a0 100644 (file)
@@ -79,10 +79,10 @@ wxXFont::wxXFont()
 
 wxXFont::~wxXFont()
 {
 
 wxXFont::~wxXFont()
 {
-    // TODO: why does freeing the font produce a segv???
-    // Note that XFreeFont wasn't called in wxWin 1.68 either.
-    // XFontStruct* fontStruct = (XFontStruct*) m_fontStruct;
-    //        XFreeFont((Display*) m_display, fontStruct);
+    // Freeing the font used to produce a segv, but
+    // appears to be OK now (bug fix in X11?)
+    XFontStruct* fontStruct = (XFontStruct*) m_fontStruct;
+    XFreeFont((Display*) m_display, fontStruct);
 }
 #endif
 
 }
 #endif
 
@@ -123,7 +123,7 @@ public:
     void SetEncoding(wxFontEncoding encoding);
 
     void SetNoAntiAliasing( bool no = TRUE ) { m_noAA = no; }
     void SetEncoding(wxFontEncoding encoding);
 
     void SetNoAntiAliasing( bool no = TRUE ) { m_noAA = no; }
-    bool GetNoAntiAliasing() { return m_noAA; }
+    bool GetNoAntiAliasing() const { return m_noAA; }
 
     // and this one also modifies all the other font data fields
     void SetNativeFontInfo(const wxNativeFontInfo& info);
 
     // and this one also modifies all the other font data fields
     void SetNativeFontInfo(const wxNativeFontInfo& info);
@@ -745,14 +745,14 @@ wxFontEncoding wxFont::GetEncoding() const
     return M_FONTDATA->m_encoding;
 }
 
     return M_FONTDATA->m_encoding;
 }
 
-bool wxFont::GetNoAntiAliasing()
+bool wxFont::GetNoAntiAliasing() const
 {
     wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, wxT("invalid font") );
 
     return M_FONTDATA->m_noAA;
 }
 
 {
     wxCHECK_MSG( Ok(), wxFONTENCODING_DEFAULT, wxT("invalid font") );
 
     return M_FONTDATA->m_noAA;
 }
 
-wxNativeFontInfo *wxFont::GetNativeFontInfo() const
+const wxNativeFontInfo *wxFont::GetNativeFontInfo() const
 {
     wxCHECK_MSG( Ok(), (wxNativeFontInfo *)NULL, wxT("invalid font") );
 
 {
     wxCHECK_MSG( Ok(), (wxNativeFontInfo *)NULL, wxT("invalid font") );
 
@@ -762,7 +762,7 @@ wxNativeFontInfo *wxFont::GetNativeFontInfo() const
         GetInternalFont();
 #endif
 
         GetInternalFont();
 #endif
 
-    return new wxNativeFontInfo(M_FONTDATA->m_nativeFontInfo);
+    return &(M_FONTDATA->m_nativeFontInfo);
 }
 
 bool wxFont::IsFixedWidth() const
 }
 
 bool wxFont::IsFixedWidth() const
@@ -770,6 +770,7 @@ bool wxFont::IsFixedWidth() const
     wxCHECK_MSG( Ok(), FALSE, wxT("invalid font") );
 
 #if wxUSE_UNICODE
     wxCHECK_MSG( Ok(), FALSE, wxT("invalid font") );
 
 #if wxUSE_UNICODE
+   return wxFontBase::IsFixedWidth();
 #else
     // Robert, is this right? HasNativeFont doesn't exist.
     if ( TRUE )
 #else
     // Robert, is this right? HasNativeFont doesn't exist.
     if ( TRUE )
@@ -781,9 +782,10 @@ bool wxFont::IsFixedWidth() const
 
         return spacing.Upper() == _T('M');
     }
 
         return spacing.Upper() == _T('M');
     }
+   // Unreaceable code for now
+   // return wxFontBase::IsFixedWidth();
 #endif
 
 #endif
 
-    return wxFontBase::IsFixedWidth();
 }
 
 // ----------------------------------------------------------------------------
 }
 
 // ----------------------------------------------------------------------------