Bmpbuttons

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2002-09-10 03:46:22 +00:00
parent fbd9040196
commit a579926062
3 changed files with 43 additions and 59 deletions

View File

@@ -67,10 +67,10 @@ bool wxBitmapButton::Create(
m_windowId = vId;
if (nWidth == -1 && rBitmap.Ok())
nWidth = rBitmap.GetWidth() + 2 * m_marginX;
nWidth = rBitmap.GetWidth() + 4 * m_marginX;
if (nHeight == -1 && rBitmap.Ok())
nHeight = rBitmap.GetHeight() + 2 * m_marginY;
nHeight = rBitmap.GetHeight() + 4 * m_marginY;
ULONG ulOS2Style = WS_VISIBLE | WS_TABSTOP | BS_USERBUTTON;
@@ -193,10 +193,8 @@ void wxBitmapButton::DrawFace (
//
// Set up drawing colors
//
wxPen vHiLitePen(wxColour(255, 255, 255), 1, wxSOLID); // White
wxPen vLitePen(wxColour(223, 223, 223), 1, wxSOLID); // Very Light Grey
wxPen vShadowPen(wxColour(191, 191, 191), 1, wxSOLID); // Medium Grey
wxPen vDarkShadowPen(wxColour(128, 128, 128), 1, wxSOLID);
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
//
@@ -208,52 +206,29 @@ void wxBitmapButton::DrawFace (
// Draw the border
//
rDC.SetPen(bSel ? vDarkShadowPen : vHiLitePen);
rDC.DrawLine( rDC.m_vRclPaint.xLeft
,rDC.m_vRclPaint.yTop
,rDC.m_vRclPaint.xRight - 1
,rDC.m_vRclPaint.yTop
);
rDC.DrawLine( rDC.m_vRclPaint.xLeft
,rDC.m_vRclPaint.yTop + 1
,rDC.m_vRclPaint.xLeft
,rDC.m_vRclPaint.yBottom - 1
);
rDC.SetPen(bSel ? vShadowPen : vLitePen);
rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
,rDC.m_vRclPaint.yTop + 1
,rDC.m_vRclPaint.xRight - 2
,rDC.m_vRclPaint.yTop + 1
);
rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
,rDC.m_vRclPaint.yTop + 2
,rDC.m_vRclPaint.xLeft + 1
,rDC.m_vRclPaint.yBottom - 2
);
rDC.SetPen(bSel ? vLitePen : vShadowPen);
rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
,rDC.m_vRclPaint.yBottom - 2
,rDC.m_vRclPaint.xRight - 1
,rDC.m_vRclPaint.yBottom - 2
);
rDC.DrawLine( rDC.m_vRclPaint.xRight - 2
,rDC.m_vRclPaint.yBottom - 3
,rDC.m_vRclPaint.xRight - 2
,rDC.m_vRclPaint.yTop
);
rDC.SetPen(bSel ? vDarkShadowPen : vHiLitePen);
rDC.DrawLine( rDC.m_vRclPaint.xLeft
,rDC.m_vRclPaint.yBottom - 1
,rDC.m_vRclPaint.xRight + 2
,rDC.m_vRclPaint.yBottom - 1
);
rDC.DrawLine( rDC.m_vRclPaint.xRight - 1
,rDC.m_vRclPaint.yBottom - 2
,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
void wxBitmapButton::DrawButtonFocus (

View File

@@ -149,17 +149,6 @@ wxColour wxSystemSettingsNative::GetColour(
);
break;
case wxSYS_COLOUR_BTNDARKSHADOW:
vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
,SYSCLR_BUTTONDARK
,0L
);
vCol.Set( GetRValue(vRef)
,GetGValue(vRef)
,GetBValue(vRef)
);
break;
case wxSYS_COLOUR_MENUBAR:
vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
,SYSCLR_MENU

View File

@@ -2972,6 +2972,26 @@ MRESULT wxWindowOS2::OS2WindowProc(
case WM_CONTROL:
switch(SHORT2FROMMP(wParam))
{
case BN_PAINT:
{
HWND hWnd = ::WinWindowFromID((HWND)GetHwnd(), SHORT1FROMMP(wParam));
wxWindowOS2* pWin = wxFindWinFromHandle(hWnd);
if (!pWin)
{
bProcessed = FALSE;
break;
}
if (pWin->IsKindOf(CLASSINFO(wxBitmapButton)))
{
wxBitmapButton* pBitmapButton = wxDynamicCast(pWin, wxBitmapButton);
pBitmapButton->OS2OnDraw((WXDRAWITEMSTRUCT *)lParam);
}
return 0;
}
break;
case BKN_PAGESELECTEDPENDING:
{
PPAGESELECTNOTIFY pPage = (PPAGESELECTNOTIFY)lParam;