#pragma hdrstop
#endif
+#include "wx/renderer.h"
+
#ifndef WX_PRECOMP
#include "wx/string.h"
+ #include "wx/dc.h"
+ #include "wx/settings.h"
+ #include "wx/gdicmn.h"
#endif //WX_PRECOMP
-#include "wx/gdicmn.h"
-#include "wx/dc.h"
-
-#include "wx/settings.h"
#include "wx/splitter.h"
#include "wx/dcmirror.h"
#include "wx/module.h"
-#include "wx/renderer.h"
// ----------------------------------------------------------------------------
// wxRendererGeneric: our wxRendererNative implementation
const wxRect& rect,
int flags = 0);
- virtual void DrawCheckButton(wxWindow *win,
- wxDC& dc,
- const wxRect& rect,
- int flags = 0);
+ virtual void DrawCheckBox(wxWindow *win,
+ wxDC& dc,
+ const wxRect& rect,
+ int flags = 0);
virtual void DrawPushButton(wxWindow *win,
wxDC& dc,
wxDC& dc,
const wxRect& rect,
int flags = 0);
-
+
virtual wxSplitterRenderParams GetSplitterParams(const wxWindow *win);
virtual wxRendererVersion GetVersion() const
const wxRect& rect,
int flags)
{
- // white background
- dc.SetPen(*wxGREY_PEN);
- dc.SetBrush(*wxWHITE_BRUSH);
+ // store settings
+ wxDCPenChanger penChanger(dc, *wxGREY_PEN);
+ wxDCBrushChanger brushChanger(dc, *wxWHITE_BRUSH);
+
dc.DrawRectangle(rect);
// black lines
dc.DrawPolygon(WXSIZEOF(pt), pt, rect.x, rect.y);
}
-void
-wxRendererGeneric::DrawCheckButton(wxWindow *WXUNUSED(win),
- wxDC& dc,
- const wxRect& rect,
- int flags)
+void
+wxRendererGeneric::DrawCheckBox(wxWindow *WXUNUSED(win),
+ wxDC& dc,
+ const wxRect& rect,
+ int flags)
{
dc.SetPen(*(flags & wxCONTROL_DISABLED ? wxGREY_PEN : wxBLACK_PEN));
dc.SetBrush( *wxTRANSPARENT_BRUSH );
dc.DrawRectangle(rect);
}
-void
-wxRendererGeneric::DrawItemSelectionRect(wxWindow *win,
- wxDC& dc,
- const wxRect& rect,
- int flags )
+void
+wxRendererGeneric::DrawItemSelectionRect(wxWindow * WXUNUSED(win),
+ wxDC& dc,
+ const wxRect& rect,
+ int flags)
{
- if (flags & wxCONTROL_SELECTED)
+ wxBrush brush;
+ if ( flags & wxCONTROL_SELECTED )
{
- if (flags & wxCONTROL_FOCUSED)
+ if ( flags & wxCONTROL_FOCUSED )
{
- wxBrush brush(
- wxSystemSettings::GetColour
- (
- wxSYS_COLOUR_HIGHLIGHT
- ),
- wxSOLID
- );
- dc.SetBrush( brush );
+ brush = wxBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHT));
}
- else
+ else // !focused
{
- wxBrush brush(
- wxSystemSettings::GetColour
- (
- wxSYS_COLOUR_BTNSHADOW
- ),
- wxSOLID
- );
- dc.SetBrush( brush );
+ brush = wxBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW));
}
}
- else
+ else // !selected
{
- dc.SetBrush( *wxTRANSPARENT_BRUSH );
+ brush = *wxTRANSPARENT_BRUSH;
}
-
-
- if (flags & wxCONTROL_CURRENT)
- dc.SetPen( *wxBLACK_PEN );
- else
- dc.SetPen( *wxTRANSPARENT_PEN );
-
- dc.DrawRectangle( rect );
+
+ dc.SetBrush(brush);
+ dc.SetPen(flags & wxCONTROL_CURRENT ? *wxBLACK_PEN : *wxTRANSPARENT_PEN);
+
+ dc.DrawRectangle( rect );
}