X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/47d67540a017101b3e46abe9ef0f55914d8de37e..8704bf74fba8523e2e174bd5a8195b5202009cd0:/src/motif/dialog.cpp diff --git a/src/motif/dialog.cpp b/src/motif/dialog.cpp index ec62649fed..8154065c11 100644 --- a/src/motif/dialog.cpp +++ b/src/motif/dialog.cpp @@ -164,7 +164,7 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id, // Can't remember what this was about... but I think it's necessary. - if (USE_INVISIBLE_RESIZE) + if (wxUSE_INVISIBLE_RESIZE) { if (pos.x > -1) XtVaSetValues(dialogShell, XmNx, pos.x, @@ -216,10 +216,10 @@ bool wxDialog::Create(wxWindow *parent, wxWindowID id, // Positioning of the dialog doesn't work properly unless the dialog // is managed, so we manage without mapping to the screen. // To show, we map the shell (actually it's parent). - if (!USE_INVISIBLE_RESIZE) + if (!wxUSE_INVISIBLE_RESIZE) XtVaSetValues(shell, XmNmappedWhenManaged, FALSE, NULL); - if (!USE_INVISIBLE_RESIZE) + if (!wxUSE_INVISIBLE_RESIZE) { XtManageChild(dialogShell); SetSize(pos.x, pos.y, size.x, size.y); @@ -252,7 +252,7 @@ void wxDialog::SetModal(bool flag) wxDialog::~wxDialog() { m_modalShowing = FALSE; - if (!USE_INVISIBLE_RESIZE && m_mainWidget) + if (!wxUSE_INVISIBLE_RESIZE && m_mainWidget) { XtUnmapWidget((Widget) m_mainWidget); } @@ -280,10 +280,16 @@ wxDialog::~wxDialog() // Now process all events, because otherwise // this might remain on the screen. - XSync(XtDisplay(XtParent((Widget) m_mainWidget)), FALSE); + Display* display; + if (m_mainWidget) + display = XtDisplay((Widget) m_mainWidget); + else + display = (Display*) wxGetDisplay(); + + XSync(display, FALSE); XEvent event; while (XtAppPending((XtAppContext) wxTheApp->GetAppContext())) { - XFlush(XtDisplay((Widget) XtParent((Widget) m_mainWidget))); + XFlush(display); XtAppNextEvent((XtAppContext) wxTheApp->GetAppContext(), &event); XtDispatchEvent(&event); } @@ -426,7 +432,7 @@ bool wxDialog::Show(bool show) if (show) { - if (!USE_INVISIBLE_RESIZE) + if (!wxUSE_INVISIBLE_RESIZE) XtMapWidget(XtParent((Widget) m_mainWidget)); else XtManageChild((Widget) m_mainWidget) ; @@ -436,7 +442,7 @@ bool wxDialog::Show(bool show) } else { - if (!USE_INVISIBLE_RESIZE) + if (!wxUSE_INVISIBLE_RESIZE) XtUnmapWidget(XtParent((Widget) m_mainWidget)); else XtUnmanageChild((Widget) m_mainWidget) ;