X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c299c3ab663257429983c24e6fb71450f3cf9f1..d07f2e19181bc5caf29eb2338ce513be6fa42405:/src/os2/statbox.cpp?ds=sidebyside diff --git a/src/os2/statbox.cpp b/src/os2/statbox.cpp index 16a28e6c60..c1512ea6a8 100644 --- a/src/os2/statbox.cpp +++ b/src/os2/statbox.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: statbox.cpp +// Name: src/os2/statbox.cpp // Purpose: wxStaticBox // Author: David Webster // Modified by: @@ -12,73 +12,73 @@ // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/window.h" -#include "wx/os2/private.h" +#include "wx/statbox.h" #ifndef WX_PRECOMP -#include "wx/app.h" -#include "wx/dcclient.h" + #include "wx/app.h" + #include "wx/dcclient.h" + #include "wx/window.h" #endif -#include "wx/statbox.h" - -IMPLEMENT_DYNAMIC_CLASS(wxStaticBox, wxControl) +#include "wx/os2/private.h" -bool wxStaticBox::Create( - wxWindow* pParent -, wxWindowID vId -, const wxString& rsLabel -, const wxPoint& rPos -, const wxSize& rSize -, long lStyle -, const wxString& rsName -) +bool wxStaticBox::Create( wxWindow* pParent, + wxWindowID vId, + const wxString& rsLabel, + const wxPoint& rPos, + const wxSize& rSize, + long lStyle, + const wxString& rsName ) { - if(!OS2CreateControl( pParent - ,vId - ,rPos - ,rSize - ,lStyle -#if wxUSE_VALIDATORS - ,wxDefaultValidator -#endif - ,rsName - )) + if(!CreateControl( pParent + ,vId + ,rPos + ,rSize + ,lStyle + ,wxDefaultValidator + ,rsName + )) { - return FALSE; + return false; } - wxPoint vPos(0,0); - wxSize vSize(0,0); + wxPoint vPos(0,0); + wxSize vSize(0,0); - if (!OS2CreateControl( "STATIC" + if (!OS2CreateControl( wxT("STATIC") ,SS_GROUPBOX ,vPos ,vSize ,rsLabel )) { - return FALSE; + return false; } - wxColour vColour; - - vColour.Set(wxString("BLACK")); - - LONG lColor = (LONG)vColour.GetPixel(); + // + // To be transparent we should have the same colour as the parent as well + // + SetBackgroundColour(GetParent()->GetBackgroundColour()); + LONG lColor = (LONG)wxBLACK->GetPixel(); ::WinSetPresParam( m_hWnd ,PP_FOREGROUNDCOLOR ,sizeof(LONG) ,(PVOID)&lColor ); - SetFont(pParent->GetFont()); + + lColor = (LONG)m_backgroundColour.GetPixel(); + ::WinSetPresParam( m_hWnd + ,PP_BACKGROUNDCOLOR + ,sizeof(LONG) + ,(PVOID)&lColor + ); SetSize( rPos.x ,rPos.y ,rSize.x ,rSize.y ); - return TRUE; + return true; } // end of wxStaticBox::Create wxSize wxStaticBox::DoGetBestSize() const @@ -87,14 +87,11 @@ wxSize wxStaticBox::DoGetBestSize() const int nCy; int wBox; - wxGetCharSize( GetHWND() - ,&nCx - ,&nCy - ,(wxFont*)&GetFont() - ); + nCx = GetCharWidth(); + nCy = GetCharHeight(); GetTextExtent( wxGetWindowText(m_hWnd) ,&wBox - ,&nCy + ,NULL ); wBox += 3 * nCx; @@ -105,13 +102,9 @@ wxSize wxStaticBox::DoGetBestSize() const ); } // end of wxStaticBox::DoGetBestSize -MRESULT wxStaticBox::OS2WindowProc( - WXUINT nMsg -, WXWPARAM wParam -, WXLPARAM lParam -) +MRESULT wxStaticBox::OS2WindowProc( WXUINT nMsg, + WXWPARAM wParam, + WXLPARAM lParam ) { return wxControl::OS2WindowProc(nMsg, wParam, lParam); } // end of wxStaticBox::OS2WindowProc - -