[QGIS Commit] r10853 - in trunk/qgis/src: app core
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Wed May 27 13:17:03 EDT 2009
Author: jef
Date: 2009-05-27 13:17:03 -0400 (Wed, 27 May 2009)
New Revision: 10853
Modified:
trunk/qgis/src/app/qgssnappingdialog.h
trunk/qgis/src/core/qgsprojectfiletransform.cpp
trunk/qgis/src/core/qgsprojectfiletransform.h
Log:
fix crash when viewing project properties of 1.1 project files
(missing LayerSnappingToleranceUnitList)
Modified: trunk/qgis/src/app/qgssnappingdialog.h
===================================================================
--- trunk/qgis/src/app/qgssnappingdialog.h 2009-05-27 13:33:04 UTC (rev 10852)
+++ trunk/qgis/src/app/qgssnappingdialog.h 2009-05-27 17:17:03 UTC (rev 10853)
@@ -28,7 +28,7 @@
int snapTo; //0 = to vertex, 1 = to segment, 2 = to vertex and to segment
QString layerName;
double tolerance;
- int toleranceUnit;
+ int toleranceUnit; // 0 = map units, 1 = pixels
};
/**A dialog to enter advanced editing properties, e.g. topological editing, snapping settings
Modified: trunk/qgis/src/core/qgsprojectfiletransform.cpp
===================================================================
--- trunk/qgis/src/core/qgsprojectfiletransform.cpp 2009-05-27 13:33:04 UTC (rev 10852)
+++ trunk/qgis/src/core/qgsprojectfiletransform.cpp 2009-05-27 17:17:03 UTC (rev 10853)
@@ -26,6 +26,7 @@
#include <QDomDocument>
#include <QPrinter> //to find out screen resolution
#include <cstdlib>
+#include "qgsprojectproperty.h"
typedef QgsProjectVersion PFV;
@@ -38,7 +39,8 @@
{PFV( 0, 9, 1 ), PFV( 0, 10, 0 ), &QgsProjectFileTransform::transform091to0100},
{PFV( 0, 9, 2 ), PFV( 0, 10, 0 ), &QgsProjectFileTransform::transformNull},
{PFV( 0, 10, 0 ), PFV( 0, 11, 0 ), &QgsProjectFileTransform::transform0100to0110},
- {PFV( 0, 11, 0 ), PFV( 1, 0, 0 ), &QgsProjectFileTransform::transform0110to1000}
+ {PFV( 0, 11, 0 ), PFV( 1, 0, 0 ), &QgsProjectFileTransform::transform0110to1000},
+ {PFV( 1, 1, 0 ), PFV( 1, 2, 0 ), &QgsProjectFileTransform::transform1100to1200},
};
bool QgsProjectFileTransform::updateRevision( QgsProjectVersion newVersion )
@@ -346,3 +348,37 @@
}
}
}
+
+void QgsProjectFileTransform::transform1100to1200()
+{
+ QgsDebugMsg( "Entering..." );
+ if ( mDom.isNull() )
+ return;
+
+ QDomNode qgis = mDom.firstChildElement( "qgis" );
+ if ( qgis.isNull() )
+ return;
+
+ QDomElement properties = qgis.firstChildElement( "properties" );
+ if ( properties.isNull() )
+ return;
+
+ QDomElement digitizing = properties.firstChildElement( "Digitizing" );
+ if ( digitizing.isNull() )
+ return;
+
+ QDomElement tolList = digitizing.firstChildElement( "LayerSnappingToleranceList" );
+ if ( tolList.isNull() )
+ return;
+
+ QDomElement tolUnitList = digitizing.firstChildElement( "LayerSnappingToleranceUnitList" );
+ if ( !tolUnitList.isNull() )
+ return;
+
+ QStringList units;
+ for ( int i = 0; i < tolList.childNodes().count(); i++ )
+ units << "0";
+
+ QgsPropertyValue value( units );
+ value.writeXML( "LayerSnappingToleranceUnitList", digitizing, mDom );
+}
\ No newline at end of file
Modified: trunk/qgis/src/core/qgsprojectfiletransform.h
===================================================================
--- trunk/qgis/src/core/qgsprojectfiletransform.h 2009-05-27 13:33:04 UTC (rev 10852)
+++ trunk/qgis/src/core/qgsprojectfiletransform.h 2009-05-27 17:17:03 UTC (rev 10853)
@@ -80,6 +80,7 @@
void transform091to0100();
void transform0100to0110();
void transform0110to1000();
+ void transform1100to1200();
};
More information about the QGIS-commit
mailing list