I want to activate the option "Show markers only for selected features" in Setting-> options->vertex markers ,using python. does anyone know if i can do it programmatically ? i attached a photo of the ui and i market the option,
With the help of Matthias Kuhn answer of this undocumented feature in How do I access QGIS program settings programmatically? I got to this:
Get all keys from setting in Python console with:
from PyQt4.QtCore import QSettings print QSettings().allKeys()
In a texteditor searched the result for digitizing and found digitizing/marker_only_for_selected
Using this from Python:
# Get user defined current setting markersOnlyForSelected = QSettings().value(u'/qgis/digitizing/Qgis/digitizing/marker_only_for_selected') # override setting QSettings().setValue(u'/qgis/digitizing/Qgis/digitizing/marker_only_for_selected', True) # do your work here... # restore setting QSettings().setValue(u'/qgis/digitizing/Qgis/digitizing/marker_only_for_selected', markersOnlyForSelected)
Strangely this does not change the value in the QGIS Options dialog, but I guess it does work in code; The QSetting values changes must be in memory only.