29 : QObject(parent), m_applicationModels(nullptr)
31 setObjectName(
"OutputDataIOService");
35 : QObject(parent), m_applicationModels(nullptr)
37 setObjectName(
"OutputDataIOService");
77 if (
auto jobItem = parentJobItem(item)) {
78 if (jobItem->isRunning()) {
79 jobItem->setComments(
"Possible GUI crash while job was running");
80 jobItem->setStatus(
"Failed");
84 }
catch (
const std::exception& ex) {
85 if (
auto jobItem = parentJobItem(item)) {
88 QString(
"Load of the data from disk failed with '%1'").arg(QString(ex.what())));
89 jobItem->setStatus(
"Failed");
104 QVector<SaveLoadInterface*> result;
111 result.push_back(non_xml_item);
120 const QStringList& newSaves)
129 auto session_item =
dynamic_cast<SessionItem*
>(item);
131 return const_cast<JobItem*
>(jobItem);
Defines class holding all application models.
Defines class IntensityDataIOFactory.
Defines MessageService class.
Defines ModelPath namespace.
Defines class OutputDataIOService.
Defines ProjectUtils namespace.
Defines save/load interface.
QVector< SessionItem * > nonXMLItems() const
Returns all non-XML items.
The service to collect messages from different senders.
void send_warning(QObject *sender, const QString &description)
Save history information for collection of items with non-XML data.
void markAsSaved(const SaveLoadInterface *item)
QStringList savedFileNames() const
Returns list of file names used to save all items in a history.
bool wasModifiedSinceLastSave(const QString &dirname, const SaveLoadInterface *item)
bool hasHistory(const QString &dirname) const
QStringList savedFileNames(const QString &dirname) const
void setHistory(const QString &dirname, const OutputDataDirHistory &history)
Sets history for given directory. Previous history will be rewritten.
void load(const QString &projectDir, MessageService *messageService=nullptr)
void setApplicationModels(ApplicationModels *models)
QVector< SaveLoadInterface * > nonXMLItems() const
Returns all non-XML items available for save/load.
ApplicationModels * m_applicationModels
OutputDataIOHistory m_history
OutputDataIOService(QObject *parent=nullptr)
void save(const QString &projectDir)
void cleanOldFiles(const QString &projectDir, const QStringList &oldSaves, const QStringList &newSaves)
Clean old saved files.
Purely virtual interface to handle non-XML data save and load.
const SessionItem * ancestor(const SessionItem *item, const QString &requiredModelType)
Returns ancestor of given modelType for given item.
QStringList substract(const QStringList &lhs, const QStringList &rhs)
Returns list of string from lhs, which are not in rhs.
bool removeFiles(const QString &dirname, const QStringList &filenames)
QString projectDir(const QString &projectFileName)
Returns project directory deduced from project file name.