Ejemplo n.º 1
0
 public override System.Collections.IEnumerable GetChildren(TreePath treePath)
 {
     if (treePath.IsEmpty())
     {
         foreach (var layer in _map.GetLayersWithoutGroups())
         {
             yield return(new LayerItem(layer));
         }
         foreach (var group in _map.MapLayerGroup)
         {
             if (string.IsNullOrEmpty(group.Group))
             {
                 yield return(new GroupItem(group));
             }
         }
     }
     else
     {
         var gitem = treePath.LastNode as GroupItem;
         if (gitem != null)
         {
             var group = gitem.Tag;
             foreach (var l in _map.GetLayersForGroup(group.Name))
             {
                 yield return(new LayerItem(l));
             }
             foreach (var g in _map.MapLayerGroup)
             {
                 if (g.Group == group.Name)
                 {
                     yield return(new GroupItem(g));
                 }
             }
         }
         else
         {
             yield break;
         }
     }
 }