CreateProjWidget.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #ifndef CREATEPROJWIDGET_H
  2. #define CREATEPROJWIDGET_H
  3. #include <QWidget>
  4. class QGridLayout;
  5. class QLabel;
  6. class LineEdit;
  7. class CheckBox;
  8. class PushButton;
  9. /// 创建工程页面
  10. class CreateProjWidget : public QWidget
  11. {
  12. Q_OBJECT
  13. public:
  14. CreateProjWidget(QWidget *parent = nullptr);
  15. const QString projName() const;
  16. bool importanceSelected() const;
  17. bool schemeSelected() const;
  18. void clearInputs();
  19. signals:
  20. void signalCreate();
  21. private:
  22. void initWindow();
  23. void initialize();
  24. void initLayout();
  25. void connectSignalsAndSlots();
  26. void updateCreateButtonState();
  27. private slots:
  28. void slotTextChanged(const QString &text);
  29. void slotCheckBoxChanged(int state);
  30. void slotCreateClicked();
  31. void slotCancelClicked();
  32. private:
  33. QGridLayout *m_gridLayout = nullptr;
  34. QLabel *m_nameLabel = nullptr;
  35. QLabel *m_typeLabel = nullptr;
  36. LineEdit *m_nameLineEdit = nullptr;
  37. CheckBox *m_importanceCheckBox = nullptr;
  38. CheckBox *m_schemeCheckBox = nullptr;
  39. PushButton *m_createButton = nullptr;
  40. PushButton *m_cancelButton = nullptr;
  41. };
  42. #endif // CREATEPROJWIDGET_H