131 Commits

Author SHA1 Message Date
Alessandro Pasotti
05be622c30 OpenCL POC 1 2018-08-08 09:18:32 +02:00
Peter Petrik
b1bf9b2809 [FEATURE] Introduction of QGIS Quick library
This pull request is a subset of #6490

This adds a new library for creation of applications based on Qt Quick
framework.
It contains reusable QML / Qt Quick components based on QGIS core
library.
The initial work introduces MapCanvas

To enable compilation of the library, use WITH_QUICK=TRUE

Further documentation of the library is located in doc/qgsquick.dox

For background information see the associated QEP:
qgis/QGIS-Enhancement-Proposals#109

The initial implementation is largely based on the work of Matthias Kuhn
and Marco Bernasocchi on QField probject - kudos to them for the great
job!
2018-04-26 13:33:48 +02:00
lbartoletti
124e26815d Standardize shebangs (was Usr bin env) (#6229)
* Use portable /usr/bin/env/{perl,python} instead of /usr/bin/{perl,python}

* fix perl;add bash

* Fix indentation using modified scripts

* Revert "fix perl;add bash"

This reverts commit be8b9113c25f7c2fb9c8c9bad556fbca2f0c0ba2.

* python3 everywhere

* more bash

* rebase
change perl

* Linux perl; missing from last PR

* fix doxygen_space

* Use portable /usr/bin/env/{perl,python} instead of /usr/bin/{perl,python}

* fix perl;add bash

* Fix indentation using modified scripts

* Revert "fix perl;add bash"

This reverts commit be8b9113c25f7c2fb9c8c9bad556fbca2f0c0ba2.

* python3 everywhere

* more bash

* rebase
change perl

* fix doxygen_space
2018-02-05 03:38:02 -09:00
Nyall Dawson
f37c2bf6f6 Revert "[needs-qa]Usr bin env" 2018-01-30 11:33:49 +11:00
lbartoletti
1ce7dbad94 Merge branch 'master' of https://github.com/qgis/QGIS into usr_bin_env 2018-01-29 13:13:03 +01:00
lbartoletti
f2a0c77952 Merge branch 'usr_bin_env' of https://github.com/lbartoletti/QGIS into usr_bin_env 2018-01-15 15:59:08 +01:00
Matthias Kuhn
ab05bfb1bb Move QGISDEBUG definition to header
Because having it as a compiler flag means that when compiling a dependant application we need to have extra knowledge of this setting at compile time of the dependant application.

If this is not guaranteed (and the dependant application is compiled without QGISDEBUG while libqgis_core.so is compiled with QGISDEBUG) will result in different class definitions being found in header and library. For example for the optional QgsCoordinateTransform::mHasContext member. This in turn leads to crashes with funky traces and no chance to find out what's going on.
2018-01-04 18:36:22 +01:00
Nyall Dawson
265be41d7c Don't use thread_local on mingw or OpenBSD builds
MingW has broken support for thread_local, so force disabling it
see
https://sourceforge.net/p/mingw-w64/bugs/445/
https://sourceforge.net/p/mingw-w64/bugs/527/
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80816

also OpenBSD has no thread_local support, see https://issues.qgis.org/issues/17351

So on these platforms we fall back to using QThreadStorage.

Fixes #17351
2017-11-06 09:20:12 +10:00
lbartoletti
0ec041d4cd Merge branch 'master' into usr_bin_env 2017-10-27 15:41:43 +02:00
Martin Dobias
ba7573a94e GUI for configuration of 3D polygon symbols for vector layers
In the style dock there is a new "3D View" tab - so far working just for polygon layers.
It is possible to select a polygon layer, enable 3D renderer and adjust its properties.
If a 3D Map View is open, it will be immediately updated (if auto-apply is enabled)

Very exciting! :-)
2017-09-15 10:39:07 +02:00
lbartoletti
6b67a720da Use portable /usr/bin/env/{perl,python} instead of /usr/bin/{perl,python} 2017-08-07 19:54:52 +02:00
Denis Rouzaud
fcc0d7dde3 enhanced output for code_layout build on Travis 2017-07-24 13:40:49 +02:00
Harrissou Sant-anna
0d9945deac Use JavaScript instead of javascript/Javascript
+ update INSTALL doc
2017-07-13 17:40:55 +02:00
Nyall Dawson
fc221a6ebe Add sip VirtualCatcherCode to avoid algorithm copies being
destroyed by the python garbage collector

