38993 Commits

Author SHA1 Message Date
Matthias Kuhn
9eedbb7e12 Fix compiling on mac 2017-05-19 07:13:11 +02:00
Matthias Kuhn
227108e879 Add QgsExpressionUtils class 2017-05-19 07:13:11 +02:00
Matthias Kuhn
a2d70f3dd1 Document API changes 2017-05-19 07:13:11 +02:00
Matthias Kuhn
80533faaf5 Reorganize code from qgsexpression.cpp 2017-05-19 07:13:11 +02:00
Matthias Kuhn
82455588c8 General include cleanup
This unifies the way the include directories are handled in the
CMakeLists.txt files.
Paths are now normally relative to the root of the source- or build dir.
They may still be relative for paths withing a plugin subdirectory but
should no longer be relative to paths outside of the current source- or
build-directory.

The previous approach had resultet in many different styles which are
hard to wrap ones head around if new to the build system.
It sometimes defined includes twice
By using relative paths, it was not possible to copy paste the paths
between different files.
2017-05-19 07:13:11 +02:00
Matthias Kuhn
ec40199862 Modularize expressions
The file qgsexpressions.h has grown to one monolithic piece over the
years. This makes it hard to maintain and slows down compilation because
even small changes at one end will result in recompiling big parts of
the source tree. It also requires the compiler to keep track of all
these implementation details for said big parts of the source tree.

