diff -r 8b0c979bbe8c -r ac5daea24fb0 apengine/apsettingshandlerui/inc/ApSelectorDialog.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/apengine/apsettingshandlerui/inc/ApSelectorDialog.h Wed Oct 27 17:43:56 2010 +0300 @@ -0,0 +1,249 @@ +/* +* 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: +* Declares dialog CApSelectorDialog for access point selection. +* +*/ + + +#ifndef APSELECTORDIALOG_H +#define APSELECTORDIALOG_H + +// INCLUDES +#include +#include + +#include +#include + +// FORWARD DECLARATIONS +class CApSelectorListboxModel; +class CApSelectorListbox; +class CTextOverrides; +class CEikStatusPane; +class CAknTitlePane; +class CAknNavigationControlContainer; +class CAknNavigationDecorator; +class CApSettingsModel; +class CApSettingsHandlerImpl; + + +// CLASS DECLARATION +/** +* CApSelectorDialog dialog class +* +*/ +NONSHARABLE_CLASS( CApSelectorDialog ) : + public CAknDialog, public MEikListBoxObserver, + public MActiveApDbObserver + { + + public: // Constructors and destructor + /** + * Create and launch dialog. + * @param aModel Model to be used for reading data. Not owned. + * Must remain intact while the dialog exists. + * @param aHandler A CApSettingsHandlerImpl + * @param aHighLight The item to highlight + * @param aSelected The UID of the selected item. + * @return The dialog's return code + */ + TInt ConstructAndRunLD( CApSettingsModel& aModel, + CApSettingsHandlerImpl& aHandler, + TUint32 aHighLight, TUint32& aSelected ); + + + + /** + * Construct the dialog. The passed parameters determine + * the filtering rules it will use. + * @param aListType The list type it should use to display + * the list of access points + * @param aSelMenuType The Options menu type it should have + * @param aIspFilter The ISP filtering criteria + * @param aBearerFilter The bearer filtering criteria + * @param aSortType The ordering type for the list + * @param aEventStore Event information holder + * @param aNoEdit Gives wether editing is allowed or not + * @param aReqIpvType The IPv type which are included in the list + * @return The constructed dialog object + */ + static CApSelectorDialog* NewL( TSelectionListType aListType, + TSelectionMenuType aSelMenuType, + TInt aIspFilter, + TInt aBearerFilter, + TInt aSortType, + TUint32& aEventStore, + TBool aNoEdit, + TInt aReqIpvType = EIPv4 + ); + + + /** + * Destructor. + */ + ~CApSelectorDialog(); + + protected: + /** + * Constructor. The passed parameters determine + * the filtering rules it will use. + * @param aListType The list type it should use to display + * the list of access points + * @param aSelMenuType The Options menu type it should have + * @param aIspFilter The ISP filtering criteria + * @param aBearerFilter The bearer filtering criteria + * @param aSortType The ordering type for the list + * @param aEventStore Event information holder + * @param aReqIpvType The IPv type which are included in the list + * @param aNoEdit Gives wether editing is allowed or not + */ + CApSelectorDialog( TSelectionListType aListType, + TSelectionMenuType aSelMenuType, + TInt aIspFilter, + TInt aBearerFilter, + TInt aSortType, + TUint32& aEventStore, + TInt aReqIpvType, + TBool aNoEdit + ); + + + + public: // New functions + + /** + * Sets initial texts + */ + void InitTextsL(); + + + /** + * Handles listbox data changes + */ + void HandleListboxDataChangeL(); + + + /** + * Sets the text overrides. + * @param aOverrides An object containing the overriden texts + */ + void SetTextOverrides( CTextOverrides* aOverrides ); + + + /** + * Checks if the list is empty + */ + void CheckIfEmptyL(); + + + /** + * Sets the highlight + */ + void SetHighlighted(); + + public: // Functions from base classes + // From CCoeControl + virtual void ActivateL(); + + // From CCoeControl + virtual void GetHelpContext(TCoeHelpContext& aContext) const; + + // From MActiveApDbObserver + virtual void HandleApDbEventL( TEvent anEvent ); + + // From MEikCommandObserver + virtual void ProcessCommandL( TInt aCommandId ) ; + + // From MEikListBoxObserver + void HandleListBoxEventL( CEikListBox* aListBox, + TListBoxEvent aEventType ); + + SEikControlInfo CreateCustomControlL( TInt aControlType ); + + // From MEikMenuObserver + virtual void DynInitMenuPaneL( TInt aResourceId, + CEikMenuPane* aMenuPane ); + + // From CAknDialog + TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, + TEventCode aType); + + + protected: + // From CEikDialog + virtual void PreLayoutDynInitL(); + + + // From CEikDialog + virtual void PostLayoutDynInitL(); + + // From CAknDialog + TBool OkToExitL( TInt aButtonId ); + + /** + * Internal representation of the implementation of + * ProcessCommandL from MEikCommandObserver + */ + void DoProcessCommandL( TInt aCommandId ); + + + private: //data + + CEikStatusPane* iStatusPane; // NOT owned + CAknTitlePane* iTitlePane; // NOT owned + CAknNavigationControlContainer* iNaviPane; // NOT owned + CAknNavigationDecorator* iNaviDecorator; // owned + HBufC* iOldTitleText; + CApSettingsModel* iDataModel; // not owned, + // passed for usage + CApSelectorListbox* iList; + + CApSettingsHandlerImpl* iHandler; + CApSelectorListboxModel* iModel; + TSelectionListType iListType; + TSelectionMenuType iSelMenuType; + + TUint32 iHighLight; + TUint32* iSelected; + + TInt iIspFilter; + TInt iBearerFilter; + TInt iSortType; + + CTextOverrides* iTextOverrides; // not owned, + // passed for usage + + TUint32 iPreferredUid; + TInt iPreferredLine; + TUint32* iEventStore; + TBool iNeedUnlock; + TBool iModelPassed; + TApUiExitReason iExitReason; + + TInt iReqIpvType; /// Default is IPv4 + TInt iVariant; /// Local variant value + +#ifdef __TEST_OOMDEBUG + TBool iMemTestOn; +#endif // __TEST_OOMDEBUG + + TBool iInitialised; + TBool iNoEdit; + TBool iHelpSupported; + }; + +#endif + +// End of File