This is either unnecessary or doesn't work anyhow (they are always centered on
the parent window) and just results in debug error messages.
Simply don't do anything in wxMessageDialog::Centre() when using task dialog
implementation under MSW.
Closes #12699.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66237
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
// return the font used for the text in the message box
static wxFont GetMessageFont();
// return the font used for the text in the message box
static wxFont GetMessageFont();
+protected:
+ // Override this as task dialogs are always centered on parent.
+ virtual void DoCentre(int dir);
+
private:
// hook procedure used to adjust the message box beyond what the standard
// MessageBox() function can do for us
private:
// hook procedure used to adjust the message box beyond what the standard
// MessageBox() function can do for us
return ShowMessageBox();
}
return ShowMessageBox();
}
+void wxMessageDialog::DoCentre(int dir)
+{
+#ifdef wxHAS_MSW_TASKDIALOG
+ // Task dialog is always centered on its parent window and trying to center
+ // it manually doesn't work because its HWND is not created yet so don't
+ // even try as this would only result in (debug) error messages.
+ if ( HasNativeTaskDialog() )
+ return;
+#endif // wxHAS_MSW_TASKDIALOG
+
+ return wxMessageDialogBase::DoCentre(dir);
+}
+
// ----------------------------------------------------------------------------
// Helpers of the wxMSWMessageDialog namespace
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// Helpers of the wxMSWMessageDialog namespace
// ----------------------------------------------------------------------------