phonebookui/pbkcommonui/inc/cntdetaileditor.h
changeset 27 de1630741fbe
parent 25 76a2435edfd4
child 31 2a11b5b00470
--- a/phonebookui/pbkcommonui/inc/cntdetaileditor.h	Fri Apr 16 14:53:18 2010 +0300
+++ b/phonebookui/pbkcommonui/inc/cntdetaileditor.h	Mon May 03 12:24:20 2010 +0300
@@ -18,43 +18,70 @@
 #ifndef CNTDETAILEDITOR_H_
 #define CNTDETAILEDITOR_H_
 
-#include "cntbaseview.h"
-
 #include <hbdataform.h>
 #include <hbabstractviewitem.h>
+#include <hbgroupbox.h>
 #include "cntdetaileditormodel.h"
+#include "cntabstractview.h"
 
 #include <qtcontacts.h>
-#include <hbgroupbox.h>
 
-class CntDetailEditor : public CntBaseView
+class HbDocumentLoader;
+class HbMenu;
+class HbView;
+class HbAction;
+class CntEditorFactory;
+
+class CntDetailEditor : public QObject,
+                        public CntAbstractView
     {
     Q_OBJECT
     
 public:
-    CntDetailEditor(CntViewManager *viewManager, QGraphicsItem *parent = 0);
+    CntDetailEditor( int aId );
     ~CntDetailEditor();
     
 private slots:
-    void aboutToCloseView();
+    void saveChanges();
     void discardChanges();
     void insertField();
+    void handleOrientation(Qt::Orientation aOrientation);
     
 public:
-    void setViewId( CntViewParameters::ViewId aId );
+    void setViewId( int aId );
     void setHeader( QString aHeader );
     void setDetails( CntDetailEditorModel* aModel, HbAbstractViewItem* aPrototype );
+    
     void setInsertAction( const QString aInsert );
     
-public: // from CntBaseView
-    void activateView( const CntViewParameters &viewParameters );
-    CntViewParameters::ViewId viewId() const;
+public:
+    // Documentation inherited from CntAbstractView.
+    void activate( CntAbstractViewManager* aMgr, const CntViewParameters aArgs );
+    void deactivate();
+        
+    bool isDefault() const;
+    HbView* view() const;
     
+    int viewId() const;
+    
+private:    
+    HbDocumentLoader* document();
+    
+#ifdef PBK_UNIT_TEST
+public:
+#else
 private:
-    QPointer<HbDataForm> mDataForm;
+#endif
+
+    QPointer<HbDataForm>           mDataForm;
     QPointer<CntDetailEditorModel> mDataFormModel;
-    QPointer<HbAbstractViewItem> mPrototype;
-    QPointer<HbGroupBox> mHeader;
-    CntViewParameters::ViewId iId;
+    QPointer<HbGroupBox>           mHeader;
+    int                            mId;
+    HbView                         *mView;
+    HbDocumentLoader               *mLoader;   
+    CntAbstractViewManager         *mViewManager; // Do not own
+    CntEditorFactory               *mEditorFactory;
+    HbAction                       *mSoftkey;
+    HbAction                       *mCancel;
     };
 #endif /* CNTDETAILEDITOR_H_ */