Skip to content

Commit

Permalink
[ArcGIS REST] Port to Qt5
Browse files Browse the repository at this point in the history
  • Loading branch information
manisandro authored and nyalldawson committed Sep 20, 2016
1 parent 83ad380 commit ee57c1f
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 45 deletions.
5 changes: 0 additions & 5 deletions CMakeLists.txt
Expand Up @@ -292,11 +292,6 @@ ENDIF (WITH_TOUCH)
# search for QScintilla2 (C++ lib)
FIND_PACKAGE(QScintilla REQUIRED)

# search for QJSON and decide whether to enable ArcGIS providers

# TODO - needs to be ported to qt5
SET (WITH_ARCGIS FALSE)

# Master password hash and authentication encryption
FIND_PACKAGE(QCA REQUIRED)
# Check for runtime dependency of qca-ossl plugin
Expand Down
2 changes: 0 additions & 2 deletions cmake_templates/qgsconfig.h.in
Expand Up @@ -56,7 +56,5 @@

#cmakedefine ENABLE_MODELTEST

#cmakedefine WITH_ARCGIS

#endif

13 changes: 0 additions & 13 deletions src/app/qgisapp.cpp
Expand Up @@ -1732,13 +1732,6 @@ void QgisApp::createActions()
mActionAddPgLayer = 0;
#endif

#ifndef WITH_ARCGIS
delete mActionAddAfsLayer;
mActionAddAfsLayer = 0;
delete mActionAddAmsLayer;
mActionAddAmsLayer = 0;
#endif

#ifndef HAVE_ORACLE
delete mActionAddOracleLayer;
mActionAddOracleLayer = nullptr;
Expand Down Expand Up @@ -2188,7 +2181,6 @@ void QgisApp::createToolBars()
newLayerAction->setObjectName( "ActionNewLayer" );
connect( bt, SIGNAL( triggered( QAction * ) ), this, SLOT( toolButtonActionTriggered( QAction * ) ) );

#ifdef WITH_ARCGIS
// map service tool button
bt = new QToolButton();
bt->setPopupMode( QToolButton::MenuButtonPopup );
Expand Down Expand Up @@ -2230,9 +2222,6 @@ void QgisApp::createToolBars()
mLayerToolBar->removeAction( mActionAddWfsLayer );
featureServiceAction->setObjectName( "ActionFeatureService" );
connect( bt, SIGNAL( triggered( QAction * ) ), this, SLOT( toolButtonActionTriggered( QAction * ) ) );
#else
QAction* mapServiceAction = mActionAddWmsLayer;
#endif

// add db layer button
bt = new QToolButton();
Expand Down Expand Up @@ -2618,10 +2607,8 @@ void QgisApp::setTheme( const QString& theThemeName )
mActionAddWmsLayer->setIcon( QgsApplication::getThemeIcon( "/mActionAddWmsLayer.svg" ) );
mActionAddWcsLayer->setIcon( QgsApplication::getThemeIcon( "/mActionAddWcsLayer.svg" ) );
mActionAddWfsLayer->setIcon( QgsApplication::getThemeIcon( "/mActionAddWfsLayer.svg" ) );
#ifdef WITH_ARCGIS
mActionAddAfsLayer->setIcon( QgsApplication::getThemeIcon( "/mActionAddAfsLayer.svg" ) );
mActionAddAmsLayer->setIcon( QgsApplication::getThemeIcon( "/mActionAddAmsLayer.svg" ) );
#endif
mActionAddToOverview->setIcon( QgsApplication::getThemeIcon( "/mActionInOverview.svg" ) );
mActionAnnotation->setIcon( QgsApplication::getThemeIcon( "/mActionAnnotation.svg" ) );
mActionFormAnnotation->setIcon( QgsApplication::getThemeIcon( "/mActionFormAnnotation.svg" ) );
Expand Down
4 changes: 1 addition & 3 deletions src/providers/CMakeLists.txt
Expand Up @@ -2,9 +2,7 @@
SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${QGIS_OUTPUT_DIRECTORY}/${QGIS_PLUGIN_SUBDIR})
SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${QGIS_OUTPUT_DIRECTORY}/${QGIS_PLUGIN_SUBDIR})

IF(WITH_ARCGIS)
ADD_SUBDIRECTORY(arcgisrest)
ENDIF(WITH_ARCGIS)
ADD_SUBDIRECTORY(arcgisrest)
ADD_SUBDIRECTORY(memory)
ADD_SUBDIRECTORY(ogr)
ADD_SUBDIRECTORY(wms)
Expand Down
7 changes: 0 additions & 7 deletions src/providers/arcgisrest/CMakeLists.txt
@@ -1,5 +1,3 @@
FIND_PACKAGE(QJSON)

