phonebookui/pbkcommonui/inc/cntcontactcardview_p.h
changeset 61 d30183af6ca6
parent 54 47627ab5d7a4
child 66 554fe4dbbb59
equal deleted inserted replaced
56:d508aa856878 61:d30183af6ca6
    22 
    22 
    23 #include <QObject>
    23 #include <QObject>
    24 #include <QKeyEvent>
    24 #include <QKeyEvent>
    25 #include <QGraphicsSceneResizeEvent>
    25 #include <QGraphicsSceneResizeEvent>
    26 #include "cntglobal.h"
    26 #include "cntglobal.h"
    27 #include <cntmaptileservice.h>
    27 #include <maptileservice.h>
    28 
    28 
    29 class HbView;
    29 class HbView;
    30 class HbScrollArea;
    30 class HbScrollArea;
    31 class CntDocumentLoader;
    31 class CntDocumentLoader;
    32 class HbAction;
    32 class HbAction;
    33 class HbIcon;
    33 class HbIcon;
    34 class QGraphicsWidget;
    34 class QGraphicsWidget;
    35 class QGraphicsLinearLayout;
    35 class QGraphicsLinearLayout;
    36 class ThumbnailManager;
    36 class CntThumbnailManager;
    37 class CntContactCardDataContainer;
    37 class CntContactCardDataContainer;
    38 class CntContactCardHeadingItem;
    38 class CntContactCardHeadingItem;
    39 class CntContactCardDetailItem;
    39 class CntContactCardDetailItem;
    40 class CntContactCardDataItem;
    40 class CntContactCardDataItem;
    41 class CntImageLabel;
    41 class CntImageLabel;
    45 class QStandardItemModel;
    45 class QStandardItemModel;
    46 class QModelIndex;
    46 class QModelIndex;
    47 class HbSelectionDialog;
    47 class HbSelectionDialog;
    48 class CntPresenceListener;
    48 class CntPresenceListener;
    49 class HbLabel;
    49 class HbLabel;
       
    50 class CntSaveManager;
       
    51 class QTimer;
    50 
    52 
    51 QTM_BEGIN_NAMESPACE
    53 QTM_BEGIN_NAMESPACE
    52 class QContact;
    54 class QContact;
    53 class QContactManager;
    55 class QContactManager;
    54 class QContactDetail;
    56 class QContactDetail;
    79     Q_DECLARE_PUBLIC(CntContactCardView)
    81     Q_DECLARE_PUBLIC(CntContactCardView)
    80 
    82 
    81 public:
    83 public:
    82     CntContactCardViewPrivate(bool isTemporary);
    84     CntContactCardViewPrivate(bool isTemporary);
    83     virtual ~CntContactCardViewPrivate();
    85     virtual ~CntContactCardViewPrivate();
    84     
    86 
       
    87 #ifdef PBK_UNIT_TEST
       
    88 public:
       
    89 #else
    85 protected:
    90 protected:
       
    91 #endif
    86     bool eventFilter(QObject *obj, QEvent *event);
    92     bool eventFilter(QObject *obj, QEvent *event);
    87 
    93 
    88 public slots:
    94 public slots:
    89     void onItemActivated();
    95     void onItemActivated();
    90     void editContact();
    96     void editContact();
   114     void handleMenuAction(HbAction* aAction);
   120     void handleMenuAction(HbAction* aAction);
   115     void handleSendBusinessCard( HbAction* aAction );
   121     void handleSendBusinessCard( HbAction* aAction );
   116     void executeAction(QContact& aContact, const QContactDetail& aDetail, const QString& aAction);
   122     void executeAction(QContact& aContact, const QContactDetail& aDetail, const QString& aAction);
   117     void sendKeyCancelSlot();
   123     void sendKeyCancelSlot();
   118     void contactDeletedFromOtherSource(const QList<QContactLocalId>& contactIds);
   124     void contactDeletedFromOtherSource(const QList<QContactLocalId>& contactIds);
       
   125     void contactUpdatedFromOtherSource(const QList<QContactLocalId>& contactIds);
   119     
   126     
   120 #ifdef PBK_UNIT_TEST
   127 #ifdef PBK_UNIT_TEST
   121 public slots:
   128 public slots:
   122 #else
   129 #else
   123 private slots:
   130 private slots:
   132 	// Presence related function
   139 	// Presence related function
   133 	void updateItemPresence(const QString& accountUri, bool online);
   140 	void updateItemPresence(const QString& accountUri, bool online);
   134 	    
   141 	    
   135 public:
   142 public:
   136     CntContactCardView* q_ptr;    
   143     CntContactCardView* q_ptr;    
   137     void activate(CntAbstractViewManager* aMgr, const CntViewParameters aArgs);
   144     void activate(const CntViewParameters aArgs);
   138     void deactivate();
   145     void deactivate();
   139     CntDocumentLoader* document();
   146     CntDocumentLoader* document();
   140     QContactManager* contactManager();
   147     QContactManager* contactManager();
   141     
   148     
   142 signals:
   149 signals:
   143     void preferredUpdated();
   150     void preferredUpdated();
   144     void backPressed();
   151     void backPressed(int value);
   145     void viewActivated(CntAbstractViewManager* aMgr, const CntViewParameters aArgs);
   152     void viewActivated(CntAbstractViewManager* aMgr, const CntViewParameters aArgs);
   146     void addToContacts();
   153     void addToContacts();
   147     
   154     
   148 #ifdef PBK_UNIT_TEST
   155 #ifdef PBK_UNIT_TEST
   149 public:
   156 public:
   151 private:
   158 private:
   152 #endif
   159 #endif
   153     void connectAction(QString actionName, const char* slot);
   160     void connectAction(QString actionName, const char* slot);
   154     void executeAction(QContact& aContact, const QContactDetail& aDetail, const QString& aAction, CntContactCardDetailItem* aItem);
   161     void executeAction(QContact& aContact, const QContactDetail& aDetail, const QString& aAction, CntContactCardDetailItem* aItem);
   155     void executeDynamicAction(QContact& aContact, QContactDetail aDetail, QContactActionDescriptor aActionDescriptor);
   162     void executeDynamicAction(QContact& aContact, QContactDetail aDetail, QContactActionDescriptor aActionDescriptor);
   156     
       
   157     bool sendKeyPressed();
   163     bool sendKeyPressed();
   158 #ifdef PBK_UNIT_TEST
   164     void populateHeadingItem();
   159 public:
   165     void populateListItems();
   160 #else
   166     
   161 private:
   167 public:
   162 #endif
   168     CntAbstractViewManager*     mViewManager;   // not own
   163     CntAbstractViewManager*     mViewManager;
       
   164     HbView*                     mView;
   169     HbView*                     mView;
   165     HbScrollArea                *mScrollArea;
   170     HbScrollArea                *mScrollArea;
   166     QGraphicsWidget             *mContainerWidget;
       
   167     QGraphicsLinearLayout       *mContainerLayout;
   171     QGraphicsLinearLayout       *mContainerLayout;
   168     QContact                    *mContact;
   172     QContact                    *mContact;
   169     QGraphicsWidget             *mDetailsWidget;
       
   170     CntContactCardDataContainer *mDataContainer;
   173     CntContactCardDataContainer *mDataContainer;
   171     CntContactCardHeadingItem   *mHeadingItem;
   174     CntContactCardHeadingItem   *mHeadingItem;
   172     ThumbnailManager            *mThumbnailManager;
   175     CntThumbnailManager         *mThumbnailManager;
   173     QContactAvatar              *mAvatar;
   176     QContactAvatar              *mAvatar;
   174     bool                        mIsHandlingMenu;
       
   175     QMap<QString, CntContactCardDetailItem*> mPreferredItems;
   177     QMap<QString, CntContactCardDetailItem*> mPreferredItems;
       
   178     
   176     /// maps a QContactOnlineAccount (for example "sip:sip@sip.com") to a detail item
   179     /// maps a QContactOnlineAccount (for example "sip:sip@sip.com") to a detail item
   177     QMap<QString, CntContactCardDetailItem*> mPresenceItems;
   180     QMap<QString, CntContactCardDetailItem*> mPresenceItems;
   178     int                         mFavoriteGroupId;
       
   179     CntDocumentLoader           *mLoader;
   181     CntDocumentLoader           *mLoader;
   180     QContactAction              *mContactAction;
       
   181     HbAction                    *mBackKey;
   182     HbAction                    *mBackKey;
   182     CntImageLabel               *mImageLabel;
   183     CntImageLabel               *mImageLabel;
   183     XQServiceRequest            *mHighwayService;
       
   184     HbIcon                      *mVCardIcon;
   184     HbIcon                      *mVCardIcon;
   185     CntViewParameters           mArgs;
   185     CntViewParameters           mArgs;
   186     ShareUi                     *mShareUi;
   186     ShareUi                     *mShareUi;
   187     bool                        mAcceptSendKey;
   187     bool                        mAcceptSendKey;
   188     QStandardItemModel*         mSendKeyListModel;
       
   189     HbSelectionDialog*          mSendKeyPopup;
       
   190     CntPresenceListener*        mPresenceListener; // own
   188     CntPresenceListener*        mPresenceListener; // own
   191     CntMapTileService           *mMaptile;
   189     MapTileService              *mMaptile; //own
   192     QTimer                      *mProgressTimer;
       
   193     QList <CntContactCardMapTileDetail*> mAddressList;
   190     QList <CntContactCardMapTileDetail*> mAddressList;
   194     QMap <int, HbLabel*>        mMaptileLabelList;
   191     QMap <int, HbLabel*>        mMaptileLabelList;
   195     bool                        mIsTemporary;
   192     bool                        mIsTemporary;
   196     bool                        mIsExecutingAction;
   193     bool                        mIsExecutingAction;
       
   194     QMap<QString, bool>         mInitiialPrecenceData;
       
   195     QContactLocalId             mMyCardId;
       
   196     CntSaveManager* mSaveManager; // own
       
   197     CntAbstractEngine* mEngine;
       
   198     QTimer* mProgressTimer; // own
       
   199     QList<CntContactCardDetailItem*>    mDetailPtrs;
   197 };
   200 };
   198 
   201 
   199 #endif // CNTCOMMLAUNCHERVIEW_H
   202 #endif // CNTCOMMLAUNCHERVIEW_H
   200 
   203 
   201 // EOF
   204 // EOF