+ wxPen vBlackPen(*wxBLACK, 2, wxSOLID);
+
+ //
+ // Draw a thick black line around the outside of the button
+ // Note: DrawLine expects wxWidgets coordinate system so swap
+ //
+ rDC.SetPen(vBlackPen);
+ wxPMDCImpl *impl = (wxPMDCImpl*) rDC.GetImpl();
+ // top
+ rDC.DrawLine( impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yBottom
+ ,impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yBottom
+ );
+ // right
+ rDC.DrawLine( impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yBottom
+ ,impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yTop
+ );
+ // bottom
+ rDC.DrawLine( impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yTop
+ ,impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yTop
+ );
+ // left
+ rDC.DrawLine( impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yTop
+ ,impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yBottom
+ );
+} // end of wxBitmapButton::DrawButtonFocus
+
+void wxBitmapButton::DrawButtonDisable( wxClientDC& rDC,
+ wxBitmap& rBmp )
+{
+ wxPen vGreyPen(wxT("GREY"), 2, wxSOLID);
+
+ //
+ // Draw a thick black line around the outside of the button
+ // Note: DrawLine expects wxWidgets coordinate system so swap
+ //
+ rDC.SetPen(vGreyPen);
+ wxPMDCImpl *impl = (wxPMDCImpl*) rDC.GetImpl();
+ // top
+ rDC.DrawLine( impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yBottom
+ ,impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yBottom
+ );
+ // right
+ rDC.DrawLine( impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yBottom
+ ,impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yTop
+ );
+ // bottom
+ rDC.DrawLine( impl->m_vRclPaint.xRight
+ ,impl->m_vRclPaint.yTop
+ ,impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yTop
+ );
+ // left
+ rDC.DrawLine( impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yTop
+ ,impl->m_vRclPaint.xLeft
+ ,impl->m_vRclPaint.yBottom
+ );
+ wxDisableBitmap(rBmp, vGreyPen.GetColour().GetPixel());
+} // end of wxBitmapButton::DrawButtonDisable