m_join == data.m_join &&
m_cap == data.m_cap &&
m_colour == data.m_colour &&
- (m_style != wxSTIPPLE || m_stipple.IsSameAs(data.m_stipple)) &&
- (m_style != wxUSER_DASH ||
+ (m_style != wxPENSTYLE_STIPPLE || m_stipple.IsSameAs(data.m_stipple)) &&
+ (m_style != wxPENSTYLE_USER_DASH ||
(m_nbDash == data.m_nbDash &&
memcmp(m_dash, data.m_dash, m_nbDash*sizeof(wxDash)) == 0));
}
// accessors and setters
// ---------------------
- wxColour& GetColour() const { return wx_const_cast(wxColour&, m_colour); }
+ wxColour& GetColour() const { return const_cast<wxColour&>(m_colour); }
int GetWidth() const { return m_width; }
wxPenStyle GetStyle() const { return m_style; }
wxPenJoin GetJoin() const { return m_join; }
wxPenCap GetCap() const { return m_cap; }
wxDash* GetDash() const { return m_dash; }
int GetDashCount() const { return m_nbDash; }
- wxBitmap* GetStipple() const { return wx_const_cast(wxBitmap *, &m_stipple); }
+ wxBitmap* GetStipple() const { return const_cast<wxBitmap *>(&m_stipple); }
void SetColour(const wxColour& col) { Free(); m_colour = col; }
void SetWidth(int width) { Free(); m_width = width; }
{
Free();
- m_style = wxSTIPPLE;
+ m_style = wxPENSTYLE_STIPPLE;
m_stipple = stipple;
}
Free();
m_nbDash = nb_dashes;
- m_dash = wx_const_cast(wxDash *, dash);
+ m_dash = const_cast<wxDash *>(dash);
}
void SetJoin(wxPenJoin join) { Free(); m_join = join; }
wxColour m_colour;
HPEN m_hPen;
- DECLARE_NO_ASSIGN_CLASS(wxPenRefData)
+ wxDECLARE_NO_ASSIGN_CLASS(wxPenRefData);
};
// ============================================================================
{
Init();
- m_style = wxSOLID;
+ m_style = wxPENSTYLE_SOLID;
m_width = 1;
}
{
Init();
- m_style = wxSTIPPLE;
+ m_style = wxPENSTYLE_STIPPLE;
m_width = width;
m_stipple = stipple;
{
switch ( style )
{
- case wxSHORT_DASH:
- case wxLONG_DASH:
+ case wxPENSTYLE_SHORT_DASH:
+ case wxPENSTYLE_LONG_DASH:
return PS_DASH;
- case wxTRANSPARENT:
+ case wxPENSTYLE_TRANSPARENT:
return PS_NULL;
default:
- wxFAIL_MSG( _T("unknown pen style") );
+ wxFAIL_MSG( wxT("unknown pen style") );
// fall through
#ifdef wxHAVE_EXT_CREATE_PEN
- case wxDOT:
+ case wxPENSTYLE_DOT:
return PS_DOT;
- case wxDOT_DASH:
+ case wxPENSTYLE_DOT_DASH:
return PS_DASHDOT;
- case wxUSER_DASH:
+ case wxPENSTYLE_USER_DASH:
return PS_USERSTYLE;
- case wxSTIPPLE:
- case wxBDIAGONAL_HATCH:
- case wxCROSSDIAG_HATCH:
- case wxFDIAGONAL_HATCH:
- case wxCROSS_HATCH:
- case wxHORIZONTAL_HATCH:
- case wxVERTICAL_HATCH:
- case wxSOLID:
+ case wxPENSTYLE_STIPPLE:
+ case wxPENSTYLE_BDIAGONAL_HATCH:
+ case wxPENSTYLE_CROSSDIAG_HATCH:
+ case wxPENSTYLE_FDIAGONAL_HATCH:
+ case wxPENSTYLE_CROSS_HATCH:
+ case wxPENSTYLE_HORIZONTAL_HATCH:
+ case wxPENSTYLE_VERTICAL_HATCH:
+ case wxPENSTYLE_SOLID:
#endif // wxHAVE_EXT_CREATE_PEN
return PS_SOLID;
return PS_JOIN_MITER;
default:
- wxFAIL_MSG( _T("unknown pen join style") );
+ wxFAIL_MSG( wxT("unknown pen join style") );
// fall through
case wxJOIN_ROUND:
return PS_ENDCAP_FLAT;
default:
- wxFAIL_MSG( _T("unknown pen cap style") );
+ wxFAIL_MSG( wxT("unknown pen cap style") );
// fall through
case wxCAP_ROUND:
if ( m_hPen )
return false;
- if ( m_style == wxTRANSPARENT )
+ if ( m_style == wxPENSTYLE_TRANSPARENT )
{
m_hPen = (HPEN)::GetStockObject(NULL_PEN);
return true;
// Only NT can display dashed or dotted lines with width > 1
static const int os = wxGetOsVersion();
if ( os != wxOS_WINDOWS_NT &&
- (m_style == wxDOT ||
- m_style == wxLONG_DASH ||
- m_style == wxSHORT_DASH ||
- m_style == wxDOT_DASH ||
- m_style == wxUSER_DASH) &&
+ (m_style == wxPENSTYLE_DOT ||
+ m_style == wxPENSTYLE_LONG_DASH ||
+ m_style == wxPENSTYLE_SHORT_DASH ||
+ m_style == wxPENSTYLE_DOT_DASH ||
+ m_style == wxPENSTYLE_USER_DASH) &&
m_width > 1 )
{
m_width = 1;
// CreatePen()
if ( m_join == wxJOIN_ROUND &&
m_cap == wxCAP_ROUND &&
- m_style != wxUSER_DASH &&
- m_style != wxSTIPPLE &&
- (m_width <= 1 || m_style == wxSOLID) )
+ m_style != wxPENSTYLE_USER_DASH &&
+ m_style != wxPENSTYLE_STIPPLE &&
+ (m_width <= 1 || m_style == wxPENSTYLE_SOLID) )
#endif // !wxHAVE_EXT_CREATE_PEN
{
m_hPen = ::CreatePen(ConvertPenStyle(m_style), m_width, col);
LOGBRUSH lb;
switch( m_style )
{
- case wxSTIPPLE:
+ case wxPENSTYLE_STIPPLE:
lb.lbStyle = BS_PATTERN;
lb.lbHatch = wxPtrToUInt(m_stipple.GetHBITMAP());
break;
- case wxBDIAGONAL_HATCH:
+ case wxPENSTYLE_BDIAGONAL_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_BDIAGONAL;
break;
- case wxCROSSDIAG_HATCH:
+ case wxPENSTYLE_CROSSDIAG_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_DIAGCROSS;
break;
- case wxFDIAGONAL_HATCH:
+ case wxPENSTYLE_FDIAGONAL_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_FDIAGONAL;
break;
- case wxCROSS_HATCH:
+ case wxPENSTYLE_CROSS_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_CROSS;
break;
- case wxHORIZONTAL_HATCH:
+ case wxPENSTYLE_HORIZONTAL_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_HORIZONTAL;
break;
- case wxVERTICAL_HATCH:
+ case wxPENSTYLE_VERTICAL_HATCH:
lb.lbStyle = BS_HATCHED;
lb.lbHatch = HS_VERTICAL;
break;
default:
lb.lbStyle = BS_SOLID;
-#ifdef __WXDEBUG__
// this should be unnecessary (it's unused) but suppresses the
// Purify messages about uninitialized memory read
lb.lbHatch = 0;
-#endif
break;
}
lb.lbColor = col;
DWORD *dash;
- if ( m_style == wxUSER_DASH && m_nbDash && m_dash )
+ if ( m_style == wxPENSTYLE_USER_DASH && m_nbDash && m_dash )
{
dash = new DWORD[m_nbDash];
int rw = m_width > 1 ? m_width : 1;
WXHPEN wxPenRefData::GetHPEN() const
{
if ( !m_hPen )
- wx_const_cast(wxPenRefData *, this)->Alloc();
+ const_cast<wxPenRefData *>(this)->Alloc();
return (WXHPEN)m_hPen;
}
IMPLEMENT_DYNAMIC_CLASS(wxPen, wxGDIObject)
-wxPen::wxPen(const wxColour& col, int width, int style)
+wxPen::wxPen(const wxColour& col, int width, wxPenStyle style)
{
m_refData = new wxPenRefData(col, width, style);
}
-wxPen::wxPen(const wxColour& colour, int width, wxBrushStyle style)
+#if FUTURE_WXWIN_COMPATIBILITY_3_0
+wxPen::wxPen(const wxColour& colour, int width, int style)
{
- m_refData = new wxPenRefData(col, width, (wxPenStyle)style);
+ m_refData = new wxPenRefData(colour, width, (wxPenStyle)style);
}
+#endif
wxPen::wxPen(const wxBitmap& stipple, int width)
{
bool wxPen::operator==(const wxPen& pen) const
{
const wxPenRefData *
- penData = wx_static_cast(const wxPenRefData *, pen.m_refData);
+ penData = static_cast<const wxPenRefData *>(pen.m_refData);
// an invalid pen is only equal to another invalid pen
return m_refData ? penData && *M_PENDATA == *penData : !penData;
wxGDIRefData* wxPen::CloneGDIRefData(const wxGDIRefData* data) const
{
- return new wxPenRefData(*wx_static_cast(const wxPenRefData*, data));
+ return new wxPenRefData(*static_cast<const wxPenRefData*>(data));
}
void wxPen::SetColour(const wxColour& col)
M_PENDATA->SetCap(cap);
}
-wxColour& wxPen::GetColour() const
+wxColour wxPen::GetColour() const
{
- return m_refData ? M_PENDATA->GetColour() : wxNullColour;
+ wxCHECK_MSG( IsOk(), wxNullColour, wxT("invalid pen") );
+
+ return M_PENDATA->GetColour();
}
int wxPen::GetWidth() const
{
- return m_refData ? M_PENDATA->GetWidth() : 0;
+ wxCHECK_MSG( IsOk(), -1, wxT("invalid pen") );
+
+ return M_PENDATA->GetWidth();
}
wxPenStyle wxPen::GetStyle() const
{
- return m_refData ? M_PENDATA->GetStyle() : 0;
+ wxCHECK_MSG( IsOk(), wxPENSTYLE_INVALID, wxT("invalid pen") );
+
+ return M_PENDATA->GetStyle();
}
wxPenJoin wxPen::GetJoin() const
{
- return m_refData ? M_PENDATA->GetJoin() : 0;
+ wxCHECK_MSG( IsOk(), wxJOIN_INVALID, wxT("invalid pen") );
+
+ return M_PENDATA->GetJoin();
}
wxPenCap wxPen::GetCap() const
{
- return m_refData ? M_PENDATA->GetCap() : 0;
+ wxCHECK_MSG( IsOk(), wxCAP_INVALID, wxT("invalid pen") );
+
+ return M_PENDATA->GetCap();
}
int wxPen::GetDashes(wxDash** ptr) const
{
- if ( !m_refData )
- {
- *ptr = NULL;
- return 0;
- }
+ wxCHECK_MSG( IsOk(), -1, wxT("invalid pen") );
*ptr = M_PENDATA->GetDash();
return M_PENDATA->GetDashCount();
wxDash* wxPen::GetDash() const
{
+ wxCHECK_MSG( IsOk(), NULL, wxT("invalid pen") );
+
return m_refData ? M_PENDATA->GetDash() : NULL;
}
int wxPen::GetDashCount() const
{
+ wxCHECK_MSG( IsOk(), -1, wxT("invalid pen") );
+
return m_refData ? M_PENDATA->GetDashCount() : 0;
}
wxBitmap* wxPen::GetStipple() const
{
+ wxCHECK_MSG( IsOk(), NULL, wxT("invalid pen") );
+
return m_refData ? M_PENDATA->GetStipple() : NULL;
}