moved wxOverlay into overlay.* files and out of dc.h/dcbase.cpp; implemented wxOverlay for wxDirectFB port

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2006-10-24 12:29:14 +00:00
parent f8bf59a9f2
commit 30c841c84d
28 changed files with 1091 additions and 502 deletions

View File

@@ -96,6 +96,8 @@ void wxWindowDC::InitForWin(wxWindow *win, const wxRect *rect)
{
wxCHECK_RET( win, _T("invalid window") );
m_win = win;
// obtain the surface used for painting:
wxPoint origin;
wxIDirectFBSurfacePtr surface;
@@ -154,6 +156,7 @@ void wxWindowDC::InitForWin(wxWindow *win, const wxRect *rect)
}
else
{
m_winRect = r;
DFBRectangle dfbrect = { r.x, r.y, r.width, r.height };
surface = win->GetDfbSurface()->GetSubSurface(&dfbrect);
@@ -195,6 +198,10 @@ wxWindowDC::~wxWindowDC()
if ( m_shouldFlip )
{
// paint overlays on top of the surface being drawn to by this DC
// before showing anything on the screen:
m_win->PaintOverlays(m_winRect);
DFBSurfaceCapabilities caps = DSCAPS_NONE;
surface->GetCapabilities(&caps);
if ( caps & DSCAPS_DOUBLE )