<div dir="ltr">Hi Gabriel,<div><br></div><div>There has been an introduction of a new settings API.</div><div>There has been 2 QEP and 4 main PRs, but the main interesting changes for settings registration are in <a href="https://github.com/qgis/QGIS/pull/51295">https://github.com/qgis/QGIS/pull/51295</a></div><div><br></div><div>You can refer to the coding standards documentation: <a href="https://docs.qgis.org/testing/en/docs/developers_guide/codingstandards.html#settings">https://docs.qgis.org/testing/en/docs/developers_guide/codingstandards.html#settings</a></div><div><br></div><div>First thing, is to register a settings node for you plugin:</div><div><a href="https://www.qgis.org/pyqgis/master/core/QgsSettingsTree.html#qgis.core.QgsSettingsTree.createPluginTreeNode">https://www.qgis.org/pyqgis/master/core/QgsSettingsTree.html#qgis.core.QgsSettingsTree.createPluginTreeNode</a><br></div><div><br></div><div>Then you can use one of the settings type to create the settings (and give it the node as parameter):</div><div><a href="https://qgis.org/pyqgis/master/core/QgsSettingsEntryString.html">https://qgis.org/pyqgis/master/core/QgsSettingsEntryString.html</a><br></div><div><br></div><div>You can also create the setting without creating the node first by giving a plugin name (see the different constructors).</div><div><br></div><div>One interesting thing is that you can then easily create editors for settings by using QgsSettingsEditorWidgetRegistry</div><div>QgsGui.settingsEditorWidgetRegistry()->createEditor(my_setting)</div><div>see <a href="https://qgis.org/pyqgis/master/gui/QgsSettingsEditorWidgetRegistry.html">https://qgis.org/pyqgis/master/gui/QgsSettingsEditorWidgetRegistry.html</a></div><div><br></div><div><div>The Python cookbook is outdated, I will try to suggest a change to it.</div></div><div><br></div><div>Kind regards,</div><div>Denis</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le lun. 16 oct. 2023 à 04:01, Gabriel De Luca via QGIS-Developer <<a href="mailto:qgis-developer@lists.osgeo.org">qgis-developer@lists.osgeo.org</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><span lang="en"><span><span>Hello everyone,</span></span><span><span> <br></span></span></span></div><div><span lang="en"><br></span></div><div><span lang="en">  <span><span>I'm developing a plugin and I'm not sure where to write the settings.</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>  </span></span></span><span lang="en"><span><span>Should I create the settings object with my own organization and application?</span></span> <span><span>I
 would expect a plugin's settings to be stored in the profile folder 
where the plugin is installed, within the same qgis configurations file,
 so it doesn't seem like a good option to me.</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>  </span></span></span><span lang="en"><span><span>If
 I write the settings under the same organization and application as 
QGIS, is it appropriate to create a root group for my plugin?</span></span> <span><span>All the plugins I have installed did that, but for some reason they are hidden when viewing the advanced settings with the new tree widget.</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>  </span></span></span><span lang="en"><span><span>Is the "plugins" group appropriate to create a sub-group/key with the name of my plugin?</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>  </span></span></span><span lang="en"><span><span>The only email I found in the archive referring to the settings structure is </span></span></span>[1], <span lang="en"><span><span>I'll
 keep it in mind when it comes to group/key names, but any other 
recommendations on good practices for third-party plugins are welcome.</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>Regards,</span></span></span></div><div><span lang="en"><span><span>Gabriel</span></span></span></div><div><span lang="en"><span><span><br></span></span></span></div><div><span lang="en"><span><span>[1] </span></span></span><a href="https://lists.osgeo.org/pipermail/qgis-developer/2017-March/047487.html" target="_blank">https://lists.osgeo.org/pipermail/qgis-developer/2017-March/047487.html</a></div></div>
_______________________________________________<br>
QGIS-Developer mailing list<br>
<a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
</blockquote></div>