williamr@2: /* williamr@2: * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@2: * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: * which accompanies this distribution, and is available williamr@2: * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: Declaration of the CApSelect class. williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: #ifndef CAPSELECT_H williamr@2: #define CAPSELECT_H williamr@2: williamr@2: // Deprecation warning williamr@2: #warning This header file has been deprecated. Will be removed in one of the next SDK releases. williamr@2: williamr@2: williamr@2: // INCLUDES williamr@2: #include williamr@2: #include williamr@2: #include williamr@2: williamr@2: williamr@2: // FORWARD DECLARATIONS williamr@2: class CApListItem; williamr@2: class CApListItemList; williamr@2: class CApUtils; williamr@2: williamr@2: williamr@2: williamr@2: enum TVpnFilterType williamr@2: { williamr@2: EVpnFilterVpnOnly, ///< Shows only VPN access points williamr@2: EVpnFilterNoVpn, ///< Shows only non-VPN access points williamr@2: EVpnFilterBoth ///< Shows both normal and VPN access points williamr@2: }; williamr@2: williamr@2: williamr@2: // CLASS DECLARATION williamr@2: // Extra data holder williamr@2: typedef struct williamr@2: { williamr@2: TInt iMaxIndex; williamr@2: TInt iReqIpvType; williamr@2: TInt iIsIpv6Supported; williamr@2: TInt iExtra; williamr@2: TBool iIsFeatureManagerInitialised; williamr@2: TBool iCdma; williamr@2: TInt iVpnFilterType; // TVpnFilterType values !! williamr@2: TBool iWlanSupported; williamr@2: TBool iIncludeEasyWlan; williamr@2: }TSelectExtra; williamr@2: williamr@2: williamr@2: williamr@2: typedef struct williamr@2: { williamr@2: TUint32 iVpnIapId; williamr@2: TUint32 iHomeIapId; williamr@2: HBufC * iName; williamr@2: }TVpnData; williamr@2: williamr@2: williamr@2: /** williamr@2: * This class is used to help client's access point selection. williamr@2: * Selection can be tailored with specific filters, rules and sort order. williamr@2: * Provides methods for setting and getting filters and sort order. williamr@2: * williamr@2: */ williamr@2: class CApSelect :public CBase williamr@2: { williamr@2: public: // Constructors and destructor williamr@2: williamr@2: /** williamr@2: * Two-phased constructor. Leaves on failure, places instance williamr@2: * on cleanup stack. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @return The constructed CApSelect. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C static CApSelect* NewLC( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Two-phased constructor. Leaves on failure, places instance williamr@2: * on cleanup stack. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * @return The constructed CApSelect. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C static CApSelect* NewLC( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType williamr@2: ); williamr@2: williamr@2: williamr@2: williamr@2: /** williamr@2: * Two-phased constructor. Leaves on failure, places instance williamr@2: * on cleanup stack. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * @param aVpnFilterType a TVpnFilterType enum specifying the williamr@2: * vpn filtering. williamr@2: * @return The constructed CApSelect. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C static CApSelect* NewLC( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType, williamr@2: TVpnFilterType aVpnFilterType ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Two-phased constructor. Leaves on failure, places instance williamr@2: * on cleanup stack. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * @param aVpnFilterType a TVpnFilterType enum specifying the williamr@2: * vpn filtering. williamr@2: * @param aIncludeEasyWlan TBool specifying whther to include williamr@2: * EasyWlan access point in the list or not... williamr@2: * @return The constructed CApSelect. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C static CApSelect* NewLC( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType, williamr@2: TVpnFilterType aVpnFilterType, williamr@2: TBool aIncludeEasyWlan ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Destructor. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C virtual ~CApSelect(); williamr@2: williamr@2: williamr@2: protected: // Constructors williamr@2: williamr@2: /** williamr@2: * C++ default constructor. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C CApSelect(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Second-phase constructor. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C void ConstructL( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Second-phase constructor. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C void ConstructL( williamr@2: CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Second-phase constructor. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * @param aVpnFilterType a TVpnFilterType enum specifying the williamr@2: * vpn filtering. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C void ConstructL( CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType, williamr@2: TVpnFilterType aVpnFilterType williamr@2: ); williamr@2: williamr@2: /** williamr@2: * Second-phase constructor. williamr@2: * @param aDb a pointer to a CCommsDataBase. williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, KEApIspTypeWAPMandatory williamr@2: * KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType Filtering criteria on the IPv type of the williamr@2: * access point. In case of GPRS, GPRS_PDP_TYPE holds it, while williamr@2: * in case of CSD, all CSD access points are williamr@2: * considered to be IPv4 & IPv6 (both) williamr@2: * @param aVpnFilterType a TVpnFilterType enum specifying the williamr@2: * vpn filtering. williamr@2: * @param aIncludeEasyWlan TBool specifying whther to include williamr@2: * EasyWlan access point in the list or not... williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C void ConstructL( CCommsDatabase& aDb, williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType, williamr@2: TVpnFilterType aVpnFilterType, williamr@2: TBool aIncludeEasyWlan ); williamr@2: williamr@2: public: // New functions williamr@2: /** williamr@2: * Sets filters and sorting order for the list of available williamr@2: * access points williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, williamr@2: * KEApIspTypeWAPMandatory, KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C void SetFiltersL( williamr@2: TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType williamr@2: ); williamr@2: williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the current ISP-type filter williamr@2: * @return The current ISP-type filter williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TInt IspTypeFilter(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the current bearer-type filter williamr@2: * @return The current bearer-type filter williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TInt BearerFilter(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the current sorting order williamr@2: * @return The current sorting order williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TInt SortOrder(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Navigates to the first access point in the list. williamr@2: * @return Boolean indicating the success of the operation. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TBool MoveToFirst(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Navigates to the next access point in the list. williamr@2: * @return Boolean indicating the success of the operation. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TBool MoveNext(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Navigates to the last access point in the list. williamr@2: * @return Boolean indicating the success of the operation. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TBool MoveLast(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Navigates to the previous access point in the list. williamr@2: * @return Boolean indicating the success of the operation. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TBool MovePrev(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Counts the items in the list williamr@2: * @return The number of items in the list. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TUint32 Count(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the name of the 'current' access point williamr@2: * Ownership of the returned text is not passed. williamr@2: * @return The name of the current access point williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C const TDesC& Name(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the UID of the current access point williamr@2: * @return The UID of the current access point williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TUint32 Uid(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the ISP-type of the current access point williamr@2: * @return The ISP-type of the current access point. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TCommsDbIspType Type(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the bearer-type of the current access point williamr@2: * @return The bearer-type of the current access point. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TApBearerType BearerType(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Provides all data in a CApListItemList array. williamr@2: * @param aList A reference to a CApListItemList object williamr@2: * to hold the values. williamr@2: * @return The number of items in the list. williamr@2: * All elements in the aList array and their memory williamr@2: * will be freed inside the routine. williamr@2: * The routine expands or shrinks the array as necessary williamr@2: * to minimize memory consumption. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TInt AllListItemDataL( CApListItemList& aList ); williamr@2: williamr@2: /** williamr@2: * Returns whether the current item is read-only or not. williamr@2: * @return Returns whether the current item is read-only or not. williamr@2: * williamr@2: * @deprecated williamr@2: */ williamr@2: IMPORT_C TBool IsReadOnly() const; williamr@2: williamr@2: private: williamr@2: /** williamr@2: * This function updates the member data according to the williamr@2: * current filter settings. williamr@2: * @return Error code. williamr@2: */ williamr@2: TInt DoUpdateL(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the filtered and sorted wap table williamr@2: * and places it on the Cleanupstack williamr@2: */ williamr@2: CCommsDbTableView* GetFilteredSortedWapTableViewLC(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the filtered and sorted IP bearer table williamr@2: * and places it on the Cleanupstack williamr@2: */ williamr@2: CCommsDbTableView* GetFilteredSortedIpBearerTableViewLC(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the filtered and sorted ISP table williamr@2: * and places it on the Cleanupstack williamr@2: */ williamr@2: CCommsDbTableView* GetFilteredSortedIspOutTableViewLC(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the filtered and sorted GPRS table williamr@2: * and places it on the Cleanupstack williamr@2: */ williamr@2: CCommsDbTableView* GetFilteredSortedGprsTableViewLC( TBool aIn ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the filtered and sorted CDMA table williamr@2: * and places it on the Cleanupstack williamr@2: */ williamr@2: CCommsDbTableView* GetFilteredSortedCdmaTableViewLC(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Reads up the specified columns TUint32 values stored williamr@2: * in the table and returns it in the passed array williamr@2: */ williamr@2: void GetUintValuesL williamr@2: ( williamr@2: CCommsDbTableView* aTable, williamr@2: const TDesC& aField, williamr@2: CArrayFixFlat& aArray williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Reads up the protection values stored williamr@2: * in the table and returns it in the passed array williamr@2: */ williamr@2: void GetProtValuesL( CCommsDbTableView* aTable, williamr@2: CArrayFixFlat& aArray ); williamr@2: williamr@2: /** williamr@2: * Reads up the specified columns text values stored williamr@2: * in the table and returns it in the passed array williamr@2: */ williamr@2: void GetTextValuesL williamr@2: ( williamr@2: CCommsDbTableView* aTable, williamr@2: const TDesC& aField, williamr@2: CArrayPtrFlat& aArray williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Reads up the specified columns long text values stored williamr@2: * in the table and returns it in the passed array williamr@2: */ williamr@2: void GetLongTextValuesL williamr@2: ( williamr@2: CCommsDbTableView* aTable, williamr@2: const TDesC& aField, williamr@2: CArrayPtrFlat& aArray williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Returns whether a given value is in the given array or not williamr@2: */ williamr@2: TBool IsInArray( CArrayFixFlat* aArray, TUint32 aValue ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Returns the position of a given value in the given array. williamr@2: */ williamr@2: TInt PosInArray( CArrayFixFlat* aArray, TUint32 aValue ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Returns the position of an item with a given UID in the given list. williamr@2: */ williamr@2: TInt GetItemPos( CApListItemList* aTmpApList, TUint32 aId ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Opens a view on the given table where a given text coloumn has williamr@2: * a given value williamr@2: * @return the opened view on the table williamr@2: */ williamr@2: CCommsDbTableView* OpenViewMatchingTextL williamr@2: ( williamr@2: const TDesC& aTableName, williamr@2: const TDesC& aColumnToMatch, williamr@2: const TDesC16& aValueToMatch williamr@2: ); williamr@2: williamr@2: /** williamr@2: * Gets the ISP values (ISP UID, ISP type, ISP bearer type) williamr@2: * from a given table williamr@2: * @param aTable the table to go through (already filtered & ordered) williamr@2: * @param aArray An array to hold the readed values williamr@2: * @param aColName Column name (different column names are used for williamr@2: * CSD/GPRS/CDMA. williamr@2: */ williamr@2: void GetIspValuesL williamr@2: ( williamr@2: CCommsDbTableView* aTable, williamr@2: CArrayFixFlat* aArray, williamr@2: const TDesC& aColName williamr@2: ); williamr@2: williamr@2: /** williamr@2: * Gets the position of an element with a given IAP UID williamr@2: */ williamr@2: TInt GetIapPos williamr@2: ( williamr@2: CArrayFixFlat* aArray, williamr@2: TUint32 aValue williamr@2: ); williamr@2: williamr@2: /** williamr@2: * Sorts the data according to localised sorting on the williamr@2: * access point names, using CompareC williamr@2: */ williamr@2: void SortLocalisedNameL( TBool aAscending = ETrue ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Sorts the data according to Uids williamr@2: */ williamr@2: void SortUidL( TBool aAscending = ETrue ); williamr@2: williamr@2: williamr@2: williamr@2: private: // New functions williamr@2: /** williamr@2: * Sets filters and sorting order for the list of available williamr@2: * access points williamr@2: * @param aIspTypeFilter Filtering criteria on ISP type williamr@2: * Possible values are: williamr@2: * KEApIspTypeInternetOnly, KEApIspTypeWAPOnly, williamr@2: * KEApIspTypeInternetAndWAP, williamr@2: * KEApIspTypeWAPMandatory, KEApIspTypeAll and their combinations. williamr@2: * @param aBearerFilter Filtering criteria on bearer type williamr@2: * Possible values are the TApBearer enums and williamr@2: * their combinations (or-ed). williamr@2: * @param aSortType Specifies the sort order to use. williamr@2: * Possible values are: williamr@2: * KEApSortUidAscending, KEApSortUidDescending, williamr@2: * KEApSortNameAscending, KEApSortNameDescending williamr@2: * @param aReqIpvType The filtering criteria for IPv type williamr@2: * @param aVpnFilterType The Vpn filtering type, TVpnFilterType values williamr@2: */ williamr@2: void SetFiltersL( TInt aIspFilter, williamr@2: TInt aBearerFilter, williamr@2: TInt aSortType, williamr@2: TInt aReqIpvType, williamr@2: TInt aVpnFilterType williamr@2: ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Returns a pointer to the opened VPN_SERVICE table williamr@2: */ williamr@2: CCommsDbTableView* GetVpnTableViewLC(); williamr@2: williamr@2: williamr@2: /** williamr@2: * Gets the VPN values (VPN IAP UID, VPN HOME IAP UID, VPN Name ) williamr@2: * from the given VPN table williamr@2: * @param aTable the table to go through (already filtered & ordered) williamr@2: * @param aVpnArray An array to hold the readed vpn data values williamr@2: */ williamr@2: void GetVpnValuesL( CCommsDbTableView* aTable, williamr@2: CArrayFixFlat* aVpnArray ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Returns the supported bearer set from the passed requested bearer set williamr@2: * @param aBearerFilter The requested bearer set williamr@2: * return The supported subset of the requested bearers. williamr@2: */ williamr@2: TInt GetSupportedBearerSet( TInt aBearerFilter ); williamr@2: williamr@2: williamr@2: /** williamr@2: * Adding WLAN or LAN access points to existing list. williamr@2: * aWlan a TBool specifying whether WLAN or LAN williamr@2: */ williamr@2: void AddLanL( TBool aWlan ); williamr@2: williamr@2: williamr@2: williamr@2: williamr@2: private: // Data williamr@2: CCommsDatabase* iDb; // Does not own it! williamr@2: TInt iIsp; williamr@2: TInt iBearer; williamr@2: TInt iSort; williamr@2: CApListItemList* iApList; williamr@2: TInt iCursor; williamr@2: TInt iCount; williamr@2: TSelectExtra* iExt; williamr@2: williamr@2: }; williamr@2: williamr@2: #endif // CAPSELECT_H williamr@2: williamr@2: // End of File