From 630f434397ebc9fa121bb6459ab96814da8ba5d0 Mon Sep 17 00:00:00 2001 From: mhugent Date: Wed, 26 Jan 2011 09:10:23 +0000 Subject: [PATCH] Add element to group composer templates in WMS capabilities git-svn-id: http://svn.osgeo.org/qgis/trunk@15082 c8812cc2-4d05-0410-92ff-de0c093fc19c --- src/mapserver/qgsprojectparser.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mapserver/qgsprojectparser.cpp b/src/mapserver/qgsprojectparser.cpp index 538758a694df..01eaf4f918e7 100644 --- a/src/mapserver/qgsprojectparser.cpp +++ b/src/mapserver/qgsprojectparser.cpp @@ -951,6 +951,16 @@ void QgsProjectParser::printCapabilities( QDomElement& parentElement, QDomDocume } QDomNodeList composerNodeList = mXMLDoc->elementsByTagName( "Composer" ); + if ( composerNodeList.size() < 1 ) + { + return; + } + + QDomElement composerTemplatesElem = doc.createElement( "ComposerTemplates" ); + composerTemplatesElem.setAttribute( "xmlns:wms", "http://www.opengis.net/wms" ); + composerTemplatesElem.setAttribute( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" ); + composerTemplatesElem.setAttribute( "xsi:type", "wms:_ExtendedCapabilities" ); + for ( int i = 0; i < composerNodeList.size(); ++i ) { QDomElement composerTemplateElem = doc.createElement( "ComposerTemplate" ); @@ -961,9 +971,6 @@ void QgsProjectParser::printCapabilities( QDomElement& parentElement, QDomDocume } composerTemplateElem.setAttribute( "name", currentComposerElem.attribute( "title" ) ); - composerTemplateElem.setAttribute( "xmlns:wms", "http://www.opengis.net/wms" ); - composerTemplateElem.setAttribute( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" ); - composerTemplateElem.setAttribute( "xsi:type", "wms:_ExtendedCapabilities" ); //get paper width and hight in mm from composition QDomElement compositionElem = currentComposerElem.firstChildElement( "Composition" ); @@ -1008,8 +1015,9 @@ void QgsProjectParser::printCapabilities( QDomElement& parentElement, QDomDocume composerTemplateElem.appendChild( composerLabelElem ); } - parentElement.appendChild( composerTemplateElem ); + composerTemplatesElem.appendChild( composerTemplateElem ); } + parentElement.appendChild( composerTemplatesElem ); } QDomElement QgsProjectParser::composerByName( const QString& composerName ) const