This splits this implementation into smaller pieces. There are soe API
changes connected to this, but since these can be considered
implementation details, on which not many plugins rely, this shouldn't
have a big impact on the ecosystem outside the source tree.
2017-05-19 07:13:11 +02:00
Matthias Kuhn
ac50214347 Declutter header files
Implementations of virtual methods will never be inlined, there's no
reason to keep them in headers. It just makes code less readable and
potentially slows down compilation.
2017-05-19 07:13:11 +02:00
Matthias Kuhn
95ac7d0f7b Merge pull request #4567 from pblottiere/clone
Add clone() methods for layers
2017-05-19 07:10:49 +02:00
Juergen E. Fischer
c82bffe5db debian packaging: drop release-sponsors.html 2017-05-19 03:26:15 +02:00
Juergen E. Fischer
1d5d92e668 fix windows build of QgsFeatureRequest::OrderBy again (reapply 8f29f28 and 3c843a8) 2017-05-19 02:13:06 +02:00
Juergen E. Fischer
0923f56cef make prepare-commit.sh work with git-new-workdir 2017-05-18 21:59:11 +02:00
Denis Rouzaud
40972f06fa sipify batch 2017-05-18 21:34:21 +02:00
Juergen E. Fischer
27f4b0e1e0 crssync: check result of CSVReadParseLine instead of feof 2017-05-18 18:19:45 +02:00
Denis Rouzaud
9accd4b814 [spell check] try do not use thread affinity in silver searcher to avoid errors on Travis 2017-05-18 16:45:10 +02:00
Blottiere Paul
aa2739c975 Update sip binding 2017-05-18 12:14:28 +02:00
Alexander Bruy
b8d369a79a Merge pull request #4575 from alexbruy/qgis-sponsors
remove QgsSponsors widget. Instead open sponsors page in the webbrowser (fix #16169)
2017-05-18 13:05:15 +03:00
Blottiere Paul
eff5b55771 Add more const ref 2017-05-18 11:09:43 +02:00
Blottiere Paul
8f50b9e83c Add note in api break doc for plugin layers 2017-05-18 11:09:43 +02:00
Blottiere Paul
9cc3774ffa Add const reference 2017-05-18 11:09:43 +02:00
Blottiere Paul
25de7c2ec5 Fix documentation 2017-05-18 11:09:43 +02:00
Blottiere Paul
bb1738dcbb Update documentation and sip binding 2017-05-18 11:09:42 +02:00
Blottiere Paul
344b964709 Update unit tests for raster layer 2017-05-18 11:09:42 +02:00
Blottiere Paul
9f8b92d329 Update unit tests for vector layer 2017-05-18 11:09:42 +02:00
Blottiere Paul
4ce17f5da5 Clone more members in raster layer 2017-05-18 11:09:42 +02:00
Blottiere Paul
f92a38cf54 Clone more members in vector layer 2017-05-18 11:09:42 +02:00
Blottiere Paul
30a813494f Fix renderer cloning in vector layer when it's null 2017-05-18 11:09:42 +02:00
Blottiere Paul
dde58adac5 The extent is cloned in map layer 2017-05-18 11:09:42 +02:00
Blottiere Paul
414068101d Update documentation for setCustomProperties 2017-05-18 11:09:41 +02:00
Blottiere Paul
6c48ab99a9 Remove unnecessary include 2017-05-18 11:09:41 +02:00
Blottiere Paul
8a6137247a Remove the deep copy functionality 2017-05-18 11:09:41 +02:00
Blottiere Paul
8aa2e9bd9f Update cloning method for styles 2017-05-18 11:09:24 +02:00
Blottiere Paul
70b2581157 Use clone() methods within duplicateLayers() function 2017-05-18 11:09:23 +02:00
Blottiere Paul
c6f97e53de Add unit tests 2017-05-18 11:09:23 +02:00
Blottiere Paul
42a967904a Update sip binding 2017-05-18 11:09:23 +02:00
Blottiere Paul
7b20c2e8b3 [FEATURE] add clone() methods for layers 2017-05-18 11:08:09 +02:00
Denis Rouzaud
ffe5e1c255 verbose check spelling test to detect issue on Travis 2017-05-18 10:56:09 +02:00
Juergen E. Fischer
d1cc574a4f db manager: fix layer custom action 2017-05-18 10:01:12 +02:00
Denis Rouzaud
68b990b3bb sipify batch
python/core/qgspaintenginehack.sip
python/core/qgspainting.sip
python/core/qgspallabeling.sip
python/core/qgspathresolver.sip
python/core/qgspluginlayer.sip
python/core/qgspluginlayerregistry.sip
python/core/qgspointlocator.sip
python/core/qgsproject.sip
python/core/qgsprojectbadlayerhandler.sip
python/core/qgsprojectproperty.sip
python/core/qgsprojectversion.sip
python/core/qgssnappingconfig.sip
2017-05-18 09:41:16 +02:00
Juergen E. Fischer
9f49e404a8 oracle provider: fix triangle warnings 2017-05-18 09:12:20 +02:00
Juergen E. Fischer
34d7654596 install qgsvectorlayerlabeling.h 2017-05-18 09:12:20 +02:00
Martin Dobias
8fed356f4a Fix build (followup 43a0938) 2017-05-18 14:51:45 +08:00
Juergen E. Fischer
4e47ce032e oracle provider: skip retrying unavailable connections for 30s
(cherry picked from commit b0126d017873e467f3cd69fa4b3a3bfd16e6a8c8)
2017-05-18 08:00:29 +02:00
Alexander Bruy
38ed0e5ced Merge pull request #4568 from alexbruy/gdal-profiles
store profiles as QStringList to avoid issues with spaces (fix #16327)
2017-05-18 08:13:55 +03:00
Tim Sutton
43a0938e96 Make locator bar shortcut hint show Cmd-K on MacOS (#4583) 2017-05-18 14:25:23 +10:00
Nyall Dawson
89972310df Allow rotate point symbol tool to work with features with initially
NULL rotation values
2017-05-18 13:46:06 +10:00
Martin Dobias
bba631305f Fix locator widget's width on hi-dpi screens
It was too short to see the whole placeholder text...
2017-05-18 11:33:34 +08:00
Nyall Dawson
e505ebcc74 Merge pull request #4582 from nyalldawson/status_bar
Add a QgsStatusBar widget/interface for adding messages/widgets to main window statusbar
2017-05-18 11:37:59 +10:00
Martin Dobias
e001d5c70a Add QgsGeometry::isSimple() - useful for self-intersection checks 2017-05-18 09:02:41 +08:00
Nyall Dawson
27077c875e Add a QgsStatusBar widget/interface for adding messages/widgets to
main window statusbar

QStatusBar gives almost no control over display and placement
of child widgets. It's not possible to subclass and reimplement
either, due to how QMainWindow works internally, and also due to
the special handling for the size grip and other platform specific
handling in QStatusBar.

Instead, we embed a single QgsStatusBar covering the whole real
status bar. All child widgets and temporary messages instead
are pushed to the QgsStatusBar instead - giving us as much control
as we desire over how these widgets are placed and their behavior.

As a result the locator widget has been moved to its logical placement
on the left of the status bar.

All plugins must ensure that they use the status bar interface
available via iface.statusBarIface() instead of directly interacting
with the status bar (e.g. iface.mainWindow().statusBar()...)
2017-05-18 10:35:33 +10:00
Nyall Dawson
09975cec07 Fix transform shear value not saved (fix #16567) 2017-05-18 08:56:53 +10:00