Avec PyQGIS, vous pouvez modifier divers paramètres tels que la mise en gras des groupes dans le panneau Calques (ou la table des matières):
from PyQt4.QtCore import QSettings
QSettings().setValue("/Qgis/legendGroupsBold", True)
Les paramètres sont écrits, ce qui peut être vu à partir des options ou en tapant:
QSettings().value("/Qgis/legendGroupsBold")
>>> u'true'
Mais cela ne s'applique pas. J'ai pensé utiliser
QSettings().sync()
pourrait aider mais malheureusement pas. La seule façon de l'appliquer serait d'aller à l'interface graphique ( Settings > Options
) puis de cliquer OKou de redémarrer QGIS.
Existe-t-il une méthode pour le faire via PyQGIS?
Contexte :
Je souhaite ajouter ceci en tant que macro dans un fichier de projet pour garantir (à des fins esthétiques) que seuls les noms de groupe sont en gras et les noms de calque ne le sont pas. Par conséquent, il serait idéal que les QSettings soient appliqués lorsque le projet a été chargé (les paramètres initiaux seraient réappliqués à la fermeture du projet).
QSettings().setValue("/qgis/legendLayersBold", False)
.Je pense que le problème est dans cette ligne github.com/qgis/QGIS/blob/release-2_18/src/app/…
QgisApp::instance()->legend()->updateLegendItemStyles();
mais dans une future version probablement?