emailuis/nmailui/inc/nmeditorheader.h
changeset 40 2c62ef3caffd
parent 20 ecc8def7944a
child 30 759dc5235cdb
equal deleted inserted replaced
39:b0b89ca206b5 40:2c62ef3caffd
    22 #include "nmactionresponse.h"
    22 #include "nmactionresponse.h"
    23 // Header widget fields
    23 // Header widget fields
    24 enum
    24 enum
    25 {
    25 {
    26     EEditorToLine=0,
    26     EEditorToLine=0,
    27     EEditorGroupBoxRecipient,
       
    28     EEditorCcLine,
    27     EEditorCcLine,
    29     EEditorBccLine,
    28     EEditorBccLine,
    30     EEditorSubjectLine,
    29     EEditorSubjectLine,
    31     EEditorAttachmentLine
    30     EEditorAttachmentLine
    32 };
    31 };
    46 
    45 
    47 public:
    46 public:
    48     NmEditorHeader(HbDocumentLoader *documentLoader, QGraphicsItem *parent=0);
    47     NmEditorHeader(HbDocumentLoader *documentLoader, QGraphicsItem *parent=0);
    49     virtual ~NmEditorHeader();
    48     virtual ~NmEditorHeader();
    50     int headerHeight() const;
    49     int headerHeight() const;
    51     NmHtmlLineEdit* subjectField() const;
    50     NmHtmlLineEdit* subjectEdit() const;
    52     NmRecipientLineEdit* toField() const;
    51     NmRecipientLineEdit* toEdit() const;
    53     NmRecipientLineEdit* ccField() const;
    52     NmRecipientLineEdit* ccEdit() const;
    54     NmRecipientLineEdit* bccField() const;
    53     NmRecipientLineEdit* bccEdit() const;
    55     void setPriority(NmMessagePriority priority=NmMessagePriorityNormal);
    54     void setPriority(NmMessagePriority priority=NmMessagePriorityNormal);
    56     void setPriority(NmActionResponseCommand prio=NmActionResponseCommandNone);
    55     void setPriority(NmActionResponseCommand prio=NmActionResponseCommandNone);
    57     void setGroupBoxCollapsed( bool collapsed );
       
    58     void addAttachment(const QString &fileName, const QString &fileSize, const NmId &nmid);
    56     void addAttachment(const QString &fileName, const QString &fileSize, const NmId &nmid);
    59     void removeAttachment(const QString &fileName);
    57     void removeAttachment(const QString &fileName);
    60     void removeAttachment(const NmId &nmid);
    58     void removeAttachment(const NmId &nmid);
    61     void launchAttachment(const NmId &nmid);
    59     void launchAttachment(const NmId &nmid);
    62     void setAttachmentParameters(
    60     void setAttachmentParameters(
    63         const QString &fileName,
    61         const QString &fileName,
    64         const NmId &msgPartId,
    62         const NmId &msgPartId,
    65         const QString &fileSize,
    63         const QString &fileSize,
    66         int result);
    64         int result);
       
    65     void setFieldVisibility(bool isVisible);
    67 
    66 
    68 private:
    67 private:
    69     void loadWidgets();
    68     void loadWidgets();
    70     void rescaleHeader();
    69     void rescaleHeader();
    71     void createConnections();
    70     void createConnections();
    72     HbWidget* createRecipientGroupBoxContentWidget();
    71     void adjustFieldSizeValues( NmRecipientLineEdit *widget, qreal height );
    73 
    72 
    74 signals:
    73 signals:
    75     void headerHeightChanged(int);
    74     void headerHeightChanged(int);
    76     void recipientFieldsHaveContent(bool recipientFieldsHaveContent);
    75     void recipientFieldsHaveContent(bool recipientFieldsHaveContent);
    77     void attachmentLongPressed(NmId attachmentPartId, QPointF point);
    76     void attachmentLongPressed(NmId attachmentPartId, QPointF point);
    78 
    77 
    79 public slots:
    78 public slots:
       
    79 	void fixHeaderFieldHeights();
    80     void sendHeaderHeightChanged();
    80     void sendHeaderHeightChanged();
    81     void editorContentChanged();
    81     void editorContentChanged();
    82     void groupBoxExpandCollapse();
       
    83     void attachmentActivated(int arrayIndex);
    82     void attachmentActivated(int arrayIndex);
    84     void attachmentLongPressed(int arrayIndex, QPointF point);
    83     void attachmentLongPressed(int arrayIndex, QPointF point);
    85 
    84 
    86 private:
    85 private:
    87     HbDocumentLoader* mDocumentLoader;  // Not owned
    86     HbDocumentLoader* mDocumentLoader;  // Not owned
       
    87 	HbWidget *mHeader;  // Not owned
    88     int mHeaderHeight;
    88     int mHeaderHeight;
    89     HbLabel *mSubjectLabel;
    89     HbLabel *mSubjectLabel;
    90     HbLabel *mPriorityIconLabel;
    90     HbLabel *mPriorityIconLabel;
    91     bool mIconVisible;
    91     bool mIconVisible;
    92     NmRecipientLineEdit *mToEdit;
    92     NmRecipientLineEdit *mToEdit;
       
    93     NmRecipientLineEdit *mCcEdit;
       
    94     NmRecipientLineEdit *mBccEdit;
    93     NmHtmlLineEdit *mSubjectEdit;
    95     NmHtmlLineEdit *mSubjectEdit;
    94     bool mRecipientFieldsEmpty;
    96     bool mRecipientFieldsEmpty;
    95 
    97     QGraphicsLinearLayout *mLayout;
    96     // Recipient GroupBox related
       
    97     HbGroupBox *mGroupBoxRecipient;          // Owned
       
    98     HbWidget *mGroupBoxRecipientContent;     // Not owned
       
    99     QGraphicsLinearLayout *mGbVerticalLayout;// Not owned
       
   100     QGraphicsLinearLayout *mCcFieldLayout;   // Not owned
       
   101     QGraphicsLinearLayout *mBccFieldLayout;  // Not owned
       
   102 
       
   103     NmRecipientField *mToField;    // owned
       
   104     NmRecipientField *mCcField;    // Not owned
       
   105     NmRecipientField *mBccField;   // Not owned
       
   106 
       
   107     NmAttachmentList *mAttachmentList;
    98     NmAttachmentList *mAttachmentList;
       
    99     NmRecipientField *mToField;    // Owned
       
   100     NmRecipientField *mCcField;    // Owned
       
   101     NmRecipientField *mBccField;   // Owned
       
   102     bool mCcBccFieldVisible;
   108 };
   103 };
   109 
   104 
   110 #endif /* NMEDITORHEADER_H_ */
   105 #endif /* NMEDITORHEADER_H_ */