phonebookui/pbkcommonui/inc/cnteditviewdetailitem.h
changeset 27 de1630741fbe
parent 24 0ba2181d7c28
child 37 fd64c38c277d
equal deleted inserted replaced
25:76a2435edfd4 27:de1630741fbe
    18 #ifndef CNTEDITVIEWDETAILITEM_H
    18 #ifndef CNTEDITVIEWDETAILITEM_H
    19 #define CNTEDITVIEWDETAILITEM_H
    19 #define CNTEDITVIEWDETAILITEM_H
    20 
    20 
    21 #include <QObject>
    21 #include <QObject>
    22 #include <hbwidget.h>
    22 #include <hbwidget.h>
    23 #include <qcontactdetails.h>
    23 #include <qcontactdetail.h>
    24 #include "cntstringmapper.h"
    24 #include "cntstringmapper.h"
       
    25 #include <cnteditviewitem.h>
       
    26 
       
    27 #include <qtcontacts.h>
       
    28 
       
    29 QTM_BEGIN_NAMESPACE
       
    30 class QContactDetail;
       
    31 QTM_END_NAMESPACE
       
    32 QTM_USE_NAMESPACE
    25 
    33 
    26 class HbIconItem;
    34 class HbIconItem;
    27 class HbTextItem;
    35 class HbTextItem;
    28 class QGraphicsGridLayout;
    36 class QGraphicsGridLayout;
    29 class HbFrameItem;
    37 class HbFrameItem;
    30 class HbGestureSceneFilter;
    38 class HbGestureSceneFilter;
    31 class HbGesture;
    39 class HbGesture;
    32 
    40 
    33 class CntEditViewDetailItem : public HbWidget
    41 
       
    42 class CntEditViewDetailItem : public QObject, public CntEditViewItem
    34 {
    43 {
    35     Q_OBJECT
    44     Q_OBJECT
    36     Q_PROPERTY( QString text READ getText )
       
    37     Q_PROPERTY( QString valueText READ getValueText )
       
    38     Q_PROPERTY( HbIcon icon READ getIcon )
       
    39 
    45 
    40 public:
    46 public:
    41     CntEditViewDetailItem(QGraphicsItem *parent = 0);
    47     CntEditViewDetailItem( QContactDetail aDetail, QString aField, int aEditorView );
       
    48     CntEditViewDetailItem( QContactDetail aDetail, QStringList aField, int aEditorView );
    42     ~CntEditViewDetailItem();
    49     ~CntEditViewDetailItem();
    43 
    50     
    44 protected:
    51     void addText( QString aText );
    45     void mousePressEvent(QGraphicsSceneMouseEvent *event);
    52     void addIcon( HbIcon aIcon );
    46     void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
    53     
    47     void mouseReleaseEvent(QGraphicsSceneMouseEvent *event);
    54 public:// From CntEditViewItem
    48 
    55     QVariant data(int role) const;
    49 public:
    56     void activated();
    50     void initGesture();
    57     void longPressed(const QPointF &coords);
    51     void createPrimitives();
    58     
    52     void recreatePrimitives();
       
    53     void updatePrimitives();
       
    54     void setDetail(const QContactDetail &detail, const QString &type = QString());
       
    55     QContactDetail detail();
       
    56     QString fieldType();
       
    57 
       
    58     QString getText() const { return text; }
       
    59     QString getValueText() const { return valueText; }
       
    60     HbIcon getIcon() const { return icon; }
       
    61 
       
    62 public slots:
       
    63     void onLongPress(const QPointF &point);
       
    64 
       
    65 signals:
       
    66     void clicked();
       
    67     void longPressed(const QPointF &point);
       
    68 
       
    69 #ifdef PBK_UNIT_TEST
       
    70 public:
       
    71 #else
       
    72 private:
    59 private:
    73 #endif
    60     QStringList mTextList;
    74     HbIconItem              *mIcon;
    61     QVariantList mIconList;
    75     HbTextItem              *mLabel;
    62     QContactDetail mDetail;
    76     HbTextItem              *mContent;
    63     QStringList mField;
    77     QContactDetail           mDetail;
    64     int mEditorViewId;
    78     QString                  mType;
       
    79     HbFrameItem             *mFrameItem;
       
    80     HbFrameItem             *mFocusItem;
       
    81     bool                     mHasFocus;
       
    82     HbGestureSceneFilter    *mGestureFilter;
       
    83     HbGesture               *mGestureLongpressed;
       
    84     CntStringMapper          mStringMapper;
       
    85 
       
    86     QString                  text;
       
    87     QString                  valueText;
       
    88     HbIcon                   icon;
       
    89 
       
    90 };
    65 };
    91 
       
    92 #endif // CNTEDITVIEWDETAILITEM_H
    66 #endif // CNTEDITVIEWDETAILITEM_H
    93 
    67