Bmpbuttons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -67,10 +67,10 @@ bool wxBitmapButton::Create(
|
|||||||
m_windowId = vId;
|
m_windowId = vId;
|
||||||
|
|
||||||
if (nWidth == -1 && rBitmap.Ok())
|
if (nWidth == -1 && rBitmap.Ok())
|
||||||
nWidth = rBitmap.GetWidth() + 2 * m_marginX;
|
nWidth = rBitmap.GetWidth() + 4 * m_marginX;
|
||||||
|
|
||||||
if (nHeight == -1 && rBitmap.Ok())
|
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;
|
ULONG ulOS2Style = WS_VISIBLE | WS_TABSTOP | BS_USERBUTTON;
|
||||||
|
|
||||||
@@ -193,10 +193,8 @@ void wxBitmapButton::DrawFace (
|
|||||||
//
|
//
|
||||||
// Set up drawing colors
|
// Set up drawing colors
|
||||||
//
|
//
|
||||||
wxPen vHiLitePen(wxColour(255, 255, 255), 1, wxSOLID); // White
|
wxPen vHiLitePen(wxColour(255, 255, 255), 2, wxSOLID); // White
|
||||||
wxPen vLitePen(wxColour(223, 223, 223), 1, wxSOLID); // Very Light Grey
|
wxPen vDarkShadowPen(wxColour(85, 85, 85), 2, wxSOLID);
|
||||||
wxPen vShadowPen(wxColour(191, 191, 191), 1, wxSOLID); // Medium Grey
|
|
||||||
wxPen vDarkShadowPen(wxColour(128, 128, 128), 1, wxSOLID);
|
|
||||||
wxColour vFaceColor(wxColour(204, 204, 204)); // Light Grey
|
wxColour vFaceColor(wxColour(204, 204, 204)); // Light Grey
|
||||||
|
|
||||||
//
|
//
|
||||||
@@ -208,52 +206,29 @@ void wxBitmapButton::DrawFace (
|
|||||||
// Draw the border
|
// Draw the border
|
||||||
//
|
//
|
||||||
rDC.SetPen(bSel ? vDarkShadowPen : vHiLitePen);
|
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.DrawLine( rDC.m_vRclPaint.xLeft + 1
|
||||||
,rDC.m_vRclPaint.yTop + 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.xRight - 1
|
,rDC.m_vRclPaint.xRight - 1
|
||||||
,rDC.m_vRclPaint.yTop - 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
|
} // end of wxBitmapButton::DrawFace
|
||||||
|
|
||||||
void wxBitmapButton::DrawButtonFocus (
|
void wxBitmapButton::DrawButtonFocus (
|
||||||
|
@@ -149,17 +149,6 @@ wxColour wxSystemSettingsNative::GetColour(
|
|||||||
);
|
);
|
||||||
break;
|
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:
|
case wxSYS_COLOUR_MENUBAR:
|
||||||
vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
|
vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
|
||||||
,SYSCLR_MENU
|
,SYSCLR_MENU
|
||||||
|
@@ -2972,6 +2972,26 @@ MRESULT wxWindowOS2::OS2WindowProc(
|
|||||||
case WM_CONTROL:
|
case WM_CONTROL:
|
||||||
switch(SHORT2FROMMP(wParam))
|
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:
|
case BKN_PAGESELECTEDPENDING:
|
||||||
{
|
{
|
||||||
PPAGESELECTNOTIFY pPage = (PPAGESELECTNOTIFY)lParam;
|
PPAGESELECTNOTIFY pPage = (PPAGESELECTNOTIFY)lParam;
|
||||||
|
Reference in New Issue
Block a user