--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/multimediacommsengine/tsrc/MCETestUI/src/createDisplaySinkDialog.cpp Tue Feb 02 01:04:58 2010 +0200
@@ -0,0 +1,174 @@
+/*
+* Copyright (c) 2004 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:
+*
+*/
+
+
+
+
+// INCLUDES
+#include "createDisplaySinkDialog.h"
+#include "CMCETestUIEngineVideoStream.h"
+#include "CMCETestUIEngineVideoSink.h"
+#include <MCEAudioStream.h>
+#include <MCEDisplaySink.h>
+#include <MCEMediaSink.h>
+
+// CONSTANTS
+
+const TInt KBufLength = 100;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ----------------------------------------------------------------------------
+// CCreateDisplaySinkDialog::CCreateDisplaySinkDialog( )
+// .
+// ----------------------------------------------------------------------------
+//
+CCreateDisplaySinkDialog::CCreateDisplaySinkDialog(
+ CMCETestUIEngineVideoStream& aStream, TInt aIndex ) :
+ iStream(aStream),iSinkIndex( aIndex )
+ {
+
+ // No implementation required
+ }
+
+// ----------------------------------------------------------------------------
+// CCreateDisplaySinkDialog::PreLayoutDynInitL()
+// .
+// ----------------------------------------------------------------------------
+//
+void CCreateDisplaySinkDialog::PreLayoutDynInitL()
+ {
+
+ CAknForm::PreLayoutDynInitL();
+ const RPointerArray<CMCETestUIEngineVideoSink>& sinks =
+ iStream.SinksL();
+
+ CMceMediaSink& mediaSink = static_cast<CMceMediaSink&>(sinks[iSinkIndex]->Sink());
+ CMceDisplaySink& displaySink = static_cast<CMceDisplaySink&>(mediaSink);
+
+ CEikNumberEditor* dispPrority = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkPriority ) );
+ dispPrority->SetNumber(/*displaySink.DisplaysAvailable()*/displaySink.PriorityL());
+
+ CEikNumberEditor* dispSinkAvailable = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinksAvailable ) );
+ dispSinkAvailable->SetNumber(displaySink.DisplaysAvailable());
+
+ /* CEikNumberEditor* dispSinkIndex = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkIndex ) );
+ dispSinkIndex->SetNumber(0); */
+
+ TRect rect = displaySink.DisplayRectL();
+ TPoint tl = rect.iTl;
+ TPoint br = rect.iBr;
+
+ TInt rectX1 = tl.iX;
+ TInt rectY1 = tl.iY;
+
+ TInt rectX2 = br.iX;
+ TInt rectY2 = br.iY;
+
+ CEikNumberEditor* rectiX1 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIX1 ) );
+ rectiX1->SetNumber(rectX1);
+
+ CEikNumberEditor* rectiY1 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIY1 ) );
+ rectiY1->SetNumber(rectY1);
+
+ CEikNumberEditor* rectiX2 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIX2 ) );
+ rectiX2->SetNumber(rectX2);
+
+ CEikNumberEditor* rectiY2 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIY2 ) );
+ rectiY2->SetNumber(rectY2);
+
+ }
+
+// ----------------------------------------------------------------------------
+// CCreateDisplaySinkDialog::OkToExitL( TInt )
+// .
+// ----------------------------------------------------------------------------
+//
+
+TBool CCreateDisplaySinkDialog::OkToExitL( TInt aKey )
+ {
+ if ( aKey == EEikCmdCanceled )
+ {
+ // Cancel pressed. Just exit.
+ return ETrue;
+ }
+ const RPointerArray<CMCETestUIEngineVideoSink>& sinks =
+ iStream.SinksL();
+
+ if(sinks[iSinkIndex]->Type() == KMceDisplaySink)
+ {
+ CMceMediaSink& mediaSink = static_cast<CMceMediaSink&>(sinks[iSinkIndex]->Sink());
+ CMceDisplaySink& displaySink = static_cast<CMceDisplaySink&>(mediaSink);
+
+ CEikNumberEditor* dispPrority = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkPriority ) );
+ displaySink.SetPriorityL(dispPrority->Number());
+
+ /*
+ CEikNumberEditor* dispSinkIndex = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkIndex ) );
+ displaySink.SetDisplayIndexL(dispSinkIndex->Number()); */
+
+
+ CEikNumberEditor* rectiX1 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIX1 ) );
+ TInt rectX1 = rectiX1->Number();
+
+ CEikNumberEditor* rectiY1 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIY1 ) );
+ TInt rectY1 = rectiY1->Number();
+
+ CEikNumberEditor* rectiX2 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIX2 ) );
+ TInt rectX2 = rectiX2->Number();
+
+ CEikNumberEditor* rectiY2 = static_cast<CEikNumberEditor*>(
+ Control( EDisplaySinkRectIY2 ) );
+ TInt rectY2 = rectiY2->Number();
+
+ TPoint tl(rectX1,rectY1);
+ TPoint br(rectX2,rectY2);
+
+ TRect rect(tl,br);
+
+ displaySink.SetDisplayRectL(rect);
+
+ }
+
+
+
+ return ETrue;
+ }
+
+// ----------------------------------------------------------------------------
+// CCreateDisplaySinkDialog::~CCreateDisplaySinkDialog()
+// .
+// ----------------------------------------------------------------------------
+//
+CCreateDisplaySinkDialog::~CCreateDisplaySinkDialog()
+ {
+ return;
+ }
+
+// End of File