X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a059bcd21c54ce7b6c382b9a7115e042fe157504..ad9cd15cb0476cf712cbd69461330c5b8ab270f3:/src/motif/window.cpp diff --git a/src/motif/window.cpp b/src/motif/window.cpp index e73c756d2e..dd24fa4ac9 100644 --- a/src/motif/window.cpp +++ b/src/motif/window.cpp @@ -420,14 +420,19 @@ wxWindow::~wxWindow() if (m_hScrollBar) { wxDeleteWindowFromTable((Widget) m_hScrollBar); + XtUnmanageChild((Widget) m_hScrollBar); } if (m_vScrollBar) { wxDeleteWindowFromTable((Widget) m_vScrollBar); + XtUnmanageChild((Widget) m_vScrollBar); } - UnmanageAndDestroy(m_hScrollBar); - UnmanageAndDestroy(m_vScrollBar); + if (m_hScrollBar) + XtDestroyWidget((Widget) m_hScrollBar); + if (m_vScrollBar) + XtDestroyWidget((Widget) m_vScrollBar); + UnmanageAndDestroy(m_scrolledWindow); if (m_borderWidget) @@ -436,6 +441,9 @@ wxWindow::~wxWindow() m_borderWidget = (WXWidget) 0; } } + else // Why wasn't this here before? JACS 8/3/2000 + DestroyChildren(); + // Destroy the window if (GetMainWidget()) @@ -739,11 +747,16 @@ bool wxWindow::SetCursor(const wxCursor& cursor) return FALSE; } - wxASSERT_MSG( m_cursor.Ok(), - wxT("cursor must be valid after call to the base version")); + // wxASSERT_MSG( m_cursor.Ok(), + // wxT("cursor must be valid after call to the base version")); + wxCursor* cursor2 = NULL; + if (m_cursor.Ok()) + cursor2 = & m_cursor; + else + cursor2 = wxSTANDARD_CURSOR; WXDisplay *dpy = GetXDisplay(); - WXCursor x_cursor = m_cursor.GetXCursor(dpy); + WXCursor x_cursor = cursor2->GetXCursor(dpy); Widget w = (Widget) GetMainWidget(); Window win = XtWindow(w);