ConfigExpertDataWidget.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #ifndef CONFIGEXPERTDATAWIDGET_H
  2. #define CONFIGEXPERTDATAWIDGET_H
  3. #include <QWidget>
  4. #include "SchemePlanManager.h"
  5. class QFUser;
  6. class UserConfig;
  7. class ToolButton;
  8. class PushButton;
  9. class QVBoxLayout;
  10. class QHBoxLayout;
  11. class QLabel;
  12. class QSplitter;
  13. class QPushButton;
  14. class QListWidget;
  15. class ConfigListItemWidget : public QWidget
  16. {
  17. Q_OBJECT
  18. };
  19. class ExpertListItemWidget : public QWidget
  20. {
  21. Q_OBJECT
  22. };
  23. class ConfigExpertDataWidget : public QWidget
  24. {
  25. Q_OBJECT
  26. public:
  27. explicit ConfigExpertDataWidget(QWidget *parent = nullptr);
  28. void initialize();
  29. void initLayout();
  30. void connectSignalsAndSlots();
  31. void setProcess(SchemePlanManager::SchemeProcessInfo process);
  32. void loadData();
  33. signals:
  34. protected:
  35. virtual void showEvent(QShowEvent *event) override;
  36. virtual void hideEvent(QHideEvent *event) override;
  37. private:
  38. void refreshAddedList();
  39. void refreshExpList();
  40. private:
  41. SchemePlanManager::SchemeProcessInfo m_process;
  42. QVBoxLayout *m_vBoxLayout = nullptr;
  43. QLabel *m_titleLabel = nullptr;
  44. QSplitter *m_splitter = nullptr;
  45. QWidget *m_configWidget = nullptr;
  46. QVBoxLayout *m_configWidgetLayout = nullptr;
  47. QWidget *m_configListHeader = nullptr;
  48. QHBoxLayout *m_configListHeaderLayout = nullptr;
  49. QLabel *m_configListTitleLabel = nullptr;
  50. QLabel *m_configListTipsLabel = nullptr;
  51. QPushButton *m_saveButton = nullptr;
  52. QListWidget *m_configListWidget = nullptr;
  53. QWidget *m_expWidget = nullptr;
  54. QVBoxLayout *m_expWidgetLayout = nullptr;
  55. QWidget *m_expListHeader = nullptr;
  56. QHBoxLayout *m_expListHeaderLayout = nullptr;
  57. QLabel *m_expListTitleLabel = nullptr;
  58. QPushButton *m_refreshButton = nullptr;
  59. QListWidget *m_expListWidget = nullptr;
  60. QList<QFUser *> m_expertList;
  61. QList<UserConfig *> m_configList;
  62. };
  63. #endif // CONFIGEXPERTDATAWIDGET_H