No real changes, just replace an IsTopLevel() check in the base class
implementation of AdjustForParentClientOrigin() and override it for all top
level windows in wxNonOwnedWindow instead.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70812
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
}
#endif // wxUSE_GRAPHICS_CONTEXT
+
+ // Overridden base class methods.
+ // ------------------------------
+
+ virtual void AdjustForParentClientOrigin(int& WXUNUSED(x), int& WXUNUSED(y),
+ int WXUNUSED(sizeFlags) = 0) const
+ {
+ // Non owned windows positions don't need to be adjusted for parent
+ // client area origin so simply do nothing here.
+ }
+
protected:
virtual bool DoClearShape()
{
void wxWindowBase::AdjustForParentClientOrigin(int& x, int& y, int sizeFlags) const
{
- // don't do it for the dialogs/frames - they float independently of their
- // parent
- if ( !IsTopLevel() )
+ wxWindow *parent = GetParent();
+ if ( !(sizeFlags & wxSIZE_NO_ADJUSTMENTS) && parent )
{
- wxWindow *parent = GetParent();
- if ( !(sizeFlags & wxSIZE_NO_ADJUSTMENTS) && parent )
- {
- wxPoint pt(parent->GetClientAreaOrigin());
- x += pt.x;
- y += pt.y;
- }
+ wxPoint pt(parent->GetClientAreaOrigin());
+ x += pt.x;
+ y += pt.y;
}
}