X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23205be83c2a88b1aa7204d2cee52ca8a755e698..a6982a3882f976f5764c0bac808cc3fd64c9a7f3:/src/dfb/wrapdfb.cpp diff --git a/src/dfb/wrapdfb.cpp b/src/dfb/wrapdfb.cpp index d1e9f5ae4a..c474b48e2b 100644 --- a/src/dfb/wrapdfb.cpp +++ b/src/dfb/wrapdfb.cpp @@ -36,7 +36,7 @@ bool wxDfbCheckReturn(DFBResult code) // these are programming errors, assert: #define DFB_ASSERT(code) \ case code: \ - wxFAIL_MSG( _T("DirectFB error: ") _T(#code) ); \ + wxFAIL_MSG( "DirectFB error: " _T(#code) ); \ return false \ DFB_ASSERT(DFB_DEAD); @@ -105,7 +105,13 @@ wxIDirectFBSurfacePtr wxIDirectFB::GetPrimarySurface() { DFBSurfaceDescription desc; desc.flags = DSDESC_CAPS; - desc.caps = DSCAPS_PRIMARY; + // NB: see dcscreen.cpp for why we request double-buffered surface + // + // This assumes the cooperative level is DFSCL_NORMAL (that's the + // default and wx doesn't modify it anywhere); if we ever support + // other cooperative levels, DSCAPS_DOUBLE should *not* be used with + // them. + desc.caps = DFBSurfaceCapabilities(DSCAPS_PRIMARY | DSCAPS_DOUBLE); return CreateSurface(&desc); } @@ -113,6 +119,13 @@ wxIDirectFBSurfacePtr wxIDirectFB::GetPrimarySurface() // wxIDirectFBSurface //----------------------------------------------------------------------------- +DFBSurfacePixelFormat wxIDirectFBSurface::GetPixelFormat() +{ + DFBSurfacePixelFormat format = DSPF_UNKNOWN; + GetPixelFormat(&format); + return format; +} + int wxIDirectFBSurface::GetDepth() { DFBSurfacePixelFormat format = DSPF_UNKNOWN; @@ -133,7 +146,7 @@ wxIDirectFBSurface::CreateCompatible(const wxSize& sz, int flags) return NULL; } - wxCHECK_MSG( size.x > 0 && size.y > 0, NULL, _T("invalid size") ); + wxCHECK_MSG( size.x > 0 && size.y > 0, NULL, "invalid size" ); DFBSurfaceDescription desc; desc.flags = (DFBSurfaceDescriptionFlags)(