+    if (m_parent)
+        gtk_window_set_transient_for(GTK_WINDOW(m_widget),
+                                     GTK_WINDOW(m_parent->m_widget));
+}
+
+wxMessageDialog::~wxMessageDialog()
+{
+}
+
+int wxMessageDialog::ShowModal()
+{
+    // This should be necessary, but otherwise the
+    // parent TLW will disappear..
+    if (m_parent)
+        gtk_window_present( GTK_WINDOW(m_parent->m_widget) );
+
+    gint result = gtk_dialog_run(GTK_DIALOG(m_widget));
+    gtk_widget_destroy(m_widget);
+    m_widget = NULL;