os/mm/mmlibs/mmfw/tsrc/mmvalidationsuite/mmvalidationsuiteapp/inc/mvsvideocontrol.h
First public contribution.
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 MVSVIDEOCONTROL_H
17 #define MVSVIDEOCONTROL_H
20 #include <surfaceeventhandler.h>
22 class CMVSPipControl :
24 public MMMFSurfaceEventHandler
34 static CMVSPipControl* NewL(RWindowTreeNode& aParent);
37 // MMMFSurfaceEventHandler
38 void MmsehSurfaceCreated(TInt aDisplayId, const TSurfaceId& aId, const TRect& aCropRect, TVideoAspectRatio aAspectRatio);
39 void MmsehSurfaceParametersChanged(const TSurfaceId& aId, const TRect& aCropRect, TVideoAspectRatio aAspectRatio);
40 void MmsehRemoveSurface(const TSurfaceId& aId);
42 void SetRenderType(TRenderType aRenderType);
44 RWindow& ControlWindow() const;
48 void ConstructL(RWindowTreeNode& aParent);
50 void Draw(const TRect& aRect) const;
53 TRenderType iRenderType;
59 class CMVSVideoControl : public CCoeControl
62 static CMVSVideoControl* NewLC(CMVSVideoPlayAgent& aVideoPlayAgent, TInt aDisplay, RWindowTreeNode& aParent);
63 static CMVSVideoControl* NewL(CMVSVideoPlayAgent& aVideoPlayAgent, TInt aDisplay, RWindowTreeNode& aParent);
67 RWindow& ControlWindow() const;
68 TInt ScreenNumber() const;
70 CMVSPipControl& Pip() const;
71 void EnablePip(CMVSPipControl::TRenderType aRenderType);
74 void SetOverlayTextL(const TDesC& aOverlayText);
75 void ClearOverlayText();
78 CMVSVideoControl(CMVSVideoPlayAgent& aVideoPlayAgent, TInt aDisplay);
80 void ConstructL(RWindowTreeNode& aParent);
81 void Draw(const TRect& aRect) const;
83 TInt CountComponentControls() const;
84 CCoeControl* ComponentControl(TInt aIndex) const;
87 CMVSVideoPlayAgent& iVideoPlayAgent;
91 RBuf iOverlayText; // Text to be drawn on top of video
94 #endif // MVSVIDEOCONTROL_H