#include "wx/defs.h"
#include "wx/string.h"
#include "wx/font.h"
+#include "wx/fontutil.h"
#include "wx/gdicmn.h"
+#include "wx/utils.h"
+
+#include "wx/fontutil.h"
#if !USE_SHARED_LIBRARIES
IMPLEMENT_DYNAMIC_CLASS(wxFont, wxGDIObject)
#endif
-
-
-
// ============================================================================
// implementation
// ============================================================================
::GetFNum( "\pTimes" , &m_macFontNum) ;
break ;
case wxSWISS :
- ::GetFNum( "\pHelvetica" , &m_macFontNum) ;
+ ::GetFNum( "\pGeneva" , &m_macFontNum) ;
break ;
case wxMODERN :
::GetFNum( "\pMonaco" , &m_macFontNum) ;
m_macFontNum = ::GetAppFont() ;
else
{
- strcpy(wxBuffer, m_faceName);
- C2PStr(wxBuffer);
- ::GetFNum( (unsigned char*) wxBuffer, &m_macFontNum);
+#if TARGET_CARBON
+ c2pstrcpy( (StringPtr) wxBuffer, m_faceName ) ;
+#else
+ strcpy( (char *) wxBuffer, m_faceName ) ;
+ c2pstr( (char *) wxBuffer ) ;
+#endif
+ ::GetFNum( (StringPtr) wxBuffer, &m_macFontNum);
}
}
void wxFont::Init()
{
- if ( wxTheFontList )
- wxTheFontList->Append(this);
+}
+
+bool wxFont::Create(const wxNativeFontInfo& info)
+{
+ return Create(info.pointSize, info.family, info.style, info.weight,
+ info.underlined, info.faceName, info.encoding);
+}
+
+wxFont::wxFont(const wxString& fontdesc)
+{
+ wxNativeFontInfo info;
+ if ( info.FromString(fontdesc) )
+ (void)Create(info);
}
bool wxFont::Create(int pointSize,
wxFont::~wxFont()
{
- if (wxTheFontList)
- wxTheFontList->DeleteObject(this);
}
bool wxFont::RealizeResource()
return TRUE;
}
+void wxFont::SetEncoding(wxFontEncoding encoding)
+{
+ Unshare();
+
+ M_FONTDATA->m_encoding = encoding;
+
+ RealizeResource();
+}
+
void wxFont::Unshare()
{
// Don't change shared data
return M_FONTDATA->m_family;
}
-int wxFont::GetFontId() const
-{
- return M_FONTDATA->m_fontId;
-}
-
int wxFont::GetStyle() const
{
return M_FONTDATA->m_style;