// headers
// ----------------------------------------------------------------------------
+#include "wx/font.h"
+
#ifndef WX_PRECOMP
#include <stdio.h>
#include "wx/list.h"
#include "wx/utils.h"
#include "wx/app.h"
- #include "wx/font.h"
#include "wx/log.h"
#endif // WX_PRECOMP
public:
wxFontRefData()
{
- Init(-1, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, FALSE,
+ Init(-1, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false,
wxEmptyString, wxFONTENCODING_DEFAULT);
}
m_nWeight = nWeight;
}
- inline void SetFaceName(const wxString& sFaceName)
+ inline bool SetFaceName(const wxString& sFaceName)
{
if (m_bNativeFontInfoOk)
- m_vNativeFontInfo.SetFaceName(sFaceName);
+ return m_vNativeFontInfo.SetFaceName(sFaceName);
else
m_sFaceName = sFaceName;
+ return true;
}
inline void SetUnderlined(bool bUnderlined)
bool m_bInternalPS; // Internally generated PS?
}; // end of CLASS wxFontRefData
+#define M_FONTDATA ((wxFontRefData*)m_refData)
+
// ============================================================================
// implementation
// ============================================================================
m_vEncoding = vEncoding;
m_hFont = 0;
- m_bNativeFontInfoOk = FALSE;
+ m_bNativeFontInfoOk = false;
m_nFontId = 0;
- m_bTemporary = FALSE;
+ m_bTemporary = false;
m_pFM = (PFONTMETRICS)NULL;
m_hPS = NULLHANDLE;
m_nNumFonts = 0;
m_hPS = (HPS)hPS;
m_nFontId = 0;
- m_bTemporary = FALSE;
+ m_bTemporary = false;
m_pFM = (PFONTMETRICS)NULL;
m_nNumFonts = 0;
} // end of wxFontRefData::Init
fa.fsSelection |= FATTR_SEL_UNDERSCORE;
} // end of wxNativeFontInfo::SetUnderlined
-void wxNativeFontInfo::SetFaceName(
+bool wxNativeFontInfo::SetFaceName(
const wxString& sFacename
)
{
wxStrncpy((wxChar*)fa.szFacename, sFacename, WXSIZEOF(fa.szFacename));
+ return true;
} // end of wxNativeFontInfo::SetFaceName
void wxNativeFontInfo::SetFamily(
wxString sToken = vTokenizer.GetNextToken();
if (sToken != _T('0'))
- return FALSE;
+ return false;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fm.lEmHeight = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.lAveCharWidth = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.fsSelection = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.fsType = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.fsFontUse = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.idRegistry = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.usCodePage = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fa.lMatch = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return FALSE;
+ return false;
fn.usWeightClass = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if(!sToken)
- return FALSE;
+ return false;
wxStrcpy((wxChar*)fa.szFacename, sToken.c_str());
return true;
} // end of wxNativeFontInfo::FromString
fa.usCodePage,
fa.lMatch,
fn.usWeightClass,
- fa.szFacename);
+ (char *)fa.szFacename);
return sStr;
} // end of wxNativeFontInfo::ToString
// wxFont
// ----------------------------------------------------------------------------
-void wxFont::Init()
-{
-} // end of wxFont::Init
-
bool wxFont::Create( const wxNativeFontInfo& rInfo,
WXHFONT hFont )
{
return false;
} // end of wxFont::FreeResource
-WXHANDLE wxFont::GetResourceHandle()
+WXHANDLE wxFont::GetResourceHandle() const
{
return GetHFONT();
} // end of wxFont::GetResourceHandle
RealizeResource();
} // end of wxFont::SetWeight
-void wxFont::SetFaceName(
+bool wxFont::SetFaceName(
const wxString& rsFaceName
)
{
Unshare();
- M_FONTDATA->SetFaceName(rsFaceName);
+ bool refdataok = M_FONTDATA->SetFaceName(rsFaceName);
RealizeResource();
+
+ return refdataok && wxFontBase::SetFaceName(rsFaceName);
} // end of wxFont::SetFaceName
void wxFont::SetUnderlined(
bool wxFont::GetUnderlined() const
{
- wxCHECK_MSG( Ok(), FALSE, wxT("invalid font") );
+ wxCHECK_MSG( Ok(), false, wxT("invalid font") );
return M_FONTDATA->GetUnderlined();
} // end of wxFont::GetUnderlined
//
// Internal use only method to set the FONTMETRICS array
//
-void wxFont::SetFM(
- PFONTMETRICS pFM
-, int nNumFonts
-)
+void wxFont::SetFM( PFONTMETRICS pFM, int nNumFonts )
{
M_FONTDATA->SetFM(pFM);
M_FONTDATA->SetNumFonts(nNumFonts);
} // end of wxFont::SetFM
-void wxFont::SetPS(
- HPS hPS
-)
+void wxFont::SetPS( HPS hPS )
{
Unshare();