os/graphics/windowing/windowserver/test/t_eventchecker/inc/openwfc/scenechecker.h
Update contrib.
1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
16 #ifndef __SCENECHECKER_H__
17 #define __SCENECHECKER_H__
19 #include <graphics/wsscene.h>
20 #include <graphics/wsgraphicdrawer.h>
22 class CSceneChecker : public CBase,
24 public MWsWindowTreeObserver
27 static CSceneChecker* NewL(MWsGraphicDrawerEnvironment& aEnv, MWsScreen& aScreen);
30 void SetScene(MWsScene* aScene);
33 public: // from MWsScene
34 TAny* ResolveObjectInterface(TUint aTypeId);
35 TInt SetSceneRotation(TSceneRotation aRotation);
36 TSceneRotation SceneRotation() const;
37 MWsElement* CreateSceneElementL();
38 void DestroySceneElement(MWsElement* aLayer);
39 void ComposePendingScene(TSurfaceId& aOffScreenTarget, TRequestStatus* aCompleted);
40 TInt InsertSceneElement(MWsElement* aInsertElement, MWsElement* aSubordinateElement);
41 TInt RemoveSceneElement(MWsElement* aRemoveElement);
42 TInt RegisterSurface(const TSurfaceId& aSurface);
43 TInt UnregisterSurface(const TSurfaceId& aSurface);
45 public: // from MWsWindowTreeObserver
46 void NodeCreated(const MWsWindowTreeNode& aWindowTreeNode, MWsWindowTreeNode const* aParent);
47 void NodeReleased(const MWsWindowTreeNode& aWindowTreeNode);
48 void NodeActivated(const MWsWindowTreeNode& aWindowTreeNode);
49 void NodeExtentChanged(const MWsWindowTreeNode& aWindowTreeNode, const TRect& aRect);
50 void SiblingOrderChanged(const MWsWindowTreeNode& aWindowTreeNode, TInt aNewPosition);
51 void MovedToWindowGroup(const MWsWindowTreeNode& aWindowTreeNode, const MWsWindowTreeNode& aNewWindowGroup);
52 void FlagChanged(const MWsWindowTreeNode& aWindowTreeNode, MWsWindowTreeObserver::TFlags aAttribute, TBool aNewValue);
53 void AttributeChanged(const MWsWindowTreeNode& aWindowTreeNode, MWsWindowTreeObserver::TAttributes aAttribute);
54 void TransparentRegionChanged(const MWsWindowTreeNode& aWindowTreeNode, const TRegion& aNewTransparentRegion, const TRegion* aNewOpaqueRegion);
55 void ElementAdded(const MWsWindowTreeNode& aWindowTreeNode, const MWsElement& aLayer);
56 void FadeCountChanged(const MWsWindowTreeNode& aWindowTreeNode, TInt aFadeCount);
57 void FadeAllChildren(const MWsWindowTreeNode& aWindowTreeNode, TBool aFaded);
58 void WindowGroupChained(const MWsWindowTreeNode& aParent, const MWsWindowTreeNode& aChild);
59 void WindowGroupChainBrokenAfter(const MWsWindowTreeNode& aWindowGroup);
62 CSceneChecker(MWsScreen& aScreen);
66 MWsElement* iBottomElement;
67 TInt iElementSetCount;
68 TBool iElementSetChanged;
69 RPointerArray<MWsElement> iElementsWithoutAssociatedWindow;
72 #endif //__SCENECHECKER_H__