use solid bacgkround for static box as pattern brush can't be properly aligned when it is painted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
c4a95f6f99
commit
b04093c949
@ -42,6 +42,8 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
virtual wxSize DoGetBestSize() const;
|
virtual wxSize DoGetBestSize() const;
|
||||||
|
|
||||||
|
virtual WXHBRUSH MSWGetBgBrushForSelf(wxWindow *parent, WXHDC hDC);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox)
|
DECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox)
|
||||||
};
|
};
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include "wx/statbox.h"
|
#include "wx/statbox.h"
|
||||||
|
|
||||||
#include "wx/msw/private.h"
|
#include "wx/msw/private.h"
|
||||||
|
#include "wx/msw/notebook.h"
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxWin macros
|
// wxWin macros
|
||||||
@ -134,4 +135,18 @@ wxSize wxStaticBox::DoGetBestSize() const
|
|||||||
return wxSize(wBox, hBox);
|
return wxSize(wBox, hBox);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
WXHBRUSH
|
||||||
|
wxStaticBox::MSWGetBgBrushForSelf(wxWindow *parent, WXHDC WXUNUSED(pDC))
|
||||||
|
{
|
||||||
|
// we can't use pattern brushes because, apparently, the window proc of our
|
||||||
|
// class does something which invalidates the brush origin before drawing
|
||||||
|
// with it and so any patetrn brush is used incorrectly as can be seen by
|
||||||
|
// putting a static box inside a (themed) notebook
|
||||||
|
//
|
||||||
|
// so always use solid brush for painting the background (note that this
|
||||||
|
// only applies to the background of the box label, not the insides of the
|
||||||
|
// box itself)
|
||||||
|
return parent->MSWGetSolidBgBrushForChild(this);
|
||||||
|
}
|
||||||
|
|
||||||
#endif // wxUSE_STATBOX
|
#endif // wxUSE_STATBOX
|
||||||
|
Loading…
Reference in New Issue
Block a user