[ create a new paste ] login | about

Link: http://codepad.org/NSXvLl8l    [ raw code | fork ]

Python, pasted on Jun 6:
from PyQt4.QtCore import *
from qgis.core import QgsProject, QgsLayerTreeGroup

def openProject():
    groupName = 'Your group name'
    def changeVis(nodeLayer, state):
        if not isinstance(nodeLayer, QgsLayerTreeGroup):
            childNodes = grp.findLayers()
            if state == Qt.Checked:
                for node in childNodes:
                    if node.layerId() != nodeLayer.layerId():
                        node.setVisible(Qt.Unchecked)

    global grp
    root = QgsProject.instance().layerTreeRoot()
    grp = root.findGroup(groupName)
    grp.setVisible(Qt.Unchecked)
    grp.visibilityChanged.connect(changeVis)

def saveProject():
    pass

def closeProject():
    grp.visibilityChanged.disconnect()


Create a new paste based on this one


Comments: