#include "wx/mac/private.h"
#endif
+#ifdef __WXMSW__
+ #include "wx/msw/wrapwin.h"
+ #include "wx/msw/private.h"
+#endif
+
IMPLEMENT_DYNAMIC_CLASS(wxAuiManagerEvent, wxEvent)
IMPLEMENT_CLASS(wxAuiManager, wxEvtHandler)
#else
// __WXGTK20__
-#include "wx/gtk/private.h"
+#include <gtk/gtk.h>
static void
gtk_pseudo_window_realized_callback( GtkWidget *m_widget, void *WXUNUSED(win) )
return;
m_title = title;
-
+
m_widget = gtk_window_new( GTK_WINDOW_POPUP );
g_signal_connect( m_widget, "realize",
G_CALLBACK (gtk_pseudo_window_realized_callback), this );
-
+
GdkColor col;
col.red = 128 * 256;
col.green = 192 * 256;
{
return true;
}
-
+
private:
DECLARE_DYNAMIC_CLASS(wxPseudoTransparentFrame)
};
wxBitmap stipple = wxPaneCreateStippleBitmap();
wxBrush brush(stipple);
dc.SetBrush(brush);
+#ifdef __WXMSW__
+ PatBlt(GetHdcOf(dc), rect.GetX(), rect.GetY(), rect.GetWidth(), rect.GetHeight(), PATINVERT);
+#else
dc.SetPen(*wxTRANSPARENT_PEN);
dc.SetLogicalFunction(wxXOR);
dc.DrawRectangle(rect);
+#endif
}
{
wxAuiDockInfo& dock = *docks.Item(i);
dock.dock_row = i;
-
+
int j, pane_count;
for (j = 0, pane_count = dock.panes.GetCount(); j < pane_count; ++j)
dock.panes.Item(j)->dock_row = i;
wxAuiManager::~wxAuiManager()
{
+ // NOTE: It's possible that the windows have already been destroyed by the
+ // time this dtor is called, so this loop can result in memory access via
+ // invalid pointers, resulting in a crash. So it will be disabled while
+ // waiting for a better solution.
+#if 0
for ( size_t i = 0; i < m_panes.size(); i++ )
{
wxAuiPaneInfo& pinfo = m_panes[i];
if (pinfo.window && !pinfo.window->GetParent())
delete pinfo.window;
}
+#endif
delete m_art;
}
{
ClosePane(pane);
}
-
+
Update();
}
}