+ if (g_isIdle)
+ wxapp_install_idle_handler();
+
+ /* I haven''t been able to set the position of
+ the dialog before it is shown, so I set the
+ position in "realize" and "map" */
+ gtk_widget_set_uposition( widget, win->m_x, win->m_y );
+
+ /* set size hints */
+ gint flag = GDK_HINT_POS;
+ if ((win->GetMinWidth() != -1) || (win->GetMinHeight() != -1)) flag |= GDK_HINT_MIN_SIZE;
+ if ((win->GetMaxWidth() != -1) || (win->GetMaxHeight() != -1)) flag |= GDK_HINT_MAX_SIZE;
+ if (flag)
+ {
+ gdk_window_set_hints( win->m_widget->window,
+ win->m_x, win->m_y,
+ win->GetMinWidth(), win->GetMinHeight(),
+ win->GetMaxWidth(), win->GetMaxHeight(),
+ flag );
+ }
+
+ /* reset the icon */
+ if (win->m_icon != wxNullIcon)
+ {
+ wxIcon icon( win->m_icon );
+ win->m_icon = wxNullIcon;
+ win->SetIcon( icon );
+ }
+
+ return FALSE;
+}
+
+//-----------------------------------------------------------------------------
+// "map" from m_widget
+//-----------------------------------------------------------------------------
+
+static gint
+gtk_dialog_map_callback( GtkWidget *widget, wxDialog *win )
+{
+ if (g_isIdle)
+ wxapp_install_idle_handler();
+
+ /* I haven''t been able to set the position of
+ the dialog before it is shown, so I set the
+ position in "realize" and "map" */
+ gtk_widget_set_uposition( widget, win->m_x, win->m_y );
+