00001
00007 #ifndef MESSAGEBROWSER_H
00008 #define MESSAGEBROWSER_H
00009
00010 #include <QWidget>
00011 #include <QLineEdit>
00012 #include <QTextEdit>
00013 #include <QLabel>
00014 #include "datatypes/message.h"
00015 #include "servicemgr.h"
00016
00017 namespace Ui {
00018 class MessageBrowser;
00019 }
00020
00030 class MessageBrowser : public QWidget
00031 {
00032 Q_OBJECT
00033 public:
00034
00040 explicit MessageBrowser(QWidget *parent = 0);
00041
00049 explicit MessageBrowser(ServiceMgr *sm, QWidget *parent = 0);
00050
00058 explicit MessageBrowser(Message msg, QWidget *parent);
00059
00061 ~MessageBrowser();
00062
00068 void setMessage(Message msg);
00069
00073 QString title();
00074
00078 QStringList to();
00079
00083 QString from();
00084
00088 QString message();
00089
00093 void resetMessage();
00094
00095 void init();
00096
00097 private:
00098 ServiceMgr *sm;
00099 Ui::MessageBrowser *ui;
00100
00101 QTextEdit *textLabel;
00102
00103 AccountList mAccountList;
00104 QSet<QString> mLocalAccountIds;
00105
00106 QLabel* descLabel;
00107
00108 QLabel* titleLabel;
00109 QLabel* dateLabel;
00110 QLabel* fromLabel;
00111 QLabel* toLabel;
00112 QLabel* serviceIcon;
00113 QLineEdit* titleLineEdit;
00114 QLineEdit* dateLineEdit;
00115 QLineEdit* fromLineEdit;
00116 QLineEdit* toLineEdit;
00117
00118 void hideTo(bool hide);
00119 void hideFrom(bool hide);
00120
00121 private slots:
00122 void updateAccountList(QString, AccountList);
00123 };
00124
00125 #endif // MESSAGEBROWSER_H