#ifndef CEventForm_H #define CEventForm_H #include #include #include #include #include #include "CMyCalendar.h" #include "CExcelPrinter.h" namespace Ui { class CEventForm; } class CEventDelegate; class CEventItemModel; class CEventHistoryModel; class QAbstractTableModel; typedef QList QModelIndexList; class CEventForm : public QWidget { Q_OBJECT public: explicit CEventForm(QWidget *parent, bool editMode); ~CEventForm(); void initilize(); signals: void closeBtnClicked(); void printExcel(CEventItemModel *model,QString fileName); void printExcelHis(CEventHistoryModel *model,QString fileName); public slots: void login(); void logout(); void slotShowResult(QString result); public: void initFilter(); void setLevelComboBox(bool &isLevelFilter,QList &listLevel); void setLocationComboBox(bool &isLocationFilter,QList &listLocation); void setEventTypeComboBox(bool &isEventTypeFilter,QList &listEventType); void setEventTimeLineEdit(bool &isTimeFilter, QDateTime &startTime, QDateTime &endTime); void setFilterWndInit(); protected slots: void slotClearRTEvent(); void slotUpdateModel(); void updateFilter(); void slot_updateFilter(bool isLevelFilter, QList listLevel, bool isLocationFilter, QList listLocation, bool isRegionFilter, QList listRegion, bool isEventTypeFilter, QList listEventType, bool isDeviceTypeFilter, QString subSystem, QString deviceType, bool isKeywordFilterEnable, QString keyword, bool isTimeFilter, QDateTime startTime, QDateTime endTime); void slotRTEventStateChanged(); void slotUpdateRTTips(); //< 更新实时数据文本提示 //< 更新历史数据文本提示 void slotUpdateHISTipsRequesting(); void slotPermInvalid(); void slotUpdateHISTips(); void slotHISRecordOutOfRangeTips(QStringList stDescList); void print(); void stateChanged1(int state); void stateChanged2(int state); void stateChanged3(int state); void textChanged1(const QString &text); void textChanged2(const QString &text); void textChanged3(const QString &text); void myCalendarHide(QDate startTime, QDate endTime); void myCalendarShow(); void cancleTimeFilter(); protected: void contextMenuEvent(QContextMenuEvent *event); private: Ui::CEventForm *ui; CEventItemModel * m_pRealTimeModel; CEventHistoryModel * m_pHistoryModel; int m_nIsModel; bool m_isEditMode; QListWidget *m_pListWidget1; QListWidget *m_pListWidget2; QListWidget *m_pListWidget3; QLineEdit *m_pLineEdit1; QLineEdit *m_pLineEdit2; QLineEdit *m_pLineEdit3; QList m_priorityList; QList m_locationList; QList m_eventTypeList; QString m_strText1; QString m_strText2; QString m_strText3; QPushButton *m_timeIcon; CMyCalendar * m_myCalendar; QMenu *m_timeMenu; QThread *m_thread; //打印线程 CExcelPrinter * m_excelPrinter; }; #endif // CEventForm_H