Julien Cabieces
062ce03b6d
[PyQt6] remove QTextCodec and rename pyqt5_from_qvariant_by_type
...
QTextCodec is no longer existing in PyQt6 (only in QtCoreCompat in C++)
2024-01-11 04:52:01 +10:00
Nyall Dawson
50a31065ab
Add framework to temporarily halt flushing of QgsSettings to ini
...
This adds a mechanism where flushes of QgsSettings to the underlying
ini storage file can be temporarily suspended. It is intended for
code paths where many settings entries are consecutively read/written,
to avoid the very expensive cost of constructing and destructing
multiple QgsSettings objects for each in turn.
When QgsSettings::holdFlush() is called, then a temporary thread local
QgsSettings object will be created and ALL access to settings entries
will use this same object (preventing flushing of it to ini files).
An accompanying QgsSettings::releaseFlush() call MUST be made from
the same thread to destroy the thread local QgsSettings, flush it
to disk, and resume normal operation.
This helps avoid the VERY costly backward migration of settings,
and cuts the run time for qgis_process commands like `qgis_process list`
by at least half (and considerably more in common setups).
2024-01-08 18:58:14 +10:00
Denis Rouzaud
9f3ac79b8b
sipify + CMakeLists
2023-04-23 07:19:47 +02:00
Denis Rouzaud
34eb0826c3
change QgsSettings to QgsSettingsTree in code base
2023-02-03 09:05:37 +01:00
Denis Rouzaud
f9e21602d2
add name method for settings + improve dox ( #51661 )
2023-01-31 15:48:08 +00:00
Denis Rouzaud
7d628998d5
follow-up rename QgsSettingsTreeElement to QgsSettingsTreeNode
2023-01-30 10:03:39 +10:00
Denis Rouzaud
fb49e6e99f
Revert "remove transfer annotations" ( #51553 )
...
This reverts commit fcbf76ec1cf0e707b69d27b967448f8058cffb30.
2023-01-24 09:42:27 +01:00
Denis Rouzaud
e059f3dd72
add 64 bits integer settings (not available in Python)
2023-01-18 14:30:01 +01:00
Denis Rouzaud
fcbf76ec1c
remove transfer annotations
2023-01-17 16:52:48 +01:00
Denis Rouzaud
7efec3e8f3
settings entries are meant to be const, options cannot be adjusted
2023-01-17 16:52:48 +01:00
Denis Rouzaud
7fa484dbf6
sipify
2023-01-17 16:52:47 +01:00
Denis Rouzaud
2a5838433b
rename QgsSettingsTreeElement to QgsSettingsTreeNode
2023-01-17 11:53:39 +01:00
Denis Rouzaud
9271ed5682
fix SIP annotation
2023-01-16 16:46:57 +01:00
Denis Rouzaud
799ef3925c
move QgsSettingsEntryGroup to a separate file and deprecate it
2023-01-16 09:00:52 +01:00
Denis Rouzaud
166ad00f6c
avoid overriding method in subclass
2023-01-16 09:00:52 +01:00
Denis Rouzaud
80e3f35e88
migrate plugin manager settings and replace settings in app
2023-01-16 09:00:52 +01:00
Denis Rouzaud
b93967adf6
fix typo
2023-01-16 09:00:50 +01:00
Denis Rouzaud
e088ea47ae
migrate a color setting to avoid a/r/g/b keys
2023-01-16 09:00:50 +01:00
Denis Rouzaud
46dec7ee24
add allowAlpha option for color settings + better dox
2023-01-16 09:00:50 +01:00
Denis Rouzaud
44039d164c
sipify them all
2023-01-16 09:00:49 +01:00
Denis Rouzaud
b983c5afeb
fix docs
2022-12-16 09:09:57 +01:00
Denis Rouzaud
da4865872c
[settings] add new type for variant map: QgsSettingsEntryVariantMap
2022-12-16 09:09:57 +01:00
Julien Cabieces
012b6a46db
constify methods
2022-04-29 08:21:47 +10:00
Denis Rouzaud
6dd66759cd
sipify
2022-04-29 07:57:25 +10:00
Denis Rouzaud
91f631171c
be sure that PyQGIS constructors always create a key as a plugin
2022-03-08 14:38:00 +01:00
Denis Rouzaud
19ca6636d1
sipify
2022-03-08 14:37:59 +01:00
Denis Rouzaud
fbd27bde8f
explicitely call a checkValue method for a more meaningfull API
2022-03-01 12:09:47 +01:00
Denis Rouzaud
3f88bd5002
further simplifications of template and implementations
2022-03-01 12:09:47 +01:00
Denis Rouzaud
08ada3aadf
sipify + move sipify config file to ./python
2022-03-01 12:09:47 +01:00