idlehomescreen/nativeuicontroller/inc/aidialogrenderer.h
branchRCL_3
changeset 11 ff572dfe6d86
parent 9 f966699dea19
equal deleted inserted replaced
9:f966699dea19 11:ff572dfe6d86
     1 /*
     1 /*
     2 * Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
    17 
    17 
    18 
    18 
    19 #ifndef C_AIDIALOGRENDERER_H
    19 #ifndef C_AIDIALOGRENDERER_H
    20 #define C_AIDIALOGRENDERER_H
    20 #define C_AIDIALOGRENDERER_H
    21 
    21 
    22 // System incldues
    22 // System includes
    23 #include <e32base.h>
    23 #include <e32base.h>
       
    24 #include "ainativerenderer.h"
       
    25 #include <MPsetNetworkInfoObs.h> // for MPsetNetworkInfoObserver 
       
    26 #include <MPsetNetworkSelect.h>  // for MPsetNetworkSelect
    24 
    27 
    25 // User includes
    28 // User includes
    26 #include "ainativerenderer.h"
    29 #include "ainativerenderer.h"
    27 
    30 
    28 // Forward declarations
    31 // Forward declarations
    29 class CAknNoteDialog;
    32 class CAknNoteDialog;
    30 class CHsContentPublisher;
    33 class CHsContentPublisher;
       
    34 class CPsetNetwork;
       
    35 class CAknWaitDialog;
       
    36 class CPsetContainer;
       
    37 class CAknPopupList;
    31 
    38 
    32 namespace AiNativeUiController
    39 namespace AiNativeUiController
    33 {
    40 {
    34 
    41 
    35 /**
    42 /**
    37  *
    44  *
    38  *  Used to show CAknNoteDialog on screen.
    45  *  Used to show CAknNoteDialog on screen.
    39  *
    46  *
    40  *  @since S60 3.2
    47  *  @since S60 3.2
    41  */
    48  */
    42 NONSHARABLE_CLASS( CAiDialogRenderer ) : public CAiNativeRenderer
    49 NONSHARABLE_CLASS( CAiDialogRenderer ) : public CAiNativeRenderer, public MPsetNetworkInfoObserver
    43     {
    50     {
    44 public:
    51 public:
    45 
    52 
    46     static CAiDialogRenderer* NewLC();
    53     static CAiDialogRenderer* NewLC();
    47 
    54 
    52     void DoPublishL( CHsContentPublisher& aPlugin, TInt aContent, TInt aResource, TInt aIndex );
    59     void DoPublishL( CHsContentPublisher& aPlugin, TInt aContent, TInt aResource, TInt aIndex );
    53 
    60 
    54     void DoCleanL( CHsContentPublisher& aPlugin, TInt aContent );
    61     void DoCleanL( CHsContentPublisher& aPlugin, TInt aContent );
    55 
    62 
    56     void FocusObtainedL();
    63     void FocusObtainedL();
       
    64     
       
    65     // from base class MPsetNetworkInfoObserver
       
    66     
       
    67         /**
       
    68          * @@see MPsetNetworkInfoObserver::HandleNetworkInfoReceivedL
       
    69          */
       
    70         void HandleNetworkInfoReceivedL( 
       
    71                         const CNetworkInfoArray* aInfoArray, const TInt aResult );
       
    72             
       
    73         /**
       
    74          * @@see MPsetNetworkInfoObserver::HandleSearchingNetworksL
       
    75          */
       
    76         void HandleSearchingNetworksL( TServiceRequest aRequest );
       
    77             
       
    78         /**
       
    79          * @@see MPsetNetworkInfoObserver::HandleRequestingSelectedNetworkL
       
    80          */
       
    81         void HandleRequestingSelectedNetworkL( TBool aOngoing );
       
    82     
       
    83         /**
       
    84          * @@see MPsetNetworkInfoObserver::HandleNetworkChangedL - not used
       
    85          */
       
    86         void HandleNetworkChangedL(
       
    87                         const MPsetNetworkSelect::TNetworkInfo& aCurrentInfo,
       
    88                         const RMobilePhone::TMobilePhoneRegistrationStatus& aStatus,
       
    89                         const TInt aResult );
       
    90      
       
    91         /**
       
    92          * @@see MPsetNetworkInfoObserver::HandleNetworkErrorL
       
    93          */
       
    94         void HandleNetworkErrorL( const TServiceRequest aRequest,
       
    95                          const TInt aError );
       
    96     
       
    97         /**
       
    98          * @@see MPsetNetworkInfoObserver::HandleCurrentNetworkInfoL - not used
       
    99          */
       
   100         void HandleCurrentNetworkInfoL( 
       
   101                 const MPsetNetworkSelect::TCurrentNetworkInfo& /* aCurrentInfo */, 
       
   102                 const TInt /* aResult */ ) {};
       
   103             
       
   104         /**
       
   105          * @@see MPsetNetworkInfoObserver::HandleNetworkChangedL - not used
       
   106          */
       
   107         void HandleNetworkChangedL( 
       
   108                 const MPsetNetworkSelect::TNetworkInfo& /* aCurrentInfo */, 
       
   109                 const MPsetNetworkSelect::TCurrentNetworkStatus /* aStatus */, 
       
   110                 const TInt /* aResult */ ) {}; 
       
   111     
       
   112          /**
       
   113          * @@see MPsetNetworkInfoObserver::HandleCallActivatedL
       
   114          */
       
   115         void HandleCallActivatedL() {};
       
   116     
    57 
   117 
    58 private:
   118 private:
    59 
   119 
    60     CAiDialogRenderer();
   120     CAiDialogRenderer();
    61 
   121 
    64      *
   124      *
    65      * @since S60 3.2
   125      * @since S60 3.2
    66      */
   126      */
    67     void ShowDialogL();
   127     void ShowDialogL();
    68 
   128 
       
   129     void ConstructL();
       
   130 
       
   131     void PopulatePLMNListL();
       
   132 
       
   133     /**
       
   134      * Provides the network operator list.
       
   135      */
       
   136     void NetworkListL();
       
   137 
       
   138     /**
       
   139      * Sets title to a popup list.
       
   140      * @param aList pointer to list
       
   141      * @param aTitleID resource ID of the title
       
   142      */
       
   143     void SetTitleToPopupL( CAknPopupList& aList, TInt aTitleID );
       
   144 
       
   145     /** 
       
   146      * Creates a waiting note (member variable).
       
   147      * @param aDelayOff is the note shown immediately or not
       
   148      */
       
   149     void CheckAndCreateDlgL( TBool aDelayOff );
       
   150 
       
   151     /*
       
   152      * Empties fetched network provider's list.
       
   153      */
       
   154     void PurgeNetworkList();
       
   155 
       
   156     /**
       
   157      * Shows a requested note.
       
   158      * @param aResourceId reource ID for note text
       
   159      * @param aType type of note
       
   160      */
       
   161     void ShowNoteL( TInt aResourceId, TInt aType );
       
   162  
    69 
   163 
    70 private: // data
   164 private: // data
    71 
   165 
    72     /**
   166     /**
    73      * Dialog.
   167      * Dialog.
    90      * Own.
   184      * Own.
    91      */
   185      */
    92     TInt iDialogId;
   186     TInt iDialogId;
    93 #endif
   187 #endif
    94 
   188 
       
   189 
       
   190     //PhoneSettings engine object
       
   191     CPsetNetwork*           iNetwork;
       
   192     //PhoneSettings container
       
   193     CPsetContainer*         iSettingsContainer;
       
   194     //Requesting note
       
   195     CAknWaitDialog*         iDlg;        
       
   196     //Array of networks
       
   197     CNetworkInfoArray*      iNetworkArray;
       
   198     //Network selection list
       
   199     CAknPopupList*          iNetworkPopupList;
       
   200     //Has the user selected a valid network
       
   201     TBool                   iApprovedNetwork;
       
   202     TBool                   iSearchForNetworksActive;
       
   203     TBool                   iPLMNListPopulateShowIsHandling;
       
   204    
       
   205     // Resource index
       
   206     TInt                    iRscIndex;
       
   207 
    95     };
   208     };
    96 
   209 
    97 } // namespace AiNativeUiController
   210 } // namespace AiNativeUiController
    98 
   211 
    99 #endif // C_AIDIALOGRENDERER_H
   212 #endif // C_AIDIALOGRENDERER_H