X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7de595519a38b04622b80fbb7b90f741f8a832b2..c5fc899bf29ca7d9c4e2a070e28228b430a68dd3:/src/x11/window.cpp diff --git a/src/x11/window.cpp b/src/x11/window.cpp index 5901a58e80..f84025ee9b 100644 --- a/src/x11/window.cpp +++ b/src/x11/window.cpp @@ -17,7 +17,7 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "window.h" #endif @@ -99,9 +99,6 @@ END_EVENT_TABLE() void wxWindowX11::Init() { - // generic initializations first - InitBase(); - // X11-specific m_mainWindow = (WXWindow) 0; m_clientWindow = (WXWindow) 0; @@ -111,7 +108,6 @@ void wxWindowX11::Init() m_winCaptured = FALSE; m_needsInputFocus = FALSE; m_isShown = TRUE; - m_isBeingDeleted = FALSE; m_lastTS = 0; m_lastButton = 0; } @@ -123,7 +119,7 @@ bool wxWindowX11::Create(wxWindow *parent, wxWindowID id, long style, const wxString& name) { - wxCHECK_MSG( parent, FALSE, "can't create wxWindow without parent" ); + wxCHECK_MSG( parent, FALSE, wxT("can't create wxWindow without parent") ); CreateBase(parent, id, pos, size, style, wxDefaultValidator, name); @@ -224,7 +220,7 @@ bool wxWindowX11::Create(wxWindow *parent, wxWindowID id, KeymapStateMask | FocusChangeMask | ColormapChangeMask | StructureNotifyMask | PropertyChangeMask | VisibilityChangeMask ; - if (HasFlag( wxNO_FULL_REPAINT_ON_RESIZE )) + if (!HasFlag( wxFULL_REPAINT_ON_RESIZE )) { xattributes_mask |= CWBitGravity; xattributes.bit_gravity = StaticGravity; @@ -304,7 +300,7 @@ bool wxWindowX11::Create(wxWindow *parent, wxWindowID id, KeymapStateMask | FocusChangeMask | ColormapChangeMask | StructureNotifyMask | PropertyChangeMask | VisibilityChangeMask ; - if (HasFlag( wxNO_FULL_REPAINT_ON_RESIZE )) + if (!HasFlag( wxFULL_REPAINT_ON_RESIZE )) { xattributes_mask |= CWBitGravity; xattributes.bit_gravity = NorthWestGravity; @@ -348,9 +344,6 @@ wxWindowX11::~wxWindowX11() m_isBeingDeleted = TRUE; - if (m_parent) - m_parent->RemoveChild( this ); - DestroyChildren(); if (m_clientWindow != m_mainWindow) @@ -471,7 +464,7 @@ void wxWindowX11::DoCaptureMouse() { if ((g_captureWindow != NULL) && (g_captureWindow != this)) { - wxASSERT_MSG(FALSE, "Trying to capture before mouse released."); + wxASSERT_MSG(FALSE, wxT("Trying to capture before mouse released.")); // Core dump now int *tmp = NULL; @@ -989,7 +982,7 @@ void wxWindowX11::SetSizeHints(int minW, int minH, int maxW, int maxH, int incW, int wxWindowX11::GetCharHeight() const { - wxCHECK_MSG( m_font.Ok(), 0, "valid window font needed" ); + wxCHECK_MSG( m_font.Ok(), 0, wxT("valid window font needed") ); #if wxUSE_UNICODE // There should be an easier way. @@ -1016,7 +1009,7 @@ int wxWindowX11::GetCharHeight() const int wxWindowX11::GetCharWidth() const { - wxCHECK_MSG( m_font.Ok(), 0, "valid window font needed" ); + wxCHECK_MSG( m_font.Ok(), 0, wxT("valid window font needed") ); #if wxUSE_UNICODE // There should be an easier way. @@ -1163,14 +1156,6 @@ void wxWindowX11::Update() } } -void wxWindowX11::Clear() -{ -// wxClientDC dc((wxWindow*) this); -// wxBrush brush(GetBackgroundColour(), wxSOLID); -// dc.SetBackground(brush); -// dc.Clear(); -} - void wxWindowX11::SendEraseEvents() { if (m_clearRegion.IsEmpty()) return; @@ -1261,7 +1246,7 @@ void wxWindowX11::SendNcPaintEvents() // Responds to colour changes: passes event on to children. void wxWindowX11::OnSysColourChanged(wxSysColourChangedEvent& event) { - wxWindowList::Node *node = GetChildren().GetFirst(); + wxWindowList::compatibility_iterator node = GetChildren().GetFirst(); while ( node ) { // Only propagate to non-top-level windows @@ -1287,7 +1272,8 @@ void wxWindowX11::OnInternalIdle() // This calls the UI-update mechanism (querying windows for // menu/toolbar/control state information) - UpdateWindowUI(); + if (wxUpdateUIEvent::CanUpdate((wxWindow*) this)) + UpdateWindowUI(wxUPDATE_UI_FROMIDLE); // Set the input focus if couldn't do it before if (m_needsInputFocus) @@ -1593,7 +1579,7 @@ bool wxWindowX11::SetForegroundColour(const wxColour& col) wxWindow *wxGetActiveWindow() { // TODO - wxFAIL_MSG("Not implemented"); + wxFAIL_MSG(wxT("Not implemented")); return NULL; }