#ifndef GENERATEREPORT_GENERATEREPORTBASE_H #define GENERATEREPORT_GENERATEREPORTBASE_H #include #include #include #include #include using namespace com::sun::star::uno; using namespace com::sun::star::frame; using namespace com::sun::star::text; namespace GenerateReport { class MainWindow; } #define GenerateReportBaseInstance GenerateReport::GenerateReportBase::getinstance() namespace GenerateReport { class GenerateReportBase { public: //brief : 获取单例 //return : _instance static GenerateReportBase* getinstance(); //初始化 void init(GenerateReport::MainWindow* mainWindow); void initUno(); css::uno::Reference getDesktop(); GenerateReport::MainWindow* getMainWindow(); void setTextDocument(css::uno::Reference xTextDocument); css::uno::Reference getTextDocument(); void setCurrentReportName(QString reportName); QString getCurrentReportName(); void setCurrentReportNumber(int currentReportNum); int getCurrentReportNumber(); private: GenerateReportBase(); ~GenerateReportBase() = default; private: static GenerateReportBase* m_instance; GenerateReport::MainWindow* m_mainWindow{}; css::uno::Reference m_XDesktop{}; css::uno::Reference m_xTextDocument; int m_currentReportNum{ 0 }; QString m_reportName{}; }; } #endif // GENERATEREPORT_GENERATEREPORTBASE_H