/////////////////////////////////////////////////////////////////////////////
-// 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()
// 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)
bool wxFont::GetUnderlined() const
{
- return FALSE;
+ if(M_FONTDATA)
+ return M_FONTDATA->m_underlined;
+ else
+ return false;
}
int wxFont::GetStyle() const
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)
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)
/* New font system */
wxString wxFont::GetFaceName() const
{
- wxString str("");
+ wxString str;
if (M_FONTDATA)
- str = M_FONTDATA->m_faceName ;
+ str = M_FONTDATA->m_faceName ;
return str;
}