86 lines
1.9 KiB
C++
86 lines
1.9 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
class MainWindow;
|
|
class TitleBar;
|
|
class SideBar;
|
|
class ProjectManager;
|
|
class DataModel;
|
|
class CodeGenerateEventModule;
|
|
class MainWindowEventModule;
|
|
class HomePage;
|
|
class ProjectEventModule;
|
|
class DataModelEventModule;
|
|
class DataPackEventModule;
|
|
class SearchEditEventModule;
|
|
class XmlEditEventModule;
|
|
|
|
/**
|
|
* @brief 程序运行期间的事务处理管理组件
|
|
*/
|
|
class Session : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit Session(MainWindow* parent);
|
|
~Session();
|
|
/**
|
|
* @brief 返回标题栏管理组件
|
|
* @return 标题栏管理组件
|
|
*/
|
|
TitleBar* titleBar();
|
|
/**
|
|
* @brief 返回导航栏管理组件
|
|
* @return 导航栏管理组件
|
|
*/
|
|
SideBar* sideBar();
|
|
/**
|
|
* @brief 返回项目管理组件
|
|
* @return 项目管理组件
|
|
*/
|
|
ProjectManager* projectManager();
|
|
/**
|
|
* @brief 返回数据建模模块
|
|
* @return 数据建模模块
|
|
*/
|
|
DataModel* dataModel();
|
|
/**
|
|
* @brief 返回代码生成模块
|
|
* @return 代码生成模块
|
|
*/
|
|
CodeGenerateEventModule* codeGenerate();
|
|
|
|
MainWindow* parent();
|
|
|
|
ProjectEventModule* projectEventModule();
|
|
DataModelEventModule* dataModelEventModule();
|
|
DataPackEventModule* dataPackEventModule();
|
|
SearchEditEventModule* searchEditEventModule();
|
|
XmlEditEventModule* xmlEditEventModule();
|
|
|
|
HomePage* homePage();
|
|
/**
|
|
* @brief 返回Session单例对象
|
|
* @return Session对象
|
|
*/
|
|
static Session* getSession();
|
|
private:
|
|
TitleBar* _titleBar = nullptr;
|
|
SideBar* _sideBar = nullptr;
|
|
ProjectManager* _projectManager = nullptr;
|
|
DataModel* _dataModel = nullptr;
|
|
CodeGenerateEventModule* _codeGenerate = nullptr;
|
|
HomePage* _homePage = nullptr;
|
|
ProjectEventModule* _projectEventModule = nullptr;
|
|
DataModelEventModule* _dataModelEventModule = nullptr;
|
|
DataPackEventModule* _dataPackEvenModule = nullptr;
|
|
|
|
SearchEditEventModule* _searchEditModule = nullptr;
|
|
XmlEditEventModule* _xmlEditModule = nullptr;
|
|
|
|
MainWindow* _parent = nullptr;
|
|
static Session* _session;
|
|
friend class MainWindow;
|
|
};
|