INCLUDE_DIRECTORIES(
../../core
../../core/auth
Expand All @@ -8,7 +6,6 @@ INCLUDE_DIRECTORIES(
../../gui
../../gui/auth
${GEOS_INCLUDE_DIR}
${QJSON_INCLUDE_DIR}
${QSCINTILLA_INCLUDE_DIR}
${CMAKE_CURRENT_BINARY_DIR}/../../ui
)
Expand Down Expand Up @@ -38,8 +35,6 @@ ADD_LIBRARY(arcgisfeatureserverprovider MODULE ${AFS_SRCS} ${AFS_MOC_SRCS})
TARGET_LINK_LIBRARIES(arcgisfeatureserverprovider
qgis_core
qgis_gui
${QJSON_LIBRARIES}
${qjson_LIBRARIES}
)

INSTALL (TARGETS arcgisfeatureserverprovider
Expand Down Expand Up @@ -69,8 +64,6 @@ ADD_LIBRARY(arcgismapserverprovider MODULE ${AMS_SRCS} ${AMS_MOC_SRCS})
TARGET_LINK_LIBRARIES(arcgismapserverprovider
qgis_core
qgis_gui
${QJSON_LIBRARIES}
${qjson_LIBRARIES}
)

INSTALL (TARGETS arcgismapserverprovider
Expand Down
1 change: 0 additions & 1 deletion src/providers/arcgisrest/qgsafsprovider.cpp
Expand Up @@ -23,7 +23,6 @@
#include "geometry/qgsgeometry.h"
#include "qgsnetworkaccessmanager.h"

#include <qjson/parser.h>
#include <QEventLoop>
#include <QMessageBox>
#include <QNetworkRequest>
Expand Down
13 changes: 7 additions & 6 deletions src/providers/arcgisrest/qgsamsprovider.cpp
Expand Up @@ -25,7 +25,8 @@
#include "qgsgeometry.h"

#include <cstring>
#include <qjson/parser.h>
#include <QJsonDocument>
#include <QJsonObject>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QPainter>
Expand Down Expand Up @@ -57,13 +58,13 @@ void QgsAmsLegendFetcher::handleError( QString errorTitle, QString errorMsg )
void QgsAmsLegendFetcher::handleFinished()
{
// Parse result
QJson::Parser parser;
bool ok = false;
QVariantMap queryResults = parser.parse( mQueryReply, &ok ).toMap();
if ( !ok )
QJsonParseError err;
QJsonDocument doc = QJsonDocument::fromJson( mQueryReply, &err );
if ( doc.isNull() )
{
emit error( QString( "Parsing error at line %1: %2" ).arg( parser.errorLine() ).arg( parser.errorString() ) );
emit error( QString( "Parsing error:" ).arg( err.errorString() ) );
}
QVariantMap queryResults = doc.object().toVariantMap();
QgsDataSourceUri dataSource( mProvider->dataSourceUri() );
QList< QPair<QString, QImage> > legendEntries;
foreach ( const QVariant& result, queryResults["layers"].toList() )
Expand Down
16 changes: 8 additions & 8 deletions src/providers/arcgisrest/qgsarcgisrestutils.cpp
Expand Up @@ -32,7 +32,8 @@
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QThread>
#include <qjson/parser.h>
#include <QJsonDocument>
#include <QJsonObject>


QVariant::Type QgsArcGisRestUtils::mapEsriFieldType( const QString &esriFieldType )
Expand Down Expand Up @@ -464,17 +465,16 @@ QVariantMap QgsArcGisRestUtils::queryServiceJSON( const QUrl &url, QString &erro
}

// Parse data
QJson::Parser parser;
bool ok = false;
QVariantMap map = parser.parse( reply, &ok ).toMap();
if ( !ok )
QJsonParseError err;
QJsonDocument doc = QJsonDocument::fromJson( reply, &err );
if ( doc.isNull() )
{
errorTitle = "Parsing error";
errorText = QString( "Line %1: %2" ).arg( parser.errorLine() ).arg( parser.errorString() );
QgsDebugMsg( QString( "Parsing error: %1 (line %2" ).arg( parser.errorString() ).arg( parser.errorLine() ) );
errorText = err.errorString();
QgsDebugMsg( QString( "Parsing error: %1" ).arg( err.errorString() ) );
return QVariantMap();
}
return map;
return doc.object().toVariantMap();
}

///////////////////////////////////////////////////////////////////////////////
Expand Down

0 comments on commit ee57c1f

Please sign in to comment.