File tree 1 file changed +25
-1
lines changed
1 file changed +25
-1
lines changed Original file line number Diff line number Diff line change @@ -31,6 +31,7 @@ using namespace std;
31
31
#include " qgsexception.h"
32
32
#include " qgsprojectproperty.h"
33
33
#include " qgsmapcanvas.h"
34
+ #include " qgslogger.h"
34
35
35
36
#include < QApplication>
36
37
#include < QFileInfo>
@@ -1084,7 +1085,30 @@ bool QgsProject::read()
1084
1085
QgsDebug ( QString (" project file has version " + fileVersion).ascii () );
1085
1086
}
1086
1087
1087
- // XXX some day insert version checking
1088
+ QStringList fileVersionParts = fileVersion.split (" ." );
1089
+ QStringList qgisVersionParts = QString (QGis::qgisVersion).split (" ." );
1090
+
1091
+ bool older = false ;
1092
+
1093
+ if (fileVersionParts.size () != 3 || qgisVersionParts.size () != 3 )
1094
+ older = false ; // probably an older version
1095
+ else
1096
+ {
1097
+ if (fileVersionParts.at (0 ) < qgisVersionParts.at (0 ))
1098
+ older = true ;
1099
+ else if (fileVersionParts.at (1 ) < qgisVersionParts.at (1 ))
1100
+ older = true ;
1101
+ else if (fileVersionParts.at (2 ) < qgisVersionParts.at (2 ))
1102
+ older = true ;
1103
+ }
1104
+
1105
+ if (older)
1106
+ {
1107
+ QgsLogger::warning (" Loading a file that was saved with an older "
1108
+ " version of qgis (saved in " + fileVersion +
1109
+ " , loaded in " + QGis::qgisVersion +
1110
+ " ). Problems may occur." );
1111
+ }
1088
1112
1089
1113
#ifdef QGISDEBUG
1090
1114
qDebug ((" Project title: " + imp_->title ).toLocal8Bit ().data ());
You can’t perform that action at this time.
0 commit comments