emailuis/nmhswidget/inc/nmhswidget.h
changeset 47 f83bd4ae1fe3
parent 23 2dc6caa42ec3
child 49 00c7ae862740
equal deleted inserted replaced
45:780f926bc26c 47:f83bd4ae1fe3
    26 class NmHsWidgetEmailRow;
    26 class NmHsWidgetEmailRow;
    27 class QGraphicsLinearLayout;
    27 class QGraphicsLinearLayout;
    28 class QTranslator;
    28 class QTranslator;
    29 class HbFrameDrawer;
    29 class HbFrameDrawer;
    30 class NmHsWidgetDateTimeObserver;
    30 class NmHsWidgetDateTimeObserver;
       
    31 class HbLabel;
    31 
    32 
    32 class NmHsWidget : public HbWidget
    33 class NmHsWidget : public HbWidget
    33 {
    34 {
    34     Q_OBJECT
    35     Q_OBJECT
    35     
    36     
    38     Q_PROPERTY(QString widgetState READ widgetStateProperty WRITE setWidgetStateProperty)
    39     Q_PROPERTY(QString widgetState READ widgetStateProperty WRITE setWidgetStateProperty)
    39   
    40   
    40 public:
    41 public:
    41     NmHsWidget(QGraphicsItem *parent = 0, Qt::WindowFlags flags = 0);
    42     NmHsWidget(QGraphicsItem *parent = 0, Qt::WindowFlags flags = 0);
    42     ~NmHsWidget();
    43     ~NmHsWidget();
       
    44 
       
    45     QPainterPath shape() const;
    43     
    46     
    44 public slots:
    47 public slots:
    45     //from home screen fw
    48     //from home screen fw
    46     void onInitialize();
    49     void onInitialize();
    47     void onShow();
    50     void onShow();
    48     void onHide();
    51     void onHide();
    49     void onUninitialize();
       
    50     //engine
    52     //engine
    51     void updateMailData();
    53     void updateMailData();
    52     void onEngineException(const int& exc);
    54     void onEngineException(const int& exc);
    53     //properties
    55     //properties
    54     void setAccountId(const QString &text);
    56     void setAccountId(const QString &text);
    63 signals: 
    65 signals: 
    64     void finished();
    66     void finished();
    65     void setPreferences(const QStringList &names);
    67     void setPreferences(const QStringList &names);
    66     void error();
    68     void error();
    67 private:
    69 private:
    68     bool setupLocalization();
    70     void setupLocalization();
    69     void setupUi();
    71     void setupUi();
    70     void updateMailRowsVisibility(const int visibleCount);
    72     void updateMailRowsVisibility(const int visibleCount);
       
    73     void addNoMailsLabelToLayout();
       
    74     void removeNoMailsLabelFromLayout();
       
    75     void addEmailRowsToLayout();
       
    76     void removeEmailRowsFromLayout();
       
    77     void updateLayout(const int visibleCount);
    71     void toggleExpansionState();  
    78     void toggleExpansionState();  
    72 
    79 
    73 protected:
    80 protected:
    74     void updateMailRowsList(const int mailCount);
    81     void createMailRowsList();
    75     
    82     
    76 private:
    83 private:
    77     NmHsWidgetEmailEngine* mEngine;
    84     NmHsWidgetEmailEngine* mEngine;
    78     QGraphicsLinearLayout *mRowLayout;
    85     QGraphicsLinearLayout *mRowLayout;
    79     NmHsWidgetTitleRow* mTitleRow;
    86     NmHsWidgetTitleRow* mTitleRow;
    81     NmId mAccountId;
    88     NmId mAccountId;
    82     QString mAccountIconName;
    89     QString mAccountIconName;
    83     QTranslator *mTranslator;
    90     QTranslator *mTranslator;
    84     HbFrameDrawer* mBackgroundFrameDrawer;
    91     HbFrameDrawer* mBackgroundFrameDrawer;
    85     bool mIsExpanded;
    92     bool mIsExpanded;
    86     bool mStaticWidget;
       
    87     NmHsWidgetDateTimeObserver* mDateObserver;
    93     NmHsWidgetDateTimeObserver* mDateObserver;
       
    94     HbLabel *mNoMailsLabel; 
    88     
    95     
    89 public:    
    96 public:    
    90     friend class TestNmHsWidget;     
    97     friend class TestNmHsWidget;     
    91 };
    98 };
    92 
    99