X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin4_src%2FServer%2Fcompositor.cpp;h=40521459636335062b757bdf400f91d8b64d5686;hb=91d300c3c18adcc6581f268b787db0b34a7a6150;hp=61d42e379879d00aa0ac8e1ba0734777ab482728;hpb=f0ca31bc3f9c66a7fced9afcab9a6cacc8d1d647;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin4_src/Server/compositor.cpp b/Usermode/Applications/axwin4_src/Server/compositor.cpp index 61d42e37..40521459 100644 --- a/Usermode/Applications/axwin4_src/Server/compositor.cpp +++ b/Usermode/Applications/axwin4_src/Server/compositor.cpp @@ -6,8 +6,8 @@ * - Window compositor */ #include -#include #include +#include namespace AxWin { @@ -17,9 +17,25 @@ CCompositor::CCompositor(CVideo& video): // } -CWindow* CCompositor::CreateWindow(CClient& client) +CWindow* CCompositor::CreateWindow(CClient& client, const ::std::string& name) { - return new CWindow(client, "TODO"); + return new CWindow(*this, client, name); +} + +bool CCompositor::GetScreenDims(unsigned int ScreenID, unsigned int* W, unsigned int* H) +{ + assert(W && H); + if( ScreenID != 0 ) + { + *W = 0; + *H = 0; + return false; + } + else + { + m_video.GetDims(*W, *H); + return true; + } } void CCompositor::Redraw() @@ -50,6 +66,7 @@ void CCompositor::Redraw() } m_damageRects.clear(); + m_video.Flush(); } void CCompositor::DamageArea(const CRect& area)