Sun, 03 Nov 2019 12:56:42 +0200
added saving of splitter state and recent files
#pragma once #include "main.h" #include "model.h" class DocumentManager : public QObject { Q_OBJECT using ModelPointer = std::unique_ptr<Model>; public: DocumentManager(QObject* parent = nullptr); DocumentManager(const DocumentManager&) = delete; DocumentManager(DocumentManager&&) = default; DocumentManager& operator=(const DocumentManager&) = delete; DocumentManager& operator=(DocumentManager&&) = default; QString newModel(); Model* findModelByName(const QString& name); QString openModel(const QString& path, QTextStream& errorStream); QString makeNewModelName(); private: int untitledNameCounter = 0; std::map<QString, ModelPointer> openModels; };