locationsystemui/locationsysui/locverifier/src/lpdverifierquerylauncher.cpp
changeset 0 667063e416a2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/locationsystemui/locationsysui/locverifier/src/lpdverifierquerylauncher.cpp	Tue Feb 02 01:06:48 2010 +0200
@@ -0,0 +1,158 @@
+/*
+* Copyright (c) 2002 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:  Class which handles the dialog and expiration timer.
+*
+*/
+
+
+// INCLUDE FILES
+#include "lpdverifierquerylauncher.h"
+#include "lpdglobalplugindialog.h"
+#include "lpdresulthandler.h"
+#include "locverifierdlg.hrh"
+#include <locverifierdlg.rsg>
+#include <avkon.hrh>
+
+// CONSTANTS
+
+const TInt KNonPeriodicRequest = 0;
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::CLpdVerifierQueryLauncher
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+CLpdVerifierQueryLauncher::CLpdVerifierQueryLauncher( 
+    MLpdResultHandler& aHandler ) 
+    : CLpdQueryLauncherBase( aHandler )
+    {
+    // Intentionally empty
+    }
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -----------------------------------------------------------------------------
+//
+void CLpdVerifierQueryLauncher::ConstructL()
+    {
+    BaseConstructL();
+    }
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+CLpdVerifierQueryLauncher* CLpdVerifierQueryLauncher::NewL( 
+    MLpdResultHandler& aHandler )
+    {
+    CLpdVerifierQueryLauncher* self =
+        new( ELeave ) CLpdVerifierQueryLauncher( aHandler );
+    
+    CleanupStack::PushL( self );
+    self->ConstructL();
+    CleanupStack::Pop(self);
+
+    return self;
+    }
+
+// Destructor
+CLpdVerifierQueryLauncher::~CLpdVerifierQueryLauncher()
+    {
+    // Intentionally empty
+    }
+
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::PrepareVerificationResourcesL
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CLpdVerifierQueryLauncher::PrepareVerificationResourcesL(
+    TPosRequestSource aSource,
+    TPosRequestDecision aDefault)
+    {
+    if ( aSource == EPosRequestSourceNetwork && 
+         aDefault == EPosDecisionAccepted )
+        {
+        PrepareQueryResourcesL( R_LPD_GLOBAL_VERIFICATION_DEFAULT_A, KNonPeriodicRequest );
+        }
+    else if ( aSource == EPosRequestSourceNetwork && 
+              aDefault == EPosDecisionRejected )
+        {
+        PrepareQueryResourcesL( R_LPD_GLOBAL_VERIFICATION_DEFAULT_R, KNonPeriodicRequest );
+        }
+    else
+        { // Terminal request, EPosDecisionNotAvailable or future extensions
+        PrepareQueryResourcesL( R_LPD_GLOBAL_VERIFICATION_DEFAULT_N, KNonPeriodicRequest );
+        }
+
+    iQueryDlg->SetTone( EAvkonSIDLocationRequest );
+    }
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::PrepareSuplVerificationResourcesL
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CLpdVerifierQueryLauncher::PrepareSuplVerificationResourcesL()
+{
+  PrepareQueryResourcesL( R_LPD_SUPL_PERIODIC_VERIFICATION_DEFAULT, KNonPeriodicRequest );
+  iQueryDlg->SetTone( EAvkonSIDLocationRequest );
+}
+
+// -----------------------------------------------------------------------------
+// CLpdVerifierQueryLauncher::ExtendedHandleDlgDismissedL
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CLpdVerifierQueryLauncher::ExtendedHandleDlgDismissedL()
+    {
+    TInt retValue = KErrNone;
+    switch ( iResult )
+        {
+        case EAknSoftkeyOk:
+            {
+            retValue = KErrNone;
+            break;
+            }
+        case EAknSoftkeyCancel:
+            {
+            retValue = KErrAccessDenied;
+            break;
+            }
+        case EEikCmdExit:
+            {
+            retValue = iExitReason;
+            break;
+            }
+        case ELpdCmdEmergency:
+            { // emergency call support
+            retValue = KErrAbort;
+            break;
+            }
+        default:
+            {
+            retValue = KErrGeneral;
+            break;
+            }
+        }
+    iHandler.HandleVerificationResultL( retValue );
+    }
+
+//  End of File