The code generated with the /Factory/ annotation was not sufficient
to correctly transfer the ownership of objects created in Python
back to c++ (despite mailing list messages which hint that it
is).

Anyway, this awful abomination works. Let's all move on to more
useful ways to spend our time...
2017-07-10 15:51:02 +10:00
Martin Dobias
a8cceff0fc Make it possible to build just core lib and providers: -DWITH_GUI=FALSE
This is useful in some cases when working on a third party app/script
that only uses qgis_core. For example, I am working on qgis 3D project
and it is useful to be able to build QGIS core lib with custom Qt version
without having to spend too much time building what I do not need.
Also may be useful for QField to simplify the build of QGIS as a dependency
(no QScintilla, Qwt) and avoid bits of code in providers that would not
be used anyway.

No real source code changes, just configuration changes, mainly in providers.
2017-07-07 11:38:03 +02:00
Nyall Dawson
eb39fb0ebd Add SIP_VIRTUALERRORHANDLER to Doxyfile.in 2017-06-23 12:08:54 +10:00
Denis Rouzaud
9e176feeac gps fixes 2017-06-08 09:38:34 +02:00
Denis Rouzaud
fa5bd491fc run code_layout build from top CMakeLists
instead of adding an extra CMakeLists in .ci/travis/code_layout to build API doc, astyle and run tests (indentation, spelling, sip, doc coverage), the top CMakeLists has been adapted to allow not building core libraries and possibly just the static code layout
* astyle has been moved from /src/astyle to /lib/astyle (I would propose to move all external libraries, and possibly add git submodules)
2017-06-05 22:19:20 +02:00
Denis Rouzaud
281daee0ba run Doxygen and doc coverage test on static Travis config 2017-06-05 22:19:20 +02:00
Denis Rouzaud
98f653e6a5 sipify core raster part 2 2017-06-02 13:27:15 +02:00
Denis Rouzaud
f63adfe145 [sipify] keep external forward declaration 2017-05-24 15:39:46 +02:00
Denis Rouzaud
f5e66dd227 [sipify] handle constrained annotation 2017-05-24 14:49:28 +02:00
Denis Rouzaud
30a7e44d57 [sip] handle Deprecated annotations
some additional fixes in headers too
2017-05-24 09:49:46 +02:00
Denis Rouzaud
40972f06fa sipify batch 2017-05-18 21:34:21 +02:00
Denis Rouzaud
bfb62c4be9 [sipify] fix Abstract class
unblacklist qgstransaction.sip
(followup 931bf32a9fe46570ac80d947552d46c9f427457)
also fix method declaration with private only inheritance
2017-05-08 08:45:11 +02:00
Denis Rouzaud
6958db6f06 [sipify] rename SIP_PYARGTYPE to SIP_PYTYPE since it can be used to changed return types too 2017-05-03 07:22:30 +02:00
Denis Rouzaud
f0fb1f184a update Doxyfile to 1.8 template (#4428) 2017-04-28 10:00:14 +02:00
Denis Rouzaud
468fd97768 fix Doxygen build for new SIP macros 2017-04-27 13:13:20 +02:00
Denis Rouzaud
4cc4a27068 [sipify] operators, remove argument
* skip some operators
 * allow to remove an argument with SIP_PYARGREMOVE
2017-04-26 15:06:16 +02:00
Denis Rouzaud
448d2fddd3 [doxygen] add include path to allow macro retrieval 2017-04-25 13:28:01 +02:00
Matthias Kuhn
cfeab26bd8 [sipify] Add support for abstract classes 2017-04-07 12:26:30 +02:00
Matthias Kuhn
5da0318d21 Fix build warnings 2017-04-02 23:37:17 +02:00
Denis Rouzaud
f1d9d22a95 sipify: adds test to prepare-commit and adapt sipdiff
add missing macros to Doxyfile.in
2017-03-30 15:13:01 +02:00
Denis Rouzaud
15e4903890 sipify improvements
* add demo file and start a short doc
* fix some annotations
* do not display hidden line (SIP_SKIP, delete)
* use a defined var for SIP_SKIP
* remove constructor definition in header
* fix comment after method definition in header
* add a test for sipify itself
2017-03-30 15:13:01 +02:00
Matthias Kuhn
0bdaf4fc6d Ignore SIP annotations in doxygen 2017-03-30 15:13:01 +02:00
Nyall Dawson
c26ed69c6b Rework map touch tool
Qt5 allows runtime detection of touch devices. This commit reworks
the current touch map tool by pulling its behavior into the normal
pan tool when a touch device is detected.

It avoids the need for a seperate map tool for touch interaction,
and also avoids having this tool always appear on the Windows
builds (regardless of the presence of a touch device)
2017-02-12 15:06:24 +10:00
Denis Rouzaud
0a63d1f2c2 [spellcheck] properly look into various cases and add more fixes" 2017-01-16 16:39:20 +01:00
Denis Rouzaud
748be8de71 [spelling] replace behaviour by behavior 2017-01-11 11:35:19 +01:00
David Marteau
689f3b1ab2 Expose QgsServerInterface to service modules
* Instanciate QgsServerInterface even if HAVE_SERVER_PYTHON_PLUGINS is
      not defined
    * Pass QgsServerInterface in module registration methods.
    * Add QgsServer initialisation test

 #Please enter the commit message for your changes. Lines starting
2017-01-10 14:34:16 +01:00
DelazJ
a56f928f71 Replace unicode by Unicode 2016-12-29 01:46:18 +01:00
Juergen E. Fischer
17090b9092 debian packaging update: add experimental build 2016-09-25 19:23:20 +02:00
Juergen E. Fischer
56a23e9f9a rebuild api documentation only when necessary 2016-09-21 23:43:30 +02:00
Sandro Mani
ee57c1fc43 [ArcGIS REST] Port to Qt5 2016-09-21 09:12:54 +10:00
Sandro Mani
8f158771a3 Also hide ArcGIS provider actions if provider is disabled 2016-06-03 11:52:03 +02:00
Nathan Woodrow
3f4250feda More ninja changes 2016-05-24 12:53:24 +10:00
Nyall Dawson
9d59f9ce76 Generate QCH compiled help with qgis-api-doc package 2016-05-19 14:52:33 +10:00
Nyall Dawson
45f0cff256 Allow generation of Qt QHP help files from doxygen
This adds a new cmake option GENERATE_QHP. If the api docs are
set to being built (ie doxygen is available and WITH_APIDOC is true)
then setting GENERATE_QHP to true will cause doxygen to create
a compiled Qt help file from the QGIS docs.

This QHP file can then be used by QtCreator to show the QGIS
api directly within the QtCreator help (ie, press F1 on a class
or member to see the docs).

To do this, you need to:
- make sure doxygen is installed, WITH_APIDOC is true and
GENERATE_QHP is true
- build to generate the docs
- In QtCreator, go to Tools -> Options -> Help, switch to the
"Documentation" tab and click "Add". Point it to your generate
QHP file (should be in the build folder doc\api\qch folder)
- Restart QtCreator, wait a bit, and then you should have the
api docs available under the "Help" tab and by pressing F1
on a QGIS class/method
2016-05-19 13:55:11 +10:00
Juergen E. Fischer
cbf7b5c0df fix 7454d87 2016-04-14 01:02:52 +02:00
Juergen E. Fischer
7454d87d6a doxygen: include sha in PROJECT_NUMBER 2016-04-13 22:16:21 +02:00
Juergen E. Fischer
4815ebd5c2 doxygen: fix extra stylesheet path 2016-04-11 17:37:17 +02:00