Improved wxDCPen/BrushChangers.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2006-05-23 14:11:55 +00:00
parent fbb67d0e52
commit 0164f8ebfd
2 changed files with 10 additions and 22 deletions

View File

@@ -876,7 +876,10 @@ private:
class WXDLLEXPORT wxDCPenChanger
{
public:
wxDCPenChanger(wxDC& dc) : m_dc(dc), m_penOld() { }
wxDCPenChanger(wxDC& dc, const wxPen& pen) : m_dc(dc), m_penOld(dc.GetPen())
{
m_dc.SetPen(pen);
}
~wxDCPenChanger()
{
@@ -884,13 +887,6 @@ public:
m_dc.SetPen(m_penOld);
}
void Set(const wxPen& pen)
{
if ( !m_penOld.Ok() )
m_penOld = m_dc.GetPen();
m_dc.SetPen(pen);
}
private:
wxDC& m_dc;
@@ -907,7 +903,10 @@ private:
class WXDLLEXPORT wxDCBrushChanger
{
public:
wxDCBrushChanger(wxDC& dc) : m_dc(dc), m_brushOld() { }
wxDCBrushChanger(wxDC& dc, const wxBrush& brush) : m_dc(dc), m_brushOld(dc.GetBrush())
{
m_dc.SetBrush(brush);
}
~wxDCBrushChanger()
{
@@ -915,13 +914,6 @@ public:
m_dc.SetBrush(m_brushOld);
}
void Set(const wxBrush& brush)
{
if ( !m_brushOld.Ok() )
m_brushOld = m_dc.GetBrush();
m_dc.SetBrush(brush);
}
private:
wxDC& m_dc;

View File

@@ -232,12 +232,8 @@ wxRendererGeneric::DrawTreeItemButton(wxWindow * WXUNUSED(win),
int flags)
{
// store settings
wxDCPenChanger penChanger(dc);
wxDCBrushChanger brushChanger(dc);
// white background
penChanger.Set(*wxGREY_PEN);
brushChanger.Set(*wxWHITE_BRUSH);
wxDCPenChanger penChanger(dc, *wxGREY_PEN);
wxDCBrushChanger brushChanger(dc, *wxWHITE_BRUSH);
dc.DrawRectangle(rect);