]> git.saurik.com Git - wxWidgets.git/commitdiff
add wxCANCEL_DEFAULT support
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 12 Sep 2008 00:06:42 +0000 (00:06 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 12 Sep 2008 00:06:42 +0000 (00:06 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/gtk/msgdlg.cpp

index 428b1e27204cc9f90e75cf3f3c7c5104d5351e2c..d7b27a4777e399efd0bfe7fccce45b67964f925b 100644 (file)
@@ -208,10 +208,16 @@ void wxMessageDialog::GTKCreateMsgDialog()
             }
         }
 
-        gtk_dialog_set_default_response(dlg,
-                                        m_dialogStyle & wxNO_DEFAULT
-                                            ? GTK_RESPONSE_NO
-                                            : GTK_RESPONSE_YES);
+        // it'd probably be harmless to call gtk_dialog_set_default_response()
+        // twice but why do it if we're going to change the default below
+        // anyhow
+        if ( !(m_dialogStyle & wxCANCEL_DEFAULT) )
+        {
+            gtk_dialog_set_default_response(dlg,
+                                            m_dialogStyle & wxNO_DEFAULT
+                                                ? GTK_RESPONSE_NO
+                                                : GTK_RESPONSE_YES);
+        }
     }
     else if ( addButtons ) // Ok or Ok/Cancel dialog
     {
@@ -222,6 +228,11 @@ void wxMessageDialog::GTKCreateMsgDialog()
                                   GTK_RESPONSE_CANCEL);
         }
     }
+
+    if ( m_dialogStyle & wxCANCEL_DEFAULT )
+    {
+        gtk_dialog_set_default_response(dlg, GTK_RESPONSE_CANCEL);
+    }
 }
 
 int wxMessageDialog::ShowModal()