X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8487f8874288a8e4fe40ead153c73dfc7777f41b..3cdb471c6a6027f336b793d141f7ba976c083e2c:/src/gtk/dialog.cpp?ds=sidebyside diff --git a/src/gtk/dialog.cpp b/src/gtk/dialog.cpp index 156cd6f955..8739c60b35 100644 --- a/src/gtk/dialog.cpp +++ b/src/gtk/dialog.cpp @@ -31,6 +31,7 @@ extern void wxapp_install_idle_handler(); extern bool g_isIdle; +extern int g_openDialogs; //----------------------------------------------------------------------------- // data @@ -76,7 +77,7 @@ static void gtk_dialog_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation //----------------------------------------------------------------------------- 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 ) @@ -87,7 +88,7 @@ gtk_dialog_configure_callback( GtkWidget *WXUNUSED(widget), GdkEventConfigure *e 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 ); @@ -168,16 +169,16 @@ gtk_dialog_realized_callback( GtkWidget *widget, wxDialog *win ) gtk_window_set_policy(GTK_WINDOW(win->m_widget), 1, 1, 1); /* set size hints */ - gint flag = 0; // 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 */ @@ -254,6 +255,8 @@ bool wxDialog::Create( wxWindow *parent, const wxPoint &pos, const wxSize &size, long style, const wxString &name ) { + g_openDialogs++; + wxTopLevelWindows.Append( this ); m_needParent = FALSE; @@ -262,7 +265,7 @@ bool wxDialog::Create( wxWindow *parent, !CreateBase( parent, id, pos, size, style, wxDefaultValidator, name )) { wxFAIL_MSG( wxT("wxDialog creation failed") ); - return FALSE; + return FALSE; } m_insertCallback = (wxInsertChildFunction) wxInsertChildInDialog; @@ -322,6 +325,8 @@ wxDialog::~wxDialog() { wxTheApp->ExitMainLoop(); } + + g_openDialogs--; } void wxDialog::SetTitle( const wxString& title ) @@ -456,6 +461,7 @@ void wxDialog::DoSetSize( int x, int y, int width, int height, int sizeFlags ) int old_x = m_x; int old_y = m_y; + int old_width = m_width; int old_height = m_height;