IMPLEMENT_DYNAMIC_CLASS(wxWindow, wxWindowMSW)
#elif defined(__WXGTK__)
IMPLEMENT_DYNAMIC_CLASS(wxWindow, wxWindowGTK)
+#elif defined(__WXOSX__)
+ IMPLEMENT_DYNAMIC_CLASS(wxWindow, wxWindowMac)
#elif defined(__WXMGL__)
IMPLEMENT_DYNAMIC_CLASS(wxWindow, wxWindowMGL)
#elif defined(__WXDFB__)
long style,
const wxString& name)
{
+ // Get default border
+ wxBorder border = GetBorder(style);
+ style &= ~wxBORDER_MASK;
+ style |= border;
+
long actualStyle = style;
// we add wxCLIP_CHILDREN to get the same ("natural") behaviour under MSW
rect.height = size.y;
wxWindow * const parent = GetParent();
- if ( HasTransparentBackground() && parent )
+ if ( HasTransparentBackground() && !UseBgCol() && parent )
{
+ // DirectFB paints the parent first, then its child windows, so by
+ // the time this code is called, parent's background was already
+ // drawn and there's no point in (imperfectly!) duplicating the work
+ // here:
+#ifndef __WXDFB__
wxASSERT( !IsTopLevel() );
wxPoint pos = GetPosition();
// Restore DC logical origin
dc.SetLogicalOrigin( org_x, org_y );
+#endif // !__WXDFB__
}
else
{
}
}
else
- if (HasFlag( wxSUNKEN_BORDER ) || HasFlag( wxRAISED_BORDER ))
+ if (HasFlag( wxSUNKEN_BORDER ) || HasFlag( wxRAISED_BORDER ) || HasFlag( wxBORDER_THEME ))
{
if (newSize.y > m_oldSize.y)
{