Skip to content

Commit adf47dc

Browse files
jef-nrldhont
authored andcommitted
store and restore layer extents in projects
1 parent 5a00172 commit adf47dc

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/core/qgsmaplayer.cpp

+12
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
#include "qgsvectorlayer.h"
4949
#include "qgsvectordataprovider.h"
5050
#include "qgsmaplayerregistry.h"
51+
#include "qgsxmlutils.h"
5152

5253

5354
QgsMapLayer::QgsMapLayer( QgsMapLayer::LayerType type,
@@ -531,6 +532,11 @@ bool QgsMapLayer::writeLayerXML( QDomElement& layerElement, QDomDocument& docume
531532
layerElement.setAttribute( "minimumScale", QString::number( minimumScale() ) );
532533
layerElement.setAttribute( "maximumScale", QString::number( maximumScale() ) );
533534

535+
if ( !mExtent.isNull() )
536+
{
537+
layerElement.appendChild( QgsXmlUtils::writeRectangle( mExtent, document ) );
538+
}
539+
534540
// ID
535541
QDomElement layerId = document.createElement( "id" );
536542
QDomText layerIdText = document.createTextNode( id() );
@@ -1216,6 +1222,12 @@ bool QgsMapLayer::importNamedStyle( QDomDocument& myDocument, QString& myErrorMe
12161222
setMinimumScale( myRoot.attribute( "minimumScale" ).toFloat() );
12171223
setMaximumScale( myRoot.attribute( "maximumScale" ).toFloat() );
12181224

1225+
QDomNode extentNode = myRoot.namedItem( "extent" );
1226+
if ( !extentNode.isNull() )
1227+
{
1228+
setExtent( QgsXmlUtils::readRectangle( extentNode.toElement() ) );
1229+
}
1230+
12191231
#if 0
12201232
//read transparency level
12211233
QDomNode transparencyNode = myRoot.namedItem( "transparencyLevelInt" );

0 commit comments

Comments
 (0)