Intento activar/desactivar las etiquetas de una capa en QGIS 2.18 con PyQGIS. En PyQGIS 3 un método QgsVectorLayer().setLabelsEnabled()
parecen haber sido añadidos, pero por lo que veo, no están disponibles en PyQGIS 2 (No hay ninguna pista de este tipo Desde QGIS 3.0 también en el doku para PyQGIS 3 https://qgis.org/api/classQgsVectorLayer.html#a4cdece41437b32f4adafeb1caa10ad1b ).
Mi primer intento fue acceder a la configuración de etiquetado de la capa con algo como
label_settings = my_layer.labeling().settings()
label_settings.enabled = not label_settings.enabled
my_layer.setLabeling(label_settings)
pero el labeling()
y setLabeling()
no están disponibles en los enlaces de python (por ejemplo https://qgis.org/api/2.18/classQgsVectorLayer.html#ada12f21c42e2f3c2eaa2b234ff25ed28 ).
Existe un método QgsVectorLayer().enableLabels()
también, pero esto está obsoleto ( https://qgis.org/api/2.18/classQgsVectorLayer.html#ae7735460da1518febff85575851b8e88 ) y no parece tener ningún efecto.
¿Alguna sugerencia?