phonebookui/Phonebook2/Application/inc/CPbk2SettingsView.h
changeset 0 e686773b3f54
equal deleted inserted replaced
-1:000000000000 0:e686773b3f54
       
     1 /*
       
     2 * Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  Phonebook 2 settings application view.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef CPBK2SETTINGSVIEW_H
       
    20 #define CPBK2SETTINGSVIEW_H
       
    21 
       
    22 // INCLUDES
       
    23 #include "CPbk2AppView.h"
       
    24 
       
    25 // FORWARD DECLARATIONS
       
    26 template<class ControlType> class CPbk2ControlContainer;
       
    27 class CPbk2SettingsListControl;
       
    28 class MPbk2SettingsViewExtension;
       
    29 class MPbk2SettingsControlExtension;
       
    30 class CAknNavigationControlContainer;
       
    31 class CAknNavigationDecorator;
       
    32 
       
    33 // CLASS DECLARATION
       
    34 
       
    35 /**
       
    36  * Phonebook 2 settings application view.
       
    37  */
       
    38 class CPbk2SettingsView : public CPbk2AppView
       
    39     {
       
    40     public: // Construction and destruction
       
    41 
       
    42         /**
       
    43          * Creates a new instance of this class.
       
    44          *
       
    45          * @return  A new instance of this class.
       
    46          */
       
    47         static CPbk2SettingsView* NewL();
       
    48 
       
    49         /**
       
    50          * Destructor.
       
    51          */
       
    52         ~CPbk2SettingsView();
       
    53 
       
    54     private: // From CPbk2AppView
       
    55         void HandleCommandL(
       
    56                 TInt aCommand );
       
    57         void DynInitMenuPaneL(
       
    58                 TInt aResourceId,
       
    59                 CEikMenuPane* aMenuPane );
       
    60         TUid Id() const;
       
    61         void HandleStatusPaneSizeChange();
       
    62         void DoActivateL(
       
    63                 const TVwsViewId& aPrevViewId,
       
    64                 TUid aCustomMessageId,
       
    65                 const TDesC8& aCustomMessage );
       
    66         void DoDeactivate();
       
    67         TInt GetViewSpecificMenuFilteringFlagsL() const;
       
    68 
       
    69     private: // Implementation
       
    70         CPbk2SettingsView();
       
    71         void ConstructL();
       
    72         void CreateControlsL();
       
    73 
       
    74     private: // Data
       
    75         /// This view's control container type
       
    76         typedef CPbk2ControlContainer<CPbk2SettingsListControl> CContainer;
       
    77         /// Own: This view's control container
       
    78         CContainer* iContainer;
       
    79         /// Ref: This view's control
       
    80         CPbk2SettingsListControl* iControl;
       
    81         /// Own: Id of the view that activated this view
       
    82         TVwsViewId iPreviousViewId;
       
    83         /// Own: Settings view extension
       
    84         MPbk2SettingsViewExtension* iSettingsExtension;
       
    85         /// Own: Settings view control extension
       
    86         MPbk2SettingsControlExtension* iSettingsControlExtension;
       
    87         /// Ref: Navipane for setting activity text to
       
    88         CAknNavigationControlContainer* iNaviPane;
       
    89         /// Own: Decorator for navipane for setting text to the navipane
       
    90         CAknNavigationDecorator* iNaviDecorator;
       
    91     };
       
    92 
       
    93 #endif // CPBK2SETTINGSVIEW_H
       
    94 
       
    95 // End of File