00001 /* 00002 * ============================================================================== 00003 * Name : CLmkLandmarkSelectorDlg.h 00004 * Part of : Landmarks UI / LmkCommonUI.dll 00005 * Interface : Public 00006 * Description : This class provides functionality for selecting either one or 00007 * multiple landmarks. 00008 * Version : 00009 * 00010 * Copyright (c) 2004 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 CLMKLANDMARKSELECTORDLG_H 00024 #define CLMKLANDMARKSELECTORDLG_H 00025 00026 // INCLUDES 00027 #include <e32base.h> // CBase 00028 #include <e32std.h> //RArray and RPointerArray 00029 #include <epos_landmarks.h> // Lm typedefs, constants etc. 00030 #include <epos_cposlandmarkdatabase.h> 00031 00032 // FORWARD DECLARATIONS 00033 //class CPosLandmarkDatabase; 00034 class CLmkDlgSelectorImplBase; 00035 class MObjectProvider; 00036 00037 // For multiple database support 00038 class TLmkItemIdDbCombiInfo; 00039 00040 // CLASS DECLARATION 00041 00050 class CLmkLandmarkSelectorDlg : public CBase 00051 { 00052 public: // Constructors and destructor 00061 IMPORT_C static CLmkLandmarkSelectorDlg* NewL(); 00062 00066 IMPORT_C ~CLmkLandmarkSelectorDlg(); 00067 00068 public: // New functions 00076 IMPORT_C void SetMopParent( MObjectProvider* aParent ); 00077 00088 IMPORT_C TInt ExecuteLD( TLmkItemIdDbCombiInfo& aSelected ); 00089 00105 IMPORT_C TInt ExecuteLD( RArray<TLmkItemIdDbCombiInfo>& aSelectedItems ); 00106 private: 00111 CLmkLandmarkSelectorDlg(); 00112 00117 void ConstructL( ); 00118 00119 00120 private: // Data 00121 // ETrue if executed in multiple item selector mode 00122 TBool iIsMultiSelector; 00123 00125 CLmkDlgSelectorImplBase* iSelector; 00126 00127 // Set to ETrue in destructor 00128 TBool* iDestroyedPtr; 00129 00130 // For multiple database support 00131 RPointerArray <CPosLandmarkDatabase> iDbs; // 00132 00133 00134 }; 00135 00136 // CLMKLANDMARKSELECTORDLG_H 00137 #endif 00138 00139 // End of File