controlpanelui/src/tonefetcher/tonefetcherengine/private/tonefetcherengine_symbian.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/controlpanelui/src/tonefetcher/tonefetcherengine/private/tonefetcherengine_symbian.cpp Fri Jun 25 17:12:20 2010 +0800
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 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:
+ * The source file for tone fetcher engine private class.
+ *
+ */
+
+
+#include "tonefetcherengine_symbian.h"
+#include "CToneSelection.h"
+#include "CTonePlayer.h"
+#include "tonefetcherutils.h"
+#include <XQConversions>
+
+ToneFetcherEnginePrivate::ToneFetcherEnginePrivate()
+ {
+ TRAPD( err, mToneSelection = CToneSelection::NewL( this ) );
+ TRAPD( error, mTonePlayer = CTonePlayer::NewL( this ) );
+ }
+
+ToneFetcherEnginePrivate::~ToneFetcherEnginePrivate()
+ {
+ mResultList.clear();
+ delete mToneSelection;
+ delete mTonePlayer;
+ }
+
+void ToneFetcherEnginePrivate::getTones()
+ {
+ QT_TRAP_THROWING( mToneSelection->QueryTonesL() );
+ }
+
+void ToneFetcherEnginePrivate::play(const QString &file)
+ {
+ QT_TRAP_THROWING( mTonePlayer->SetAttrL( XQConversions::qStringToS60Desc( ToneFetcherUtils::normalizeSeperator(file) )->Des() ) );
+ QT_TRAP_THROWING( mTonePlayer->PlayL() );
+ }
+
+bool ToneFetcherEnginePrivate::isPlaying()
+ {
+ return mTonePlayer->IsPlaying();
+ }
+
+void ToneFetcherEnginePrivate::stopPlaying()
+ {
+ mTonePlayer->Stop();
+ }
+
+void ToneFetcherEnginePrivate::HandleMdeSessionError( TInt aError )
+ {
+ emit mdeSessionError( aError );
+ }
+
+void ToneFetcherEnginePrivate::HandleMdeSessionOpened()
+ {
+ emit mdeSessionOpened();
+ }
+
+void ToneFetcherEnginePrivate::HandleQueryError( TInt aError )
+ {
+ emit queryError(aError);
+ }
+
+void ToneFetcherEnginePrivate::HandleQueryComplete( RPointerArray<TDesC>& aResultArray )
+ {
+ mResultList.clear();
+ for ( int i = 0; i < aResultArray.Count(); ++i )
+ {
+ mResultList.append( XQConversions::s60DescToQString( *(aResultArray[i]) ) );
+ }
+ aResultArray.ResetAndDestroy();
+ emit queryComplete(mResultList);
+ }
+
+void ToneFetcherEnginePrivate::HandleObjectChanged()
+ {
+ emit notifyObjectChanged();
+ }
+
+void ToneFetcherEnginePrivate::HandlePreviewEvent( TInt event )
+ {
+ emit notifyPreviewEvent(event);
+ }