diff -r 000000000000 -r 5d03bc08d59c windowing/windowserver/tcrx/tcrx.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/windowing/windowserver/tcrx/tcrx.h Tue Feb 02 01:47:50 2010 +0200 @@ -0,0 +1,128 @@ +// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +/** + @file + @test + @internalComponent - Internal Symbian test code +*/ + +#ifndef __TCRX_H__ +#define __TCRX_H__ + +#include +#include + +class CRedrawHandler; +class CWindow; +class CWsListen; +class CWsRedir; +class CTwoWindow; + +class CClient: public CActive + { +public: + static CClient* NewL(); + ~CClient(); + void RunL(); + void DoCancel(); + inline RWsSession& Ws(); + inline RWindowGroup& Group(); + inline CWindowGc& Gc(); + inline CWindow* Win(); + inline CWsScreenDevice* Screen(); + inline CWsRedir* WsRedir(); + inline CWsListen* WsListen(); + void HandleCommand(TInt aCmd); +private: + CClient(); + void ConstructL(); + void MakeRequest(); + void DrawTwoWindow(); + void ClearTwoWindow(); + + RWsSession iWs; + RWindowGroup iGroup; + CWsScreenDevice* iScreen; + CWindowGc* iGc; + TWsEvent iEvent; + CWindow* iWin; + CRedrawHandler* iRedraw; + CWsListen* iListen; + CWsRedir* iRedir; + RBlankWindow iBlank; + CTwoWindow* iTwo; + }; + +class CRedrawHandler: public CActive + { +public: + static CRedrawHandler* NewL(CClient* aClient); + ~CRedrawHandler(); + void RunL(); + void DoCancel(); +private: + CRedrawHandler(CClient* aClient); + void ConstructL(); + void MakeRequest(); + + CClient* iClient; + }; + +class CWindow: public CBase + { +public: + CWindow(CClient* aClient); + void ConstructL(CWindow* aParent, TBool aTransparentFlag); + ~CWindow(); + void Draw(const TRect& aRect) const; + void DrawMenu() const; + inline RWindow& Window(); + inline CWindow* Parent(); + inline TSize Size(); + inline CClient* Client(); +private: + CClient* iClient; + RWindow iWin; + CWindow* iParent; + }; + +// CClient +inline RWsSession& CClient::Ws() + {return iWs;} +inline RWindowGroup& CClient::Group() + {return iGroup;} +inline CWindowGc& CClient::Gc() + {return *iGc;} +inline CWindow* CClient::Win() + {return iWin;} +inline CWsScreenDevice* CClient::Screen() + {return iScreen;} +inline CWsListen* CClient::WsListen() + {return iListen;} +inline CWsRedir* CClient::WsRedir() + {return iRedir;} +// CWindow +inline RWindow& CWindow::Window() + {return iWin;} +inline CWindow* CWindow::Parent() + {return iParent;} +inline TSize CWindow::Size() + {return iWin.Size();} +inline CClient* CWindow::Client() + {return iClient;} + +#endif +