connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/connectionerrordiscreetpopup.cpp
changeset 20 9c97ad6591ae
parent 18 fcbbe021d614
child 21 b8e8e15e80f2
child 23 7ec726f93df1
child 28 860702281757
--- a/connectionutilities/ConnectionDialogs/ConnectionUiUtilities/NotifSrc/connectionerrordiscreetpopup.cpp	Fri Apr 16 15:21:37 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,432 +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:  Implementation of CConnectionErrorDiscreetPopup.
- *
- */
-
-// INCLUDE FILES
-#include "connectionerrordiscreetpopup.h"
-#include <akndiscreetpopup.h>
-#include <aknsconstants.hrh>
-#include <StringLoader.h>
-#include <cmmanagerext.h>
-#include <cmconnectionmethod.h>
-#include <cmconnectionmethodext.h>
-#include <cmpluginwlandef.h>
-#include <avkon.hrh>
-#include <connectionuiutilities.mbg>
-#include <ConnUiUtilsNotif.rsg>
-
-#ifdef _DEBUG
-#include <e32debug.h>
-#endif
-
-// Error code definitions are from these headers
-#include <wlanerrorcodes.h> // WLAN-specific error code definitions
-#include <in_iface.h>
-#include <etelpckt.h>       // GPRS-specific causes for Session Management
-#include <nd_err.h>         // NetDial errors
-#include <inet6err.h>       // IPv6 error constants
-#include <rmmcustomapi.h>
-
-// Errors in UI spec not found elsewhere
-const TInt KErrPDPMaxContextsReached = -6000;
-const TInt KErrDndNameNotFound = -5120;
-const TInt KErrGeneralConnection = -50000;
-const TInt KErrGenConnNoGPRSNetwork = -3609;
-
-// No discreet popup => Uid 0
-const TUid KDiscreetPopupUidNone =
-    {
-    0x0
-    };
-// Path of the app's iconfile
-_LIT( KIconFileName, "\\resource\\apps\\connectionuiutilities.mif" );
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::CConnectionErrorDiscreetPopup
-// ---------------------------------------------------------
-//
-CConnectionErrorDiscreetPopup::CConnectionErrorDiscreetPopup(
-        CConnectionErrorDiscreetPopupNotif* aNotif) :
-    CActive(EPriorityUserInput), // Standard priority
-            iNotif(aNotif), iErrorCode(KErrNone)
-    {
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::NewLC
-// ---------------------------------------------------------
-//
-CConnectionErrorDiscreetPopup* CConnectionErrorDiscreetPopup::NewLC(
-        CConnectionErrorDiscreetPopupNotif* aNotif)
-    {
-    CConnectionErrorDiscreetPopup* self =
-            new (ELeave) CConnectionErrorDiscreetPopup(aNotif);
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    return self;
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::NewL
-// ---------------------------------------------------------
-//
-CConnectionErrorDiscreetPopup* CConnectionErrorDiscreetPopup::NewL(
-        CConnectionErrorDiscreetPopupNotif* aNotif)
-    {
-    CConnectionErrorDiscreetPopup* self =
-            CConnectionErrorDiscreetPopup::NewLC(aNotif);
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::ConstructL
-// ---------------------------------------------------------
-//
-void CConnectionErrorDiscreetPopup::ConstructL()
-    {
-    CActiveScheduler::Add(this); // Add to scheduler
-    icmManager.OpenL();
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::~CConnectionErrorDiscreetPopup
-// ---------------------------------------------------------
-//
-CConnectionErrorDiscreetPopup::~CConnectionErrorDiscreetPopup()
-    {
-    Cancel(); // Cancel any request, if outstanding
-    icmManager.Close();
-    // Delete instance variables if any
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::DoCancel
-// ---------------------------------------------------------
-//
-void CConnectionErrorDiscreetPopup::DoCancel()
-    {
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::StartL
-// ---------------------------------------------------------
-//
-void CConnectionErrorDiscreetPopup::StartL(TUint32 aErrCode)
-    {
-    Cancel(); // Cancel any request, just to be sure
-
-    iErrorCode = aErrCode;
-
-    SetActive(); // Tell scheduler a request is active
-    iClientStatus = &iStatus;
-    User::RequestComplete(iClientStatus, KErrNone);
-
-    // Complete the note so client can continue its tasks
-    // immediately
-    iNotif->SetCancelledFlag(ETrue);
-    iNotif->CompleteL(KErrNone);
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::RunL
-// ---------------------------------------------------------
-//
-void CConnectionErrorDiscreetPopup::RunL()
-    {
-    if (iStatus == KErrNone)
-        {
-        TInt text1 = 0;
-        TInt text2 = 0;
-        TInt bitmapId = 0;
-        TInt maskId = 0;
-        // Show only if error code can be resolved
-        if (ResolveErrorCode(text1, text2, bitmapId, maskId))
-            {
-            // Load strings from resources
-            HBufC* stringText1 = StringLoader::LoadLC(text1);
-            HBufC* stringText2 = StringLoader::LoadLC(text2);
-            CAknDiscreetPopup::ShowGlobalPopupL(*stringText1, // 1st text row
-                    *stringText2, // second text row
-                    KAknsIIDDefault, // icon skin id
-                    KIconFileName, // bitmap file path
-                    bitmapId, // bitmap id
-                    maskId, // mask id
-                    KAknDiscreetPopupDurationLong, // flags
-                    0, // command id
-                    NULL, // command observer
-                    KDiscreetPopupUidNone, // application to be launched
-                    KDiscreetPopupUidNone); // view to be activated
-
-            CleanupStack::PopAndDestroy(2, stringText1);
-            }
-        }
-
-    // Cleanup
-    iNotif->Cancel();
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::RunError
-// ---------------------------------------------------------
-//
-TInt CConnectionErrorDiscreetPopup::RunError(TInt aError)
-    {
-    return aError;
-    }
-
-// ---------------------------------------------------------
-// CConnectionErrorDiscreetPopup::ResolveErrorCode
-// ---------------------------------------------------------
-//
-TInt CConnectionErrorDiscreetPopup::ResolveErrorCode(TInt& aText1,
-        TInt& aText2, TInt& aBitmap, TInt& aMask)
-    {
-    
-#ifdef _DEBUG
-    RDebug::Print( _L("CConnectionErrorDiscreetPopup::ResolveErrorCode - code %d"),
-            iErrorCode );
-#endif
-    
-    // Icons, which are resolved at the end
-    enum TIconType
-        {
-        EIconWlan, EIconCellular, EIconNone
-        };
-
-    // For most cases, icon is WLAN
-    TIconType icon = EIconWlan;
-
-    // For most cases, aText1 = "Connection failed"
-    aText1 = R_QTN_OCC_CONNECTION_FAILED_DISCREET_POPUP_TEXT1;
-
-    // Resolve aText1, aText2 and icon of error code.
-    // Groups are from OCC GUI spec 1.0
-    switch (iErrorCode)
-        {
-        
-        // Group 1
-        case KErrIfChangingPassword:
-            icon = EIconCellular;
-            // These were GPRS; fall through
-        case KErrWlanInternalError:
-            aText2 = R_QTN_OCC_INTERNAL_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 2
-        case KErrWlanNetworkNotFound:
-            aText2 = R_QTN_OCC_WLAN_NOT_FOUND_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 3
-        case KErrGprsUserAuthenticationFailure:
-            icon = EIconCellular;
-        // These were GPRS; fall through
-        case KErrWlanOpenAuthFailed:
-        case KErrWlanSharedKeyAuthRequired:
-        case KErrWlanWpaAuthRequired:
-        case KErrWlanWpaAuthFailed:
-        case KErrWlan802dot1xAuthFailed:
-        case KErrWlanWpaCounterMeasuresActive:
-        case KErrWlanPskModeRequired:
-        case KErrWlanEapModeRequired:
-        case KErrWlanEapSimFailed:
-        case KErrWlanEapTlsFailed:
-        case KErrWlanEapPeapFailed:
-        case KErrWlanEapMsChapv2: // Is the same as KErrWlanEapMsChaPFailed
-        case KErrWlanEapAkaFailed:
-        case KErrWlanEapTtlsFailed:
-        case KErrWlanLeapFailed:
-        case KErrWlanEapGtcFailed:
-        case KErrWlanWpa2OnlyModeNotSupported:
-        case KErrWlanEapFastTunnelCompromiseError:
-        case KErrWlanEapFastUnexpextedTlvExhanged:
-        case KErrWlanEapFastNoPacNorCertsToAuthenticateWithProvDisabled:
-        case KErrWlanEapFastNoMatchingPacForAid:
-        case KErrWlanEapFastAuthFailed:
-        case KErrWlanEapFastPacStoreCorrupted:
-            aText2 = R_QTN_OCC_AUTH_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 4
-        case KErrWlanSharedKeyAuthFailed:
-        case KErrWlanIllegalWpaPskKey:
-        case KErrWlanIllegalEncryptionKeys:
-            aText2 = R_QTN_OCC_CHECK_KEY_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 5
-        case KErrExitModemError:
-        case KErrExitLoginFail:
-        case KErrExitScriptTimeOut:
-        case KErrExitScriptError:
-        case KErrIfAuthenticationFailure:
-        case KErrIfAuthNotSecure:
-        case KErrIfAccountDisabled:
-        case KErrIfRestrictedLogonHours:
-        case KErrIfPasswdExpired:
-        case KErrIfNoDialInPermission:
-        case KErrGprsMissingorUnknownAPN:
-            icon = EIconCellular;
-            aText2 = R_QTN_OCC_CHECK_SETTINGS_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 6
-        case KErrWlanSimNotInstalled:
-            aText2 = R_QTN_OCC_SIM_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 7
-        case KErrWlanNotSubscribed:
-        case KErrWlanAccessBarred:
-            aText2 = R_QTN_OCC_SERVICE_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 8
-        case KErrPermissionDenied:
-            icon = EIconNone;  // Permission denied may come with any bearer.
-        // Fall through
-        case KErrWlanPasswordExpired:
-        case KErrWlanNoDialinPermissions:
-        case KErrWlanAccountDisabled:
-        case KErrWlanRestrictedLogonHours:
-        case KErrWlanServerCertificateExpired:
-        case KErrWlanCerficateVerifyFailed:
-        case KErrWlanNoUserCertificate:
-        case KErrWlanNoCipherSuite:
-        case KErrWlanUserRejected:
-        case KErrWlanUserCertificateExpired:
-            aText2 = R_QTN_OCC_ACCESS_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 9
-        case KErrPDPMaxContextsReached:
-            icon = EIconCellular;
-            // These were GPRS; fall through
-        case KErrWlanConnAlreadyActive:
-            aText2 = R_QTN_OCC_ALREADY_ACT_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 10
-        case KErrWlanSignalTooWeak:
-            aText2 = R_QTN_OCC_WLAN_WEAK_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 11
-        case KErrIfCallbackNotAcceptable:
-        case KErrIfDNSNotFound:
-        case KErrIfLRDBadLine:
-        case KErrNetUnreach:
-        case KErrHostUnreach:
-        case KErrNoProtocolOpt:
-        case KErrUrgentData:
-        case KErrInet6NoRoute:
-        case KErrDndNameNotFound:
-        case KErrGeneralConnection:
-        case KErrGprsMSCTemporarilyNotReachable:
-        case KErrGprsLlcOrSndcpFailure:
-        case KErrGprsInsufficientResources:
-        case KErrGprsActivationRejectedByGGSN:
-        case KErrPacketDataTsyInvalidAPN:
-            icon = EIconCellular;
-            // These were GPRS; fall through
-        case KErrWlanRoamingFailed:
-            aText2 = R_QTN_OCC_TRY_AGAIN_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 12
-        case KErrGenConnNoGPRSNetwork:
-        case KErrGprsServicesNotAllowed:
-        case KErrGprsAndNonGprsServicesNotAllowed:
-        case KErrGprsMSIdentityCannotBeDerivedByTheNetwork:
-        case KErrGprsMSImplicitlyDetached:
-        case KErrGsmMMNetworkFailure:
-        case KErrGprsUnknownPDPAddress:
-        case KErrGprsActivationRejected:
-        case KErrGsmMMServiceOptionNotSubscribed:
-        case KErrGsmMMServiceOptionTemporaryOutOfOrder:
-        case KErrGprsNSAPIAlreadyUsed:
-        case KErrGprsQoSNotAccepted:
-        case KErrGprsReactivationRequested:
-            icon = EIconCellular;
-            aText2 = R_QTN_OCC_CONN_UNAVAILABLE_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 13
-        case KErrWlanProtectedSetupDevicePasswordAuthFailure:
-        case KErrWlanProtectedSetupPINMethodNotSupported:
-        case KErrWlanProtectedSetupPBMethodNotSupported:
-            aText1 = R_QTN_OCC_CONFIG_FAILED_DISCREET_POPUP_TEXT1;
-            aText2 = R_QTN_OCC_AUTH_ERROR_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Group 14
-        case KErrWlanProtectedSetupOOBInterfaceReadError:
-        case KErrWlanProtectedSetupDecryptionCRCFailure:
-        case KErrWlanProtectedSetup2_4ChannelNotSupported:
-        case KErrWlanProtectedSetup5_0ChannelNotSupported:
-        case KErrWlanProtectedSetupNetworkAuthFailure:
-        case KErrWlanProtectedSetupNoDHCPResponse:
-        case KErrWlanProtectedSetupFailedDHCPConfig:
-        case KErrWlanProtectedSetupIPAddressConflict:
-        case KErrWlanProtectedSetupCouldNotConnectToRegistrar:
-        case KErrWlanProtectedSetupMultiplePBCSessionsDetected:
-        case KErrWlanProtectedSetupRogueActivitySuspected:
-        case KErrWlanProtectedSetupDeviceBusy:
-        case KErrWlanProtectedSetupSetupLocked:
-        case KErrWlanProtectedSetupMessageTimeout:
-        case KErrWlanProtectedSetupRegistrationSessionTimeout:
-            aText1 = R_QTN_OCC_CONFIG_FAILED_DISCREET_POPUP_TEXT1;
-            aText2 = R_QTN_OCC_TRY_AGAIN_DISCREET_POPUP_TEXT2;
-            break;
-
-        // Skipped errors, for which popup is not shown.
-        case KErrNone:
-        case KErrConnectionTerminated:
-        case KErrDisconnected:
-        case KErrCancel:
-            return EFalse;
-
-        // For error values not specifically mapped to any error message
-        // the discreet pop-up #12 is used.
-        default:
-            aText2 = R_QTN_OCC_CONN_UNAVAILABLE_DISCREET_POPUP_TEXT2;
-            icon = EIconNone;
-            break;
-        }
-
-    // Resolve icon to aBitmap & aMask
-    switch (icon)
-        {
-        case EIconWlan:
-            aBitmap = EMbmConnectionuiutilitiesQgn_prop_wlan_bearer;
-            aMask = EMbmConnectionuiutilitiesQgn_prop_wlan_bearer_mask;
-            break;
-        case EIconCellular:
-            aBitmap = EMbmConnectionuiutilitiesQgn_prop_wml_gprs;
-            aMask = EMbmConnectionuiutilitiesQgn_prop_wml_gprs_mask;
-            break;
-        default:
-            ASSERT(icon == EIconNone);
-            aBitmap = -1;
-            aMask = -1;
-            break;
-        }
-
-    return ETrue;
-    }