12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- #ifndef HOMEVIEW_H
- #define HOMEVIEW_H
- #include <QWidget>
- class ProjectInfo;
- class CreateProjWidget;
- class ProjectListWidget;
- class PushButton;
- class LineEdit;
- class QVBoxLayout;
- class QHBoxLayout;
- class QLabel;
- ///
- /// \brief The HomeView class
- /// 首页
- class HomeView : public QWidget
- {
- Q_OBJECT
- public:
- explicit HomeView(QWidget *parent = nullptr);
- void showEvent(QShowEvent *event) override;
- void hideEvent(QHideEvent *event) override;
- private:
- void initWidgets();
- void initLayout();
- void connectSignalsAndSlots();
- void loadProjects();
- QList<ProjectInfo *> searchResult() const;
- private slots:
- void slotCreateProjClicked();
- void slotSearchTextChanged();
- void slotConfirmCreate();
- void slotOpenProject(ProjectInfo *proj);
- void slotEditProject(ProjectInfo *proj);
- private:
- bool m_initilized = false;
- QVBoxLayout *m_layout = nullptr;
- QHBoxLayout *m_topLayout = nullptr;
- QLabel *m_title = nullptr;
- PushButton *m_create = nullptr;
- LineEdit *m_search = nullptr;
- PushButton *m_filter = nullptr;
- ProjectListWidget *m_projListWidget = nullptr;
- CreateProjWidget *m_createProjWidget = nullptr;
- QList<ProjectInfo *> m_projList;
- };
- #endif // HOMEVIEW_H
|