Add Valentina version info inside each file before saving.
Many misunderstand purpose of tag "version" and think that this tag contains information about the Valentina version. More info in the comment should help. --HG-- branch : develop
This commit is contained in:
parent
39a7fcd743
commit
9287acf90e
|
@ -42,6 +42,7 @@
|
||||||
#include "../vmisc/undoevent.h"
|
#include "../vmisc/undoevent.h"
|
||||||
#include "../vmisc/vsettings.h"
|
#include "../vmisc/vsettings.h"
|
||||||
#include "../vmisc/vmath.h"
|
#include "../vmisc/vmath.h"
|
||||||
|
#include "../vmisc/projectversion.h"
|
||||||
#include "../qmuparser/qmuparsererror.h"
|
#include "../qmuparser/qmuparsererror.h"
|
||||||
#include "../vgeometry/varc.h"
|
#include "../vgeometry/varc.h"
|
||||||
#include "../vgeometry/vellipticalarc.h"
|
#include "../vgeometry/vellipticalarc.h"
|
||||||
|
@ -65,6 +66,15 @@
|
||||||
|
|
||||||
const QString VPattern::AttrReadOnly = QStringLiteral("readOnly");
|
const QString VPattern::AttrReadOnly = QStringLiteral("readOnly");
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
QString FileComment()
|
||||||
|
{
|
||||||
|
return QString("Pattern created with Valentina v%1 (http://www.valentina-project.org/).").arg(APP_VERSION_STR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VPattern::VPattern(VContainer *data, Draw *mode, VMainGraphicsScene *sceneDraw,
|
VPattern::VPattern(VContainer *data, Draw *mode, VMainGraphicsScene *sceneDraw,
|
||||||
VMainGraphicsScene *sceneDetail, QObject *parent)
|
VMainGraphicsScene *sceneDetail, QObject *parent)
|
||||||
|
@ -83,8 +93,7 @@ void VPattern::CreateEmptyFile()
|
||||||
this->clear();
|
this->clear();
|
||||||
QDomElement patternElement = this->createElement(TagPattern);
|
QDomElement patternElement = this->createElement(TagPattern);
|
||||||
|
|
||||||
patternElement.appendChild(
|
patternElement.appendChild(createComment(FileComment()));
|
||||||
createComment(QStringLiteral("Pattern created with Valentina (http://www.valentina-project.org/).")));
|
|
||||||
|
|
||||||
QDomElement version = createElement(TagVersion);
|
QDomElement version = createElement(TagVersion);
|
||||||
QDomText newNodeText = createTextNode(VPatternConverter::PatternMaxVerStr);
|
QDomText newNodeText = createTextNode(VPatternConverter::PatternMaxVerStr);
|
||||||
|
@ -378,7 +387,7 @@ QVector<quint32> VPattern::GetActivePPPieces() const
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
bool VPattern::SaveDocument(const QString &fileName, QString &error) const
|
bool VPattern::SaveDocument(const QString &fileName, QString &error)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -391,6 +400,14 @@ bool VPattern::SaveDocument(const QString &fileName, QString &error) const
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update comment with Valentina version
|
||||||
|
QDomNode commentNode = documentElement().firstChild();
|
||||||
|
if (commentNode.isComment())
|
||||||
|
{
|
||||||
|
QDomComment comment = commentNode.toComment();
|
||||||
|
comment.setData(FileComment());
|
||||||
|
}
|
||||||
|
|
||||||
const bool saved = VAbstractPattern::SaveDocument(fileName, error);
|
const bool saved = VAbstractPattern::SaveDocument(fileName, error);
|
||||||
if (saved && QFileInfo(fileName).suffix() != QLatin1String("autosave"))
|
if (saved && QFileInfo(fileName).suffix() != QLatin1String("autosave"))
|
||||||
{
|
{
|
||||||
|
|
|
@ -62,7 +62,7 @@ public:
|
||||||
QVector<quint32> GetActivePPPieces() const;
|
QVector<quint32> GetActivePPPieces() const;
|
||||||
|
|
||||||
virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE;
|
virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE;
|
||||||
virtual bool SaveDocument(const QString &fileName, QString &error) const Q_DECL_OVERRIDE;
|
virtual bool SaveDocument(const QString &fileName, QString &error) Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
QRectF ActiveDrawBoundingRect() const;
|
QRectF ActiveDrawBoundingRect() const;
|
||||||
|
|
||||||
|
|
|
@ -728,7 +728,7 @@ QString VDomDocument::UnitsHelpString()
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
bool VDomDocument::SaveDocument(const QString &fileName, QString &error) const
|
bool VDomDocument::SaveDocument(const QString &fileName, QString &error)
|
||||||
{
|
{
|
||||||
if (fileName.isEmpty())
|
if (fileName.isEmpty())
|
||||||
{
|
{
|
||||||
|
|
|
@ -116,7 +116,7 @@ public:
|
||||||
static QString UnitsToStr(const Unit &unit, const bool translate = false);
|
static QString UnitsToStr(const Unit &unit, const bool translate = false);
|
||||||
static QString UnitsHelpString();
|
static QString UnitsHelpString();
|
||||||
|
|
||||||
virtual bool SaveDocument(const QString &fileName, QString &error) const;
|
virtual bool SaveDocument(const QString &fileName, QString &error);
|
||||||
QString Major() const;
|
QString Major() const;
|
||||||
QString Minor() const;
|
QString Minor() const;
|
||||||
QString Patch() const;
|
QString Patch() const;
|
||||||
|
|
|
@ -52,6 +52,7 @@
|
||||||
#include "../vpatterndb/calculator.h"
|
#include "../vpatterndb/calculator.h"
|
||||||
#include "../vpatterndb/variables/vmeasurement.h"
|
#include "../vpatterndb/variables/vmeasurement.h"
|
||||||
#include "../vpatterndb/vcontainer.h"
|
#include "../vpatterndb/vcontainer.h"
|
||||||
|
#include "../vmisc/projectversion.h"
|
||||||
|
|
||||||
const QString VMeasurements::TagVST = QStringLiteral("vst");
|
const QString VMeasurements::TagVST = QStringLiteral("vst");
|
||||||
const QString VMeasurements::TagVIT = QStringLiteral("vit");
|
const QString VMeasurements::TagVIT = QStringLiteral("vit");
|
||||||
|
@ -83,6 +84,15 @@ const QString VMeasurements::GenderUnknown = QStringLiteral("unknown");
|
||||||
|
|
||||||
const QString defBirthDate = QStringLiteral("1800-01-01");
|
const QString defBirthDate = QStringLiteral("1800-01-01");
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
QString FileComment()
|
||||||
|
{
|
||||||
|
return QString("Measurements created with Valentina v%1 (http://www.valentina-project.org/).").arg(APP_VERSION_STR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VMeasurements::VMeasurements(VContainer *data)
|
VMeasurements::VMeasurements(VContainer *data)
|
||||||
:VDomDocument(),
|
:VDomDocument(),
|
||||||
|
@ -121,6 +131,20 @@ void VMeasurements::setXMLContent(const QString &fileName)
|
||||||
type = ReadType();
|
type = ReadType();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
bool VMeasurements::SaveDocument(const QString &fileName, QString &error)
|
||||||
|
{
|
||||||
|
// Update comment with Valentina version
|
||||||
|
QDomNode commentNode = documentElement().firstChild();
|
||||||
|
if (commentNode.isComment())
|
||||||
|
{
|
||||||
|
QDomComment comment = commentNode.toComment();
|
||||||
|
comment.setData(FileComment());
|
||||||
|
}
|
||||||
|
|
||||||
|
return VDomDocument::SaveDocument(fileName, error);
|
||||||
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VMeasurements::AddEmpty(const QString &name, const QString &formula)
|
void VMeasurements::AddEmpty(const QString &name, const QString &formula)
|
||||||
{
|
{
|
||||||
|
@ -676,7 +700,7 @@ void VMeasurements::CreateEmptyStandardFile(Unit unit, int baseSize, int baseHei
|
||||||
this->clear();
|
this->clear();
|
||||||
QDomElement mElement = this->createElement(TagVST);
|
QDomElement mElement = this->createElement(TagVST);
|
||||||
|
|
||||||
mElement.appendChild(createComment("Measurements created with Valentina (http://www.valentina-project.org/)."));
|
mElement.appendChild(createComment(FileComment()));
|
||||||
|
|
||||||
QDomElement version = createElement(TagVersion);
|
QDomElement version = createElement(TagVersion);
|
||||||
const QDomText newNodeText = createTextNode(VVSTConverter::MeasurementMaxVerStr);
|
const QDomText newNodeText = createTextNode(VVSTConverter::MeasurementMaxVerStr);
|
||||||
|
@ -719,7 +743,7 @@ void VMeasurements::CreateEmptyIndividualFile(Unit unit)
|
||||||
this->clear();
|
this->clear();
|
||||||
QDomElement mElement = this->createElement(TagVIT);
|
QDomElement mElement = this->createElement(TagVIT);
|
||||||
|
|
||||||
mElement.appendChild(createComment("Measurements created with Valentina (http://www.valentina-project.org/)."));
|
mElement.appendChild(createComment(FileComment()));
|
||||||
|
|
||||||
QDomElement version = createElement(TagVersion);
|
QDomElement version = createElement(TagVersion);
|
||||||
const QDomText newNodeText = createTextNode(VVITConverter::MeasurementMaxVerStr);
|
const QDomText newNodeText = createTextNode(VVITConverter::MeasurementMaxVerStr);
|
||||||
|
|
|
@ -52,6 +52,7 @@ public:
|
||||||
virtual ~VMeasurements() Q_DECL_EQ_DEFAULT;
|
virtual ~VMeasurements() Q_DECL_EQ_DEFAULT;
|
||||||
|
|
||||||
virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE;
|
virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE;
|
||||||
|
virtual bool SaveDocument(const QString &fileName, QString &error) Q_DECL_OVERRIDE;
|
||||||
|
|
||||||
void AddEmpty(const QString &name, const QString &formula = QString());
|
void AddEmpty(const QString &name, const QString &formula = QString());
|
||||||
void AddEmptyAfter(const QString &after, const QString &name, const QString &formula = QString());
|
void AddEmptyAfter(const QString &after, const QString &name, const QString &formula = QString());
|
||||||
|
|
Loading…
Reference in New Issue
Block a user