#if wxUSE_THEME_MONO
#ifndef WX_PRECOMP
+ #include "wx/window.h"
#include "wx/dc.h"
#endif // WX_PRECOMP
public:
wxMonoRenderer(const wxColourScheme *scheme);
+ virtual void DrawLabel(wxDC& dc,
+ const wxString& label,
+ const wxRect& rect,
+ int flags = 0,
+ int alignment = wxALIGN_LEFT | wxALIGN_TOP,
+ int indexAccel = -1,
+ wxRect *rectBounds = NULL);
virtual void DrawButtonLabel(wxDC& dc,
const wxString& label,
const wxBitmap& image,
int indexAccel = -1,
wxRect *rectBounds = NULL);
- virtual void DrawFocusRect(wxDC& dc, const wxRect& rect, int flags = 0);
+ virtual void DrawFocusRect(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0);
virtual void DrawButtonBorder(wxDC& dc,
const wxRect& rect,
}
// doesn't depend on the state
- if ( !col.Ok() )
+ if ( !col.IsOk() )
{
col = GetBg();
}
case TITLEBAR_ACTIVE:
case HIGHLIGHT_TEXT:
case DESKTOP:
+ case FRAME:
return GetBg();
case MAX:
default:
- wxFAIL_MSG(_T("invalid standard colour"));
+ wxFAIL_MSG(wxT("invalid standard colour"));
// fall through
case SHADOW_DARK:
case wxBORDER_STATIC:
case wxBORDER_RAISED:
case wxBORDER_SUNKEN:
+ case wxBORDER_THEME:
width = 1;
break;
-
+ /*
case wxBORDER_DOUBLE:
width = 2;
break;
-
+ */
default:
- wxFAIL_MSG(_T("unknown border type"));
+ wxFAIL_MSG(wxT("unknown border type"));
// fall through
case wxBORDER_DEFAULT:
dc.DrawLine(x, y1, x, y2 + 1);
}
-void wxMonoRenderer::DrawFocusRect(wxDC& dc, const wxRect& rect, int flags)
+void wxMonoRenderer::DrawFocusRect(wxWindow* WXUNUSED(win), wxDC& dc, const wxRect& rect, int flags)
{
// no need to draw the focus rect for selected items, it would be invisible
// anyhow
// label
// ----------------------------------------------------------------------------
+void wxMonoRenderer::DrawLabel(wxDC& dc,
+ const wxString& label,
+ const wxRect& rect,
+ int WXUNUSED(flags),
+ int alignment,
+ int indexAccel,
+ wxRect *rectBounds)
+{
+ dc.DrawLabel(label, wxNullBitmap, rect, alignment, indexAccel, rectBounds);
+}
+
void wxMonoRenderer::DrawButtonLabel(wxDC& dc,
const wxString& label,
const wxBitmap& image,
int indexAccel,
wxRect *rectBounds)
{
- dc.SetTextForeground(m_penFg.GetColour());
dc.DrawLabel(label, image, rect, alignment, indexAccel, rectBounds);
if ( flags & wxCONTROL_DISABLED )
GetIndicatorsFromFlags(flags, indState, indStatus);
wxBitmap& bmp = m_bmpIndicators[indType][indState][indStatus];
- if ( !bmp.Ok() )
+ if ( !bmp.IsOk() )
{
const char **xpm = ms_xpmIndicators[indType][indState][indStatus];
if ( xpm )
{
if ( type == FrameButton_Close )
{
- if ( !m_bmpFrameClose.Ok() )
+ if ( !m_bmpFrameClose.IsOk() )
{
static const char *xpmFrameClose[] = {
/* columns rows colors chars-per-pixel */
long WXUNUSED(style),
int WXUNUSED(tbarStyle))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
wxSize wxMonoRenderer::GetToolBarButtonSize(wxCoord *WXUNUSED(separator)) const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
wxSize wxMonoRenderer::GetToolBarMargin() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
int WXUNUSED(flags),
int WXUNUSED(indexAccel))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
wxSize wxMonoRenderer::GetTabIndent() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
wxSize wxMonoRenderer::GetTabPadding() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
wxBitmap *WXUNUSED(bmpPressed),
wxBitmap *WXUNUSED(bmpDisabled))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
#endif // wxUSE_COMBOBOX
int WXUNUSED(flags),
int WXUNUSED(indexAccel))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
void wxMonoRenderer::DrawMenuItem(wxDC& WXUNUSED(dc),
int WXUNUSED(flags),
int WXUNUSED(indexAccel))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
void wxMonoRenderer::DrawMenuSeparator(wxDC& WXUNUSED(dc),
wxCoord WXUNUSED(y),
const wxMenuGeometryInfo& WXUNUSED(geomInfo))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
wxSize wxMonoRenderer::GetMenuBarItemSize(const wxSize& WXUNUSED(sizeText)) const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
wxMenuGeometryInfo *wxMonoRenderer::GetMenuGeometry(wxWindow *WXUNUSED(win),
const wxMenu& WXUNUSED(menu)) const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return NULL;
}
long WXUNUSED(style),
wxRect *WXUNUSED(rectShaft))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
int WXUNUSED(flags),
long WXUNUSED(style))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
void wxMonoRenderer::DrawSliderTicks(wxDC& WXUNUSED(dc),
int WXUNUSED(flags),
long WXUNUSED(style))
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
}
wxCoord wxMonoRenderer::GetSliderDim() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return 0;
}
wxCoord wxMonoRenderer::GetSliderTickLen() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return 0;
}
wxOrientation WXUNUSED(orient),
long WXUNUSED(style)) const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxRect();
}
int WXUNUSED(lenThumb),
wxOrientation WXUNUSED(orient)) const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
wxSize wxMonoRenderer::GetProgressBarStep() const
{
- wxFAIL_MSG(_T("TODO"));
+ wxFAIL_MSG(wxT("TODO"));
return wxSize();
}
int WXUNUSED(flags))
{
ArrowDirection arrowDir = GetArrowDirection(dir);
- wxCHECK_RET( arrowDir != Arrow_Max, _T("invalid arrow direction") );
+ wxCHECK_RET( arrowDir != Arrow_Max, wxT("invalid arrow direction") );
wxBitmap& bmp = m_bmpArrows[arrowDir];
- if ( !bmp.Ok() )
+ if ( !bmp.IsOk() )
{
bmp = wxBitmap(ms_xpmArrows[arrowDir]);
}
const wxRect& rect,
int WXUNUSED(flags))
{
- DrawSolidRect(dc, wxMONO_FG_COL, rect);
+ DrawSolidRect(dc, wxMONO_BG_COL, rect);
+
+ // manually draw stipple pattern (wxDFB doesn't implement the wxSTIPPLE
+ // brush style):
+ dc.SetPen(m_penFg);
+ for ( wxCoord y = rect.GetTop(); y <= rect.GetBottom(); y++ )
+ {
+ for ( wxCoord x = rect.GetLeft() + (y % 2); x <= rect.GetRight(); x+=2 )
+ {
+ dc.DrawPoint(x, y);
+ }
+ }
}
void wxMonoRenderer::DrawScrollbarShaft(wxDC& dc,