Skip to content

Commit d690d72

Browse files
committed
store and restore layer extents in projects
1 parent 402ee9d commit d690d72

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/core/qgsmaplayer.cpp

Lines changed: 12 additions & 0 deletions
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() );
@@ -1212,6 +1218,12 @@ bool QgsMapLayer::importNamedStyle( QDomDocument& myDocument, QString& myErrorMe
12121218
setMinimumScale( myRoot.attribute( "minimumScale" ).toDouble() );
12131219
setMaximumScale( myRoot.attribute( "maximumScale" ).toDouble() );
12141220

1221+
QDomNode extentNode = myRoot.namedItem( "extent" );
1222+
if ( !extentNode.isNull() )
1223+
{
1224+
setExtent( QgsXmlUtils::readRectangle( extentNode.toElement() ) );
1225+
}
1226+
12151227
#if 0
12161228
//read transparency level
12171229
QDomNode transparencyNode = myRoot.namedItem( "transparencyLevelInt" );

0 commit comments

Comments
 (0)