@@ -94,37 +94,15 @@ QVector<QgsDataItem *> QgsWMSConnectionItem::createChildren()
94
94
QgsWmsCapabilitiesProperty capabilitiesProperty = caps.capabilitiesProperty ();
95
95
const QgsWmsCapabilityProperty &capabilityProperty = capabilitiesProperty.capability ;
96
96
97
- // If we have several top-level layers, or if we just have one single top-level layer,
98
- // then use those top-level layers directly
99
- if ( capabilityProperty.layers .size () > 1 ||
100
- ( capabilityProperty.layers .size () == 1 && capabilityProperty.layers [0 ].layer .size () == 0 ) )
97
+ Q_FOREACH ( const QgsWmsLayerProperty &layerProperty, capabilityProperty.layers )
101
98
{
102
- Q_FOREACH ( const QgsWmsLayerProperty &layerProperty, capabilityProperty.layers )
103
- {
104
- // Attention, the name may be empty
105
- QgsDebugMsg ( QString::number ( layerProperty.orderId ) + ' ' + layerProperty.name + ' ' + layerProperty.title );
106
- QString pathName = layerProperty.name .isEmpty () ? QString::number ( layerProperty.orderId ) : layerProperty.name ;
107
-
108
- QgsWMSLayerItem *layer = new QgsWMSLayerItem ( this , layerProperty.title , mPath + ' /' + pathName, capabilitiesProperty, uri, layerProperty );
109
-
110
- children << layer;
111
- }
112
- }
113
- // Otherwise if we have just one single top-level layers with children, then
114
- // skip this top-level layer and iterate directly on its children
115
- // Note (E. Rouault): this was the historical behavior before fixing #13762
116
- else if ( capabilityProperty.layers .size () == 1 )
117
- {
118
- Q_FOREACH ( const QgsWmsLayerProperty &layerProperty, capabilityProperty.layers [0 ].layer )
119
- {
120
- // Attention, the name may be empty
121
- QgsDebugMsg ( QString::number ( layerProperty.orderId ) + ' ' + layerProperty.name + ' ' + layerProperty.title );
122
- QString pathName = layerProperty.name .isEmpty () ? QString::number ( layerProperty.orderId ) : layerProperty.name ;
99
+ // Attention, the name may be empty
100
+ QgsDebugMsg ( QString::number ( layerProperty.orderId ) + ' ' + layerProperty.name + ' ' + layerProperty.title );
101
+ QString pathName = layerProperty.name .isEmpty () ? QString::number ( layerProperty.orderId ) : layerProperty.name ;
123
102
124
- QgsWMSLayerItem *layer = new QgsWMSLayerItem ( this , layerProperty.title , mPath + ' /' + pathName, capabilitiesProperty, uri, layerProperty );
103
+ QgsWMSLayerItem *layer = new QgsWMSLayerItem ( this , layerProperty.title , mPath + ' /' + pathName, capabilitiesProperty, uri, layerProperty );
125
104
126
- children << layer;
127
- }
105
+ children << layer;
128
106
}
129
107
}
130
108
0 commit comments