#ifndef CLNOTICELIST_H #define CLNOTICELIST_H #include #include "CHttpBll.h" #include "clNoticeDetail.h" #include namespace Ui { class clNoticeList; } class QMyLabel : public QLabel { Q_OBJECT signals: void sgnClick(int nRow, int nCol); public: explicit QMyLabel(int nRow, QWidget *parent = nullptr) :QLabel(parent),m_nRow(nRow){ } private: void mouseReleaseEvent(QMouseEvent *ev) {emit sgnClick(m_nRow, 1); } int m_nRow; }; class clNoticeList : public QWidget { Q_OBJECT public: explicit clNoticeList(QWidget *parent = nullptr); ~clNoticeList(); void setUI(const int nWidth, const int nHeight); void setNotice(std::vector vNL); void viewNotice(__int64 nId); signals: void unReadNoticeCount(int nCount); void readNotice(__int64 nId); private slots: void on_tablewt_examList_cellClicked(int row, int column); void on_btn_setRead_clicked(); void onUpdateNoticeReadStatus(CUpdateNoticeReadStatus unrs); private: Ui::clNoticeList *ui; std::vector vNoticeList; std::shared_ptr m_pNoticeDetail; void showNotice(CNoticeInfo ni); void setNoticeRead(QString sIds); void updateReadStatus(__int64 nId); }; #endif // CLNOTICELIST_H