X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6c20e8f816b21b911e3a8ed8197c21df6ce726d6..2bc4cc1ead29f6de1f0576a416025edadb13d7cc:/src/os2/button.cpp diff --git a/src/os2/button.cpp b/src/os2/button.cpp index 7f02cfd61f..684ee92aa6 100644 --- a/src/os2/button.cpp +++ b/src/os2/button.cpp @@ -22,6 +22,7 @@ #include "wx/settings.h" #include "wx/dcscreen.h" #include "wx/scrolwin.h" + #include "wx/toplevel.h" #endif #include "wx/stockitem.h" @@ -38,8 +39,6 @@ #define BST_CHECKED 0x0001 #endif -IMPLEMENT_DYNAMIC_CLASS(wxButton, wxControl) - // Button bool wxButton::Create( wxWindow* pParent, @@ -79,7 +78,7 @@ bool wxButton::Create( wxWindow* pParent, m_hWnd = (WXHWND)::WinCreateWindow( GetHwndOf(pParent) // Parent handle ,WC_BUTTON // A Button class window - ,(PSZ)sLabel.c_str() // Button text + ,sLabel.c_str() // Button text ,lStyle // Button style ,0, 0, 0, 0 // Location and size ,GetHwndOf(pParent) // Owner handle @@ -230,26 +229,24 @@ bool wxButton::SendClickEvent() return ProcessCommand(vEvent); } // end of wxButton::SendClickEvent -void wxButton::SetDefault() +wxWindow *wxButton::SetDefault() { - wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - - wxCHECK_RET( tlw, _T("button without top level window?") ); - // // Set this one as the default button both for wxWidgets and Windows // - wxWindow* pWinOldDefault = tlw->SetDefaultItem(this); + wxWindow* pWinOldDefault = wxButtonBase::SetDefault(); SetDefaultStyle( wxDynamicCast(pWinOldDefault, wxButton), false); SetDefaultStyle( this, true ); + + return pWinOldDefault; } // end of wxButton::SetDefault void wxButton::SetTmpDefault() { wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( tlw, _T("button without top level window?") ); + wxCHECK_RET( tlw, wxT("button without top level window?") ); wxWindow* pWinOldDefault = tlw->GetDefaultItem(); @@ -262,7 +259,7 @@ void wxButton::UnsetTmpDefault() { wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( tlw, _T("button without top level window?") ); + wxCHECK_RET( tlw, wxT("button without top level window?") ); tlw->SetTmpDefaultItem(NULL); @@ -384,7 +381,7 @@ WXDWORD wxButton::OS2GetStyle( // // We must use WS_CLIPSIBLINGS with the buttons or they would draw over - // each other in any resizeable dialog which has more than one button in + // each other in any resizable dialog which has more than one button in // the bottom // dwStyle |= WS_CLIPSIBLINGS;