messagingapp/msgui/unifiededitor/src/mmsinsertcheckoperation.cpp
changeset 25 84d9eb65b26f
parent 23 238255e8b033
child 27 e4592d119491
child 37 518b245aa84c
child 79 2981cb3aa489
--- 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()
-{
-}