]> git.saurik.com Git - wxWidgets.git/commitdiff
Bmpbuttons
authorDavid Webster <Dave.Webster@bhmi.com>
Tue, 10 Sep 2002 03:46:22 +0000 (03:46 +0000)
committerDavid Webster <Dave.Webster@bhmi.com>
Tue, 10 Sep 2002 03:46:22 +0000 (03:46 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/os2/bmpbuttn.cpp
src/os2/settings.cpp
src/os2/window.cpp

index 3118216b059ece9bdd64e467fcb065fc1ead2b2f..e3ae729688c8788d8158034c1e5262d329075eb5 100644 (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.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 + 2
+                 ,rDC.m_vRclPaint.yTop - 1
                  ,rDC.m_vRclPaint.xLeft + 1
-                 ,rDC.m_vRclPaint.yBottom - 2
+                 ,rDC.m_vRclPaint.yBottom + 1
                 );
 
-    rDC.SetPen(bSel ? vLitePen : vShadowPen);
+    rDC.SetPen(bSel ? vHiLitePen : vDarkShadowPen);
     rDC.DrawLine( rDC.m_vRclPaint.xLeft + 1
-                 ,rDC.m_vRclPaint.yBottom - 2
+                 ,rDC.m_vRclPaint.yBottom + 1
                  ,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.m_vRclPaint.yBottom + 1
                 );
     rDC.DrawLine( rDC.m_vRclPaint.xRight - 1
-                 ,rDC.m_vRclPaint.yBottom - 2
-                 ,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 (
index de9acf20c86fbff1ba491218931957cbabdc5462..4c70221cb8ae57ea3e9b8766779fdc05bc6345fc 100644 (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
index 6382bbee261d87bdb45bef13d119c555f5b2c025..2d3bee6535cc933bd69d3e3592bbb6789dd417d1 100644 (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;