X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0be274189380d9de3c60836dab2fc080f21f88ee..35bb3cb155917b4287fb2a3841bea22919a3d499:/src/mac/carbon/dialog.cpp diff --git a/src/mac/carbon/dialog.cpp b/src/mac/carbon/dialog.cpp index f75fdfbd7a..2a127e7631 100644 --- a/src/mac/carbon/dialog.cpp +++ b/src/mac/carbon/dialog.cpp @@ -29,17 +29,6 @@ wxList wxModalDialogs; IMPLEMENT_DYNAMIC_CLASS(wxDialog, wxTopLevelWindow) -BEGIN_EVENT_TABLE(wxDialog, wxDialogBase) - EVT_BUTTON(wxID_OK, wxDialog::OnOK) - EVT_BUTTON(wxID_APPLY, wxDialog::OnApply) - EVT_BUTTON(wxID_CANCEL, wxDialog::OnCancel) - - EVT_SYS_COLOUR_CHANGED(wxDialog::OnSysColourChanged) - - EVT_CLOSE(wxDialog::OnCloseWindow) -END_EVENT_TABLE() - - void wxDialog::Init() { m_isModalStyle = false; @@ -117,11 +106,6 @@ bool wxDialog::IsModal() const } -bool wxDialog::IsModalShowing() const -{ - return wxModalDialogs.Find((wxDialog *)this) != NULL; // const_cast -} - bool wxDialog::Show(bool show) { if ( !wxDialogBase::Show(show) ) @@ -155,7 +139,7 @@ extern bool s_macIsInModalLoop ; void wxDialog::DoShowModal() { - wxCHECK_RET( !IsModalShowing(), wxT("DoShowModal() called twice") ); + wxCHECK_RET( !IsModal(), wxT("DoShowModal() called twice") ); wxModalDialogs.Append(this); @@ -169,7 +153,7 @@ void wxDialog::DoShowModal() s_macIsInModalLoop = true ; #endif - while ( IsModalShowing() ) + while ( IsModal() ) { wxTheApp->MacDoOneEvent() ; // calls process idle itself @@ -204,58 +188,3 @@ void wxDialog::EndModal(int retCode) SetModal(false); } -// Standard buttons -void wxDialog::OnOK(wxCommandEvent& WXUNUSED(event)) -{ - if ( Validate() && TransferDataFromWindow() ) - EndModal(wxID_OK); -} - -void wxDialog::OnApply(wxCommandEvent& WXUNUSED(event)) -{ - if (Validate()) - TransferDataFromWindow(); - - // TODO probably need to disable the Apply button until things change again -} - -void wxDialog::OnCancel(wxCommandEvent& WXUNUSED(event)) -{ - EndModal(wxID_CANCEL); -} - -void wxDialog::OnCloseWindow(wxCloseEvent& WXUNUSED(event)) -{ - // We'll send a Cancel message by default, - // which may close the dialog. - // Check for looping if the Cancel event handler calls Close(). - - // Note that if a cancel button and handler aren't present in the dialog, - // nothing will happen when you close the dialog via the window manager, or - // via Close(). - // We wouldn't want to destroy the dialog by default, since the dialog may have been - // created on the stack. - // However, this does mean that calling dialog->Close() won't delete the dialog - // unless the handler for wxID_CANCEL does so. So use Destroy() if you want to be - // sure to destroy the dialog. - // The default OnCancel (above) simply ends a modal dialog, and hides a modeless dialog. - - static wxList closing; - - if ( closing.Member(this) ) - return; - - closing.Append(this); - - wxCommandEvent cancelEvent(wxEVT_COMMAND_BUTTON_CLICKED, wxID_CANCEL); - cancelEvent.SetEventObject( this ); - GetEventHandler()->ProcessEvent(cancelEvent); // This may close the dialog - - closing.DeleteObject(this); -} - -void wxDialog::OnSysColourChanged(wxSysColourChangedEvent& WXUNUSED(event)) -{ - SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE)); - Refresh(); -}