cpbkmemoryentryadditemdlg.h

Go to the documentation of this file.
00001 /*
00002 * ============================================================================
00003 *  Name     : CPbkMemoryEntryAddItemDlg from CPbkMemoryEntryAddItemDlg.h
00004 *  Part of  : PbkView.dll
00005 *
00006 *  Description:
00007 *       Field type selection dialog for Phonebook's Create New / Edit Memory entry
00008 *       functions.
00009 *  Version:
00010 *
00011 *  Copyright (C) 2002 Nokia Corporation.
00012 *  This material, including documentation and any related 
00013 *  computer programs, is protected by copyright controlled by 
00014 *  Nokia Corporation. All rights are reserved. Copying, 
00015 *  including reproducing, storing,  adapting or translating, any 
00016 *  or all of this material requires the prior written consent of 
00017 *  Nokia Corporation. This material also contains confidential 
00018 *  information which may not be disclosed to others without the 
00019 *  prior written consent of Nokia Corporation.
00020 * ============================================================================
00021 */
00022 
00023 #ifndef __CPbkMemoryEntryAddItemDlg_H__
00024 #define __CPbkMemoryEntryAddItemDlg_H__
00025 
00026 //  INCLUDES
00027 #include <e32base.h>
00028 
00029 // FORWARD DECLARATIONS
00030 class CPbkFieldInfo;
00031 class CEikFormattedCellListBox;
00032 class CAknPopupList;
00033 
00034 // CLASS DECLARATION
00035 
00042 class CPbkMemoryEntryAddItemDlg : public CBase
00043     {
00044     public:  // Interface
00048         IMPORT_C CPbkMemoryEntryAddItemDlg();
00049 
00054         IMPORT_C void ResetWhenDestroyed(CPbkMemoryEntryAddItemDlg** aSelfPtr);
00055 
00063         IMPORT_C CPbkFieldInfo* ExecuteLD
00064             (CArrayPtrFlat<CPbkFieldInfo>& aFieldInfos, TInt aCbaResource);
00065 
00075         IMPORT_C CPbkFieldInfo* ExecuteLD
00076             (CArrayPtr<CPbkFieldInfo>& aFieldInfos, 
00077             TInt aCbaResource,
00078             const TDesC& aTitleText);
00079 
00084         IMPORT_C virtual CPbkFieldInfo* ExecuteLD
00085                         (CArrayPtr<CPbkFieldInfo>& aFieldInfos);
00086 
00092         IMPORT_C ~CPbkMemoryEntryAddItemDlg();
00093 
00094     public: // internal implementation
00099         void SortFieldInfoArray();
00100 
00101     protected:  // Interface for derived classes
00110         void PrepareLC(CArrayPtr<CPbkFieldInfo>& aFieldInfos, 
00111             TInt aCbaResource, const TDesC& aTitle);
00112 
00118         CPbkFieldInfo* RunLD();
00119 
00120     private:  // Spare virtual functions
00121         IMPORT_C virtual void Reserved_1();
00122         IMPORT_C virtual void Reserved_2();
00123 
00124     private: // Data types
00125         class CListBoxModel;
00126 
00127     private: // Data members
00129         CEikFormattedCellListBox* iListBox;
00131         CAknPopupList* iPopupList;
00133         TBool* iDestroyedPtr;
00135         CPbkMemoryEntryAddItemDlg** iSelfPtr;
00136         // Own: Sort Field Infos 
00137         TBool iSortFieldInfos;
00138     };
00139 
00140 
00146 class CPbkItemTypeSelectCreateNew : public CPbkMemoryEntryAddItemDlg
00147     {
00148     public:  // Interface
00152         IMPORT_C CPbkItemTypeSelectCreateNew();
00153 
00159         IMPORT_C ~CPbkItemTypeSelectCreateNew();
00160 
00161     public:  // from CPbkMemoryEntryAddItemDlg
00168         IMPORT_C CPbkFieldInfo* ExecuteLD(CArrayPtr<CPbkFieldInfo>& aFieldInfos);
00169 
00170     private:  // Data
00172         HBufC* iTitleBuf;
00173         // Spare data
00174         TInt32 iSpare1;
00175     };
00176 
00177 
00183 class CPbkItemTypeSelectAddToExisting : public CPbkMemoryEntryAddItemDlg
00184     {
00185     public:  // Interface
00189         IMPORT_C CPbkItemTypeSelectAddToExisting();
00190 
00196         IMPORT_C ~CPbkItemTypeSelectAddToExisting();
00197 
00198     public:  // from CPbkMemoryEntryAddItemDlg
00205         IMPORT_C CPbkFieldInfo* ExecuteLD(CArrayPtr<CPbkFieldInfo>& aFieldInfos);
00206 
00207     private:  // Data
00209         HBufC* iTitleBuf;
00210         // Spare data
00211         TInt32 iSpare1;
00212     };
00213 
00214 // __CPbkMemoryEntryAddItemDlg_H__
00215 #endif
00216             
00217 // End of File

Copyright © Nokia Corporation 2001-2008
Back to top