00001 /* 00002 * ============================================================================ 00003 * Name : ApListItem.h 00004 * Part of : Access Point Engine 00005 * 00006 * Description: 00007 * Declaration of the CApSelect class. 00008 * Version: 00009 * 00010 * Copyright (C) 2002 Nokia Corporation. 00011 * This material, including documentation and any related 00012 * computer programs, is protected by copyright controlled by 00013 * Nokia Corporation. All rights are reserved. Copying, 00014 * including reproducing, storing, adapting or translating, any 00015 * or all of this material requires the prior written consent of 00016 * Nokia Corporation. This material also contains confidential 00017 * information which may not be disclosed to others without the 00018 * prior written consent of Nokia Corporation. 00019 * 00020 * ============================================================================ 00021 */ 00022 00023 #ifndef CAPLISTITEM_H 00024 #define CAPLISTITEM_H 00025 00026 // INCLUDES 00027 #include <commdb.h> 00028 #include <ApEngineVer.h> 00029 #include <ApEngineConsts.h> 00030 00031 00032 typedef struct 00033 { 00034 TBool iReadOnly; 00035 TUint32 iIapId; 00036 TBool iIsVpn; 00037 }TApListItemExtra; 00038 00039 00040 // CLASS DECLARATION 00044 class CApListItem :public CBase 00049 { 00050 public: // Constructors and destructor 00051 00058 IMPORT_C static CApListItem* NewLC(); 00059 00060 00074 IMPORT_C static CApListItem* NewLC( TCommsDbIspType aIspType, 00075 TUint32 aUid, 00076 const TDesC& aName, 00077 TApBearerType aBearerType ); 00078 00079 00093 IMPORT_C static CApListItem* NewLC( TCommsDbIspType aIspType, 00094 TUint32 aUid, 00095 const TDesC& aName, 00096 TApBearerType aBearerType, 00097 const TDesC& aStartPage, 00098 TBool aReadOnly = ETrue 00099 ); 00100 00108 IMPORT_C static CApListItem* NewLC( CApListItem* aItem ); 00109 00110 00115 IMPORT_C virtual ~CApListItem(); 00116 00117 00124 IMPORT_C void CopyFromL( const CApListItem& aCopyFrom ); 00125 00126 00127 00128 protected: // Constructors 00133 IMPORT_C CApListItem(); 00134 00146 IMPORT_C void ConstructL( TCommsDbIspType aIspType, 00147 TUint32 aUid, 00148 const TDesC& aName, 00149 TApBearerType aBearerType ); 00150 00161 IMPORT_C void ConstructL( TCommsDbIspType aIspType, 00162 TUint32 aUid, 00163 const TDesC& aName, 00164 TApBearerType aBearerType, 00165 const TDesC& aStartPage 00166 ); 00167 00168 00173 IMPORT_C void ConstructL(); 00174 00175 00176 public: // New functions 00177 00189 IMPORT_C void SetItemL( TCommsDbIspType aIspType, 00190 TUint32 aUid, 00191 const TDesC& aName, 00192 TApBearerType aBearerType ); 00193 00204 IMPORT_C void SetItemL( TCommsDbIspType aIspType, 00205 TUint32 aUid, 00206 const TDesC& aName, 00207 TApBearerType aBearerType, 00208 const TDesC& aStartpage 00209 ); 00210 00211 00218 IMPORT_C const TDesC& Name(); 00219 00220 00226 IMPORT_C TUint32 Uid(); 00227 00228 00234 IMPORT_C TCommsDbIspType Type(); 00235 00236 00242 IMPORT_C TApBearerType BearerType(); 00243 00244 00252 IMPORT_C const TDesC& StartPage() const; 00253 00254 00260 IMPORT_C TBool IsReadOnly() const; 00261 00262 00267 TBool IsVpnAp() const; 00268 00272 void SetVpnFlag( TBool aIsVpn ); 00273 00274 protected: 00275 void CreateExtraL(); 00276 00277 private: // Data 00278 TCommsDbIspType iIspType; 00279 00280 00281 TUint32 iUid; 00282 HBufC* iName; 00283 HBufC* iStartPage; 00284 00285 TApBearerType iBearerType; 00286 TApListItemExtra* iExt; 00287 00288 00289 protected: // Friend classes 00290 friend class CApSelect; 00291 friend class TApListItemUidKey; 00292 00293 }; 00294 00295 00296 00297 // CAPLISTITEM_H 00298 #endif 00299 00300 // End of File