23 |
23 |
24 class NmHsWidgetEmailEngine; |
24 class NmHsWidgetEmailEngine; |
25 class NmHsWidgetTitleRow; |
25 class NmHsWidgetTitleRow; |
26 class NmHsWidgetEmailRow; |
26 class NmHsWidgetEmailRow; |
27 class QGraphicsLinearLayout; |
27 class QGraphicsLinearLayout; |
|
28 class QTranslator; |
|
29 class HbFrameDrawer; |
|
30 class NmHsWidgetDateTimeObserver; |
28 |
31 |
29 class NmHsWidget : public HbWidget |
32 class NmHsWidget : public HbWidget |
30 { |
33 { |
31 Q_OBJECT |
34 Q_OBJECT |
32 |
35 |
33 Q_PROPERTY(QString accountId READ accountId WRITE setAccountId) |
36 Q_PROPERTY(QString accountId READ accountId WRITE setAccountId) |
|
37 Q_PROPERTY(QString accountIconName READ accountIconName WRITE setAccountIconName) |
|
38 Q_PROPERTY(QString widgetState READ widgetStateProperty WRITE setWidgetStateProperty) |
34 |
39 |
35 public: |
40 public: |
36 NmHsWidget(QGraphicsItem *parent = 0, Qt::WindowFlags flags = 0); |
41 NmHsWidget(QGraphicsItem *parent = 0, Qt::WindowFlags flags = 0); |
37 ~NmHsWidget(); |
42 ~NmHsWidget(); |
38 |
43 |
39 public slots: |
44 public slots: |
|
45 //from home screen fw |
40 void onInitialize(); |
46 void onInitialize(); |
41 void onShow(); |
47 void onShow(); |
42 void onHide(); |
48 void onHide(); |
43 void onUninitialize(); |
49 void onUninitialize(); |
44 |
50 //engine |
45 |
|
46 void updateMailData(); |
51 void updateMailData(); |
|
52 void onEngineException(const int& exc); |
|
53 //properties |
47 void setAccountId(const QString &text); |
54 void setAccountId(const QString &text); |
48 QString accountId() const; |
55 QString accountId() const; |
|
56 void setAccountIconName(const QString &text); |
|
57 QString accountIconName() const; |
|
58 void setWidgetStateProperty(QString value); |
|
59 QString widgetStateProperty(); |
|
60 //user actions |
|
61 void handleExpandCollapseEvent(); |
|
62 |
|
63 signals: |
|
64 void finished(); |
|
65 void setPreferences(const QStringList &names); |
|
66 void error(); |
|
67 private: |
|
68 bool setupLocalization(); |
|
69 void setupUi(); |
|
70 void updateMailRowsVisibility(const int visibleCount); |
|
71 void toggleExpansionState(); |
49 |
72 |
50 protected: |
73 protected: |
51 void updateMailRowsList(int mailCount); |
74 void updateMailRowsList(const int mailCount); |
52 void paint(QPainter *painter, |
|
53 const QStyleOptionGraphicsItem *option, |
|
54 QWidget *widget); |
|
55 void mousePressEvent(QGraphicsSceneMouseEvent *event); |
|
56 |
75 |
57 private: |
76 private: |
58 NmHsWidgetEmailEngine* mEngine; |
77 NmHsWidgetEmailEngine* mEngine; |
59 QGraphicsLinearLayout *mRowLayout; |
78 QGraphicsLinearLayout *mRowLayout; |
60 NmHsWidgetTitleRow* mTitleRow; |
79 NmHsWidgetTitleRow* mTitleRow; |
61 QList<NmHsWidgetEmailRow*> mMailRows; |
80 QList<NmHsWidgetEmailRow*> mMailRows; |
62 NmId mAccountId; |
81 NmId mAccountId; |
|
82 QString mAccountIconName; |
|
83 QTranslator *mTranslator; |
|
84 HbFrameDrawer* mBackgroundFrameDrawer; |
|
85 bool mIsExpanded; |
|
86 bool mStaticWidget; |
|
87 NmHsWidgetDateTimeObserver* mDateObserver; |
63 |
88 |
64 public: |
89 public: |
65 friend class TestNmHsWidget; |
90 friend class TestNmHsWidget; |
66 }; |
91 }; |
67 |
92 |