17 Commits

Author SHA1 Message Date
Nyall Dawson
3a578d6712 Header update 2024-08-13 20:28:55 +10:00
Even Rouault
15ea5c46bc
Header files: remove all mentions of '\since QGIS 3.0' 2024-02-18 20:57:23 +01:00
Juergen E. Fischer
d0e006861c fix windows build 2024-01-19 14:18:28 +01:00
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
Nyall Dawson
50c76929e1
Followup 30700f1, ensure links to Qgis members are set in docstrings 2023-03-31 10:46:24 +10:00
Denis Rouzaud
34ca2d9e3b move settings tree away from QgsSettings to QgsSettingsTree
* to avoid any dependency on QgsSettings class
* reduce overhead by limiting includes of qgssettings.h
2023-02-03 09:05:37 +01:00
Denis Rouzaud
7d628998d5 follow-up rename QgsSettingsTreeElement to QgsSettingsTreeNode 2023-01-30 10:03:39 +10:00
Denis Rouzaud
2a5838433b rename QgsSettingsTreeElement to QgsSettingsTreeNode 2023-01-17 11:53:39 +01:00
Denis Rouzaud
0529d6077b fix leftover and missging SIP_THROW and better dox 2023-01-17 06:56:57 +01:00
Denis Rouzaud
41b687b2b4 use new API for already migrated settings 2023-01-16 09:00:51 +01:00
Denis Rouzaud
87fd5e26ee rename SettingsLocation to SettingsOrigin 2023-01-16 09:00:51 +01:00
Denis Rouzaud
b440604c27 method to return location (global vs local) of a setting key 2023-01-16 09:00:49 +01:00
Denis Rouzaud
44039d164c sipify them all 2023-01-16 09:00:49 +01:00
Denis Rouzaud
9a9366630b add prefixes information to QgsSettings 2022-03-08 14:37:59 +01:00
Nyall Dawson
41d98c82d7 Add a formal settings category for GPS settings 2021-08-03 09:22:31 +10:00
Damiano
598f6c73f0 Moved QgsSettings class in subdir settings 2021-04-19 10:22:04 +02:00