41572 Commits

Author SHA1 Message Date
Nyall Dawson
2c0019952d Clean comments 2017-09-13 05:47:53 +10:00
Nyall Dawson
af03d2f476 Remove Q_FOREACH, fix inefficient loops 2017-09-13 05:47:53 +10:00
Nyall Dawson
944cb8c4bd Revert unused changes to QgsDataItem 2017-09-13 05:47:53 +10:00
Nyall Dawson
9a8adfc802 Fix spelling 2017-09-13 05:47:53 +10:00
Nyall Dawson
388b37a1a9 Hide non-functional style related browser actions 2017-09-13 05:47:53 +10:00
Nyall Dawson
e25436811b Cleanup and add docs for QgsGeoNodeConnection 2017-09-13 05:47:53 +10:00
Nyall Dawson
e1562df16b [geonode] Don't block data source manager while connecting to a server
Also add missing docstrings
2017-09-13 05:47:53 +10:00
Nyall Dawson
1a19283634 Class shuffle 2017-09-13 05:47:53 +10:00
Nyall Dawson
e6a8980b97 Run all GeoNode tests locally, but skip ones which rely on a remote server on Travis 2017-09-13 05:47:53 +10:00
Nyall Dawson
e803545258 Add missing sip file 2017-09-13 05:47:53 +10:00
Nyall Dawson
4e6516267a Misc optimisations to geonode data items, fix leaks 2017-09-13 05:47:53 +10:00
Nyall Dawson
29539e6712 Move remaining geonode classes from gui->app 2017-09-13 05:47:53 +10:00
Nyall Dawson
5f82705c55 Revert redundant changes to ows provider 2017-09-13 05:47:53 +10:00
Nyall Dawson
b657c1ace6 Move GeoNode data items from OWS provider to app 2017-09-13 05:47:53 +10:00
Nyall Dawson
973ba7bdfc Remove non-functional close button from geonode source select dialog 2017-09-13 05:47:53 +10:00
Nyall Dawson
3fde586bbd Don't link app into provider 2017-09-13 05:47:53 +10:00
Nyall Dawson
d7fff83b38 Include geonode folder in doxyden search folders
Required to build the docs for this folder, and correctly
include the classes in the documentation coverage test
2017-09-13 05:47:53 +10:00
Nyall Dawson
61e70c93a6 Slight folder restructuring 2017-09-13 05:47:53 +10:00
Nyall Dawson
a03e1eeeaa Rollback all geonode specific changes to QgsDataSourceManagerDialog 2017-09-13 05:47:53 +10:00
Nyall Dawson
33b1380413 Add a very trivial registry GeoCMS providers to app
Currently it's only used to register GeoNode source select dialogs.
As additional GeoCMS handling is added to QGIS we can start
refining this class to handle common functionality.

