diff -r 8173571d354e -r 1fc85118c3ae eventsui/eventshandlerui/eventshandlerserver/src/evtglobalquery.cpp --- a/eventsui/eventshandlerui/eventshandlerserver/src/evtglobalquery.cpp Thu Aug 19 09:48:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,295 +0,0 @@ -/* -* Copyright (c) 2008 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: Handler for displaying the Events Global Query -* -*/ - -// System Includes -#include // CCoeControl -#include //CAknGlobalMsgQuery -#include -#include -#include -#include -#include -#include -#include -#include -#include // Skin Ids -#include -#include - -// User Includes -#include "evtglobalquery.h" -#include "evtinfonoteparams.h" -#include "evtkeylockhandler.h" -#include "evtdebug.h" -#include "evtinfonoteinterface.h" - -_LIT( KEvtDefaultIconFileName, "evthandlerserver.mif" ); -static const TInt KTimetoPlay = 60; - -// ================ Member funtions for CEvtGlobalQuery class =============== - -// --------------------------------------------------------------------------- -// CEvtGlobalQuery::CEvtGlobalQuery -// --------------------------------------------------------------------------- -// -CEvtGlobalQuery::CEvtGlobalQuery( CEvtInfoNoteInputParam& aInputParam ) - : CActive (EPriorityStandard), iInputParam( aInputParam ) - { - CActiveScheduler::Add( this ); - } - -// --------------------------------------------------------------------------- -// CEvtGlobalQuery::~CEvtGlobalQuery -// --------------------------------------------------------------------------- -// -CEvtGlobalQuery::~CEvtGlobalQuery() - { - Cancel(); - - // Delete the Query - delete iGlobalMsgQuery; - - // Delete the tone player - delete iTonePlayer; - - // Delete Key Lock Handler - if( iKeyLockHandler ) - { - delete iKeyLockHandler; - } - } - -// --------------------------------------------------------------------------- -// CEvtGlobalQuery::NewL -// --------------------------------------------------------------------------- -// -EXPORT_C CEvtGlobalQuery* CEvtGlobalQuery::NewL( CEvtInfoNoteInputParam& aInputParam ) - { - CEvtGlobalQuery* self = NewLC(aInputParam); - CleanupStack::Pop( self ); - return self; - } - -// --------------------------------------------------------------------------- -// CEvtGlobalQuery::NewLC -// --------------------------------------------------------------------------- -// -EXPORT_C CEvtGlobalQuery* CEvtGlobalQuery::NewLC( CEvtInfoNoteInputParam& aInputParam ) - { - CEvtGlobalQuery* self = new ( ELeave )CEvtGlobalQuery(aInputParam); - CleanupStack::PushL( self ); - self->ConstructL( ); - return self; - } - -// --------------------------------------------------------------------------- -// CEvtGlobalQuery::ConstructL -// --------------------------------------------------------------------------- -// -void CEvtGlobalQuery::ConstructL() - { - EVTUIDEBUG( "+ CEvtGlobalQuery::ConstructL()" ); - - iGlobalMsgQuery = CAknGlobalMsgQuery::NewL(); - - iKeyLockHandler = CEvtKeyLockHandler::NewL( ); - - iTonePlayer = CEvtTonePlayer::NewL( *this ); - - EVTUIDEBUG( "- CEvtGlobalQuery::ConstructL()" ); - } - -// --------------------------------------------------------------------------- -// void CEvtGlobalQuery::RunL() -// --------------------------------------------------------------------------- -// -void CEvtGlobalQuery::RunL() - { - EVTUIDEBUG( "+ CEvtGlobalQuery::RunL()" ); - iReturnBuffer->Zero( ); - if(iStatus.Int() == EAknSoftkeyOpen) - { - iReturnBuffer->AppendNum( EOpenTrigger ); - - // Disable the Key Lock irrespective of previously maintained state. - // Update the Key Lock state. - if ( iKeyLockHandler ) - { - iKeyLockHandler->EnableKeyLock( EFalse ); - iKeyLockHandler->UpdateStateWithoutNote(); - } - } - else - { - iReturnBuffer->AppendNum( ECloseInfoNote ); - - // Update the Key Lock state. - if ( iKeyLockHandler ) - { - iKeyLockHandler->UpdateStateWithNote(); - } - } - User::RequestComplete( iReturnStatus, KErrNone ); - - EVTUIDEBUG( "- CEvtGlobalQuery::RunL()" ); - } - -// --------------------------------------------------------------------------- -// void CEvtGlobalQuery::DoCancel() -// --------------------------------------------------------------------------- -// -void CEvtGlobalQuery::DoCancel() - { - EVTUIDEBUG( "+ CEvtGlobalQuery::DoCancel()" ); - // Cancel the outstanding CR notification request - if( iGlobalMsgQuery ) - { - iGlobalMsgQuery->CancelMsgQuery(); - User::RequestComplete( iReturnStatus, KErrCancel ); - } - EVTUIDEBUG( "- CEvtGlobalQuery::DoCancel()" ); - } - -// --------------------------------------------------------------------------- -// TInt CEvtGlobalQuery::RunError() -// --------------------------------------------------------------------------- -// -TInt CEvtGlobalQuery::RunError( TInt aError ) - { - return aError; - } - -// --------------------------------------------------------------------------- -// void CEvtGlobalQuery::CancelDialog() -// --------------------------------------------------------------------------- -// -EXPORT_C void CEvtGlobalQuery::CancelDialog() - { - EVTUIDEBUG( "+ CEvtGlobalQuery::CancelDialog()" ); - Cancel(); - EVTUIDEBUG( "- CEvtGlobalQuery::CancelDialog()" ); - } - -// --------------------------------------------------------------------------- -// TInt CEvtGlobalQuery::RunError() -// --------------------------------------------------------------------------- -// -EXPORT_C void CEvtGlobalQuery::StartGlobalQueryL(TRequestStatus& aStatus, TDes8& aRetBuffer) - { - EVTUIDEBUG( "+ CEvtGlobalQuery::StartGlobalQueryL()" ); - iReturnStatus = &aStatus; - iReturnBuffer = &aRetBuffer; - - *iReturnStatus = KRequestPending; - - if( iGlobalMsgQuery ) - { - iGlobalMsgQuery->CancelMsgQuery(); - delete iGlobalMsgQuery; - iGlobalMsgQuery = NULL; - } - - TFileName fileName; - TInt bmpID; - TInt bmpMaskID; - - GetIconDetailsL(fileName, bmpID, bmpMaskID); - - // Maintain the Key Lock State and Enable if it is already not enabled - if ( iKeyLockHandler ) - { - iKeyLockHandler->MaintainState(); - } - - // If tone player is there, then start tone playing - if ( iInputParam.ToneEnabled() ) - { - iGlobalMsgQuery = CAknGlobalMsgQuery::NewL(); - iGlobalMsgQuery->ShowMsgQueryL(iStatus, iInputParam.Description(), R_AVKON_SOFTKEYS_OPEN_CLOSE, iInputParam.Subject(), fileName, bmpID, bmpMaskID ); - SetActive(); - iTonePlayer->PlayFileL( iInputParam.Tone(), iInputParam.ToneRepeat(), KTimetoPlay ); - } - else - { - iGlobalMsgQuery = CAknGlobalMsgQuery::NewL(); - iGlobalMsgQuery->ShowMsgQueryL(iStatus, iInputParam.Description(), R_AVKON_SOFTKEYS_OPEN_CLOSE, iInputParam.Subject(), fileName, bmpID, bmpMaskID ); - SetActive(); - } - - EVTUIDEBUG( "- CEvtGlobalQuery::StartGlobalQueryL()" ); - } - -// --------------------------------------------------------------------------- -// void CEvtGlobalQuery::GetIconDetailsL() -// --------------------------------------------------------------------------- -// -void CEvtGlobalQuery::GetIconDetailsL( TFileName& aFileName, TInt& aBmpID, TInt& aBmpMaskID ) - { - EVTUIDEBUG( "+ CEvtGlobalQuery::GetIconDetailsL()" ); - RProcess currentProcess; - TParse parser; - - parser.Set( currentProcess.FileName(), NULL, NULL ); - TPtrC filename( parser.FullName() ); - //filename.Copy( KTempDrive ); - - User::LeaveIfError( parser.Set( KEvtDefaultIconFileName, &KDC_APP_BITMAP_DIR, &filename )); - aFileName = parser.FullName(); - - //retrieve accuracy level - CEvtInfoNoteInputParam::TEvtTriggerAccuracy accuracy = iInputParam.TrigerringAccuracy(); - EVTUIDEBUG1( "Icon creation:Accuracy level = %d", accuracy ) - - switch( accuracy ) - { - case CEvtInfoNoteInputParam::EEvtAccurateTrigger: - aBmpID = EMbmEvthandlerserverQgn_note_locev_alarm_acc; - aBmpMaskID = EMbmEvthandlerserverQgn_note_locev_alarm_acc_mask; - break; - case CEvtInfoNoteInputParam::EEvtInaccurateTrigger: - aBmpID = EMbmEvthandlerserverQgn_note_locev_alarm_inacc; - aBmpMaskID = EMbmEvthandlerserverQgn_note_locev_alarm_inacc_mask; - break; - case CEvtInfoNoteInputParam::EEvtHighlyInaccurateTrigger: - default: - aBmpID = EMbmEvthandlerserverQgn_note_locev_alarm_inacc_heavy; - aBmpMaskID = EMbmEvthandlerserverQgn_note_locev_alarm_inacc_heavy_mask; - break; - } - EVTUIDEBUG( "- CEvtGlobalQuery::GetIconDetailsL()" ); - } - -// --------------------------------------------------------------------------- -// void CEvtGlobalQuery::TonePlayCompleteL() -// --------------------------------------------------------------------------- -// -void CEvtGlobalQuery::TonePlayCompleteL( TBool aTimeout ) - { - EVTUIDEBUG( "+ CEvtGlobalQuery::TonePlayCompleteL()" ); - // Enable KeyLock on Timeout. - if ( iKeyLockHandler && aTimeout ) - { - iKeyLockHandler->EnableKeyLock( ETrue ); - iKeyLockHandler->UpdateStateWithoutNote(); - } - - // Update the CBA - iGlobalMsgQuery->UpdateMsgQuery( R_AVKON_SOFTKEYS_OPEN_CLOSE ); - EVTUIDEBUG( "- CEvtGlobalQuery::TonePlayCompleteL()" ); - } - -