273 changes: 0 additions & 273 deletions src/providers/wms/qgswmsdataitems.cpp

This file was deleted.

95 changes: 23 additions & 72 deletions src/providers/wms/qgswmsprovider.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ QgsWmsProvider::QgsWmsProvider( QString const &uri )
, mTileLayer( 0 )
, mTileMatrixSetId( QString::null )
, mTileMatrixSet( 0 )
, mFeatureCount( 0 )
{
QgsDebugMsg( "constructing with uri '" + mHttpUri + "'." );

Expand Down Expand Up @@ -367,23 +366,23 @@ void QgsWmsProvider::addLayers( QStringList const &layers,
if ( layers.size() != styles.size() )
{
QgsDebugMsg( "number of layers and styles don't match" );
valid = false;
mValid = false;
return;
}

if ( mTiled )
{
if ( layers.size() != 1 )
{
QgsMessageLog::logMessage( tr( "Number of tile layers must be one" ), tr( "WMS" ) );
QgsDebugMsg( "Number of tile layers must be one" );
mValid = false;
return;
}

mValid = retrieveServerCapabilities();
if ( !mValid || mTileLayersSupported.size() == 0 )
{
QgsMessageLog::logMessage( tr( "Tile layer not found" ), tr( "WMS" ) );
QgsDebugMsg( "Tile layer not found" );
return;
}

Expand Down Expand Up @@ -520,9 +519,6 @@ QImage *QgsWmsProvider::draw( QgsRectangle const &viewExtent, int pixelWidth, i
mCacheReply = 0;
}

// Bounding box in WMS format
QString bbox;

//according to the WMS spec for 1.3, the order of x - and y - coordinates is inverted for geographical CRS
bool changeXY = false;
if ( mCapabilities.version == "1.3.0" || mCapabilities.version == "1.3" )
Expand Down Expand Up @@ -628,14 +624,14 @@ QImage *QgsWmsProvider::draw( QgsRectangle const &viewExtent, int pixelWidth, i
setQueryItem( fiUrl, "VERSION", mCapabilities.version );
setQueryItem( fiUrl, "REQUEST", "GetFeatureInfo" );
setQueryItem( fiUrl, "BBOX", bbox );
setQueryItem( fiUrl, crsKey, imageCrs );
setQueryItem( fiUrl, crsKey, mImageCrs );
setQueryItem( fiUrl, "WIDTH", QString::number( pixelWidth ) );
setQueryItem( fiUrl, "HEIGHT", QString::number( pixelHeight ) );
setQueryItem( fiUrl, "LAYERS", layers );
setQueryItem( fiUrl, "STYLES", styles );
setQueryItem( fiUrl, "FORMAT", imageMimeType );
setQueryItem( fiUrl, "FORMAT", mImageMimeType );

if ( !imageMimeType.contains( "jpeg", Qt::CaseInsensitive ) && !imageMimeType.contains( "jpg", Qt::CaseInsensitive ) )
if ( !mImageMimeType.contains( "jpeg", Qt::CaseInsensitive ) && !mImageMimeType.contains( "jpg", Qt::CaseInsensitive ) )
{
setQueryItem( fiUrl, "TRANSPARENT", "true" );
}
Expand Down Expand Up @@ -1042,17 +1038,17 @@ void QgsWmsProvider::tileReplyFinished()
QByteArray text = reply->readAll();
if ( contentType == "text/xml" && parseServiceExceptionReportDom( text ) )
{
QgsMessageLog::logMessage( tr( "Tile request error (Title:%1; Error:%2; URL: %3)" )
QgsDebugMsg( QString( "Tile request error (Title:%1; Error:%2; URL: %3)" )
.arg( mErrorCaption ).arg( mError )
.arg( reply->url().toString() ), tr( "WMS" ) );
.arg( reply->url().toString() ) );
}
else
{
QgsMessageLog::logMessage( tr( "Tile request error (Status:%1; Content-Type:%2; Length:%3; URL: %4)" )
QgsDebugMsg( QString( "Tile request error (Status:%1; Content-Type:%2; Length:%3; URL: %4)" )
.arg( status.toString() )
.arg( contentType )
.arg( text.size() )
.arg( reply->url().toString() ), tr( "WMS" ) );
.arg( reply->url().toString() ) );
#ifdef QGISDEBUG
QFile file( QDir::tempPath() + "/b0rken-image.png" );
if ( file.open( QIODevice::WriteOnly ) )
Expand Down Expand Up @@ -1099,7 +1095,7 @@ void QgsWmsProvider::tileReplyFinished()
}
else
{
QgsMessageLog::logMessage( tr( "Returned image is flawed [%1]" ).arg( reply->url().toString() ), tr( "WMS" ) );
QgsDebugMsg( QString( "Returned image is flawed [%1]" ).arg( reply->url().toString() ) );
}

}
Expand Down Expand Up @@ -1149,10 +1145,10 @@ void QgsWmsProvider::cacheReplyFinished()
{
QVariant phrase = mCacheReply->attribute( QNetworkRequest::HttpReasonPhraseAttribute );

QgsMessageLog::logMessage( tr( "Map request error (Status: %1; Reason phrase: %2; URL:%3)" )
QgsDebugMsg( QString( "Map request error (Status: %1; Reason phrase: %2; URL:%3)" )
.arg( status.toInt() )
.arg( phrase.toString() )
.arg( mCacheReply->url().toString() ), tr( "WMS" ) );
.arg( mCacheReply->url().toString() ) );

mCacheReply->deleteLater();
mCacheReply = 0;
Expand All @@ -1172,24 +1168,24 @@ void QgsWmsProvider::cacheReplyFinished()
}
else
{
QgsMessageLog::logMessage( tr( "Returned image is flawed [%1]" ).arg( mCacheReply->url().toString() ), tr( "WMS" ) );
QgsDebugMsg( QString( "Returned image is flawed [%1]" ).arg( mCacheReply->url().toString() ) );
}
}
else
{
QByteArray text = mCacheReply->readAll();
if ( contentType.toLower() == "text/xml" && parseServiceExceptionReportDom( text ) )
{
QgsMessageLog::logMessage( tr( "Map request error (Title:%1; Error:%2; URL: %3)" )
QgsDebugMsg( QString( "Map request error (Title:%1; Error:%2; URL: %3)" )
.arg( mErrorCaption ).arg( mError )
.arg( mCacheReply->url().toString() ), tr( "WMS" ) );
.arg( mCacheReply->url().toString() ) );
}
else
{
QgsMessageLog::logMessage( tr( "Map request error (Status: %1; Response: %2; URL:%3)" )
QgsDebugMsg( QString( "Map request error (Status: %1; Response: %2; URL:%3)" )
.arg( status.toInt() )
.arg( QString::fromUtf8( text ) )
.arg( mCacheReply->url().toString() ), tr( "WMS" ) );
.arg( mCacheReply->url().toString() ) );
}

mCacheReply->deleteLater();
Expand Down Expand Up @@ -1324,7 +1320,7 @@ void QgsWmsProvider::capabilitiesReplyFinished()
mErrorFormat = "text/plain";
mError = tr( "Download of capabilities failed: %1" ).arg( mCapabilitiesReply->errorString() );
QgsDebugMsg( "error: " + mError );
httpcapabilitiesresponse.clear();
mHttpCapabilitiesResponse.clear();
}


Expand Down Expand Up @@ -3043,9 +3039,9 @@ QString QgsWmsProvider::layerMetadata( QgsWmsLayerProperty &layer )
QString metadata;

// Layer Properties section
myMetadataQString += "<tr><td bgcolor=\"white\">";
myMetadataQString += layer.name;
myMetadataQString += "</td></tr>";
metadata += "<tr><td bgcolor=\"white\">";
metadata += layer.name;
metadata += "</td></tr>";

// Use a nested table
metadata += "<tr><td>";
Expand Down Expand Up @@ -3660,15 +3656,10 @@ QStringList QgsWmsProvider::identifyAs( const QgsPoint& point, QString format )
setQueryItem( requestUrl, "X", QString::number( point.x() ) );
setQueryItem( requestUrl, "Y", QString::number( point.y() ) );

if ( mFeatureCount > 0 )
{
setQueryItem( requestUrl, "FEATURE_COUNT", QString::number( mFeatureCount ) );
}

// X,Y in WMS 1.1.1; I,J in WMS 1.3.0
// requestUrl += QString( "&I=%1&J=%2" ).arg( point.x() ).arg( point.y() );

QgsDebugMsg( QString( "getfeatureinfo: %1" ).arg( requestUrl ) );
QgsDebugMsg( QString( "getfeatureinfo: %1" ).arg( requestUrl.toString() ) );
QNetworkRequest request( requestUrl );
setAuthorization( request );
mIdentifyReply = QgsNetworkAccessManager::instance()->get( request );
Expand Down Expand Up @@ -3823,46 +3814,6 @@ void QgsWmsProvider::setAuthorization( QNetworkRequest &request ) const
}
}