For now, it's locked away in app so we don't need to worry
about frozen API restricting us when this happens.
2017-09-13 05:47:53 +10:00
Nyall Dawson
15f9241109 Add a bit more structure to provider source select ordering 2017-09-13 05:47:20 +10:00
Nyall Dawson
b89c16e3cf Move QgsGeoNodeSourceSelect to app 2017-09-13 05:47:20 +10:00
Nyall Dawson
876936900b Rollback changes to app
There's no need for a dedicated 'Add GeoNode layer' menu entry,
as the unified data source manager has been designed to replace
all these specific provider based actions.
2017-09-13 05:47:20 +10:00
Nyall Dawson
46b1e7d3bb Correctly handle using layer name option 2017-09-13 05:47:20 +10:00
Nyall Dawson
858b93b125 Misc code cleanup 2017-09-13 05:47:20 +10:00
Nyall Dawson
ea4b2dd5b8 Condense code 2017-09-13 05:47:20 +10:00
Nyall Dawson
e6c0ba925f Use correct messagebox type 2017-09-13 05:47:20 +10:00
Nyall Dawson
11240121c1 Fix another leak 2017-09-13 05:47:20 +10:00
Nyall Dawson
026309d99b Fix memory leak 2017-09-13 05:47:20 +10:00
Nyall Dawson
239e353155 Allow QgsAbstractDataSourceWidget subclasses to add vector layers
with a specific provider key
2017-09-13 05:47:20 +10:00
Nyall Dawson
e51a0d4fac Minor code cleanup 2017-09-13 05:47:20 +10:00
Nyall Dawson
a5957af8db Remove unused code 2017-09-13 05:47:20 +10:00
Nyall Dawson
003bf3a76f QgsGeoNodeSourceSelect is a QgsAbstractDataSourceWidget 2017-09-13 05:47:20 +10:00
Nyall Dawson
92a2499076 Fix ui file build warning 2017-09-13 05:47:20 +10:00
Nyall Dawson
80148c983b Use QgsDebugMsg instead of QgsMessageLog for non-error feedback
QgsMessageLog should only be used for errors or warnings,
not 'everything is working ok' type debug messages
2017-09-13 05:47:20 +10:00
Nyall Dawson
378a9e90dd Split QgsGeoNodeConnection into two classes
Move utility functions to QgsGeoNodeConnectionUtils
2017-09-13 05:47:20 +10:00
Nyall Dawson
b7683f209e QgsGeonodeConnection is not a Q_OBJECT 2017-09-13 05:47:20 +10:00
Nyall Dawson
5b092aeb8d Performance optimizations
- avoid container detachments
- use QStringLiteral
2017-09-13 05:47:19 +10:00
Nyall Dawson
b1745b0fea Pass strings by const ref 2017-09-13 05:47:19 +10:00
Nyall Dawson
a46cc54f60 Static members should use a 's' prefix, not 'm' 2017-09-13 05:47:19 +10:00
Ismail Sunni
cad8fa8bb2 Fix can not delete geonode instance from browser. 2017-09-13 05:47:19 +10:00
Ismail Sunni
3016158558 Add style retriever for a geonode layer. 2017-09-13 05:47:19 +10:00
Ismail Sunni
500c5c1108 Simplify getLayers method for geonode client. 2017-09-13 05:47:19 +10:00
myarjunar
bdc3d36601 add copy and paste style actions to the layer node 2017-09-13 05:47:19 +10:00
Ismail Sunni
3d3ff7098a Fix QGIS Crash on loading WFS/WMS/XYZ layer from GeoNode. 2017-09-13 05:47:19 +10:00
myarjunar
92a1550b18 fix qgis crash on startup (invalid pointer) 2017-09-13 05:47:19 +10:00
Muhammad Yarjuna Rohmat
bea89b32ca [FEATURE] QGIS - GeoNode Integration: Integrate with QGIS Browser Panel (#4816)
* add Geonode connection menu to the toolbar

* add header files for geonode-qgis client

* add action to launch geonode connection dialog from menubar

* Move to proper directory

* Add geonodeconnection class.

* Add unit test for geonode connection.

* Use const static to avoid typo.

* Get list layers from geonode.

* Add get maps method.

* Geonode connection dialog (#13)

* add new geonode connection dialog

* apply functionality to the geonode connection manager dialog

* add save and load geonode connection functionality

* edit baseKey and credentialBaseKey

* remove auto-connect slots

* Add unit test for geonode connection.

* Add wms url getter.

* Add uuid and layer name in the table.

* Add handler for the list layer clicked. WIP.

* Use new style connect, better hacky to get wms url.

* update gitignore

* Make QGIS able to add WMS layer from geonode. With hacky code.

* Fix Docstring.

* Show web service type (WMS/WFS) in layer table.

* fix http and toolbar menu

* add geonode data item to the browser panel as an extention of ows provider

* [WIP] Add WFS.

* Add geonode get service url.

* combobox functionality and test geonode connection

* Add WFS.

* Disable add button if it's a map. Currently we can't do anything for map.

* Add busy cursor when add layer.

* get service uri capabilitites

* add available layers to the geonode browser panel

* remove debugging footprint and replace old style connect

* add actions (new, edit, delete) to geonode browser panel

* fix getLayers by WMS url

* add Geonode connection menu to the toolbar

* Filter out invalid layer / map.

* Fix service url method.

* Add service url for XYZ for GeoNode QGIS Server backend.

* Add XYZ url to geonode connection  dialog.

* Add XYZ layer to QGIS.

* fix double geonode submenu

* add wfs/wms layers from browser panel using its native provider

* comply with qgis3 new class naming

* Handle different prefix for layer in GeoNode QGIS Server backend.

* base class for cms connection

* make geonode connection as a derived class from cms connection

* update cmakelists

* move geonode connection to geocms dir

* update CMakeLists

* Handle geonode 2.7 with new API.

* Handle multiple geoserver url in one geonode.

* Fix add xyz for qgis server. Fix add wms, wfs, xyz for geoserver in geonode 2.7

* Refactor serviceURL to return QStringList.

* add 'add geonode layer' icon

* add geonode to the data source manager dialog

* [GeoNode-Client] Fix add WFS layer.

* fix wms url parameter

* add xyz dataitems

* Use new style connect.

* [GeoNode Client] Handle qgis server specific typename to make add WFS works.

* Code improvement.

* [GeoNode Client] Make geonode dialog in add universal layer can add layer.

* Open universal add layer when click Add GeoNode layer.

* Make sure the geonode url has protocol.

* Handle geonode version in a better way.

* make sure the serviceUrl method has scheme in its urls

* add services option to the dialog

* remove version label if not wfs

* construct wms url with parameters for geonode connection

* handle layer from multi service urls for every wfs, wms, & xyz services

* fix new style connect using static_cast

* hode close button if dialog is in embedded mode

* fix xyz layer naming in the browser tree

* create base class for geocms dataitems

* fix compiling warning

* Use struct instead QVariantMap.

* tidy up code

* Tidy up code, use QgsStringMap instead QVariantMap.

* Add spellok for catalogue.

* update sip

* update sip

* Use naming convention for QgsGeoCmsConnection and use QUuid.

* Async by using GeoNodeRequest class.

* Move geonode to src/gui.

* Use stack not heap.

* Remove unused includes.

* Use signal to handle request.

* Use QStringLiteral.

* Switch to use Q_FOREACH.

* Use Q_FOREACH and addressing PR's review.

* Set private for data members.

* update sip

* Update sip.

* Update sip.

* Fix sip problem to make it buildable again.

* Remove geocms

* Tidy up code.

* Use QgsSetting Scope::Provider.

* Fix missing zip.h
2017-09-13 05:47:19 +10:00
Alessandro Pasotti
5614df4b6e Merge pull request #5164 from boundlessgeo/browser_shared_model
[bugfix] Browser shared model
2017-09-12 17:20:13 +02:00
Sandro Mani
9dcdefd68e Merge pull request #5181 from manisandro/ogr_subsetstring
[OGR] Ensure subset string is set when reopening dataset
2017-09-12 16:06:01 +02:00
Sandro Mani
95cd8d744d [OGR] Ensure subset string is set when reopening dataset
QgsOgrProvider::reloadData calls close() and open(), which in turn called setSubsetString with mSubsetString.
Since setSubsetString does nothing if the passed sql string is equal to mSubsetString, this resulted in the
substring not being set on re-open. This commit clears mSubsetString before calling setSubsetString, and
blocks signals when calling setSubsetString to avoid an endless recursion of emit dataChanged -> reload.
Fixes #17122.
2017-09-12 15:26:09 +02:00