示例#1
0
 public RedlineEditor(IMapViewer viewer, RedlineLayer layer)
 {
     _viewer = viewer;
     _layer = layer;
     var provider = viewer.GetProvider();
     _featSvc = (MgFeatureService)provider.CreateService(MgServiceType.FeatureService);
     _wktRW = new MgWktReaderWriter();
     _agfRW = new MgAgfReaderWriter();
     _geomFact = new MgGeometryFactory();
 }
示例#2
0
 public RedlineEditingCtrl(IMapViewer viewer, RedlineLayer layer)
     : this()
 {
     _viewer = viewer;
     _layer = layer;
     _viewer.PropertyChanged += OnViewerPropertyChanged;
     _ed = new RedlineEditor(_viewer, _layer);
     this.Disposed += OnDisposed;
     lblRedlineLayerName.Text = _layer.Name;
     _origToolbarColor = btnRefresh.BackColor;
 }
示例#3
0
        private void AddRedlineLayerOnMap(RedlineLayer layer)
        {
            ListViewItem item = new ListViewItem(layer.Name);

            item.Name            = layer.Name;
            item.Tag             = layer;
            item.ImageIndex      = 0;
            item.StateImageIndex = 0;
            lstLayersOnMap.Items.Add(item);

            lstRedlineLayers.Items.RemoveByKey(layer.Name);
        }
示例#4
0
        private void AddRedlineLayerOnMap(RedlineLayer layer)
        {
            ListViewItem item = new ListViewItem(layer.Name);
            item.Name = layer.Name;
            item.Tag = layer;
            item.ImageIndex = 0;
            item.StateImageIndex = 0;
            lstLayersOnMap.Items.Add(item);

            lstRedlineLayers.Items.RemoveByKey(layer.Name);
        }
示例#5
0
        internal void AddRedlineLayer(RedlineLayer layer, string fdoProvider)
        {
            var fsId = GetRegistryFeatureSource();
            MgFeatureCommandCollection commands = new MgFeatureCommandCollection();
            MgPropertyCollection insertVals = new MgPropertyCollection();

            MgStringProperty regId = new MgStringProperty("ResourceId", layer.FeatureSource);
            MgStringProperty ldfId = new MgStringProperty("LayerDefinition", layer.LayerDefinition);
            MgStringProperty name = new MgStringProperty("Name", layer.Name);
            MgStringProperty provider = new MgStringProperty("FdoProvider", fdoProvider);
            MgInt32Property geomTypes = new MgInt32Property("GeometryTypes", layer.GeometryTypes);
            MgInt32Property styleType = new MgInt32Property("StyleType", (int)layer.StyleType);

            insertVals.Add(regId);
            insertVals.Add(ldfId);
            insertVals.Add(name);
            insertVals.Add(provider);
            insertVals.Add(geomTypes);
            insertVals.Add(styleType);

            MgInsertFeatures insert = new MgInsertFeatures("Default:MarkupRegistry", insertVals);
            commands.Add(insert);

            MgPropertyCollection result = _featSvc.UpdateFeatures(fsId, commands, false);
            MgFeatureProperty insertResult = result.GetItem(0) as MgFeatureProperty;
            if (insertResult != null)
            {
                MgFeatureReader fr = insertResult.GetValue();
                fr.Close();
            }
        }
示例#6
0
        internal void DeleteLayer(RedlineLayer layer)
        {
            var regId = GetRegistryFeatureSource();
            MgFeatureCommandCollection commands = new MgFeatureCommandCollection();
            MgDeleteFeatures delete = new MgDeleteFeatures("Default:MarkupRegistry", "ResourceId = '" + layer.FeatureSource + "'");
            commands.Add(delete);

            MgPropertyCollection results = _featSvc.UpdateFeatures(regId, commands, false);
            MgInt32Property deleteResult = results.GetItem(0) as MgInt32Property;
            if (deleteResult != null && deleteResult.GetValue() > 0)
            {
                var ldfId = new MgResourceIdentifier(layer.LayerDefinition);
                var fsId = new MgResourceIdentifier(layer.FeatureSource);

                if (_resSvc.ResourceExists(ldfId))
                    _resSvc.DeleteResource(ldfId);

                if (_resSvc.ResourceExists(fsId))
                    _resSvc.DeleteResource(fsId);
            }
        }