/////////////////////////////////////////////////////////////////////////////
-// Name: msw/pen.cpp
+// Name: src/msw/pen.cpp
// Purpose: wxPen
// Author: Julian Smart
// Modified by:
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma implementation "pen.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
-#pragma hdrstop
+ #pragma hdrstop
#endif
-#ifndef WX_PRECOMP
-#include <stdio.h>
-#include "wx/setup.h"
-#include "wx/list.h"
-#include "wx/utils.h"
-#include "wx/app.h"
#include "wx/pen.h"
+
+#ifndef WX_PRECOMP
+ #include <stdio.h>
+ #include "wx/list.h"
+ #include "wx/utils.h"
+ #include "wx/app.h"
#endif
#include "wx/msw/private.h"
}
wxPenRefData::wxPenRefData(const wxPenRefData& data)
+ :wxGDIRefData()
{
m_style = data.m_style;
m_width = data.m_width;
#if !defined(__WXMICROWIN__) && !defined(__WXWINCE__)
// Only NT can display dashed or dotted lines with width > 1
if ( os != wxWINDOWS_NT &&
- (M_PENDATA->m_style & (wxDOT |
- wxLONG_DASH |
- wxSHORT_DASH |
- wxDOT_DASH |
- wxUSER_DASH)) &&
+ (M_PENDATA->m_style == wxDOT ||
+ M_PENDATA->m_style == wxLONG_DASH ||
+ M_PENDATA->m_style == wxSHORT_DASH ||
+ M_PENDATA->m_style == wxDOT_DASH ||
+ M_PENDATA->m_style == wxUSER_DASH) &&
M_PENDATA->m_width > 1 )
{
M_PENDATA->m_width = 1;
WXHANDLE wxPen::GetResourceHandle() const
{
- if ( !M_PENDATA )
- return 0;
- else
- return (WXHANDLE)M_PENDATA->m_hPen;
+ if ( !M_PENDATA )
+ return 0;
+ else
+ return (WXHANDLE)M_PENDATA->m_hPen;
}
bool wxPen::FreeResource(bool WXUNUSED(force))
{
- if (M_PENDATA && (M_PENDATA->m_hPen != 0))
- {
- DeleteObject((HPEN) M_PENDATA->m_hPen);
- M_PENDATA->m_hPen = 0;
- return true;
- }
- else return false;
+ if (M_PENDATA && (M_PENDATA->m_hPen != 0))
+ {
+ DeleteObject((HPEN) M_PENDATA->m_hPen);
+ M_PENDATA->m_hPen = 0;
+ return true;
+ }
+ else return false;
}
bool wxPen::IsFree() const
{
- return (M_PENDATA && M_PENDATA->m_hPen == 0);
+ return (M_PENDATA && M_PENDATA->m_hPen == 0);
}
void wxPen::Unshare()
{
- // Don't change shared data
- if (!m_refData)
+ // Don't change shared data
+ if (!m_refData)
{
- m_refData = new wxPenRefData();
- }
+ m_refData = new wxPenRefData();
+ }
else
{
- wxPenRefData* ref = new wxPenRefData(*(wxPenRefData*)m_refData);
- UnRef();
- m_refData = ref;
- }
+ wxPenRefData* ref = new wxPenRefData(*(wxPenRefData*)m_refData);
+ UnRef();
+ m_refData = ref;
+ }
}
void wxPen::SetColour(const wxColour& col)
#endif
return PS_SOLID;
}
-