コード例 #1
0
void wxBitmapButton::DrawButtonDisable(
  wxClientDC&                       rDC
, wxBitmap&                         rBmp
)
{
    wxPen                           vGreyPen(wxColour(128, 128, 128), 2, wxSOLID);

    //
    // Draw a thick black line around the outside of the button
    //
    rDC.SetPen(vGreyPen);
    rDC.DrawLine( rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yTop
                 ,rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yTop
                );
    rDC.DrawLine( rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yTop
                 ,rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yBottom
                );
    rDC.DrawLine( rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yBottom
                 ,rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yBottom
                );
    rDC.DrawLine( rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yBottom
                 ,rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yTop
                );
    wxDisableBitmap(rBmp, vGreyPen.GetColour().GetPixel());
} // end of wxBitmapButton::DrawButtonDisable
コード例 #2
0
void wxBitmapButton::DrawButtonFocus (
  wxClientDC&                       rDC
)
{
    wxPen                           vBlackPen(wxColour(0, 0, 0), 2, wxSOLID);

    //
    // Draw a thick black line around the outside of the button
    //
    rDC.SetPen(vBlackPen);
    rDC.DrawLine( rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yTop
                 ,rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yTop
                );
    rDC.DrawLine( rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yTop
                 ,rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yBottom
                );
    rDC.DrawLine( rDC.m_vRclPaint.xRight
                 ,rDC.m_vRclPaint.yBottom
                 ,rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yBottom
                );
    rDC.DrawLine( rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yBottom
                 ,rDC.m_vRclPaint.xLeft
                 ,rDC.m_vRclPaint.yTop
                );
} // end of wxBitmapButton::DrawButtonFocus
コード例 #3
0
void wxBitmapButton::DrawFace (wxClientDC& rDC, bool bSel)
{
    //
    // Set up drawing colors
    //
    wxPen vHiLitePen(*wxWHITE, 2, wxSOLID); // White
    wxColour gray85(85, 85, 85);
    wxPen vDarkShadowPen(gray85, 2, wxSOLID);
    wxColour vFaceColor(204, 204, 204); // Light Grey

    //
    // Draw the main button face
    //
    // This triggers a redraw and destroys the bottom & left focus border and
    // doesn't seem to do anything useful.
    //    ::WinFillRect(rDC.GetHPS(), &rDC.m_vRclPaint, vFaceColor.GetPixel());

    //
    // Draw the border
    // Note: DrawLine expects wxWidgets coordinate system so swap
    //
    rDC.SetPen(bSel ? vDarkShadowPen : vHiLitePen);
    wxPMDCImpl                      *impl = (wxPMDCImpl*) rDC.GetImpl();
    // top
    rDC.DrawLine( impl->m_vRclPaint.xLeft + 1
                 ,impl->m_vRclPaint.yBottom + 1
                 ,impl->m_vRclPaint.xRight - 1
                 ,impl->m_vRclPaint.yBottom + 1
                );
    // left
    rDC.DrawLine( impl->m_vRclPaint.xLeft + 1
                 ,impl->m_vRclPaint.yBottom + 1
                 ,impl->m_vRclPaint.xLeft + 1
                 ,impl->m_vRclPaint.yTop - 1
                );

    rDC.SetPen(bSel ? vHiLitePen : vDarkShadowPen);
    // bottom
    rDC.DrawLine( impl->m_vRclPaint.xLeft + 1
                 ,impl->m_vRclPaint.yTop - 1
                 ,impl->m_vRclPaint.xRight - 1
                 ,impl->m_vRclPaint.yTop - 1
                );
    // right
    rDC.DrawLine( impl->m_vRclPaint.xRight - 1
                 ,impl->m_vRclPaint.yBottom + 1
                 ,impl->m_vRclPaint.xRight - 1
                 ,impl->m_vRclPaint.yTop - 1
                );

} // end of wxBitmapButton::DrawFace
コード例 #4
0
void wxBitmapButton::DrawFace (
  wxClientDC&                       rDC
, bool                              bSel
)
{
    //
    // Set up drawing colors
    //
    wxPen                           vHiLitePen(wxColour(255, 255, 255), 2, wxSOLID); // White
    wxPen                           vDarkShadowPen(wxColour(85, 85, 85), 2, wxSOLID);
    wxColour                        vFaceColor(wxColour(204, 204, 204)); // Light Grey

    //
    // Draw the main button face
    //
    ::WinFillRect(rDC.GetHPS(), &rDC.m_vRclPaint, vFaceColor.GetPixel());

    //
    // Draw the border
    //
    rDC.SetPen(bSel ? vDarkShadowPen : vHiLitePen);
    rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
                 ,rDC.m_vRclPaint.yTop - 1
                 ,rDC.m_vRclPaint.xRight - 1
                 ,rDC.m_vRclPaint.yTop - 1
                );
    rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
                 ,rDC.m_vRclPaint.yTop - 1
                 ,rDC.m_vRclPaint.xLeft + 1
                 ,rDC.m_vRclPaint.yBottom + 1
                );

    rDC.SetPen(bSel ? vHiLitePen : vDarkShadowPen);
    rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
                 ,rDC.m_vRclPaint.yBottom + 1
                 ,rDC.m_vRclPaint.xRight - 1
                 ,rDC.m_vRclPaint.yBottom + 1
                );
    rDC.DrawLine( rDC.m_vRclPaint.xRight - 1
                 ,rDC.m_vRclPaint.yTop - 1
                 ,rDC.m_vRclPaint.xRight - 1
                 ,rDC.m_vRclPaint.yBottom + 1
                );

} // end of wxBitmapButton::DrawFace
コード例 #5
0
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
コード例 #6
0
void wxBitmapButton::DrawButtonFocus (
  wxClientDC&                       rDC
)
{
    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