Skip to content

Commit

Permalink
Respect layer/group expanded/visible state from qlr file
Browse files Browse the repository at this point in the history
  • Loading branch information
domi4484 committed Aug 28, 2023
1 parent 3b93b96 commit f6f620d
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions pzp/pzp.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,8 @@ def do_add_layer_node(self):

if not groupAlreadyExists:
projectParentGroup = projectParentGroup.addGroup(newParentGroup.name())
projectParentGroup.setItemVisibilityChecked(newParentGroup.itemVisibilityChecked())
projectParentGroup.setExpanded(newParentGroup.isExpanded())

# We reached the inserting group -> add all subgroups and layers
# For group types...
Expand All @@ -227,7 +229,9 @@ def do_add_layer_node(self):

# Sublayer
newLayer = layerNode.layer().clone()
projectParentGroup.addLayer(newLayer)
newLayerNode = projectParentGroup.addLayer(newLayer)
newLayerNode.setItemVisibilityChecked(layerNode.itemVisibilityChecked())
newLayerNode.setExpanded(layerNode.isExpanded())
QgsProject.instance().layerStore().addMapLayer(newLayer)

def do_add_group_recursive(self, projectParentGroup, group):
Expand All @@ -241,13 +245,17 @@ def do_add_group_recursive(self, projectParentGroup, group):
# Sublayer
if layerNode.nodeType() == QgsLayerTreeNode.NodeLayer and existingTreeElement is None:
newLayer = layerNode.layer().clone()
projectParentGroup.addLayer(newLayer)
newLayerNode = projectParentGroup.addLayer(newLayer)
newLayerNode.setItemVisibilityChecked(layerNode.itemVisibilityChecked())
newLayerNode.setExpanded(layerNode.isExpanded())
QgsProject.instance().layerStore().addMapLayer(newLayer)
continue

# Subgroup
if existingTreeElement is None:
existingTreeElement = projectParentGroup.addGroup(layerNode.name())
projectParentGroup.setItemVisibilityChecked(layerNode.itemVisibilityChecked())
existingTreeElement.setExpanded(layerNode.isExpanded())
self.do_add_group_recursive(existingTreeElement, layerNode)

def do_check_geometries(self):
Expand Down

0 comments on commit f6f620d

Please sign in to comment.