--- a/messagingapp/msgui/unifiededitor/src/mmsinsertcheckoperation.cpp Fri Apr 16 14:56:15 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,155 +0,0 @@
-/*
- * 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: mms creation mode checks
- *
- */
-
-
-#include "mmsinsertcheckoperation.h"
-
-#include <MmsConformance.h>
-#include <centralrepository.h>
-#include <mmsconst.h>
-#include <msgmediainfo.h>
-#include <fileprotectionresolver.h>
-
-#include <MsgMediaResolver.h>
-#include <DRMHelper.h>
-#include <MmsEngineInternalCRKeys.h>
-#include <hbmessagebox.h>
-
-#include "s60qconversions.h"
-#include "debugtraces.h"
-
-//DEFINES
-#define RMODE_INSERT_ERROR hbTrId("Unable to insert. Object format not supported in restricted creation mode.")
-#define INSERT_ERROR hbTrId("Unable to insert. Object format not supported.")
-#define INSERT_QUERY_CONFRM hbTrId("The receiving phone may not support this object. Continue?")
-// -----------------------------------------------------------------------------
-// MmsInsertCheckOperation::MmsInsertCheckOperation
-// -----------------------------------------------------------------------------
-//
-MmsInsertCheckOperation::MmsInsertCheckOperation()
-{
- QDEBUG_WRITE("MmsInsertCheckOperation::MmsInsertCheckOperation start");
-
- CRepository* repository = CRepository::NewL(KCRUidMmsEngine);
- CleanupStack::PushL(repository);
- TInt creationMode = EMmsCreationModeRestricted;
- if (repository->Get(KMmsEngineCreationMode, creationMode) == KErrNone) {
- iCreationMode = creationMode;
- }
- CleanupStack::PopAndDestroy(repository);
-
- iMmsConformance = CMmsConformance::NewL();
- iMmsConformance->CheckCharacterSet(EFalse);
- iMediaResolver = CMsgMediaResolver::NewL();
- iMediaResolver->SetCharacterSetRecognition(EFalse);
- iDRMHelper = CDRMHelper::NewL();
-
- QDEBUG_WRITE("MmsInsertCheckOperation::MmsInsertCheckOperation end");
-}
-
-// -----------------------------------------------------------------------------
-// MmsInsertCheckOperation::~MmsInsertCheckOperation
-// -----------------------------------------------------------------------------
-//
-MmsInsertCheckOperation::~MmsInsertCheckOperation()
-{
- delete iMmsConformance;
- delete iMediaResolver;
- delete iDRMHelper;
-}
-
-// ---------------------------------------------------------
-// MmsInsertCheckOperation::CheckModeForInsertL
-// ---------------------------------------------------------
-//
-int MmsInsertCheckOperation::checkModeForInsert(const QString& file)
-{
- QDEBUG_WRITE("CheckModeForInsert::CheckModeForInsert start");
- HBufC* filePath = S60QConversions::qStringToS60Desc(file);
- if (filePath) {
- CleanupStack::PushL(filePath);
-
- RFile fileHandle = iMediaResolver->FileHandleL(*filePath);
- CleanupClosePushL(fileHandle);
-
- CMsgMediaInfo* info = iMediaResolver->CreateMediaInfoL(fileHandle);
- info->ParseInfoDetails(fileHandle, *iDRMHelper, *this);
- CleanupStack::PopAndDestroy(2);
-
- TMmsConformance conformance = iMmsConformance->MediaConformance(*info);
- TUint32 confStatus = conformance.iConfStatus;
-
- // In "free" mode user can insert images that are larger by dimensions than allowed by conformance
- if (iCreationMode != EMmsCreationModeRestricted) {
- TInt i = EMmsConfNokFreeModeOnly | EMmsConfNokScalingNeeded | EMmsConfNokTooBig;
- TInt j = ~(EMmsConfNokFreeModeOnly | EMmsConfNokScalingNeeded | EMmsConfNokTooBig);
-
- // If user answers yes to Guided mode confirmation query he/she moves to free mode
- if ((confStatus & i) && !(confStatus & j)) {
- if (iCreationMode == EMmsCreationModeFree || info->Protection()
- & EFileProtSuperDistributable) {
- // SuperDistribution not checked here
- // Mask "FreeModeOnly" and "ScalingNeeded" away in free mode
- confStatus &= ~EMmsConfNokFreeModeOnly;
- confStatus &= ~EMmsConfNokScalingNeeded;
- }
- else if (launchEditorQuery()) {
- // Query accepted.
- // Mask "FreeModeOnly" and "ScalingNeeded" away in free mode
- confStatus &= ~EMmsConfNokFreeModeOnly;
- confStatus &= ~EMmsConfNokScalingNeeded;
- }
- else {
- //query not accepted. Stop insertion.
- return EInsertQueryAbort;
- }
- }
- }
- else if (confStatus & EMmsConfNokDRM || confStatus & EMmsConfNokNotEnoughInfo || confStatus
- & EMmsConfNokNotSupported || confStatus & EMmsConfNokFreeModeOnly || confStatus
- & EMmsConfNokCorrupt) {
- // Sanity check
- // "Not conformant" assumed if check fails.
- if (iCreationMode == EMmsCreationModeRestricted)
- HbMessageBox::launchInformationMessageBox(RMODE_INSERT_ERROR);
- else
- HbMessageBox::launchInformationMessageBox(INSERT_ERROR);
-
- return EInsertNotSupported;
- }
- delete info;
- }
- QDEBUG_WRITE("CheckModeForInsert::CheckModeForInsert end");
- return EInsertSuccess;
-}
-
-// ---------------------------------------------------------
-// MmsInsertCheckOperation::launchEditorQuery
-// ---------------------------------------------------------
-//
-bool MmsInsertCheckOperation::launchEditorQuery()
-{
- return HbMessageBox::launchQuestionMessageBox(INSERT_QUERY_CONFRM);
-}
-
-// -----------------------------------------------------------------------------
-// MmsInsertCheckOperation::MediaInfoParsed
-// -----------------------------------------------------------------------------
-//
-void MmsInsertCheckOperation::MediaInfoParsed()
-{
-}