gssettingsuis/Gs/GSAutoKeyguardPlugin/Inc/GSAutoKeyguardPlugin.h
author hgs
Thu, 04 Nov 2010 13:38:47 +0800
changeset 68 13e71d907dc3
permissions -rw-r--r--
201044
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
68
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  View for Device & SIM security plug-in.
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
#ifndef GSAUTOKEYGUARDPLUGIN_H
hgs
parents:
diff changeset
    20
#define GSAUTOKEYGUARDPLUGIN_H
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
// INCLUDES
hgs
parents:
diff changeset
    23
#include "GSAutoKeyguardPluginContainer.h"
hgs
parents:
diff changeset
    24
#include "GSAutoKeyguardPluginModel.h"
hgs
parents:
diff changeset
    25
#include "MGSSettingPSObserver.h"
hgs
parents:
diff changeset
    26
#include "GSPubSubsListener.h"
hgs
parents:
diff changeset
    27
hgs
parents:
diff changeset
    28
#include <aknsettingpage.h>
hgs
parents:
diff changeset
    29
#include <ConeResLoader.h>
hgs
parents:
diff changeset
    30
#include <gsplugininterface.h>
hgs
parents:
diff changeset
    31
#include <gsfwviewuids.h>
hgs
parents:
diff changeset
    32
#include <gsbaseview.h>
hgs
parents:
diff changeset
    33
#include <secuisecuritysettings.h>
hgs
parents:
diff changeset
    34
#include <RSSSettings.h>
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
// CONSTANTS
hgs
parents:
diff changeset
    37
const TInt KMaxStringLength = 80;
hgs
parents:
diff changeset
    38
const TUid KGSAutoKeyguardPluginUid = { 0x200110f0 };
hgs
parents:
diff changeset
    39
hgs
parents:
diff changeset
    40
// MACROS
hgs
parents:
diff changeset
    41
hgs
parents:
diff changeset
    42
// DATA TYPES
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
// FUNCTION PROTOTYPES
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
// FORWARD DECLARATIONS
hgs
parents:
diff changeset
    47
class CAknViewAppUi;
hgs
parents:
diff changeset
    48
class CGSAutoKeyguardPluginContainer;
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
hgs
parents:
diff changeset
    51
// CLASS DECLARATION
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
/**
hgs
parents:
diff changeset
    54
*  CGSAutoKeyguardPlugin view class
hgs
parents:
diff changeset
    55
*
hgs
parents:
diff changeset
    56
*  View class for Sim Security sub-folder
hgs
parents:
diff changeset
    57
*/
hgs
parents:
diff changeset
    58
class CGSAutoKeyguardPlugin : public CGSBaseView,
hgs
parents:
diff changeset
    59
                        private MGSSettingPSObserver
