diff --git a/samples/dialogs/dialogs.cpp b/samples/dialogs/dialogs.cpp index e8df89afe6..c6419f1ea6 100644 --- a/samples/dialogs/dialogs.cpp +++ b/samples/dialogs/dialogs.cpp @@ -657,7 +657,7 @@ void MyFrame::ShowProgress( wxCommandEvent& WXUNUSED(event) ) wxPD_REMAINING_TIME); bool cont = TRUE; - for ( int i = 0; i <= max && cont; i++ ) + for ( int i = 0; i <= max; i++ ) { wxSleep(1); if ( i == max ) @@ -672,6 +672,17 @@ void MyFrame::ShowProgress( wxCommandEvent& WXUNUSED(event) ) { cont = dialog.Update(i); } + + if ( !cont ) + { + if ( wxMessageBox("Do you really want to cancel?\n" + "Second line.", // message + "Dialogs question", // caption + wxYES_NO | wxCENTRE) == wxYES ) + break; + + dialog.Resume(); + } } if ( !cont )