ExpertListWidget.h 981 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef EXPERTLISTWIDGET_H
  2. #define EXPERTLISTWIDGET_H
  3. #include <QWidget>
  4. class QVBoxLayout;
  5. class QListWidget;
  6. class QListWidgetItem;
  7. ///
  8. /// \brief The ExpertListWidget class
  9. /// 专家列表
  10. class ExpertListWidget : public QWidget
  11. {
  12. Q_OBJECT
  13. public:
  14. explicit ExpertListWidget(QWidget *parent = nullptr);
  15. void refreshList();
  16. bool isItemSelected() const;
  17. signals:
  18. void signalSelectionChanged();
  19. void siganlItemDoubleClicked();
  20. private:
  21. void initialize();
  22. void initLayout();
  23. void connectSignalsAndSlots();
  24. private slots:
  25. void slotItemDoubleClicked(QListWidgetItem *item);
  26. void slotItemClicked(QListWidgetItem *item);
  27. void slotCurrentItemChanged(QListWidgetItem *current, QListWidgetItem *previous);
  28. void slotCurrentRowChanged(int currentRow);
  29. void slotItemSelectionChanged();
  30. private:
  31. QVBoxLayout *m_vBoxLayout = nullptr;
  32. QListWidget *m_expertListWidget = nullptr;
  33. };
  34. #endif // EXPERTLISTWIDGET_H