QVector<QgsWmsSupportedFormat> QgsWmsProvider::supportedFormats()
{
QVector<QgsWmsSupportedFormat> formats;
QStringList mFormats, mLabels;

QList<QByteArray> supportedFormats = QImageReader::supportedImageFormats();

if ( supportedFormats.contains( "png" ) )
{
QgsWmsSupportedFormat p1 = { "image/png", "PNG" };
QgsWmsSupportedFormat p2 = { "image/png; mode=24bit", "PNG24" }; // UMN mapserver
QgsWmsSupportedFormat p3 = { "image/png8", "PNG8" }; // used by geoserver
QgsWmsSupportedFormat p4 = { "png", "PNG" }; // used by french IGN geoportail
QgsWmsSupportedFormat p5 = { "pngt", "PNGT" }; // used by french IGN geoportail

formats << p1 << p2 << p3 << p4 << p5;
}

if ( supportedFormats.contains( "jpg" ) )
{
QgsWmsSupportedFormat j1 = { "image/jpeg", "JPEG" };
QgsWmsSupportedFormat j2 = { "jpeg", "JPEG" }; // used by french IGN geoportail
formats << j1 << j2;
}

if ( supportedFormats.contains( "gif" ) )
{
QgsWmsSupportedFormat g1 = { "image/gif", "GIF" };
formats << g1;
}

if ( supportedFormats.contains( "tiff" ) )
{
QgsWmsSupportedFormat t1 = { "image/tiff", "TIFF" };
formats << t1;
}

return formats;
}

