#pragma once #include #include #include #include #include #include #include #include #include #include #include "debug.h" #include "model/data.h" using model::Message; //////////////////////////////////////////////////////////////////// /// 表示一个历史消息元素 //////////////////////////////////////////////////////////////////// class HistoryItem : public QWidget { Q_OBJECT public: HistoryItem() {} static HistoryItem* makeHistoryItem(const Message& message); }; //////////////////////////////////////////////////////////////////// /// 展示历史消息窗口 //////////////////////////////////////////////////////////////////// class HistoryMessageWidget : public QDialog { Q_OBJECT public: HistoryMessageWidget(QWidget *parent); //在窗口中添加一个历史消息 void addHistoryMessage(const Message& message); //清空窗口中所有的历史消息 void clear(); private: void initScrollArea(QGridLayout* layout); QRadioButton* keyRadioBtn; QRadioButton* timeRadioBtn; QLineEdit* searchEdit; QDateTimeEdit* begTimeEdit; QDateTimeEdit* endTimeEdit; //持有所有的历史消息结果的容器对象 QWidget* container; };