10 Commits

Author SHA1 Message Date
NEDJIMAbelgacem
89c661b35d split 3dviewsmanager into 3dviews manager and dialog class 2022-01-12 13:46:49 +10:00
Denis Rouzaud
e7ccf1fcc6 also do non scoped enums 2021-05-31 09:36:21 +02:00
Nyall Dawson
a9c80e5740 Code shuffle
Move vector, project and network related core .cpp/.h files into
dedicated subdirectories.

An attempt to organise src/core better to make things easier to find.
2020-12-29 11:38:11 +10:00
Alessandro Pasotti
0ca4cf90d3 Add test for FlagDontStoreOriginalStyles 2020-12-01 09:04:07 +01:00
Alessandro Pasotti
9aa281abb4 Server: skip initial style storage
Background: at project load time for all layers a copy of the style
is loaded and stored as a DOM document. This was implemented for
broken layers to make it possible to store the style back to the
project if a broken layer was kept in the project.

Of course this is not needed nor useful in a server context.

By introducing a new project load flag and using it in the server
config (projects) cache we allow to skip the initial storage of
styles for the server and cut the startup times of our test "monster"
project (~1000 PG layers) from 26 seconds to 15.

Before you ask: I chose to always store the original style
with the idea that we might have been able to use the original
style copy also to "restore" styles to their initial state.
This was never implemented, so I guess we might be good to
make the initial style copy selectively available for broken
layers only in order to speed up project loading in the general
case (desktop).
2020-11-30 18:44:44 +01:00
Peter Petrik
8ea34de8a2 restore accidentally deleted files 2020-10-27 05:29:14 +10:00
Peter Petrik
8536c564fb add ept provider 2020-10-27 05:29:14 +10:00
rldhont
3c7d6616d1 New Project Reading flag to trust layer metadata 2020-08-11 18:14:15 +02:00
Mathieu Pellerin
c0a29051b4 [FEATURE][digitizing] Add avoid intersection/overlap mode
This commit adds a new avoid intersection mode setting when
digitizing new features. The three available modes are:
- allow intersections/overlaps
- avoid intersections/overlaps on active layer
- avoid intersectonss/overlaps on layers list

The third mode is what QGIS has had for a while, except
its UI/UX is a bit messy. The layers list is setup by
the user via the advanced snapping configuration widgets,
but isn't connected at all with whether snapping is
enabled / disabled.

This new approach makes it explicit to user whether
newly-added features might be clipped or not, and
if so by which layer(s).

Finally, the new 'avoid intersections/overlaps on
active layer' is likely a far more useful behavior
than having a list of layers (for e.g., you might
be digitizing on a layer that can't have overlap
with itself but is fine to overlap with another
layer, the latter also in need of avoid overlap
_with itself_).
2020-04-10 13:42:07 +07:00
Denis Rouzaud
18a7cd0659
[FEATURE] Add an option to set the default project file format (qgs/qgz) (#33872) 2020-01-17 12:12:02 +01:00