X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f1e01716310cb6e3bfcf5894b442d277bc32789a..7f3450784cc9c696f269ff1bfde3623c180d4b58:/src/os2/button.cpp diff --git a/src/os2/button.cpp b/src/os2/button.cpp index 2e9a10d578..838cc7413b 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" @@ -116,16 +117,16 @@ bool wxButton::Create( wxWindow* pParent, wxButton::~wxButton() { - wxPanel* pPanel = wxDynamicCast(GetParent(), wxPanel); + wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - if (pPanel) + if (tlw) { - if (pPanel->GetDefaultItem() == this) + if (tlw->GetDefaultItem() == this) { // // Don't leave the panel with invalid default item // - pPanel->SetDefaultItem(NULL); + tlw->SetDefaultItem(NULL); } } } // end of wxButton::~wxButton @@ -232,14 +233,14 @@ bool wxButton::SendClickEvent() void wxButton::SetDefault() { - wxWindow* pParent = GetParent(); + wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( pParent, _T("button without parent?") ); + wxCHECK_RET( tlw, _T("button without top level window?") ); // // Set this one as the default button both for wxWidgets and Windows // - wxWindow* pWinOldDefault = pParent->SetDefaultItem(this); + wxWindow* pWinOldDefault = tlw->SetDefaultItem(this); SetDefaultStyle( wxDynamicCast(pWinOldDefault, wxButton), false); SetDefaultStyle( this, true ); @@ -247,26 +248,26 @@ void wxButton::SetDefault() void wxButton::SetTmpDefault() { - wxWindow* pParent = GetParent(); + wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( pParent, _T("button without parent?") ); + wxCHECK_RET( tlw, _T("button without top level window?") ); - wxWindow* pWinOldDefault = pParent->GetDefaultItem(); + wxWindow* pWinOldDefault = tlw->GetDefaultItem(); - pParent->SetTmpDefaultItem(this); + tlw->SetTmpDefaultItem(this); SetDefaultStyle( wxDynamicCast(pWinOldDefault, wxButton), false); SetDefaultStyle( this, true ); } // end of wxButton::SetTmpDefault void wxButton::UnsetTmpDefault() { - wxWindow* pParent = GetParent(); + wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( pParent, _T("button without parent?") ); + wxCHECK_RET( tlw, _T("button without top level window?") ); - pParent->SetTmpDefaultItem(NULL); + tlw->SetTmpDefaultItem(NULL); - wxWindow* pWinOldDefault = pParent->GetDefaultItem(); + wxWindow* pWinOldDefault = tlw->GetDefaultItem(); SetDefaultStyle( this, false ); SetDefaultStyle( wxDynamicCast(pWinOldDefault, wxButton), true );