#include "projectManager.h" #include "dataBase.h" #include ProjectManager& ProjectManager::instance() { //采用静态局部变量的方式,静态局部变量的初始化是在第一次访问时,以后的调用不会多次初始化,并且生命周期和程序一致 static ProjectManager instance; return instance; } ProjectManager::ProjectManager(QObject *parent) : QObject(parent) { } ProjectManager::~ProjectManager() { } void ProjectManager::saveEditorDataToDB(QUuid uid,const QString& name,const QString& tag,QByteArray byte) { bool val = DataBase::GetInstance()->ifEditorProjectExist(name); if(val) { bool res = DataBase::GetInstance()->updateEditorProject(name,byte); if(res){ emit editorSaved(name,uid); QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"更新成功")); } else QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"更新失败")); } else{ bool res = DataBase::GetInstance()->insertEditorProject(uid,name,tag,byte); if(res){ emit editorSaved(name,uid); QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"保存成功")); } else QMessageBox::information(NULL, QString("提示"), QString::fromWCharArray(L"保存失败")); } } QByteArray ProjectManager::getEditorDataByName(const QString& name) { return DataBase::GetInstance()->getEditorProjectByName(name); } void ProjectManager::createEditor(const QString& name) { if(!_wizardInfo.contains(name)){ QUuid uid = QUuid::createUuid(); _wizardInfo[name].sName = name; _wizardInfo[name].uid = uid; emit createNewEditor(name,uid); } } void ProjectManager::saveEditor(const QString& name) { emit prepareSaveEditor(name); }