extern void wxapp_install_idle_handler();
extern bool g_isIdle;
+extern int g_openDialogs;
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
static gint
-#if (GTK_MINOR_VERSON > 0)
+#if (GTK_MINOR_VERSION > 0)
gtk_dialog_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *WXUNUSED(event), wxDialog *win )
#else
gtk_dialog_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *event, wxDialog *win )
if (!win->m_hasVMT) return FALSE;
-#if (GTK_MINOR_VERSON > 0)
+#if (GTK_MINOR_VERSION > 0)
int x = 0;
int y = 0;
gdk_window_get_root_origin( win->m_widget->window, &x, &y );
if (g_isIdle)
wxapp_install_idle_handler();
- // FIXME I don't know when does it appear, but it's not in 1.2.2
-#if GTK_CHECK_VERSION(1, 2, 3)
/* I haven't been able to set the position of
the dialog before it is shown, so I set the
position in "realize" */
- gtk_window_reposition( GTK_WINDOW(widget), win->m_x, win->m_y );
-#endif // GTK > 1.2.2
+ gtk_widget_set_uposition( widget, win->m_x, win->m_y );
/* all this is for Motif Window Manager "hints" and is supposed to be
recognized by other WM as well. not tested. */
gtk_window_set_policy(GTK_WINDOW(win->m_widget), 1, 1, 1);
/* set size hints */
- gint flag = GDK_HINT_POS;
+ gint flag = 0; // 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 );
+ win->m_x, win->m_y,
+ win->GetMinWidth(), win->GetMinHeight(),
+ win->GetMaxWidth(), win->GetMaxHeight(),
+ flag );
}
/* reset the icon */
const wxPoint &pos, const wxSize &size,
long style, const wxString &name )
{
+ g_openDialogs++;
+
wxTopLevelWindows.Append( this );
m_needParent = FALSE;
!CreateBase( parent, id, pos, size, style, wxDefaultValidator, name ))
{
wxFAIL_MSG( wxT("wxDialog creation failed") );
- return FALSE;
+ return FALSE;
}
m_insertCallback = (wxInsertChildFunction) wxInsertChildInDialog;
{
wxTheApp->ExitMainLoop();
}
+
+ g_openDialogs--;
}
void wxDialog::SetTitle( const wxString& title )
int old_x = m_x;
int old_y = m_y;
+
int old_width = m_width;
int old_height = m_height;
if ((m_maxWidth != -1) && (m_width > m_maxWidth)) m_width = m_maxWidth;
if ((m_maxHeight != -1) && (m_height > m_maxHeight)) m_height = m_maxHeight;
- // FIXME I don't know when does it appear, but it's not in 1.2.2
-#if GTK_CHECK_VERSION(1, 2, 3)
if ((m_x != -1) || (m_y != -1))
{
if ((m_x != old_x) || (m_y != old_y))
{
/* we set the position here and when showing the dialog
for the first time in idle time */
- gtk_window_reposition( GTK_WINDOW(m_widget), m_x, m_y );
+ gtk_widget_set_uposition( m_widget, m_x, m_y );
}
}
-#endif // GTK > 1.2.2
if ((m_width != old_width) || (m_height != old_height))
{