From a9e9c0d5adb607073bf1f80496e54f51d97a6f61 Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Fri, 9 Sep 2016 14:01:57 +0300 Subject: [PATCH 1/2] Clear a list of recent files from non-existent files. --HG-- branch : develop --- src/libs/vmisc/vcommonsettings.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/libs/vmisc/vcommonsettings.cpp b/src/libs/vmisc/vcommonsettings.cpp index b780b2744..10f888ba1 100644 --- a/src/libs/vmisc/vcommonsettings.cpp +++ b/src/libs/vmisc/vcommonsettings.cpp @@ -368,7 +368,18 @@ void VCommonSettings::SetUndoCount(const int &value) //--------------------------------------------------------------------------------------------------------------------- QStringList VCommonSettings::GetRecentFileList() const { - return value(SettingGeneralRecentFileList).toStringList(); + const QStringList files = value(SettingGeneralRecentFileList).toStringList(); + QStringList cleared; + + for (int i = 0; i < files.size(); ++i) + { + if (QFileInfo(files.at(i)).exists()) + { + cleared.append(files.at(i)); + } + } + + return cleared; } //--------------------------------------------------------------------------------------------------------------------- From ae13021205719b675ab436455d9e5e8aedd88213 Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Fri, 9 Sep 2016 15:18:59 +0300 Subject: [PATCH 2/2] Fixing rotating VSplinePath. ref #128. --HG-- branch : develop --- src/libs/vgeometry/vsplinepath.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/libs/vgeometry/vsplinepath.cpp b/src/libs/vgeometry/vsplinepath.cpp index e3376b348..8410c8364 100644 --- a/src/libs/vgeometry/vsplinepath.cpp +++ b/src/libs/vgeometry/vsplinepath.cpp @@ -106,16 +106,14 @@ VSplinePath VSplinePath::Rotate(const QPointF &originPoint, qreal degrees, const QVector newPoints(CountPoints()); for (qint32 i = 1; i <= CountSubSpl(); ++i) { - const VSplinePoint &p1 = d->path.at(i-1); - const VSplinePoint &p2 = d->path.at(i); - VSpline spl = GetSpline(i).Rotate(originPoint, degrees); + const VSpline spl = GetSpline(i).Rotate(originPoint, degrees); - newPoints[i-1].SetP(p1.P()); - newPoints[i-1].SetAngle2(p1.Angle2(), spl.GetStartAngleFormula()); + newPoints[i-1].SetP(spl.GetP1()); + newPoints[i-1].SetAngle2(spl.GetStartAngle(), spl.GetStartAngleFormula()); newPoints[i-1].SetLength2(spl.GetC1Length(), spl.GetC1LengthFormula()); - newPoints[i].SetP(p2.P()); - newPoints[i].SetAngle1(p2.Angle1(), spl.GetEndAngleFormula()); + newPoints[i].SetP(spl.GetP4()); + newPoints[i].SetAngle1(spl.GetEndAngle(), spl.GetEndAngleFormula()); newPoints[i].SetLength1(spl.GetC2Length(), spl.GetC2LengthFormula()); }