private void UpdateItems(GisEditorWpfMap map)
        {
            LegendImporterItems.Clear();
            var featureLayers = map.GetFeatureLayers(true);

            foreach (var featureLayer in featureLayers)
            {
                LegendImporterItems.Add(GenerateLayerItem(featureLayer));
                if (featureLayer.ZoomLevelSet.CustomZoomLevels.Count > 0)
                {
                    var featureLayerListItem = GisEditor.LayerManager.GetLayerListItem(featureLayer);
                    if (featureLayerListItem != null)
                    {
                        if (featureLayerListItem.Load != null)
                        {
                            featureLayerListItem.Load();
                            featureLayerListItem.Load = null;
                        }
                        foreach (var ComponentStyle in featureLayerListItem.Children)
                        {
                            if (ComponentStyle.Children.Count > 1)
                            {
                                LegendImporterItems.Add(GenerateComponentSytleItem(ComponentStyle));

                                GenerateImporterItems(ComponentStyle, LegendImporterItems, 2);
                            }
                            else
                            {
                                GenerateImporterItems(ComponentStyle, LegendImporterItems, 1);
                            }
                        }
                    }
                }
            }
        }
        public IEnumerable <LegendItemViewModel> CollectLegendItems()
        {
            foreach (LegendImporterItemViewModel item in LegendImporterItems.Where(tmpItem => ValidateLegendItem(tmpItem)))
            {
                LegendItemViewModel legendItem = new LegendItemViewModel
                {
                    Text             = item.Text,
                    ImageStyle       = item.Style,
                    ImageWidth       = iconSize,
                    ImageHeight      = iconSize,
                    ImageLeftPadding = 5,
                    TopPadding       = 3,
                    TextLeftPadding  = 10,
                    NotifiedGeoFont  = new GeoFontViewModel {
                        FontSize = 8, FontName = "Arial"
                    },
                };

                yield return(legendItem);
            }
        }