projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't refresh the current cell in SetCellHighlightROPenWidth() if it's invalid (...
[wxWidgets.git]
/
src
/
os2
/
font.cpp
diff --git
a/src/os2/font.cpp
b/src/os2/font.cpp
index f4077c70f81b6a4e9b3cb56aebac038c07f03257..4a97f97c285b7032bceca1508c3699976a205a36 100644
(file)
--- a/
src/os2/font.cpp
+++ b/
src/os2/font.cpp
@@
-1,5
+1,5
@@
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
-// Name: font.cpp
+// Name:
src/os2/
font.cpp
// Purpose: wxFont class
// Author: David Webster
// Modified by:
// Purpose: wxFont class
// Author: David Webster
// Modified by:
@@
-20,13
+20,13
@@
// headers
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
+#include "wx/font.h"
+
#ifndef WX_PRECOMP
#include <stdio.h>
#ifndef WX_PRECOMP
#include <stdio.h>
- #include "wx/setup.h"
#include "wx/list.h"
#include "wx/utils.h"
#include "wx/app.h"
#include "wx/list.h"
#include "wx/utils.h"
#include "wx/app.h"
- #include "wx/font.h"
#include "wx/log.h"
#endif // WX_PRECOMP
#include "wx/log.h"
#endif // WX_PRECOMP
@@
-51,7
+51,7
@@
class WXDLLEXPORT wxFontRefData: public wxGDIRefData
public:
wxFontRefData()
{
public:
wxFontRefData()
{
- Init(-1, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL,
FALSE
,
+ Init(-1, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL,
false
,
wxEmptyString, wxFONTENCODING_DEFAULT);
}
wxEmptyString, wxFONTENCODING_DEFAULT);
}
@@
-196,12
+196,13
@@
public:
m_nWeight = nWeight;
}
m_nWeight = nWeight;
}
- inline
void
SetFaceName(const wxString& sFaceName)
+ inline
bool
SetFaceName(const wxString& sFaceName)
{
if (m_bNativeFontInfoOk)
{
if (m_bNativeFontInfoOk)
- m_vNativeFontInfo.SetFaceName(sFaceName);
+
return
m_vNativeFontInfo.SetFaceName(sFaceName);
else
m_sFaceName = sFaceName;
else
m_sFaceName = sFaceName;
+ return true;
}
inline void SetUnderlined(bool bUnderlined)
}
inline void SetUnderlined(bool bUnderlined)
@@
-296,6
+297,8
@@
protected:
bool m_bInternalPS; // Internally generated PS?
}; // end of CLASS wxFontRefData
bool m_bInternalPS; // Internally generated PS?
}; // end of CLASS wxFontRefData
+#define M_FONTDATA ((wxFontRefData*)m_refData)
+
// ============================================================================
// implementation
// ============================================================================
// ============================================================================
// implementation
// ============================================================================
@@
-324,10
+327,10
@@
void wxFontRefData::Init(
m_vEncoding = vEncoding;
m_hFont = 0;
m_vEncoding = vEncoding;
m_hFont = 0;
- m_bNativeFontInfoOk =
FALSE
;
+ m_bNativeFontInfoOk =
false
;
m_nFontId = 0;
m_nFontId = 0;
- m_bTemporary =
FALSE
;
+ m_bTemporary =
false
;
m_pFM = (PFONTMETRICS)NULL;
m_hPS = NULLHANDLE;
m_nNumFonts = 0;
m_pFM = (PFONTMETRICS)NULL;
m_hPS = NULLHANDLE;
m_nNumFonts = 0;
@@
-360,7
+363,7
@@
void wxFontRefData::Init(
m_hPS = (HPS)hPS;
m_nFontId = 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
m_pFM = (PFONTMETRICS)NULL;
m_nNumFonts = 0;
} // end of wxFontRefData::Init
@@
-690,11
+693,12
@@
void wxNativeFontInfo::SetUnderlined(
fa.fsSelection |= FATTR_SEL_UNDERSCORE;
} // end of wxNativeFontInfo::SetUnderlined
fa.fsSelection |= FATTR_SEL_UNDERSCORE;
} // end of wxNativeFontInfo::SetUnderlined
-
void
wxNativeFontInfo::SetFaceName(
-
wxString
sFacename
+
bool
wxNativeFontInfo::SetFaceName(
+
const wxString&
sFacename
)
{
wxStrncpy((wxChar*)fa.szFacename, sFacename, WXSIZEOF(fa.szFacename));
)
{
wxStrncpy((wxChar*)fa.szFacename, sFacename, WXSIZEOF(fa.szFacename));
+ return true;
} // end of wxNativeFontInfo::SetFaceName
void wxNativeFontInfo::SetFamily(
} // end of wxNativeFontInfo::SetFaceName
void wxNativeFontInfo::SetFamily(
@@
-783,56
+787,56
@@
bool wxNativeFontInfo::FromString( const wxString& rsStr )
wxString sToken = vTokenizer.GetNextToken();
if (sToken != _T('0'))
wxString sToken = vTokenizer.GetNextToken();
if (sToken != _T('0'))
- return
FALSE
;
+ return
false
;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return
FALSE
;
+ return
false
;
fm.lEmHeight = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
fm.lEmHeight = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return
FALSE
;
+ return
false
;
fa.lAveCharWidth = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
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))
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))
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))
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))
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))
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))
fa.lMatch = lVal;
sToken = vTokenizer.GetNextToken();
if (!sToken.ToLong(&lVal))
- return
FALSE
;
+ return
false
;
fn.usWeightClass = (USHORT)lVal;
sToken = vTokenizer.GetNextToken();
if(!sToken)
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
wxStrcpy((wxChar*)fa.szFacename, sToken.c_str());
return true;
} // end of wxNativeFontInfo::FromString
@@
-853,7
+857,7
@@
wxString wxNativeFontInfo::ToString() const
fa.usCodePage,
fa.lMatch,
fn.usWeightClass,
fa.usCodePage,
fa.lMatch,
fn.usWeightClass,
- fa.szFacename);
+
(char *)
fa.szFacename);
return sStr;
} // end of wxNativeFontInfo::ToString
return sStr;
} // end of wxNativeFontInfo::ToString
@@
-861,10
+865,6
@@
wxString wxNativeFontInfo::ToString() const
// wxFont
// ----------------------------------------------------------------------------
// wxFont
// ----------------------------------------------------------------------------
-void wxFont::Init()
-{
-} // end of wxFont::Init
-
bool wxFont::Create( const wxNativeFontInfo& rInfo,
WXHFONT hFont )
{
bool wxFont::Create( const wxNativeFontInfo& rInfo,
WXHFONT hFont )
{
@@
-931,6
+931,16
@@
wxFont::~wxFont()
// here, but we may check that font definition is true
// ----------------------------------------------------------------------------
// here, but we may check that font definition is true
// ----------------------------------------------------------------------------
+wxGDIRefData *wxFont::CreateGDIRefData() const
+{
+ return new wxFontRefData();
+}
+
+wxGDIRefData *wxFont::CloneGDIRefData(const wxGDIRefData *data) const
+{
+ return new wxFontRefData(*wx_static_cast(const wxFontRefData *, data));
+}
+
bool wxFont::RealizeResource()
{
if ( GetResourceHandle() )
bool wxFont::RealizeResource()
{
if ( GetResourceHandle() )
@@
-950,7
+960,7
@@
bool wxFont::FreeResource( bool WXUNUSED(bForce) )
return false;
} // end of wxFont::FreeResource
return false;
} // end of wxFont::FreeResource
-WXHANDLE wxFont::GetResourceHandle()
+WXHANDLE wxFont::GetResourceHandle()
const
{
return GetHFONT();
} // end of wxFont::GetResourceHandle
{
return GetHFONT();
} // end of wxFont::GetResourceHandle
@@
-965,21
+975,6
@@
bool wxFont::IsFree() const
return M_FONTDATA && (M_FONTDATA->GetHFONT() == 0);
} // end of wxFont::IsFree
return M_FONTDATA && (M_FONTDATA->GetHFONT() == 0);
} // end of wxFont::IsFree
-void wxFont::Unshare()
-{
- // Don't change shared data
- if ( !m_refData )
- {
- m_refData = new wxFontRefData();
- }
- else
- {
- wxFontRefData* ref = new wxFontRefData(*M_FONTDATA);
- UnRef();
- m_refData = ref;
- }
-} // end of wxFont::Unshare
-
// ----------------------------------------------------------------------------
// change font attribute: we recreate font when doing it
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// change font attribute: we recreate font when doing it
// ----------------------------------------------------------------------------
@@
-988,7
+983,7
@@
void wxFont::SetPointSize(
int nPointSize
)
{
int nPointSize
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetPointSize(nPointSize);
M_FONTDATA->SetPointSize(nPointSize);
@@
-999,7
+994,7
@@
void wxFont::SetFamily(
int nFamily
)
{
int nFamily
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetFamily(nFamily);
M_FONTDATA->SetFamily(nFamily);
@@
-1010,7
+1005,7
@@
void wxFont::SetStyle(
int nStyle
)
{
int nStyle
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetStyle(nStyle);
M_FONTDATA->SetStyle(nStyle);
@@
-1021,29
+1016,31
@@
void wxFont::SetWeight(
int nWeight
)
{
int nWeight
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetWeight(nWeight);
RealizeResource();
} // end of wxFont::SetWeight
M_FONTDATA->SetWeight(nWeight);
RealizeResource();
} // end of wxFont::SetWeight
-
void
wxFont::SetFaceName(
+
bool
wxFont::SetFaceName(
const wxString& rsFaceName
)
{
const wxString& rsFaceName
)
{
-
Unshar
e();
+
AllocExclusiv
e();
- M_FONTDATA->SetFaceName(rsFaceName);
+
bool refdataok =
M_FONTDATA->SetFaceName(rsFaceName);
RealizeResource();
RealizeResource();
+
+ return refdataok && wxFontBase::SetFaceName(rsFaceName);
} // end of wxFont::SetFaceName
void wxFont::SetUnderlined(
bool bUnderlined
)
{
} // end of wxFont::SetFaceName
void wxFont::SetUnderlined(
bool bUnderlined
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetUnderlined(bUnderlined);
M_FONTDATA->SetUnderlined(bUnderlined);
@@
-1054,7
+1051,7
@@
void wxFont::SetEncoding(
wxFontEncoding vEncoding
)
{
wxFontEncoding vEncoding
)
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetEncoding(vEncoding);
M_FONTDATA->SetEncoding(vEncoding);
@@
-1065,7
+1062,7
@@
void wxFont::DoSetNativeFontInfo(
const wxNativeFontInfo& rInfo
)
{
const wxNativeFontInfo& rInfo
)
{
-
Unshar
e();
+
AllocExclusiv
e();
FreeResource();
FreeResource();
@@
-1108,14
+1105,14
@@
int wxFont::GetWeight() const
bool wxFont::GetUnderlined() const
{
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
wxString wxFont::GetFaceName() const
{
return M_FONTDATA->GetUnderlined();
} // end of wxFont::GetUnderlined
wxString wxFont::GetFaceName() const
{
- wxCHECK_MSG( Ok(), wx
T("")
, wxT("invalid font") );
+ wxCHECK_MSG( Ok(), wx
EmptyString
, wxT("invalid font") );
return M_FONTDATA->GetFaceName();
} // end of wxFont::GetFaceName
return M_FONTDATA->GetFaceName();
} // end of wxFont::GetFaceName
@@
-1136,21
+1133,16
@@
const wxNativeFontInfo* wxFont::GetNativeFontInfo() const
//
// Internal use only method to set the FONTMETRICS array
//
//
// 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
{
M_FONTDATA->SetFM(pFM);
M_FONTDATA->SetNumFonts(nNumFonts);
} // end of wxFont::SetFM
-void wxFont::SetPS(
- HPS hPS
-)
+void wxFont::SetPS( HPS hPS )
{
{
-
Unshar
e();
+
AllocExclusiv
e();
M_FONTDATA->SetPS(hPS);
M_FONTDATA->SetPS(hPS);