]> git.saurik.com Git - wxWidgets.git/blobdiff - src/cocoa/font.cpp
Use WXNSView just like wxWindow does when creating a wxControl. There are
[wxWidgets.git] / src / cocoa / font.cpp
index 7133060f8f513ddc2d8a6d7a51a3c7f91ae18a28..bfbed70f383bba9336cc9e8016613ba4ac883d69 100644 (file)
@@ -1,36 +1,35 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        font.cpp
+// Name:        src/cocoa/font.cpp
 // Purpose:     wxFont class
 // Author:      AUTHOR
 // Modified by:
 // Created:     ??/??/98
 // RCS-ID:      $Id$
 // Copyright:   (c) AUTHOR
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "font.h"
-#endif
+#include "wx/wxprec.h"
 
-#include "wx/defs.h"
-#include "wx/string.h"
 #include "wx/font.h"
-#include "wx/gdicmn.h"
+
+#ifndef WX_PRECOMP
+    #include "wx/string.h"
+    #include "wx/gdicmn.h"
+#endif
+
 #include "wx/encinfo.h"
 
-#if !USE_SHARED_LIBRARIES
 IMPLEMENT_DYNAMIC_CLASS(wxFont, wxGDIObject)
-#endif
 
 void wxFontRefData::Init(int size, int family, int style, int weight, bool underlined, const wxString& faceName, wxFontEncoding encoding)
 {
-       m_family = family;
-       m_style = style;
-       m_weight = weight;
-       m_underlined = underlined;
-       m_faceName = faceName;
-       m_encoding = encoding;
+    m_family = family;
+    m_style = style;
+    m_weight = weight;
+    m_underlined = underlined;
+    m_faceName = faceName;
+    m_encoding = encoding;
 }
 
 wxFontRefData::~wxFontRefData()
@@ -38,13 +37,11 @@ wxFontRefData::~wxFontRefData()
     // TODO: delete font data
 }
 
-void wxFont::Init()
-{
-}
+#define M_FONTDATA ((wxFontRefData*)m_refData)
 
 bool wxFont::Create(const wxNativeFontInfo&)
 {
-    return FALSE;
+    return false;
 }
 
 void wxFont::SetEncoding(wxFontEncoding)
@@ -63,7 +60,10 @@ int wxFont::GetPointSize() const
 
 bool wxFont::GetUnderlined() const
 {
-    return FALSE;
+    if(M_FONTDATA)
+        return M_FONTDATA->m_underlined;
+    else
+        return false;
 }
 
 int wxFont::GetStyle() const
@@ -102,34 +102,32 @@ bool wxFont::Create(int pointSize, int family, int style, int weight, bool under
 
     RealizeResource();
 
-    return TRUE;
+    return true;
 }
 
 wxFont::~wxFont()
 {
-    if (wxTheFontList)
-        wxTheFontList->DeleteObject(this);
 }
 
 bool wxFont::RealizeResource()
 {
     // TODO: create the font (if there is a native font object)
-    return FALSE;
+    return false;
 }
 
 void wxFont::Unshare()
 {
-       // Don't change shared data
-       if (!m_refData)
+    // Don't change shared data
+    if (!m_refData)
     {
-               m_refData = new wxFontRefData();
-       }
+        m_refData = new wxFontRefData();
+    }
     else
     {
-               wxFontRefData* ref = new wxFontRefData(*(wxFontRefData*)m_refData);
-               UnRef();
-               m_refData = ref;
-       }
+        wxFontRefData* ref = new wxFontRefData(*(wxFontRefData*)m_refData);
+        UnRef();
+        m_refData = ref;
+    }
 }
 
 void wxFont::SetPointSize(int pointSize)
@@ -168,13 +166,15 @@ void wxFont::SetWeight(int weight)
     RealizeResource();
 }
 
-void wxFont::SetFaceName(const wxString& faceName)
+bool wxFont::SetFaceName(const wxString& faceName)
 {
     Unshare();
 
     M_FONTDATA->m_faceName = faceName;
 
     RealizeResource();
+
+    return wxFontBase::SetFaceName(faceName);
 }
 
 void wxFont::SetUnderlined(bool underlined)
@@ -191,7 +191,7 @@ wxString wxFont::GetFaceName() const
 {
     wxString str;
     if (M_FONTDATA)
-           str = M_FONTDATA->m_faceName ;
+        str = M_FONTDATA->m_faceName ;
     return str;
 }