00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef CLMKEDITORDLG_H
00023 #define CLMKEDITORDLG_H
00024
00025
00026 #include "epos_cposlandmark.h"
00027 #include <epos_landmarks.h>
00028 #include <e32base.h>
00029
00030
00031 class CPosLandmarkDatabase;
00032 class CPosLandmark;
00033 class CLmkEditorImpl;
00034 class MObjectProvider;
00035 class TCoeHelpContext;
00036 class CLmkSender;
00037
00038
00039 typedef TUint32 TLmkEditorAttributes;
00040 typedef TInt TLmkEditorMode;
00041
00042
00050 class CLmkEditorDlg : public CBase
00051 {
00052 public:
00053
00061 enum _TLmkEditorAttributes
00062 {
00064 ELmkOnlyName = 0x0000,
00066 ELmkCategory = 0x0001,
00068 ELmkStreet = 0x0002,
00070 ELmkCity = 0x0004,
00072 ELmkStateProvince = 0x0008,
00074 ELmkCountry = 0x0010,
00076 ELmkPostalZIP = 0x0020,
00078 ELmkLatitude = 0x0040,
00080 ELmkLongitude = 0x0080,
00084 ELmkPositionAccuracy = 0x0100,
00087 ELmkAltitude = 0x0200,
00090 ELmkAltitudeAccuracy = 0x0400,
00092 ELmkAll = 0xFFFF,
00094 ELmkDescription = 0x0800,
00096 ELmkPhoneNumber = 0x1000,
00098 ELmkWebAddress = 0x2000
00099 };
00100
00108 enum _TLmkEditorMode
00109 {
00111 ELmkEditor,
00113 ELmkViewer
00114 };
00115
00122 class TLmkEditorParams
00123 {
00124 public:
00129 IMPORT_C TLmkEditorParams();
00130
00131
00132
00133 private:
00134
00135 TLmkEditorParams( const TLmkEditorParams& );
00136
00137
00138 TLmkEditorParams& operator = ( const TLmkEditorParams& );
00139
00140 public:
00141
00147 TLmkEditorAttributes iAttributes;
00148
00153 TLmkEditorMode iEditorMode;
00154 };
00155
00156 public:
00170 IMPORT_C static CLmkEditorDlg* NewL( CPosLandmarkDatabase& aDb,
00171 TPosLmItemId aLandmarkId,
00172 TLmkEditorParams& aParams );
00173
00189 IMPORT_C static CLmkEditorDlg* NewL( CPosLandmarkDatabase& aDb,
00190 CPosLandmark& aLandmark,
00191 TLmkEditorParams& aParams );
00192
00196 IMPORT_C ~CLmkEditorDlg();
00197
00198 public:
00203 IMPORT_C void SetMopParent( MObjectProvider* aParent );
00204
00212 IMPORT_C void SetHelpContext( TCoeHelpContext aContext );
00213
00239 IMPORT_C TInt ExecuteLD();
00246 IMPORT_C void DisableMapAndNavigationMenuOptions();
00247
00248 private:
00253 CLmkEditorDlg();
00254
00262 void ConstructL( CPosLandmarkDatabase& aDb,
00263 TLmkEditorParams& aParams,
00264 TPosLmItemId aLandmarkId,
00265 CPosLandmark* aLandmark );
00266
00267 private:
00269 CLmkEditorImpl* iEditorImpl;
00270
00272 TBool* iDestroyedPtr;
00273
00275 CLmkSender* iSender;
00276 };
00277
00278
00279 #endif
00280
00281