X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a086de984d366b97e91b39aaba7acd84430d963a..22e3c5bd85233ba23fbb62cd421a7dd173adfa73:/src/os2/checkbox.cpp?ds=sidebyside diff --git a/src/os2/checkbox.cpp b/src/os2/checkbox.cpp index 720eff958e..e4df892446 100644 --- a/src/os2/checkbox.cpp +++ b/src/os2/checkbox.cpp @@ -29,6 +29,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxCheckBox, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxBitmapCheckBox, wxCheckBox) +extern void wxAssociateWinWithHandle( HWND hWnd + ,wxWindowOS2* pWin + ); + // ============================================================================ // implementation // ============================================================================ @@ -58,42 +62,52 @@ bool wxCheckBox::Create( , const wxPoint& rPos , const wxSize& rSize , long lStyle -#if wxUSE_VALIDATORS , const wxValidator& rValidator -#endif , const wxString& rsName ) { + LONG lColor; + bool bOk; + if (!CreateControl( pParent ,vId ,rPos ,rSize ,lStyle -#if wxUSE_VALIDATORS - ,wxDefaultValidator -#endif + ,rValidator ,rsName )) return FALSE; + long osStyle = BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE; - return OS2CreateControl( wxT("BUTTON") - ,osStyle - ,rPos - ,rSize - ,rsLabel - ,0 - ); + bOk = OS2CreateControl( wxT("BUTTON") + ,osStyle + ,rPos + ,rSize + ,rsLabel + ,0 + ); + m_backgroundColour = pParent->GetBackgroundColour(); + lColor = (LONG)m_backgroundColour.GetPixel(); + ::WinSetPresParam( m_hWnd + ,PP_BACKGROUNDCOLOR + ,sizeof(LONG) + ,(PVOID)&lColor + ); + wxAssociateWinWithHandle(m_hWnd, this); + return bOk; } // end of wxCheckBox::Create void wxCheckBox::SetLabel( const wxString& rsLabel ) { - ::WinSetWindowText(GetHwnd(), rsLabel.c_str()); + wxString sLabel=::wxPMTextToLabel(rsLabel); + ::WinSetWindowText(GetHwnd(), (PSZ)sLabel.c_str()); } // end of wxCheckBox::SetLabel wxSize wxCheckBox::DoGetBestSize() const @@ -175,9 +189,7 @@ bool wxBitmapCheckBox::Create( , const wxPoint& rPos , const wxSize& rSize , long lStyle -#if wxUSE_VALIDATORS , const wxValidator& rValidator -#endif , const wxString& rsName ) {