hgs
parents:
diff changeset
    60
    {
hgs
parents:
diff changeset
    61
    public: // Constructors and destructor
hgs
parents:
diff changeset
    62
        
hgs
parents:
diff changeset
    63
        /**
hgs
parents:
diff changeset
    64
        * Symbian OS two-phased constructor
hgs
parents:
diff changeset
    65
        * @return GS sim & device security view.
hgs
parents:
diff changeset
    66
        */
hgs
parents:
diff changeset
    67
        static CGSAutoKeyguardPlugin* NewL( TAny* aInitParams );
hgs
parents:
diff changeset
    68
        
hgs
parents:
diff changeset
    69
        /**
hgs
parents:
diff changeset
    70
        * C++ default constructor.
hgs
parents:
diff changeset
    71
        */
hgs
parents:
diff changeset
    72
        CGSAutoKeyguardPlugin();
hgs
parents:
diff changeset
    73
hgs
parents:
diff changeset
    74
        /**
hgs
parents:
diff changeset
    75
        * Symbian OS default constructor.
hgs
parents:
diff changeset
    76
        */
hgs
parents:
diff changeset
    77
        void ConstructL();
hgs
parents:
diff changeset
    78
hgs
parents:
diff changeset
    79
        /**
hgs
parents:
diff changeset
    80
        * Destructor.
hgs
parents:
diff changeset
    81
        */
hgs
parents:
diff changeset
    82
        ~CGSAutoKeyguardPlugin();
hgs
parents:
diff changeset
    83
hgs
parents:
diff changeset
    84
    public: // Functions from base classes
hgs
parents:
diff changeset
    85
        
hgs
parents:
diff changeset
    86
       /**
hgs
parents:
diff changeset
    87
        * Returns view id.
hgs
parents:
diff changeset
    88
        * @return TUid.
hgs
parents:
diff changeset
    89
        */
hgs
parents:
diff changeset
    90
        TUid Id() const;
hgs
parents:
diff changeset
    91
hgs
parents:
diff changeset
    92
        /**
hgs
parents:
diff changeset
    93
        * Handles commands.
hgs
parents:
diff changeset
    94
        * @param aCommand Command to be handled.
hgs
parents:
diff changeset
    95
        * 
hgs
parents:
diff changeset
    96
        */
hgs
parents:
diff changeset
    97
        void HandleCommandL( TInt aCommand );
hgs
parents:
diff changeset
    98
hgs
parents:
diff changeset
    99
    public: //new
hgs
parents:
diff changeset
   100
hgs
parents:
diff changeset
   101
        /**
hgs
parents:
diff changeset
   102
        * Updates listbox's item's value.
hgs
parents:
diff changeset
   103
        * @param aItemId An item which is updated.
hgs
parents:
diff changeset
   104
        * 
hgs
parents:
diff changeset
   105
        */
hgs
parents:
diff changeset
   106
        void UpdateListBoxL( TInt aItemId );
hgs
parents:
diff changeset
   107
        
hgs
parents:
diff changeset
   108
        //From CGSBaseView
hgs
parents:
diff changeset
   109
        void HandleResourceChangeL( TInt aType );
hgs
parents:
diff changeset
   110
hgs
parents:
diff changeset
   111
    public: // From CGSPluginInterface
hgs
parents:
diff changeset
   112
hgs
parents:
diff changeset
   113
        /**
hgs
parents:
diff changeset
   114
        * @see CGSPluginInterface header file.
hgs
parents:
diff changeset
   115
        */
hgs
parents:
diff changeset
   116
        void GetCaptionL( TDes& aCaption ) const;
hgs
parents:
diff changeset
   117
        /**
hgs
parents:
diff changeset
   118
        * See base class.
hgs
parents:
diff changeset
   119
        */
hgs
parents:
diff changeset
   120
        CGulIcon* CreateIconL( const TUid aIconType );
hgs
parents:
diff changeset
   121
        /**
hgs
parents:
diff changeset
   122
        * @see CGSPluginInterface header file.
hgs
parents:
diff changeset
   123
        */
hgs
parents:
diff changeset
   124
        TInt PluginProviderCategory() const;
hgs
parents:
diff changeset
   125
hgs
parents:
diff changeset
   126
        /**
hgs
parents:
diff changeset
   127
        * @see CGSPluginInterface header file.
hgs
parents:
diff changeset
   128
        */
hgs
parents:
diff changeset
   129
        TBool Visible() const;
hgs
parents:
diff changeset
   130
        
hgs
parents:
diff changeset
   131
    protected: // From MEikMenuObserver
hgs
parents:
diff changeset
   132
hgs
parents:
diff changeset
   133
        void DynInitMenuPaneL( TInt aResourceId, CEikMenuPane* aMenuPane );
hgs
parents:
diff changeset
   134
hgs
parents:
diff changeset
   135
    private: // from CAknView
hgs
parents:
diff changeset
   136
        /**
hgs
parents:
diff changeset
   137
        * Activates the view.
hgs
parents:
diff changeset
   138
        * @param aPrevViewId ID of previous view
hgs
parents:
diff changeset
   139
        * @param aCustomMessageId customized message ID
hgs
parents:
diff changeset
   140
        * @param aCustomMessage sutomized message payload
hgs
parents:
diff changeset
   141
        */
hgs
parents:
diff changeset
   142
        void DoActivateL( const TVwsViewId& aPrevViewId,
hgs
parents:
diff changeset
   143
                          TUid aCustomMessageId,
hgs
parents:
diff changeset
   144
                          const TDesC8& aCustomMessage );
hgs
parents:
diff changeset
   145
hgs
parents:
diff changeset
   146
    private: // from CGSBaseView
hgs
parents:
diff changeset
   147
       
hgs
parents:
diff changeset
   148
        void NewContainerL();
hgs
parents:
diff changeset
   149
       
hgs
parents:
diff changeset
   150
        /**
hgs
parents:
diff changeset
   151
        * From CGSBaseView, handles list box selections.
hgs
parents:
diff changeset
   152
        * 
hgs
parents:
diff changeset
   153
        */
hgs
parents:
diff changeset
   154
        void HandleListBoxSelectionL();
hgs
parents:
diff changeset
   155
 
hgs
parents:
diff changeset
   156
    private:
hgs
parents:
diff changeset
   157
        /**
hgs
parents:
diff changeset
   158
        * Callback from MGSSettingPSObserver
hgs
parents:
diff changeset
   159
        */
hgs
parents:
diff changeset
   160
        void HandleNotifyPSL( const TUid aUid, const TInt& aKey, 
hgs
parents:
diff changeset
   161
                                      const TRequestStatus& aStatus );
hgs
parents:
diff changeset
   162
      
hgs
parents:
diff changeset
   163
    private: //new
hgs
parents:
diff changeset
   164
    	/**
hgs
parents:
diff changeset
   165
        * Sets Autokeyguard period
hgs
parents:
diff changeset
   166
        * 
hgs
parents:
diff changeset
   167
        */
hgs
parents:
diff changeset
   168
        void SetAutoKeyguardTimeL( TInt aPeriod, TInt aMaxPeriod );
hgs
parents:
diff changeset
   169
hgs
parents:
diff changeset
   170
        /**
hgs
parents:
diff changeset
   171
        * Get CGSAutoKeyguardPlugin's ccontainer.
hgs
parents:
diff changeset
   172
        */
hgs
parents:
diff changeset
   173
        CGSAutoKeyguardPluginContainer* Container();
hgs
parents:
diff changeset
   174
        
hgs
parents:
diff changeset
   175
    private: // Data
hgs
parents:
diff changeset
   176
        //plugin model.
hgs
parents:
diff changeset
   177
        CGSAutoKeyguardPluginModel* iModel;
hgs
parents:
diff changeset
   178
        //resource loader
hgs
parents:
diff changeset
   179
        RConeResourceLoader iResourceLoader;
hgs
parents:
diff changeset
   180
        //PubSub object for BT SAP state
hgs
parents:
diff changeset
   181
        CGSPubSubsListener* iBtSapListener;
hgs
parents:
diff changeset
   182
hgs
parents:
diff changeset
   183
    };
hgs
parents:
diff changeset
   184
hgs
parents:
diff changeset
   185
#endif //GSAUTOKEYGUARDPLUGIN_H
hgs
parents:
diff changeset
   186
hgs
parents:
diff changeset
   187
// End of File