QString QgsWmsProvider::nodeAttribute( const QDomElement &e, QString name, QString defValue )
{
if ( e.hasAttribute( name ) )
Expand Down
27 changes: 9 additions & 18 deletions src/providers/wms/qgswmssourceselect.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,22 @@

#include "qgswmsprovider.h"
#include "qgis.h" // GEO_EPSG_CRS_ID
#include "qgisapp.h" //for getThemeIcon
#include "qgscontexthelp.h"
#include "qgscoordinatereferencesystem.h"
#include "qgsgenericprojectionselector.h"
#include "qgslogger.h"
#include "qgsmanageconnectionsdialog.h"
#include "qgsmessageviewer.h"
#include "qgsnewhttpconnection.h"
#include "qgsnumericsortlistviewitem.h"
#include "qgsproject.h"
#include "qgsproviderregistry.h"
#include "qgswmssourceselect.h"
#include "qgswmtsdimensions.h"
#include "qgsnetworkaccessmanager.h"

#include "../../gui/qgsgenericprojectionselector.h"

#include "../../app/qgsnewhttpconnection.h"
#include "../../app/qgsnumericsortlistviewitem.h"
#include "../../app/qgsmanageconnectionsdialog.h"

#include <QButtonGroup>
#include <QFileDialog>
#include <QRadioButton>
Expand Down Expand Up @@ -63,8 +64,8 @@ QgsWMSSourceSelect::QgsWMSSourceSelect( QWidget * parent, Qt::WFlags fl )
buttonBox->addButton( mAddButton, QDialogButtonBox::ActionRole );
connect( mAddButton, SIGNAL( clicked() ), this, SLOT( addClicked() ) );

mLayerUpButton->setIcon( QgisApp::getThemeIcon( "/mActionArrowUp.png" ) );
mLayerDownButton->setIcon( QgisApp::getThemeIcon( "/mActionArrowDown.png" ) );
// mLayerUpButton->setIcon( QgisApp::getThemeIcon( "/mActionArrowUp.png" ) );
// mLayerDownButton->setIcon( QgisApp::getThemeIcon( "/mActionArrowDown.png" ) );

mAddButton->setEnabled( false );
populateConnectionList();
Expand Down Expand Up @@ -525,16 +526,11 @@ void QgsWMSSourceSelect::addClicked()

QStringList connArgs;

if ( mTileWidth->text().toInt() > 0 && mTileHeight->text().toInt() > 0 )
{
connArgs << QString( "maxSize=%1;%2" ).arg( mTileWidth->text().toInt() ).arg( mTileHeight->text().toInt() );
}

if ( lstTilesets->selectedItems().isEmpty() )
{
collectSelectedLayers( layers, styles );
crs = mCRS;
format = mFormats[ mImageFormatGroup->checkedId()].format;
format = mFormats[ mImageFormatGroup->checkedId()];
}
else
{
Expand Down Expand Up @@ -589,11 +585,6 @@ void QgsWMSSourceSelect::addClicked()
}
}

if ( mFeatureCount->text().toInt() > 0 )
{
connArgs << QString( "featureCount=%1" ).arg( mFeatureCount->text().toInt() );
}

if ( !connArgs.isEmpty() )
{
if ( !connInfo.startsWith( "username=" ) && !connInfo.startsWith( "ignoreUrl=" ) )
Expand Down
1 change: 1 addition & 0 deletions src/providers/wms/qgswmssourceselect.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#include "ui_qgswmssourceselectbase.h"
#include "qgisgui.h"
#include "qgscontexthelp.h"
#include "qgswmsprovider.h"

#include <QStringList>
#include <QPushButton>
Expand Down
2 changes: 1 addition & 1 deletion src/providers/wms/qgswmtsdimensions.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class QgsWmtsDimensions : public QDialog, private Ui::QgsWmtsDimensionsBase
//! Destructor
~QgsWmtsDimensions();

void selectedDimensions( QHash<QString, QString> &dims );
void selectedDimensions( QHash<QString, QString> &dims );

void on_buttonBox_helpRequested() { QgsContextHelp::run( metaObject()->className() ); }
};
Expand Down