EvalReportWidget.h 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #ifndef EVALREPORTWIDGET_H
  2. #define EVALREPORTWIDGET_H
  3. #include <QWidget>
  4. class ProjectInfo;
  5. class CMind;
  6. class PlotView;
  7. class QVBoxLayout;
  8. class QGridLayout;
  9. class QTabWidget;
  10. class QTableView;
  11. class QComboBox;
  12. class QLabel;
  13. class EvalReportWidget : public QWidget
  14. {
  15. Q_OBJECT
  16. public:
  17. explicit EvalReportWidget(ProjectInfo *proj, int indexType, QWidget *parent = nullptr);
  18. private:
  19. void initWidgets();
  20. void initLayouts();
  21. void loadAlgs();
  22. void loadData();
  23. void showIndexWeight();
  24. void showIndexWeightPlot();
  25. void showTechScore();
  26. void showSchemeScore();
  27. void makePlotClear(PlotView *plotView);
  28. void loadWeightData();
  29. private slots:
  30. void slotSelectIndexPlotType(int type);
  31. void slotSelectTechPlotType(int type);
  32. void slotSelectSchemePlotType(int type);
  33. void slotIndexTabIndexChanged(int index);
  34. private:
  35. ProjectInfo *m_proj = nullptr; // 项目
  36. int m_indexType; // 指标类型
  37. CMind *m_mind = nullptr;
  38. QWidget *m_view = nullptr;
  39. QVBoxLayout *m_layout = nullptr;
  40. QGridLayout *m_gridLayout = nullptr;
  41. QLabel *m_indexTitle = nullptr; // 指标权重标题
  42. QTabWidget *m_indexTab = nullptr; // 指标权重表
  43. PlotView *m_indexPlot = nullptr; // 指标权重图
  44. QComboBox *m_indexCombo = nullptr; // 切换指标权重图类型
  45. QLabel *m_techTitle = nullptr; // 指标得分标题
  46. QTableView *m_techTable = nullptr; // 指标得分表
  47. PlotView *m_techPlot = nullptr; // 指标得分图
  48. QComboBox *m_techCombo = nullptr; // 切换指标得分图类型
  49. QLabel *m_schemeTitle = nullptr; // 方案得分标题
  50. QTableView *m_schemeTable = nullptr; // 方案得分表
  51. PlotView *m_schemePlot = nullptr; // 方案得分图
  52. QComboBox *m_schemeCombo = nullptr; // 切换方案得分类型
  53. };
  54. #endif // EVALREPORTWIDGET_H