X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/be794d6236be4cbab0edb7acd96d867779fadf29..c933e267beed72a1c535c8d30ac930fc80587add:/src/aui/framemanager.cpp?ds=sidebyside diff --git a/src/aui/framemanager.cpp b/src/aui/framemanager.cpp index 84957d8dbb..9d221c17f1 100644 --- a/src/aui/framemanager.cpp +++ b/src/aui/framemanager.cpp @@ -70,6 +70,7 @@ DEFINE_EVENT_TYPE(wxEVT_AUI_FIND_MANAGER) #ifdef __WXMSW__ #include "wx/msw/wrapwin.h" #include "wx/msw/private.h" + #include "wx/msw/dc.h" #endif IMPLEMENT_DYNAMIC_CLASS(wxAuiManagerEvent, wxEvent) @@ -219,7 +220,7 @@ END_EVENT_TABLE() #else // __WXGTK20__ -#include "wx/gtk/private.h" +#include static void gtk_pseudo_window_realized_callback( GtkWidget *m_widget, void *WXUNUSED(win) ) @@ -297,7 +298,8 @@ static void DrawResizeHint(wxDC& dc, const wxRect& rect) wxBrush brush(stipple); dc.SetBrush(brush); #ifdef __WXMSW__ - PatBlt(GetHdcOf(dc), rect.GetX(), rect.GetY(), rect.GetWidth(), rect.GetHeight(), PATINVERT); + wxMSWDCImpl *impl = (wxMSWDCImpl*) dc.GetImpl(); + PatBlt(GetHdcOf(*impl), rect.GetX(), rect.GetY(), rect.GetWidth(), rect.GetHeight(), PATINVERT); #else dc.SetPen(*wxTRANSPARENT_PEN); @@ -771,6 +773,7 @@ void wxAuiManager::UpdateHintWindowConfig() { wxFrame* f = static_cast(w); can_do_transparent = f->CanSetTransparent(); + break; } @@ -967,7 +970,7 @@ bool wxAuiManager::AddPane(wxWindow* window, const wxAuiPaneInfo& pane_info) if (pinfo.name.empty() || already_exists) { pinfo.name.Printf(wxT("%08lx%08x%08x%08lx"), - ((unsigned long)pinfo.window) & 0xffffffff, + wxPtrToUInt(pinfo.window) & 0xffffffff, (unsigned int)time(NULL), #ifdef __WXWINCE__ (unsigned int)GetTickCount(), @@ -2316,8 +2319,11 @@ wxSizer* wxAuiManager::LayoutAll(wxAuiPaneInfoArray& panes, LayoutAddDock(middle, *arr.Item(row), uiparts, spacer_only); } - cont->Add(middle, 1, wxEXPAND); - + if (middle->GetChildren().GetCount() > 0) + cont->Add(middle, 1, wxEXPAND); + else + delete middle; + // find any bottom docks in this layer @@ -3225,7 +3231,7 @@ void wxAuiManager::ShowHint(const wxRect& rect) // nasty redrawn problems. clip.Intersect(m_frame->GetRect()); - screendc.SetClippingRegion(clip); + screendc.SetDeviceClippingRegion(clip); wxBitmap stipple = wxPaneCreateStippleBitmap(); wxBrush brush(stipple);