X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/455f7c8205e5dc29d99026b158ae0a394dccc839..85284ca4b226d9a1ab6bed26c5eaa480543649d5:/src/motif/window.cpp diff --git a/src/motif/window.cpp b/src/motif/window.cpp index 211dc3bf35..2d8b65b31b 100644 --- a/src/motif/window.cpp +++ b/src/motif/window.cpp @@ -345,11 +345,11 @@ bool wxWindow::Create(wxWindow *parent, wxWindowID id, // Destructor wxWindow::~wxWindow() { + SendDestroyEvent(); + if (g_captureWindow == this) g_captureWindow = NULL; - m_isBeingDeleted = true; - // Motif-specific actions first WXWidget wMain = GetMainWidget(); if ( wMain ) @@ -557,7 +557,7 @@ wxWindow *wxWindowBase::DoFindFocus() // currently active. // (2) The widget with the focus may not be in the widget table // depending on which widgets I put in the table - wxWindow *winFocus = (wxWindow *)NULL; + wxWindow *winFocus = NULL; for ( wxWindowList::compatibility_iterator node = wxTopLevelWindows.GetFirst(); node; node = node->GetNext() ) @@ -1478,10 +1478,11 @@ int wxWindow::GetCharWidth() const return width; } -void wxWindow::GetTextExtent(const wxString& string, - int *x, int *y, - int *descent, int *externalLeading, - const wxFont *theFont) const +void wxWindow::DoGetTextExtent(const wxString& string, + int *x, int *y, + int *descent, + int *externalLeading, + const wxFont *theFont) const { const wxFont *fontToUse = theFont ? theFont : &m_font; @@ -1657,7 +1658,7 @@ void wxWindow::OnInternalIdle() { // This calls the UI-update mechanism (querying windows for // menu/toolbar/control state information) - if (wxUpdateUIEvent::CanUpdate(this) && IsShown()) + if (wxUpdateUIEvent::CanUpdate(this) && IsShownOnScreen()) UpdateWindowUI(wxUPDATE_UI_FROMIDLE); } @@ -1864,7 +1865,7 @@ WXDisplay *wxWindow::GetXDisplay() const if ( wMain ) return (WXDisplay*) XtDisplay(wMain); else - return (WXDisplay*) NULL; + return NULL; } WXWidget wxWindow::GetMainWidget() const