15 #ifndef BORNAGAIN_MVVM_MODEL_MVVM_PROJECT_PROJECTUTILS_H
16 #define BORNAGAIN_MVVM_MODEL_MVVM_PROJECT_PROJECTUTILS_H
18 #include "mvvm/model_export.h"
26 class ProjectInterface;
27 struct ProjectContext;
37 MVVM_MODEL_EXPORT std::unique_ptr<ProjectInterface>
42 MVVM_MODEL_EXPORT std::string
ProjectWindowTitle(
const std::string& project_dir,
bool is_modified);
Interface to manipulate projects on disk.
Main class to hold hierarchy of SessionItem objects.
MVVM_MODEL_EXPORT std::string SuggestFileName(const SessionModel &model)
Suggests file name which can be used to store json content of given model.
MVVM_MODEL_EXPORT std::unique_ptr< ProjectInterface > CreateUntitledProject(const ProjectContext &context)
Creates new untitled project.
MVVM_MODEL_EXPORT bool IsPossibleProjectDir(const std::string &project_dir)
Returns 'true' if given directory might be a project directory.
MVVM_MODEL_EXPORT std::string ProjectWindowTitle(const ProjectInterface &project)
Returns a MainWindow title for given project.
materialitems.h Collection of materials to populate MaterialModel.
@ project
selective copying for saving/loading the project (tags and data created by item, updated from JSON)
Defines convenience function for project manager and document.
Provides necessary information for Project construction.